Розробка

Виявлення сарказму з допомогою нейромереж згорткових

Привіт, Хабр! Уявляю вашій увазі переклад статті “Detecting Sarcasm with Deep Convolutional Neural Networks” автора Elvis Saravia.


Одна з ключових проблем обробки природної мови — виявлення сарказму. Виявлення сарказму важливо в інших областях, таких як емоційні обчислення й аналіз настроїв, оскільки це може відображати полярність пропозиції.

У цій статті показано, як виявити сарказм і також наведено посилання на нейромережевої детектор сарказму.

Сарказм можна розглядати як вираження уїдливої насмішки, або іронію. Приклади сарказму: «Я працюю 40 годин на тиждень, для того щоб залишатися бідним», або «Якщо хворий дуже хоче жити, лікарі безсилі».

Щоб зрозуміти і виявити сарказм, важливо зрозуміти факти, пов’язані з подією. Це дозволяє виявити протиріччя між об’єктивною полярністю (зазвичай негативною) і саркастичними характеристиками, переданими автором (зазвичай позитивними).

Розглянемо приклад: «Мені подобається біль від розставання».
Важко зрозуміти сенс, якщо в цьому твердженні є сарказм. У цьому прикладі «Мені подобається біль» дає знання висловленого автором почуття (в даному випадку позитивного), а «розставання» описує суперечливе почуття (негативне).

Інші проблеми, що існують в розумінні саркастичних висловлювань, — це посилання на декілька подій і необхідність отримати велику кількість фактів, здорового глузду і логічних міркувань.

Модель
«Зсув настрою» часто присутня в спілкуванні, де є сарказм; таким чином, пропонується спочатку підготувати модель настрою (на основі CNN) для вилучення ознак настрою. Модель вибирає локальні ознаки в перших шарах, які потім перетворюються в глобальні ознаки на більш високих рівнях. Саркастичні вираження специфічні для користувача — деякі користувачі використовують більше сарказму, ніж інші.

У пропонованій моделі для виявлення сарказму використовуються, особистісні ознаки, ознаки настрою і ознаки, засновані на емоціях. Набір детекторів становить фреймворк, призначений для виявлення сарказму. Кожен набір ознак вивчається окремими попередньо навченими моделями.

CNN Framework
CNN ефективні при моделюванні ієрархії локальних ознак, щоб виділити глобальні ознаки, що необхідно для вивчення контексту. Вхідні дані представлені у вигляді векторів слів. Для первинної обробки вхідних даних використовується word2vec від Google. Параметри векторів виходять на етапі навчання. Максимальне об’єднання потім застосовується до карт функцій для створення функцій. Після повністю пов’язаного шару, йде шар softmax для отримання остаточного передбачення.

Архітектура показана на малюнку нижче.

Для отримання інших особливостей — настрою (S), емоцій (E) і особистості (P) — моделі CNN проходять попередню тренування і використовуються для добування ознак з наборів даних сарказму. Для навчання кожної моделі використовувалися різні навчальні набори даних. (Докладніше див. У документі)

Тестуються два класифікатора — чистий CNN-класифікатор (CNN) і CNN-витягнуті ознаки, передані у класифікатор SVM (CNN-SVM).

Також навчається окремий базовий класифікатор (B) складається тільки з моделі CNN без включення інших моделей (наприклад, емоцій і настроїв).

Експерименти
Дані. Збалансовані і незбалансовані набори даних, що були отримані з (Ptacek et al., 2014) і детектора сарказму. Імена користувачів, URL-адреси і хеш-теги видаляються, потім застосовується токенизатор NLTK Twitter.

Показники як CNN, так і CNN-SVM-класифікатора, застосовувані до всіх наборів даних, показані в таблиці нижче. Можна помітити, що, коли модель (зокрема, CNN-SVM) поєднує в собі ознаки сарказм, ознаки емоцій, почуттів і риси характеру, вона перевершує всі інші моделі, за винятком базової моделі (B).

Були випробувані можливості обобщаемости моделей, і основний висновок полягав у тому, що якщо набори даних відрізнялися за своєю природою, це суттєво впливало на результатычто показано на малюнку нижче. Наприклад, навчання проводилося по набору даних 1 і тестувалося по набору даних 2; F1-оцінка моделі склала 33,05%.

Related Articles

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Close