Recipe NER Model
Модель для выделения именованных сущностей (NER) из кулинарных рецептов на английском языке.
Описание
Модель обучена на датасете из ~50,000 рецептов. Распознает ингредиенты, количества, единицы измерения и другие сущности в текстах рецептов.
Распознаваемые сущности
| Метка |
Описание |
| NAME |
Название ингредиента |
| QTY |
Количество |
| UNIT |
Единица измерения |
| COMMENT |
Действие / комментарий |
| RANGE_END |
Конец диапазона |
| INDEX |
Индекс |
| OTHER |
Прочее |
Использование
from transformers import pipeline
ner = pipeline(
"token-classification",
model="fastyBOOM/Recipe_Analysis_AndreevDA",
aggregation_strategy="simple"
)
recipe = "Mix 200 grams of flour with 2 eggs and 100 ml of milk"
result = ner(recipe)
for entity in result:
print(f"{entity['word']}: {entity['entity_group']}")
Результаты обучения
| Epoch |
Training Loss |
Validation Loss |
Precision |
Recall |
F1 |
Accuracy |
| 1 |
0.3328 |
0.3286 |
0.8821 |
0.8789 |
0.8805 |
0.8960 |
| 2 |
0.2928 |
0.2954 |
0.8850 |
0.8979 |
0.8914 |
0.9057 |
| 3 |
0.2800 |
0.2866 |
0.8918 |
0.9037 |
0.8977 |
0.9108 |
| 4 |
0.2398 |
0.2868 |
0.8944 |
0.9072 |
0.9008 |
0.9116 |
| 5 |
0.2398 |
0.2869 |
0.8993 |
0.9089 |
0.9041 |
0.9139 |
Финальные метрики (валидация)
| Метрика |
Значение |
| Loss |
0.2866 |
| Accuracy |
0.9108 |
| F1-score |
0.8977 |
| Precision |
0.8918 |
| Recall |
0.9037 |
Модель обучена на Google Colab. Ноутбук обучения доступен в репозитории.