Формирование сервиса построения образа автора как когнитивная технология (1187434), страница 3
Текст из файла (страница 3)
Применение на практике.Исследования, проведенные компанией Facebook показали, что принимая вовниманиеличныехарактеристикипользователя(вычисленныепутемпредварительного опроса), национальные особенности, политическиеубеждения и прочие данные, конверсия рекламы может быть увеличенамногократно. Данное исследование было проведено в тестовом режиме и егорезультаты стали неожиданностью для многих. Другим интересным примеромиспользования персонализированных данных являются алгоритмы предложенияновостей.
По некоторым данным [3], подобная система была опробована напоследних президентских выборах в США, что в свою очередь могло отчастивызвать столь непредсказуемый для многих аналитиков результат выборов.Таким образом, более точная персонализация рекламных и новостныхпредложений являются подтвержденными приложениями для системпостроения образов.113 Построение образа автораВ данной главе будут изложены алгоритмы и принципы построения сервисаформирования образа автора(СФОА). В качестве входных данных сервиспринимает набор текстов, главным требованием для которых являетсявыражения личного отношения к вещам, личного мнения, т.е. ухудшитьрезультаты работы данного сервиса может объемное цитирование или чересчурформальный безэмоциональный язык.
В основе построения данного сервисалежиталгоритмопределенияэмоциональнойокраскипредложения.Классификация предложений проводится в соответствии с таблицей Экмана [6],т.е. каждому из предложений присваивается один из следующих тэгов: радость,грусть, удивление, злость, отвращение, страх. После классификации всехпредложений текста, применяется алгоритм обобщения полученных данных иформируется личностный портрет автора. Все исследования в данной работепроводятся с текстами на английском языке и, как следствие, используютсяправила английской грамматики.3.1.
МетодологияВесь процесс обработки входного текста/текстов состоит из нескольких этапов:1. Построение ERR(Emotion Recognition Rule) для набора данных дляобучения.2. Построение 3-х ступенчатого классификатора.3. Классификация входных ERR [9].3.2. Построение ERRЦелью данной фазы является построение множества ERR(Emotion RecognitionRule) для набора данных для обучения. Для построения этого множества12необходимы специально подготовленные для обучения данные, в которыхкаждое из предложений вручную размечено одной из эмоций по классификацииЭкмана. Каждое из размеченных предложений обрабатывается модулемобработки предложений для построения соответствующего ERR(Рис.1).Рис.1Для построения ERR каждое предложение проходит 3 этапа:1.
Определение части речи каждого из слов.Определение части речи каждого из слов происходит с использованиемStanford POS Tagger [7], поставляемого внутри пакета nltk.Используемые части речи и система обозначений:● PRP - личное местоимение● NN - существительное● JJ - прилагательное● IN - предлог● VB - глагол● RB - наречие● RP - частица или подчинительный союз● WP - вопросительное слово(wh-pronoun)13● CC - сочинительный союзДанная система обозначений является стандартной для Stanford POSTagger.2. Построение зависимостей в предложении.Построениезависимостейвпредложенииреализуетсяпутемиспользования Stanford Dependency Parser [8], который строит деревозависимостей предложения.Вкупе эти два этапа приводят к построению графа зависимостей впредложении(Рис.2).Рис.2.
Пример графа зависимостей.3. Применение множества правил, удаляющих безэмоциональные частипредложения.Целью данного этапа является выделение эмоционально окрашеннойчасти предложения.14Все применяемые правила делятся на 2 категории:1. Разделяющие правила.a. Разделяющие правило #1:Удалить часть предложения перед противительными союзами(but идругие).Посколькупротивительныесоюзыподразумеваютпротивопоставление, часть предложения после этого союза замещаетэмоции, присутствующие в предыдущих частях предложения. Рис.3показывает граф зависимостей предложения “It was a bit complicated butwe had fun”.Рис.3После удаления части до союза “but” остается следующий граф(Рис.4).Рис.4b. Разделяющие правило #2:Удалить часть предложения после слова “as” если после него стоит15местоимение. Такое же правило применяется к словам имеющим сходноес “as” значение.
“As” является подчинительным союзом, что означает,что предложение после “as” является подчинительным. Подчинительноепредложение может рассматриваться как дополнение к основному смыслупредложенияи,следовательно, может быть удалено. Например,предложение “People stare as I run” будет рассматриваться как состоящееиз двух частей: “people stare” и “as I run”.
Однако, вторая часть будетудалена в соответствии с данным правилом.2. Удаляющие правила.a. Удаляющее правило #1:Удалить глагол, если у него нет объекта действия и он относится кwh-слову, поскольку он может рассматриваться как дополнение косновномуэмоциональномузначениюпредложения.Рассмотрим,например, предложение “Where you are going is a disgusting place” и егограф зависимостей. Часть “where you are going” будет удалена из графазависимостей, который теперь будет содержать только часть “disgustingplace”(Рис.5, Рис.6).Рис.516Рис.6b.
Удаляющее правило #2:Удалить глагол, если он является или неэмоциональным или формойглагола “быть”(“to be”), поскольку он также может быть рассмотрен вкачестве дополнения к эмоциональному значению предложения. Для того,чтобы определить имеет глагол эмоциональную окраску или нетиспользуются WordNet-Affect [10], SentiWordNet [11] и эмоциональнаявероятность глагола из множества для обучения.
Мы считаем, что глаголимеет эмоциональную окраску, если он либо существует в множествеWordNet-Affect, либо имеет эмоциональную полярность в SentiWordNet,либо его эмоциональная вероятность(полученная из множества дляобучения)вышенекоторогопороговогозначения.Например,впредыдущем предложении “we had fun” будет минимизирована до “we” и“fun”.c. Удаляющее правило #3:Удалить местоимения если они не связаны с другими узлами графа.Например, если это правило было применено к предыдущему графу дляпредложения “it was a bit complicated but we had fun”, единственнымоставшимся узлом графа будет “fun”, который и будет являться ERR дляданного предложения.Таким образом, то, что остается от предложения после применения всех17вышеуказанных правил и называется ERR - правилом распознавания эмоции.3.3.
Построение классификаторов.Целью данного этапа является сравнение двух ERR, одно из которыхпредставляет входящее предложение, второе - предложение из множестватестовыхданных.НаРис.7представленаобщаяструктурасервисараспознавания эмоций в предложении.Рис.7Для каждого входного предложения система строит соответствующее ERRиспользуя те же шаги, что и для данных для обучения. Построенное ERRсравнивается с каждым размеченным ERR из данных для обучения сиспользованием вариации kNN-алгоритма(алгоритм k ближайших соседей).18Эмоцией входного предложения будет являться эмоция размеченного ERR, скоторым было обнаружено максимальное сходство(для 1NN алгоритма).Интуитивный подход здесь заключается в том, чтобы найти ERR, котороекоторое похоже по структуре и значению с входным ERR. KNN-классификаториспользует словари WordNet и ConceptNet для обобщения и сравнения ERR.Чтобы измерить подобие между входной ERR и ERR из набора для обучения,мы строим kNN-классификатор, основанный на двух измерениях:семантическое подобие и подобие по ключевым словам.
Семантическоеподобие определяет насколько два ERR схожи в своих значениях, в то время какподобие по ключевым словам определяет количество схожих по значению словв этих ERR. Выбранное в итоге ERR - это правило, которое имеет максимальноесемантическое сходство с входным ERR.В результате эмоция либо была классифицирована, либо была отвергнутаклассификатором(подобие с любым размеченным ERR равно нулю), тогдаклассификация проводится методами вероятностной классификации.3.3.1.
KNN-классификатор.Для вычисления подобия между двумя ERR используется функция подобияследующего вида:F similarity = S im(V erbN ounClauses) + Sim(N ounClauses) + Sim(AdjectiveClauses) ++ S im(AdverbClauses)Мы вычисляем схожесть каждой пары однотипных(по части речи) слов путемсравнения двух множеств синонимов для каждого из этих слов. Данноесравнение проводится с использованием технологии WordNet. Для каждой парысхожих по значению слов функция подобия этих ERR увеличивается наединицу. Мы также используем ConceptNet для сравнения законченных фраз19или устойчивых выражений.
Полученное значение для сравнения двух фразлежит в интервале от нуля до единицы и также добавляется к итоговой функцииподобия для двух ERR. В KNN-классификации мы также делаем различиемежду семантических подобием и подобием по ключевым словам. ФункцияSim() возвращает числовое значение вместе с типом подобия; либо подобие поключевым словам, либо семантическое. Однако, если одна из Sim()-функцийвозвращает семантический тип подобия для своих аргументов, общее подобиетакже будет считаться семантическим, иначе - подобие по ключевым словам.Далее будут разъяснены принципы работы KNN-классификатора, но прежденебольшой обзор технологий WordNet и ConceptNet, которые будут активноиспользоваться в работе.3.3.1.1.
WordNetWordNet - это система, позволяющая получить набор синонимов для данногослова. Мы сравниваем пару слов путем сравнения их множеств синонимов,чтобы добавить элемент обобщения. Если пара слов является синонимичной, ток итоговой функции подобия добавляется единица.3.3.1.2. ConceptNetConceptNet - это система, позволяющая проводить сравнение фраз. Важно, чтосхожие по значению фразы могут иметь разную грамматическую структуру, чтоставит дополнительную подзадачу определения грамматических альтернативдля каждой введенной фразы. После сравнения двух фраз мы добавляемзначение, полученное из ConceptNet к итоговой функции подобия.Для сравнения фраз мы используем предварительно сформированные паттерныдля типов фраз.