Как вычисляются оценки P, R и F в spaCy CLI train NER?

#spacy #named-entity-recognition

#spacy #распознавание именованных объектов

Вопрос:

Я использую команду spaCy CLI train для NER с train_path набором обучающих данных (train-set) и dev_path набором оценочных данных (test-set). Распечатка в консоли показывает мне меньшую точность, отзыв и F-оценку.

Однако мне не ясно, как были рассчитаны оценки. Являются ли они оценками из модели, предсказывающей в наборе поездов (train-scores) или из набора тестов (test-scores)?

Я хочу определить, после какой эпохи прекратить обучение, чтобы предотвратить переобучение. В настоящее время после 60 эпох потери все еще немного уменьшаются, а точность, отзыв и F-оценка все еще немного увеличиваются. Мне кажется, что модель может запоминать обучающие данные и что оценки P, R и F вычисляются в наборе обучающих данных и, таким образом, продолжают улучшаться.

Насколько мне известно, хорошая точка остановки в обучении была бы прямо перед тем, как результаты тестов снова начнут падать, даже если результаты обучения продолжают расти. Поэтому я хотел бы сравнить их с течением времени (эпохи).

Мои вопросы:

  1. Отображаются ли оценки в консоли при обучении train-scores или test-scores?
  2. И как получить доступ к другому?
  3. Если это оценка поезда, для чего используется набор тестов ( dev_path )?

Ответ №1:

loss Вычисляется из обучающих примеров как побочный эффект вызова nlp.update() в цикле обучения. Однако все остальные показатели производительности вычисляются в наборе разработчиков путем вызова Scorer .

Насколько мне известно, хорошая точка остановки в обучении была бы прямо перед тем, как результаты тестов снова начнут падать, даже если результаты обучения продолжают расти

Да, я согласен. Итак, глядя на spacy train результаты, это будет, когда (обучающие) потери все еще уменьшаются, в то время как (dev) F-оценка снова начинает уменьшаться.

В настоящее время после 60 эпох потери все еще немного уменьшаются, а точность, отзыв и F-оценка все еще немного увеличиваются.

Похоже, вы можете тренироваться еще несколько эпох 🙂