This project is a comprehensive data analysis and visualization dashboard, integrated with knowledge graph functionality. It allows users to upload datasets, perform correlation analysis, apply inference rules, and visualize relationships through an interactive RDF-based knowledge graph.
A live demo of this component can be found at: https://airedgio-dashboard.streamlit.app/
-
Data Upload and Preprocessing:
- Upload datasets via file input or URL.
- Handle missing values using various imputation methods.
- Encode categorical variables and coerce numeric data.
-
Correlation Analysis:
- Compute Pearson and Spearman correlations, as well as Euclidean similarity.
- User-defined thresholds for filtering significant relationships.
-
Knowledge Graph Creation:
- Automatically generate RDF graphs representing significant correlations.
- Define relationships using user-specified thresholds.
-
Inference Rules:
- Input custom IF-THEN rules to add inferred relationships to the RDF graph.
-
Visualization:
- Visualize correlations using interactive Plotly subplots.
- Display the knowledge graph as a network with customizable aesthetics.
-
SPARQL Querying:
- Query the RDF graph using SPARQL with a user-friendly interface.
-
Backend:
pandas,numpy, andscipyfor data handling and analysis.rdflibfor RDF graph management.sklearn.preprocessingfor data preprocessing.
-
Visualization:
plotlyfor dynamic data visualization.pyvisfor RDF graph network visualization.
-
Frontend:
streamlitfor an interactive web interface.
-
Clone the repository:
git clone https://github.com/your-repo-name.git cd your-repo-name -
Install dependencies:
pip install -r requirements.txt
-
Run the application:
streamlit run app5.py
-
Upload a Dataset:
Upload a.csvfile for analysis. -
Select Columns:
Choose pairs of columns for correlation analysis. -
Set Thresholds:
Adjust thresholds for Pearson, Spearman, and Euclidean similarity using sidebar sliders. -
Analyze Data:
View correlation visualizations and an interactive knowledge graph. -
Apply Inference Rules:
Enter custom rules in the IF-THEN format to infer new relationships. -
SPARQL Queries:
Use the SPARQL query interface to explore the RDF graph.
IF _pearson > 0.7 AND _spearman > 0.7 THEN _strongCorrelation
SELECT ?subject ?object
WHERE {
?subject <https://www.ai-redgio.eu/_pearson> ?object .
}app5.py: Main Streamlit application script.requirements.txt: List of dependencies.knowledge_graph.html: Generated visualization for the RDF graph.
For academic use, please refer to our work:
@article{martinez2023examining,
title={Examining the Adoption of Knowledge Graphs in the Manufacturing Industry: A Comprehensive Review},
author={Martinez-Gil, Jorge and Hoch, Thomas and Pichler, Mario and Heinzl, Bernhard and Moser, Bernhard and Kurniawan, Kabul and Kiesling, Elmar and Krause, Franz},
journal={Artificial Intelligence in Manufacturing: Enabling Intelligent, Flexible and Cost-Effective Production Through AI},
pages={55--70},
year={2023},
publisher={Springer Nature Switzerland Cham}
}
This project is licensed under the MIT License.
This work is performed in the context of the AI REDGIO 5.0 “Regions and (E)DIHs alliance for AI-at-the-Edge adoption by European Industry 5.0 Manufacturing SMEs” EU Innovation Action Project under Grant Agreement No 101092069.
