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

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

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

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

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

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