Наиболее фундаментальной формой целостного понимания содержания является классификация. Классификация контента сопоставляет часть контента — то есть запись в поисковом индексе — с одним или несколькими элементами предопределенного набора категорий. Категории могут быть типами продуктов, темами документов, цветами изображений или любым другим набором пронумерованных значений, описывающих содержимое.

Классификация контента делает его более доступным для поиска, поскольку классификации можно использовать для поиска и ранжирования. Категории для классификатора могут быть организованы в виде плоского списка или в виде иерархической таксономии (она же дерево).

Вообще говоря, есть два способа выполнить классификацию контента: правила и машинное обучение. Подходы, основанные на правилах, просты, но ненадежны, тогда как подходы машинного обучения более сложны, но более надежны.

Классификация контента на основе правил

Классификаторы на основе правил используют явные правила для классификации контента. Правила обычно включают сопоставление строк или регулярных выражений. Например, у нас может быть правило, согласно которому, если название продукта содержит подстроку телефон, то его тип продукта — Мобильные телефоны. Мы можем сделать правило нечувствительным к регистру, чтобы мы сопоставляли названия продуктов, содержащие строку iPhone.

Классификаторы на основе правил просты, но ненадежны. Продолжая наш приведенный выше пример, многие продукты, названия которых содержат подстроку телефон, являются мобильными телефонами; но многие другие - это чехлы для мобильных телефонов. Мы можем улучшить точность правила, исключив продукты, содержащие подстроку case. Затем мы можем улучшить отзыв, сопоставив названия популярных сотовых телефонов, таких как samsung galaxy и pixel. Но каждое из этих изменений вносит свои собственные ложные срабатывания, и ни одно правило не уловит все.

Усовершенствование правила для повышения его точности и отзыва приводит к уменьшению отдачи за счет усложнения. А создание сложных правил подрывает простоту и объяснимость, которые в первую очередь делают правила привлекательными. В общем, лучше придерживаться простых правил и принимать пределы их точности.

Машинное обучение для классификации контента

Построение модели машинного обучения для классификации контента сложнее, чем создание правил, но, как правило, оно намного надежнее. Для построения модели машинного обучения требуется сбор обучающих данных: примеры, которые связывают контент со своими категориями. Например, если мы создаем классификатор для сопоставления названий продуктов с категориями продуктов, то наши обучающие данные будут представлять собой пары вида (название: «Apple iPhone 13», категория: «Сотовые телефоны»), (название: «Canon Pixma MG3620», категория: «Принтеры») и др. Размеченные обучающие данные — это кровь машинного обучения в целом и классификации в частности.

Когда дело доходит до обучающих данных, важны как количество, так и качество. Больше данных повышает точность модели, равно как и качество меток, то есть точных меток в обучающих данных. Но когда мы используем человеческие суждения для создания ярлыков, и количество, и качество обходится дорого, поскольку мы должны платить за каждое суждение — и даже больше, если мы используем избыточные суждения для обеспечения качества. Как и во всем, нам приходится находить компромиссы. Иногда мы можем избежать этих расходов, используя поведенческие данные для сбора неявных человеческих суждений, но это создает собственные риски, связанные как с качеством, так и с предвзятостью. Бесплатных обедов не бывает.

Но количество и качество — это еще не все. Обучающие данные должны быть репрезентативными для контента, к которому будет применяться результирующая модель. Нерепрезентативные обучающие данные вносят систематическую ошибку, которая, в свою очередь, приводит к систематическим ошибкам модели. Например, если сотовые телефоны составляют только 10 % продуктов, обучающие данные, в которых 50 % продуктов являются мобильными телефонами, создадут модель, в которой продукты обозначаются как мобильные телефоны. Этот пример безобиден, но модели, обученные на нерепрезентативных данных, приносят реальный вред, когда их предвзятость влияет на жизнь и средства к существованию людей. Тщательно собирайте данные о тренировках.

Выбор модели машинного обучения для классификации контента

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

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

И, как правило, делайте все как можно проще. Количество, качество и репрезентативность ваших обучающих данных более важны для вашего успеха, чем сложность вашей модели машинного обучения. Вы также хотите избежать преждевременной оптимизации, вместо этого извлекая уроки из быстрых итераций. Лучше быстро и часто учиться на небольших коллекциях обучающих данных, а затем совершенствовать модель, когда закончите. Возьмите гибкую точку зрения: быстрое выполнение итераций оптимизирует скорость *вашего* обучения.

Классификация контента может быть настолько хороша, насколько хороши категории.

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

Согласованные категории воплощают четкие шаблоны, которые может распознать правило или модель машинного обучения. Отличительные категории четко отделены друг от друга: в конце концов, если трудно отличить две категории друг от друга, то как классификатор должен быть в состоянии сделать выбор между ними? Наконец, исчерпывающие категории охватывают всю вселенную контента.

Ни один набор категорий не идеален. Но качество набора категорий часто является узким местом для классификации. Если вы изо всех сил пытаетесь создать надежный классификатор контента, убедитесь, что набор категорий не является основной причиной.

Краткое содержание

Классификация является наиболее фундаментальной формой понимания содержания. Вы можете использовать простые классификаторы на основе правил или инвестировать в надежные подходы машинного обучения. Для текста и изображений используйте предварительно обученные встраивания. Помните, что количество, качество и репрезентативность ваших обучающих данных имеют большее значение, чем сложность вашей модели машинного обучения. И стремитесь к категориям, которые являются связными, отличительными и исчерпывающими. Помните, что классификатор может быть настолько хорош, насколько хороши его категории.

Назад: Что такое понимание контента?
Далее: Аннотации контента