Drill-X Project
Project Context:
The project aims to detect anomalies (stuck events) occurring during drilling, which cost the company tens of millions of dollars annually. An existing solution has been in place for years, but it has recently struggled with false alarms and missed detections.
Data Type: Time-series data, typically sensor data such as the hook load of the drilling rig.
My Mission:
The TotalEnergies Digital Factory (TDF) team decided to address the project's challenges academically by exploring a new technique: soft-labeling. My mission was to implement and evaluate approaches using soft-labeled data, where labels represent probabilities instead of binary values (0 or 1). This required extensive research, including reviewing state-of-the-art papers and applying advanced techniques.
Project Challenges:
- Data imbalance: The dataset is highly imbalanced, with normal data vastly outnumbering anomaly events.
- Unfiltered activity data: Collected data includes both activity and non-activity data, increasing complexity.
- Uncertainty in stuck reporting: Stuck events are recorded, but the exact timing is often unclear.
- Pattern ambiguity: Near-stuck patterns complicate detection, as some events are resolved before becoming actual stucks.
Project Assets:
- Significance: The project is crucial for the company's core activities, saving substantial costs while enhancing its AI capabilities.
- Resources: Well-documented processes and access to cutting-edge tools, including distributed computing on Azure Databricks and MLflow for model tracking.
Achievements:
- Segmented sensor signals into windows, extracted hundreds of features with TSFRESH, and clustered them using DBSCAN to identify pre-stuck patterns.
- Designed the project's foundation, including model architecture, training pipeline, preprocessing strategies, and loss function selection for stuck detection.
- Developed and tested a Temporal Convolutional Network (TCN) to learn pre-stuck patterns through CNN filters, successfully detecting a stuck event across multiple experiments.
- Implemented a MAT-GAT, a graph attention-based approach for stuck detection, designed to capture both sensor relationships and temporal dependencies.
- Defined key evaluation metrics and developed a graphical visualization pipeline to interpret and compare model performance.
Timeline:
- First Month: Explored the project context, reviewed research papers, and conducted initial analyses.
- Second Month: Developed the initial approach using TSFRESH for feature extraction, followed by clustering with K-Means and DBSCAN to identify pre-stuck patterns.
- Third Month: Project's foundation design, and TCN model implementation.
- Fourth Month: MAT-GAT implementation and integration, and models testing.
- Fifth Month: Result analysis & discussions, Report writing, and project presentation.
- Sixth Month: Tested the model's sensitivity to various data modifications to analyze its behavior and robustness. Worked on project documentation.
Tools and Experience:
- Data Manipulation & Analysis: Pandas, NumPy
- Big Data & Distributed Computing: Apache Spark, Databricks
- Machine Learning & Deep Learning: PyTorch, MLflow
- Data Visualization: Matplotlib