ThreeWToolkit 1.0.1__tar.gz → 1.0.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/PKG-INFO +13 -6
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/pyproject.toml +19 -1
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_pipeline.py +0 -1
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/README.md +5 -5
- threewtoolkit-1.0.2/toolkit/ThreeWToolkit/__init__.py +24 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit.egg-info/PKG-INFO +13 -6
- threewtoolkit-1.0.1/toolkit/ThreeWToolkit/__init__.py +0 -1
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/LICENSE.md +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/README.md +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/setup.cfg +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_assessment_visualization.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_data_loader.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_dataset.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_downloader.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_example.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_extract_exponential_statistical_features.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_extract_statistical_features.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_extract_wavelet_features.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_load_model.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_metrics.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_mlp.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_model_assessment.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_plot_correlation_heatmap.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_plot_multiple_series.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_plot_series.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_preprocessing.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_report_generation.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_save_best_model.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_sklearn_models.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_template_manager.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_trainer.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_trainer_logger.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/assessment/__init__.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/assessment/assessment_visualizations.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/assessment/model_assess.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/constants.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/__init__.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_assessment.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_assessment_visualization.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_dataset.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_feature_extractor.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_metrics.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_model_trainer.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_models.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_preprocessing.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_step.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_time_series_holdout.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/enums.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_loader/__init__.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_loader/csv_data_loader.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/__init__.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/base_visualizer.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/correlation_heatmap.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/plot_fft.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/plot_multiple_series.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/plot_series.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/plot_utils.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/plots.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/seasonal_decomposition.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/three_w_chart.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/wavelet_spectrogram.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/dataset/__init__.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/dataset/parquet_dataset.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/feature_extraction/__init__.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/feature_extraction/extract_exponential_statistics_features.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/feature_extraction/extract_statistical_features.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/feature_extraction/extract_wavelet_features.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/metrics/__init__.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/metrics/_classification.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/metrics/_regression.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/models/__init__.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/models/mlp.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/models/sklearn_models.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/pipeline.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/preprocessing/__init__.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/preprocessing/_data_processing.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/reports/__init__.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/reports/report_generation.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/trainer/trainer.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/utils/__init__.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/utils/data_utils.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/utils/downloader.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/utils/general_utils.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/utils/model_recorder.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/utils/template_manager.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/utils/trainer_logger.py +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit.egg-info/SOURCES.txt +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit.egg-info/dependency_links.txt +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit.egg-info/requires.txt +0 -0
- {threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit.egg-info/top_level.txt +0 -0
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ThreeWToolkit
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.2
|
|
4
4
|
Summary: A modular and open-source AI toolkit for time-series processing, aimed at fault detection and classification in oil well operation
|
|
5
5
|
Author-email: Ricardo Emanuel Vaz Vargas <ricardo.vargas@petrobras.com.br>
|
|
6
6
|
License: Apache-2.0
|
|
7
|
+
Project-URL: Homepage, https://github.com/petrobras/3W
|
|
8
|
+
Project-URL: Repository, https://github.com/petrobras/3W
|
|
9
|
+
Project-URL: Documentation, https://github.com/petrobras/3W
|
|
10
|
+
Project-URL: Bug Tracker, https://github.com/petrobras/3W/issues
|
|
11
|
+
Project-URL: Source Code, https://github.com/petrobras/3W
|
|
12
|
+
Project-URL: Changelog, https://github.com/petrobras/3W/releases
|
|
13
|
+
Keywords: machine-learning,time-series,fault-detection,oil-wells,classification,petroleum,data-science,artificial-intelligence
|
|
7
14
|
Requires-Python: >=3.10
|
|
8
15
|
Description-Content-Type: text/markdown
|
|
9
16
|
License-File: LICENSE.md
|
|
@@ -58,10 +65,10 @@ Dynamic: license-file
|
|
|
58
65
|
[black]: https://github.com/psf/black
|
|
59
66
|
[black-shield]: https://img.shields.io/badge/code%20style-black-000000.svg
|
|
60
67
|
[semver]: https://semver.org
|
|
61
|
-
[semver-shield]: https://img.shields.io/badge/semver-2.0.
|
|
68
|
+
[semver-shield]: https://img.shields.io/badge/semver-2.0.1-blue
|
|
62
69
|
|
|
63
70
|
<h1>
|
|
64
|
-
<img src="
|
|
71
|
+
<img src="https://raw.githubusercontent.com/petrobras/3W/main/images/3w_logo.png" width="45" style="vertical-align: middle; margin-right: 10px;" />
|
|
65
72
|
3W Toolkit
|
|
66
73
|
</h1>
|
|
67
74
|
|
|
@@ -87,8 +94,8 @@ In the oil & gas sector, the widespread availability of low-cost sensors has dri
|
|
|
87
94
|
In this context, we present 3WToolkit+, a modular and open-source AI toolkit for time-series processing, aimed at fault detection and classification in oil well operation. Building upon the experience with the original 3WToolkit system and leveraging the Petrobras <a href="https://github.com/petrobras/3W">3W Dataset</a>, 3WToolkit introduces enhanced functionalities, such as advanced data imputation, deep feature extraction, synthetic data augmentation, and high-performance computing capabilities for model training.
|
|
88
95
|
|
|
89
96
|
<p align="center">
|
|
90
|
-
<img src="
|
|
91
|
-
<img src="
|
|
97
|
+
<img src="https://raw.githubusercontent.com/petrobras/3W/main/images/petrobras_logo.png" width="150" style="margin-right: 30px;" />
|
|
98
|
+
<img src="https://raw.githubusercontent.com/petrobras/3W/main/images/coppe_logo.png" width="150" />
|
|
92
99
|
</p>
|
|
93
100
|
|
|
94
101
|
The development of the 3WToolkit+ is the result of a collaborative partnership between Petrobras, with a focus on the CENPES research center, and the COPPE/Universidade Federal do Rio de Janeiro (UFRJ). This joint effort brings together complementary strengths: COPPE/UFRJ contributes decades of proven expertise in signal processing and machine learning model development, while CENPES offers access to highly specialized technical knowledge and real-world operational challenges in the oil and gas sector. This synergy ensures that 3WToolkit+ is both scientifically rigorous and practically relevant, addressing complex scenarios with robust and scalable AI-based solutions for time-series analysis and fault detection in oil well operations.
|
|
@@ -99,7 +106,7 @@ The following image illustrates the high-level architecture of the 3W Toolkit, d
|
|
|
99
106
|
|
|
100
107
|
The schema below illustrates the main classes of the toolkit.
|
|
101
108
|
|
|
102
|
-
<img width="1200" src="
|
|
109
|
+
<img width="1200" src="https://raw.githubusercontent.com/petrobras/3W/main/images/3w_classes_in_groups.jpg">
|
|
103
110
|
|
|
104
111
|
To better understand how the system is organized, we can divide all classes into two main abstraction layers: **`Application`** and **`Core`**.
|
|
105
112
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "ThreeWToolkit"
|
|
3
|
-
version = "1.0.
|
|
3
|
+
version = "1.0.2"
|
|
4
4
|
description = "A modular and open-source AI toolkit for time-series processing, aimed at fault detection and classification in oil well operation"
|
|
5
5
|
readme = { file = "toolkit/ThreeWToolkit/README.md", content-type = "text/markdown" }
|
|
6
6
|
license = { text = "Apache-2.0" }
|
|
@@ -8,6 +8,16 @@ authors = [
|
|
|
8
8
|
{ name = "Ricardo Emanuel Vaz Vargas", email = "ricardo.vargas@petrobras.com.br" },
|
|
9
9
|
]
|
|
10
10
|
requires-python = ">=3.10"
|
|
11
|
+
keywords = [
|
|
12
|
+
"machine-learning",
|
|
13
|
+
"time-series",
|
|
14
|
+
"fault-detection",
|
|
15
|
+
"oil-wells",
|
|
16
|
+
"classification",
|
|
17
|
+
"petroleum",
|
|
18
|
+
"data-science",
|
|
19
|
+
"artificial-intelligence",
|
|
20
|
+
]
|
|
11
21
|
dependencies = [
|
|
12
22
|
"numpy>=1.26.4",
|
|
13
23
|
"scipy>=1.15.2",
|
|
@@ -36,6 +46,14 @@ dependencies = [
|
|
|
36
46
|
"requests<=2.35.5",
|
|
37
47
|
]
|
|
38
48
|
|
|
49
|
+
[project.urls]
|
|
50
|
+
Homepage = "https://github.com/petrobras/3W"
|
|
51
|
+
Repository = "https://github.com/petrobras/3W"
|
|
52
|
+
Documentation = "https://github.com/petrobras/3W"
|
|
53
|
+
"Bug Tracker" = "https://github.com/petrobras/3W/issues"
|
|
54
|
+
"Source Code" = "https://github.com/petrobras/3W"
|
|
55
|
+
Changelog = "https://github.com/petrobras/3W/releases"
|
|
56
|
+
|
|
39
57
|
[project.optional-dependencies]
|
|
40
58
|
dev = [
|
|
41
59
|
"black>=25.9.0",
|
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
[black]: https://github.com/psf/black
|
|
8
8
|
[black-shield]: https://img.shields.io/badge/code%20style-black-000000.svg
|
|
9
9
|
[semver]: https://semver.org
|
|
10
|
-
[semver-shield]: https://img.shields.io/badge/semver-2.0.
|
|
10
|
+
[semver-shield]: https://img.shields.io/badge/semver-2.0.1-blue
|
|
11
11
|
|
|
12
12
|
<h1>
|
|
13
|
-
<img src="
|
|
13
|
+
<img src="https://raw.githubusercontent.com/petrobras/3W/main/images/3w_logo.png" width="45" style="vertical-align: middle; margin-right: 10px;" />
|
|
14
14
|
3W Toolkit
|
|
15
15
|
</h1>
|
|
16
16
|
|
|
@@ -36,8 +36,8 @@ In the oil & gas sector, the widespread availability of low-cost sensors has dri
|
|
|
36
36
|
In this context, we present 3WToolkit+, a modular and open-source AI toolkit for time-series processing, aimed at fault detection and classification in oil well operation. Building upon the experience with the original 3WToolkit system and leveraging the Petrobras <a href="https://github.com/petrobras/3W">3W Dataset</a>, 3WToolkit introduces enhanced functionalities, such as advanced data imputation, deep feature extraction, synthetic data augmentation, and high-performance computing capabilities for model training.
|
|
37
37
|
|
|
38
38
|
<p align="center">
|
|
39
|
-
<img src="
|
|
40
|
-
<img src="
|
|
39
|
+
<img src="https://raw.githubusercontent.com/petrobras/3W/main/images/petrobras_logo.png" width="150" style="margin-right: 30px;" />
|
|
40
|
+
<img src="https://raw.githubusercontent.com/petrobras/3W/main/images/coppe_logo.png" width="150" />
|
|
41
41
|
</p>
|
|
42
42
|
|
|
43
43
|
The development of the 3WToolkit+ is the result of a collaborative partnership between Petrobras, with a focus on the CENPES research center, and the COPPE/Universidade Federal do Rio de Janeiro (UFRJ). This joint effort brings together complementary strengths: COPPE/UFRJ contributes decades of proven expertise in signal processing and machine learning model development, while CENPES offers access to highly specialized technical knowledge and real-world operational challenges in the oil and gas sector. This synergy ensures that 3WToolkit+ is both scientifically rigorous and practically relevant, addressing complex scenarios with robust and scalable AI-based solutions for time-series analysis and fault detection in oil well operations.
|
|
@@ -48,7 +48,7 @@ The following image illustrates the high-level architecture of the 3W Toolkit, d
|
|
|
48
48
|
|
|
49
49
|
The schema below illustrates the main classes of the toolkit.
|
|
50
50
|
|
|
51
|
-
<img width="1200" src="
|
|
51
|
+
<img width="1200" src="https://raw.githubusercontent.com/petrobras/3W/main/images/3w_classes_in_groups.jpg">
|
|
52
52
|
|
|
53
53
|
To better understand how the system is organized, we can divide all classes into two main abstraction layers: **`Application`** and **`Core`**.
|
|
54
54
|
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
try:
|
|
2
|
+
from importlib.metadata import version, PackageNotFoundError
|
|
3
|
+
except ImportError:
|
|
4
|
+
# Python < 3.8
|
|
5
|
+
from importlib_metadata import version, PackageNotFoundError # type: ignore
|
|
6
|
+
|
|
7
|
+
try:
|
|
8
|
+
__version__ = version("ThreeWToolkit")
|
|
9
|
+
except PackageNotFoundError:
|
|
10
|
+
# Package is not installed, try to read from pyproject.toml
|
|
11
|
+
try:
|
|
12
|
+
import tomllib
|
|
13
|
+
except ImportError:
|
|
14
|
+
import tomli as tomllib # type: ignore
|
|
15
|
+
|
|
16
|
+
from pathlib import Path
|
|
17
|
+
|
|
18
|
+
pyproject_path = Path(__file__).parent.parent.parent / "pyproject.toml"
|
|
19
|
+
if pyproject_path.exists():
|
|
20
|
+
with open(pyproject_path, "rb") as f:
|
|
21
|
+
pyproject = tomllib.load(f)
|
|
22
|
+
__version__ = pyproject["project"]["version"]
|
|
23
|
+
else:
|
|
24
|
+
__version__ = "unknown"
|
|
@@ -1,9 +1,16 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ThreeWToolkit
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.2
|
|
4
4
|
Summary: A modular and open-source AI toolkit for time-series processing, aimed at fault detection and classification in oil well operation
|
|
5
5
|
Author-email: Ricardo Emanuel Vaz Vargas <ricardo.vargas@petrobras.com.br>
|
|
6
6
|
License: Apache-2.0
|
|
7
|
+
Project-URL: Homepage, https://github.com/petrobras/3W
|
|
8
|
+
Project-URL: Repository, https://github.com/petrobras/3W
|
|
9
|
+
Project-URL: Documentation, https://github.com/petrobras/3W
|
|
10
|
+
Project-URL: Bug Tracker, https://github.com/petrobras/3W/issues
|
|
11
|
+
Project-URL: Source Code, https://github.com/petrobras/3W
|
|
12
|
+
Project-URL: Changelog, https://github.com/petrobras/3W/releases
|
|
13
|
+
Keywords: machine-learning,time-series,fault-detection,oil-wells,classification,petroleum,data-science,artificial-intelligence
|
|
7
14
|
Requires-Python: >=3.10
|
|
8
15
|
Description-Content-Type: text/markdown
|
|
9
16
|
License-File: LICENSE.md
|
|
@@ -58,10 +65,10 @@ Dynamic: license-file
|
|
|
58
65
|
[black]: https://github.com/psf/black
|
|
59
66
|
[black-shield]: https://img.shields.io/badge/code%20style-black-000000.svg
|
|
60
67
|
[semver]: https://semver.org
|
|
61
|
-
[semver-shield]: https://img.shields.io/badge/semver-2.0.
|
|
68
|
+
[semver-shield]: https://img.shields.io/badge/semver-2.0.1-blue
|
|
62
69
|
|
|
63
70
|
<h1>
|
|
64
|
-
<img src="
|
|
71
|
+
<img src="https://raw.githubusercontent.com/petrobras/3W/main/images/3w_logo.png" width="45" style="vertical-align: middle; margin-right: 10px;" />
|
|
65
72
|
3W Toolkit
|
|
66
73
|
</h1>
|
|
67
74
|
|
|
@@ -87,8 +94,8 @@ In the oil & gas sector, the widespread availability of low-cost sensors has dri
|
|
|
87
94
|
In this context, we present 3WToolkit+, a modular and open-source AI toolkit for time-series processing, aimed at fault detection and classification in oil well operation. Building upon the experience with the original 3WToolkit system and leveraging the Petrobras <a href="https://github.com/petrobras/3W">3W Dataset</a>, 3WToolkit introduces enhanced functionalities, such as advanced data imputation, deep feature extraction, synthetic data augmentation, and high-performance computing capabilities for model training.
|
|
88
95
|
|
|
89
96
|
<p align="center">
|
|
90
|
-
<img src="
|
|
91
|
-
<img src="
|
|
97
|
+
<img src="https://raw.githubusercontent.com/petrobras/3W/main/images/petrobras_logo.png" width="150" style="margin-right: 30px;" />
|
|
98
|
+
<img src="https://raw.githubusercontent.com/petrobras/3W/main/images/coppe_logo.png" width="150" />
|
|
92
99
|
</p>
|
|
93
100
|
|
|
94
101
|
The development of the 3WToolkit+ is the result of a collaborative partnership between Petrobras, with a focus on the CENPES research center, and the COPPE/Universidade Federal do Rio de Janeiro (UFRJ). This joint effort brings together complementary strengths: COPPE/UFRJ contributes decades of proven expertise in signal processing and machine learning model development, while CENPES offers access to highly specialized technical knowledge and real-world operational challenges in the oil and gas sector. This synergy ensures that 3WToolkit+ is both scientifically rigorous and practically relevant, addressing complex scenarios with robust and scalable AI-based solutions for time-series analysis and fault detection in oil well operations.
|
|
@@ -99,7 +106,7 @@ The following image illustrates the high-level architecture of the 3W Toolkit, d
|
|
|
99
106
|
|
|
100
107
|
The schema below illustrates the main classes of the toolkit.
|
|
101
108
|
|
|
102
|
-
<img width="1200" src="
|
|
109
|
+
<img width="1200" src="https://raw.githubusercontent.com/petrobras/3W/main/images/3w_classes_in_groups.jpg">
|
|
103
110
|
|
|
104
111
|
To better understand how the system is organized, we can divide all classes into two main abstraction layers: **`Application`** and **`Core`**.
|
|
105
112
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "2.0.0"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/tests/test_extract_exponential_statistical_features.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/assessment/model_assess.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_feature_extractor.py
RENAMED
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_model_trainer.py
RENAMED
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_preprocessing.py
RENAMED
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/core/base_time_series_holdout.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_loader/csv_data_loader.py
RENAMED
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/plot_fft.py
RENAMED
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/plot_series.py
RENAMED
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/plot_utils.py
RENAMED
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/data_visualization/plots.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/dataset/parquet_dataset.py
RENAMED
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/feature_extraction/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/metrics/_classification.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/preprocessing/_data_processing.py
RENAMED
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit/reports/report_generation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{threewtoolkit-1.0.1 → threewtoolkit-1.0.2}/toolkit/ThreeWToolkit.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|