ZIPML ist eine leichte Automl-Bibliothek, die für kleine Datensätze entwickelt wurde und die wichtige Helferfunktionen wie Zug-Test-Aufteilung, Modellvergleich und Verwirrungsmatrixgenerierung bietet.
zipml/
│
├── data/
│ ├── encoding.py
│ ├── file_operations.py
│ ├── split_data.py
│
├── model/
│ ├── analyze_model_predictions.py
│ ├── calculate_model_results.py
│ ├── measure_prediction_time.py
│
├── utils/
│ ├── calculate_sentence_length_percentile.py
│ ├── read_time_series_data.py
│
├── visualization/
│ ├── combine_and_plot_model_results.py
│ ├── plot_random_image.py
│ ├── plot_time_series.py
│ ├── save_and_plot_confusion_matrix.py
│
└── zipml.pyzipml -Paket Das zipml -Paket bietet eine Vielzahl von Dienstprogrammen für die Vorbereitung von Daten, die Analyse von Modellen und die Visualisierung von Ergebnissen, die zur Vereinfachung der KI- und maschinellen Lernflows konzipiert sind. Im Folgenden finden Sie die Anweisungen für die Verwendung einiger Schlüsselfunktionen.
analyze_model_predictions.py from zipml . model import analyze_model_predictions
val_df , most_wrong = analyze_model_predictions ( best_model , X_test , y_test )Installieren Sie das Paket über PIP:
pip install zipmlAlternativ klonen Sie das Repository:
git clone https://github.com/abdozmantar/zipml.git
cd zipml
pip install . Hier ist ein praktisches Beispiel für die Verwendung von ZIPML:
import pandas as pd
from zipml . model import analyze_model_predictions
from zipml . model import calculate_model_results
from zipml . visualization import save_and_plot_confusion_matrix
from zipml . data import split_data
from zipml import compare_models
from sklearn . ensemble import RandomForestClassifier , GradientBoostingClassifier
from sklearn . linear_model import LogisticRegression
# Sample dataset
data = {
'feature_1' : [ 0.517 , 0.648 , 0.105 , 0.331 , 0.781 , 0.026 , 0.048 ],
'feature_2' : [ 0.202 , 0.425 , 0.643 , 0.721 , 0.646 , 0.827 , 0.303 ],
'feature_3' : [ 0.897 , 0.579 , 0.014 , 0.167 , 0.015 , 0.358 , 0.744 ],
'feature_4' : [ 0.457 , 0.856 , 0.376 , 0.527 , 0.648 , 0.534 , 0.047 ],
'feature_5' : [ 0.046 , 0.118 , 0.222 , 0.001 , 0.969 , 0.239 , 0.203 ],
'target' : [ 0 , 1 , 1 , 1 , 1 , 1 , 0 ]
}
# Creating DataFrame
df = pd . DataFrame ( data )
# Splitting data into features (X) and target (y)
X = df . drop ( 'target' , axis = 1 )
y = df [ 'target' ]
# Split the data into training and test sets
X_train , X_test , y_train , y_test = split_data ( X , y )
# Define models
models = [
RandomForestClassifier (),
LogisticRegression (),
GradientBoostingClassifier ()
]
# Compare models and select the best one
best_model , performance = compare_models ( models , X_train , X_test , y_train , y_test )
print ( f"Best model: { best_model } with performance: { performance } " )
# Calculate performance metrics for the best model
best_model_metrics = calculate_model_results ( y_test , best_model . predict ( X_test ))
# Analyze model predictions
val_df , most_wrong = analyze_model_predictions ( best_model , X_test , y_test )
# Save and plot confusion matrix
save_and_plot_confusion_matrix ( y_test , best_model . predict ( X_test ), save_path = "confusion_matrix.png" )Sie können ZIPML über die folgenden Befehle aus der Befehlszeile ausführen:
zipml --train train.csv --test test.csv --model randomforest --result results.json--train : Pfad zum Trainingsdatensatz-CSV-Datei.--test : Pfad zum Test-Datensatz-CSV-Datei.--model : Name des zu trainierenden Modells (z. B. randomforest , logisticregression , gradientboosting ).--result : Pfad zur JSON-Datei, in der die Ergebnisse gespeichert werden. zipml --train train.csv --test test.csv --compare --compare_models randomforest svc knn --result results.json--compare : Ein Flag, um einen Mehrfachmodellvergleich anzuzeigen.--compare_models : Eine Liste von Modellen zu vergleichen (z. B. randomforest , logisticregression , gradientboosting ).--result : Pfad zur JSON-Datei, in der Vergleichsergebnisse gespeichert werden. zipml --load_model trained_model.pkl --test test.csv --result predictions.json--load_model : Pfad zur gespeicherten Modelldatei.--test : Pfad zum Test-Datensatz-CSV-Datei.--result : Pfad zur JSON-Datei, in der Vorhersagen gespeichert werden. Um das geschulte Modell nach dem Training zu retten:
zipml --train train.csv --test test.csv --model randomforest --save_model trained_model.pkl--result : Pfad zur Datei, in der das geschulte Modell gespeichert wird.git checkout -b feature/foo ).git commit -am 'Add some foo' ).git push origin feature/foo ).Abdullah Ozmantar Github: @abdozmantar
Dieses Projekt ist unter der MIT -Lizenz lizenziert - Einzelheiten finden Sie in der Lizenzdatei.