Instructions to use mac999/earthwork-net-model with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use mac999/earthwork-net-model with Transformers:
# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("mac999/earthwork-net-model", device_map="auto") - Notebooks
- Google Colab
- Kaggle
| import numpy as np | |
| from sklearn.metrics import accuracy_score, recall_score, precision_score, f1_score, confusion_matrix | |
| from sklearn.metrics import average_precision_score | |
| # Assuming y_true and y_pred are your data | |
| y_true = [0, 1, 1, 0, 1, 1] | |
| y_pred = [0, 0, 1, 0, 0, 1] | |
| # Assuming y_true and y_pred are your data | |
| y_true = [[0, 1, 1], [0, 1, 1], [1, 0, 1]] | |
| y_pred = [[0, 0, 1], [0, 0, 1], [1, 0, 0]] | |
| class model_metrics: | |
| def __init__(self): | |
| self.clear() | |
| def clear(self): | |
| self.accuracy = 0.0 | |
| self.recall = 0.0 | |
| self.precision = 0.0 | |
| self.f1 = 0.0 | |
| self.mAP = 0.0 | |
| self.cm = np.asarray([]) | |
| self.count = 0 | |
| self.total_accuracy = 0.0 | |
| self.total_recall = 0.0 | |
| self.total_precision = 0.0 | |
| self.total_f1 = 0.0 | |
| self.total_mAP = 0.0 | |
| self.total_cm = np.asarray([]) | |
| def get_indicators(self): | |
| return self.total_accuracy / self.count, self.total_recall / self.count, self.total_precision / self.count, self.total_f1 / self.count, self.total_mAP / self.count, self.total_cm / self.count | |
| def dump(self): | |
| print(f"Accuracy: {self.accuracy}") | |
| print(f"Recall: {self.recall}") | |
| print(f"Precision: {self.precision}") | |
| print(f"F1 Score: {self.f1}") | |
| print(f"mAP: {self.mAP}") | |
| print(f"Confusion Matrix: \n{self.cm}") | |
| print(f'average accuracy: {self.total_accuracy / self.count}') | |
| print(f'average recall: {self.total_recall / self.count}') | |
| print(f'average precision: {self.total_precision / self.count}') | |
| print(f'average f1: {self.total_f1 / self.count}') | |
| print(f'average mAP: {self.total_mAP / self.count}') | |
| print(f'average confusion matrix: \n{self.total_cm / self.count}') | |
| def calc_metrics(self, y_true, y_pred, y_score): | |
| self.accuracy = accuracy_score(y_true, y_pred) | |
| self.recall = recall_score(y_true, y_pred, average='weighted') | |
| self.precision = precision_score(y_true, y_pred, average='micro') | |
| self.cm = confusion_matrix(y_true, y_pred) | |
| self.count += 1 | |
| self.total_accuracy += self.accuracy | |
| self.total_recall += self.recall | |
| self.total_precision += self.precision | |
| self.total_f1 += self.f1 | |
| self.total_mAP += self.mAP | |
| self.total_cm = self.cm # TBD | |
| return self.accuracy, self.recall, self.precision, self.f1, self.mAP, self.cm | |
| def calc_metrics_multi(self, y_true, y_pred): | |
| self.accuracy = accuracy_score(y_true, y_pred) | |
| self.recall = recall_score(y_true, y_pred, average='micro') | |
| self.precision = precision_score(y_true, y_pred, average='micro') | |
| self.f1 = f1_score(y_true, y_pred, average='micro') | |
| self.mAP = average_precision_score(y_true, y_pred, average='micro') | |
| self.count += 1 | |
| return self.accuracy, self.recall, self.precision, self.f1, self.mAP, self.cm | |