Видео проигрыватель загружается.Воспроизвести видеоВоспроизвестиБез звукаТекущее время 0:00/Продолжительность 2:39Загрузка: 0.00%0:00Тип потока ОНЛАЙНSeek to live, currently behind liveОНЛАЙНОставшееся время -2:39 1xСкорость воспроизведения2x1.75x1.5x1.25x1x, выбрано0.75x0.5xГлавыГлавыОписанияОтключить описания, выбраноСубтитрынастройки субтитров, откроется диалог настройки субтитровСубтитры выкл., выбраноЗвуковая дорожкаPicture-in-PictureПолноэкранный режимThis is a modal window.Начало диалоговго окна. Кнопка Escape закроет или отменит окноТекстColorБелыйЧерныйКрасныйЗеленыйСинийЖелтыйПурпурныйГолубойTransparencyПрозрачностьПолупрозрачныйФонColorЧерныйБелыйКрасныйЗеленыйСинийЖелтыйПурпурныйГолубойTransparencyПрозрачностьПолупрозрачныйПрозрачныйОкноColorЧерныйБелыйКрасныйЗеленыйСинийЖелтыйПурпурныйГолубойTransparencyПрозрачныйПолупрозрачныйПрозрачностьРазмер шрифта50%75%100%125%150%175%200%300%400%Стиль края текстаНичегоПоднятыйПониженныйОдинаковыйТеньШрифтПропорциональный без засечекМоноширинный без засечекПропорциональный с засечкамиМоноширинный с засечкамиСлучайныйПисьменныйМалые прописныеСбросить сбросить все найстройки по умолчаниюГотовоЗакрыть модальное окноКонец диалогового окна.
Мы поговорили про представление текста в виде длинного разреженного вектора частот слов. Давайте теперь рассмотрим следующий шаг — как на основе такого вектора принимать решения. Итак, нам дали коллекцию документов по некоторой тематике: это положительные примеры. А ещё мы нашли другие документы, не относящиеся к данной тематике: это отрицательные примеры. Напомню, что подход, о котором мы собираемся говорить, больше подходит для длинных текстов. Это не значит, что он не будет работать для коротких, просто — для коротких часто можно найти что-то существенно лучше. Нам нужно построить классификатор или решающие правило. Формально — это функция, которая по вещественному вектору размерности D (в данном случае это — размер словаря) выдаёт класс: "1" — если документ относится к интересующей нас тематике, и "0" для всех остальных документов. Мы будем использовать представление документов в виде мешка слов и попробуем построить классификатор в виде логистической регрессии (модель определяется следующей формулой). Несмотря на то, что модель называется "регрессией", предназначена она для классификации. Её выход (мы обозначаем его y^\hat yy^​) — это вещественное число от нуля до единицы — вероятность того, что документ принадлежит к интересующему нас классу. Давайте посмотрим на формулу повнимательнее и попробуем понять, что происходит. Внутри у нас стоит скалярное произведение двух векторов: вектора весов w и вектора признаков x. Результат скалярного произведения — это вещественное число. Изобразим результат графически как прямую. По сути, это линейная регрессия. Однако у нас задача классификации и мы хотим вероятности. Тогда сожмём выход линейной регрессии с помощью сигмоиды и получим примерно следующий график. Он лежит строго между нулём и единицей. Решение о принадлежности к положительному классу принимается с помощью порога — если предсказанная вероятность больше некоторого числа, то документ относится к положительному классу, и не относится в противном случае.[1] Вам это всё, наверняка, что-то напоминает...
[1] Чтобы усилить линейную модель, можно нагенерировать более мощных признаков, например, из комбинаций исходных признаков https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.PolynomialFeatures.html или использовать kernel trick - перейти из пространства признаков в пространство расстояний до других объектов https://scikit-learn.org/stable/modules/kernel_approximation.html

К сожалению, у нас пока нет статистики ответов на данный вопрос, но мы работаем над этим.