Что такое LIWC и почему это важно?

LIWC (Linguistic Inquiry and Word Count) — это лексикон, используемый при обработке естественного языка для извлечения не только эмоций и чувств, стоящих за текстами, но и для понимания широкого спектра психолингвистических характеристик людей только из текста. LIWC — полезный инструмент для извлечения мыслей и поведения людей, стоящих за текстом.

Например, люди говорят о работе или семье? Демонстрирует ли их текст уверенность/доверие или они говорят об отпуске или достижении? Все эти тонкости можно уловить с помощью лексикона (словаря) LIWC, корпуса английских слов, который распределяет слова по разным категориям или группам.

Почему LIWC — это больше, чем просто извлечение тональности

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

«Поздравляем! ты должна быть гордой сестрой» → семья

«Поздравляем! ты должен быть гордым начальником» -› работа

Существует 69 различных категорий, которые делают LIWC золотым инструментом для извлечения лингвистических признаков. Вот некоторые из этих категорий:

Реализация извлечения признаков LIWC в Python

Шаг 1. Как показано в приведенном ниже коде, установите LIWC и импортируйте необходимые библиотеки.

Шаг 2. Прочитайте текстовый набор данных, очистите его и сохраните как отдельный столбец clean_text

Шаг 3: Tokenize очистить набор данных как df_train["tokens"]

Шаг 4: Загрузите LIWC2015_English.dic . Лицензию LIWC можно приобрести, а лексикон LIWC можно найти по адресу https://github.com/chbrown/liwc-python/issues/5. Если вы хотите использовать версию LIWC 2007 года, ее можно найти по адресу https://github.com/nikiparmar/Twitter-Sentiment-Analysis/blob/master/LIWC2007dictionary%20poster.xls.

Шаг 5: Проанализируйте LIWC2015_English.dic tokens и подсчитайте эти токены, присутствующие в вашем наборе данных df_train["tokens"], за один category . В приведенном ниже примере это family(Family)category . При этом будут учитываться слова, относящиеся к семье, такие как сын, дочь, благодарение и т. д. Точно так же другие категории лексикона LIWC могут быть извлечены из df_train["tokens"].

  • Счастливый, красивый, хороший = положительные эмоции.
  • Безусловно, Гордость, Победа=Оптимизм.

Шаг 6: Извлеченные функции из LIWC должны выглядеть так:

Ресурсы:



https://lit.eecs.umich.edu/geoliwc/liwc_dictionary.html#:~:text=As%20in%20this%20example%2C%20many,words%20that%20define%20that%20scale.