Понять, почему так — и научиться делать лучше
На курсе строим такой же классификатор с нуля: от TF-IDF до production. И чиним всё, обо что он спотыкается выше.
Смотреть программу →Вставьте отзыв или комментарий — модель определит тональность и покажет вклад каждого слова. Всё считает ваш браузер: текст никуда не отправляется, поэтому сюда можно вставлять и рабочие данные.
…или подставьте из CSV (первая колонка):
// вклад = коэффициент модели × TF-IDF-вес слова. Для линейной модели это точная декомпозиция ответа, а не эвристика.
| Текст | Класс ↕ | Уверенность ↕ |
|---|
Это линейная модель на мешке слов — сильная там, где тональность лежит на поверхности, и слепая там, где нужен контекст. Мы знаем её слабости, измерили их и показываем.
Модель складывает вклады слов и не знает, что после «но» смысл важнее. На нашем контрольном наборе из 10 таких фраз она угадывает только 4.
«Курс сложный, но полезный» → нейтрально, хотя человек читает похвалу
«Ну спасибо, теперь всё окончательно сломалось» — для модели здесь есть «спасибо», и оно тянет вверх. Сарказм требует понимания ситуации, а не отдельных слов.
проверьте сами — кнопка справа подставит пример
Модель не помнит предыдущее предложение и видит «понравился» и «понравилась» как разные слова: мы сознательно отказались от лемматизации, чтобы токенизация в браузере совпадала с обучением символ в символ.
качество на отложенной выборке из 9000 отзывов: точность 74% · F1 = 0.74
from sklearn.linear_model import LogisticRegression vec = TfidfVectorizer(tokenizer=tokenize, ngram_range=(1, 2)) # без лемм: токены совпадают с JS 1:1 clf = LogisticRegression(C=1.0).fit(X, y) export_json(vec, clf, top_k=19000) # → sentiment-weights.json · 245 КБ gzip
На курсе строим такой же классификатор с нуля: от TF-IDF до production. И чиним всё, обо что он спотыкается выше.
Смотреть программу →Прогнали свои отзывы и хотите точнее? Модель под вашу лексику, дообучение и интеграция — опишите задачу в брифе.
Заполните заявку: она откроется в Telegram-чате с преподавателем, там же обсудите дату и стоимость.
Короткий бриф: заявка откроется в Telegram-чате с менеджером, там же обсудите детали, сроки и стоимость. Оценка и план работ — в течение 24 часов, бесплатно.