Шаг 1: Соберите данные

Сбор данных — самый важный шаг в решении любой задачи машинного обучения с учителем. Ваш текстовый классификатор может быть настолько хорош, насколько хорош набор данных, из которого он создан.

Если у вас нет конкретной проблемы, которую вы хотите решить, и вы просто заинтересованы в изучении классификации текста в целом, существует множество доступных наборов данных с открытым исходным кодом. Вы можете найти ссылки на некоторые из них в нашем репозитории GitHub . С другой стороны, если вы решаете конкретную проблему, вам нужно будет собрать необходимые данные. Многие организации предоставляют общедоступные API для доступа к своим данным, например, Twitter API или NY Times API . Возможно, вы сможете использовать их для решения проблемы, которую пытаетесь решить.

Вот несколько важных моментов, которые следует помнить при сборе данных:

  • Если вы используете общедоступный API, ознакомьтесь с ограничениями API перед их использованием. Например, некоторые API устанавливают ограничение на скорость выполнения запросов.
  • Чем больше у вас есть обучающих примеров (называемых образцами в остальной части этого руководства), тем лучше. Это поможет вашей модели лучше обобщать.
  • Убедитесь, что количество образцов для каждого класса или темы не слишком несбалансировано . То есть у вас должно быть сопоставимое количество образцов в каждом классе.
  • Убедитесь, что ваши образцы адекватно охватывают пространство возможных входных данных , а не только общие случаи.

В этом руководстве мы будем использовать набор данных с обзорами фильмов из базы данных фильмов в Интернете (IMDb), чтобы проиллюстрировать рабочий процесс. Этот набор данных содержит обзоры фильмов, опубликованные людьми на сайте IMDb, а также соответствующие метки («положительные» или «отрицательные»), указывающие, понравился ли фильм рецензенту или нет. Это классический пример проблемы анализа настроений.