SlideShare uma empresa Scribd logo
1 de 57
Baixar para ler offline
SentiScan 
система автоматического анализа 
тональности в social media 
AI '14
whois 
Леонид Литвиненко 
CTO 
Дмитрий Кан 
CEO 
&
YouScan: система мониторинга соцмедиа 
Мониторинг ВК, Facebook, Twitter, Instagram, форумов, сайтов отзывов 
Встроенная аналитика и инструменты командной работы 
Используют отделы маркетинга, PR, поддержки клиентов крупных компаний
Лингвистические алгоритмы и API 
www.semanticanalyzer.info 
dk@semanticanalyzer.info
outline 
- Постановка задачи 
- Теоретические границы 
- Why not machine learning 
- Алгоритм 
- Типичные проблемы 
- Метрики качества 
- Continuous integration 
- Система оценки 
- Планы на будущее
пример 
Object: Путин 
Sentiment tag?
неоднозначность постановки задачи 
- Настроение автора? 
- Настроение читающего? 
- Личное отношение к теме? 
- Что-то ещё, что предписал заказчик?
тональность для компьютера 
- Общий тональный фон 
- Извлечение мнений 
- Извлечение мнения по конретному 
объекту 
- Определение силы тональности или 
эмоции
от задачи к решению: уровень 
качества 
MTurk, ручная аннотация: 80% 
согласия [1] 
Реальное качество -- то, которое 
система показывает на 
неаннотированных данных
why not machine learning? 
Некоторые методы дают 90% на 
тестовых данных
why not machine learning? 
Сложно (невозможно?) сделать таргет- 
ориентированный метод
why not machine learning? 
CEO of the company turned 50.
переобучение моделей 
[2]
потенцильно работающие методы 
Naive Bayes -- для которотких сообщений 
(твитов) [3] 
SVM -- для длинных (блог пост или статья)
свежие веяния: deep learning 
Back to the future: нейронные сети из 
80-х [4] 
Многонейронная логистическая 
регрессия 
Требует больших вычислений 
Не требует экспертных знаний
[5]
тональность в реальной жизни 
Контроль над качеством 
Быстрая аннотация 
Высокая точность (precision) при 
возможных потерях в выдаче
алгоритм (sketch) 
- Лемматизация 
- Полярные лексиконы 
- Правила для русского языка 
- Shallow parsing + анафора 
- Учёт опечаток (Levenstein)
полярные лексиконы 
- Автоматический mining из twitter: :) & :( 
- Ручная вычитка частотных таблиц n- 
грамм 
- Отбор полярно-однозначных кандидатов
полуавтоматическое расширение 
Vatzivassiloglou 
& McKeown, 
1997
правила 
не / без / нет / … + {LEXICON_ENTRY} 
=> инвертированная полярность
правила 
а / но / хотя / зато / ... - 
противопоставление полярностей левой 
и правой части
правила: мультипасс оконный 
алгоритм
shallow parsing 
Отрицание 
Противительный союз 
Большинство любит это, а 
мне это не нравится. 
без, не, еле, ни, 
нет (проблем) 
Score = totalPosScore - totalNegScore - { 0 | ½ * 
sentimentCount }
shallow parsing 
Противительный союз 
Мне понравился новый iPhone, а 
GalaxyS неудобен в использовании. 
а, но, зато, 
только, хотя 
Score = totalPosScore - totalNegScore - { 0 | ½ * 
sentimentCount }
schematic flow on sentence level 
Большинство любит это, а мне не нравится. 
Phase 1 (negations): posScore = 0 - NEGATION_WEIGHT= -2 
Phase 2 (individual words): 
“любит” posScore = -2 + 1 = -1 
“не” negScore = 0 + 1 = 1 
“нравится” posScore = -1 + 1 = 0 
Phase 3 (opposite conjunctions): sentimentCount = 3 
totalScore = posScore - negScore - ½ * sentimentCount = 
= 0 - 1 - 3/2 = -5/2 
Sentiment: NEGATIVE
анафора 
Джон встретил сегодня 
Ивана. Он передал 
Ивану текст договора.
анафора 
Джон встретил сегодня 
Ивана. Он передал 
Ивану текст договора.
cтруктурный подход 
∃ местоимение (м.р., ед.ч., им.п.) ⊂ P2  
(Джон ⊄ P2) = Он Джон 
Struct 1 
{ 
Джон 
встретить 
Иван 
} 
Struct 2 
{ 
Он 
передавать 
Иван 
}
анафора: симметрия 
Джон встретил Ивана. Тот 
передал Джону ответ 
директора.
анафора: симметрия 
Джон встретил Ивана. 
Тот передал Джону ответ 
директора.
поиск ссылки 
∃ местоимение (м.р., ед.ч., им.п.) ⊂ P2  
(Иван ⊄ P2) = Тот Иван 
Struct 1 
{ 
Джон 
встретить 
Иван 
} 
Struct 2 
{ 
Тот 
передавать 
Джон 
}
гео-словарный подход (Interfax) 
США? 
Америка? 
Geo 
словарь 
Соединенные 
Штаты 
Глава Америки… Сегодня президент США Б. 
Обама 
Глава 
президент 
премьер- 
министр 
директор 
страна, 
государство 
правительство 
завод 
leader 
leader 
leader 
[7]
типичные проблемы 
Мне от похмелья помогают ужасные 
бичевые кружки магги с сухариками, 
открыла чудо 
Алгоритм: NEUTRAL 
Ручная: NEGATIVE 
Исправление: пополнить словарь 
лемматизатора словами бичевый (-ая, -ое, ые)
типичные проблемы #2 
своих близких. Мы знаем несколько мест, где можно это сделать в Апатитах: - 
Магазин электротоваров “АКЦЕНТ+” на ул. Дзержинского, 35 (брелоки). - 
Гипермаркет “Твой” (дорожные жилеты, брелоки). - Магазин “Зооландия” (майки, 
шлейки, ошейники для собак). - Магазин “Спортмастер” (браслеты, полоски на 
велосипедные спицы). - Магазины “Евророс” (жилеты, брелоки). - Книжный магазин 
“Студент” на ул. Бредова, 13 (брелоки). - Обувной отдел в магазине “Силуэт” 
(браслеты, брелоки). - Магазин игрушек “Фантик” (брелоки). - Заправка “Статойл” 
(дорожные жилеты ... 
Алгоритм: NEGATIVE 
Ручная: NEUTRAL 
Исправление: В негативный словарь закрались 
слова: “близкий” и “близко”. Их удаление 
исправило ситуацию.
сложный случай 
Ужасно замерзли( сейчас в Мак Кафе 
пьем горячий шоколад, ммм ... 
наслаждение) 
Проблема: missing sentence boundary 
= sentiment overlap
пополнение базы лексем 
пичаль печаль 
инет интернет 
ваще вообще
качество =
какие задачи решает 
клиент 
анализ отношения к продуктам 
реагирование
какие задачи решает 
клиент 
общая картина (recall) 
точный негатив (precision)
качество = max precision 
max recall
качество = max F (P, R) 
F (P, R) = 2 P * R / (P + R)
качество это не только 
max F (P, R)
качество это процесс
инструментарий 
- эталонная выборка 
- QA для новых версий 
- A/B тесты конфигураций 
- ошибки определения контекста 
- поток исправлений от клиентов
эталонная 
выборка 
- согласие в оценке 
3-х лингвистов 
- легко пополнять
QA новых 
версий 
- по тональности 
- конкретные 
тексты 
todo 
- те же метрики, 
разные тексты
A/B тесты 
конфигов 
- title  text 
- emoticons 
- words boosters 
todo 
- levenstein typos 
- версии словарей
определение 
контекста 
- ошибка 
лемматайзера 
todo 
- тест с другими 
лемматайзерами
поток 
исправлений 
- инсайты 
todo 
- больше инсайтов 
- авто улучшение
human vs algorithm
Банк 
и постригут 
какого лоха 
дополнительный доход 
эти ребусы 
обнулить абонку
Michelin 
бешено дрифтит 
единственная компания 
колёса tweel 
пневма рулит 
nokian hakkapeliitta
больше инсайтов 
- частотные биграммы - кандидаты в 
полярный словарь 
- какое направление исправлений 
превалирует 
- moving average precision/recall - 
сигнал для движка
we’re hiring :) 
@dmitrykan 
@llytvynenko
Литература 
[1] Bermingham, A. and Smeaton, A.F. (2009). A study 
of interannotator agreement for opinion retrieval. In 
SIGIR, 784-785. 
[2] http://habrahabr.ru/company/yandex/blog/206058/ 
[3] http://habrahabr.ru/post/229779/ 
[4] http://vimeo.com/77050653 
[5] http://nlp.stanford.edu/sentiment/ 
[6] Hatzivassiloglou  McKeown: Predicting the 
semantic orientation of adjectives. 1997 
[7] Zharikov A et al. Information Retrieval System for 
News Articles in Russian // The joint RuSSIR/EDBT 2011 
Summer School, pp. 5-14. August 15-19, 2011

Mais conteúdo relacionado

Semelhante a SentiScan: система автоматической разметки тональности в social media

Метод построения корпуса коротких текстов
Метод построения корпуса коротких текстовМетод построения корпуса коротких текстов
Метод построения корпуса коротких текстовYuliya Rubtsova
 
ASO очень подробно
ASO очень подробноASO очень подробно
ASO очень подробноSergey Sharov
 
Яндекс Малый ШАД - лингвистика в поиске
Яндекс  Малый ШАД - лингвистика в поискеЯндекс  Малый ШАД - лингвистика в поиске
Яндекс Малый ШАД - лингвистика в поискеЕвгений Летов
 
3-е свидание с functional-js, что дальше
3-е свидание с functional-js, что дальше3-е свидание с functional-js, что дальше
3-е свидание с functional-js, что дальшеArtjoker
 
Максим Литвинов
Максим ЛитвиновМаксим Литвинов
Максим ЛитвиновLidia Pivovarova
 
TopRater.com Машинное понимание миллионов отзывов / Павел Велихов (TopRater)
TopRater.com Машинное понимание миллионов отзывов / Павел Велихов (TopRater)TopRater.com Машинное понимание миллионов отзывов / Павел Велихов (TopRater)
TopRater.com Машинное понимание миллионов отзывов / Павел Велихов (TopRater)Ontico
 
Получили заказ на постредактирование МП (PEMT): что дальше?
Получили заказ на постредактирование МП (PEMT): что дальше?Получили заказ на постредактирование МП (PEMT): что дальше?
Получили заказ на постредактирование МП (PEMT): что дальше?Tetyana Struk TrainStation
 
Project Management 2.0: AI Transformation
Project Management 2.0: AI TransformationProject Management 2.0: AI Transformation
Project Management 2.0: AI TransformationEduard Tyantov
 
Инсталляция системы статистических вычислений R
Инсталляция системы статистических вычислений RИнсталляция системы статистических вычислений R
Инсталляция системы статистических вычислений RSergey Mastitsky
 
Back to the future: Функциональное программирование вчера и сегодня
Back to the future: Функциональное программирование вчера и сегодняBack to the future: Функциональное программирование вчера и сегодня
Back to the future: Функциональное программирование вчера и сегодняAlexander Granin
 
тема множество для загрузки 2013
тема множество для загрузки 2013тема множество для загрузки 2013
тема множество для загрузки 2013AliyaAringazinova
 
Fact Extraction (ideograph)
Fact Extraction (ideograph)Fact Extraction (ideograph)
Fact Extraction (ideograph)NLPseminar
 
Information Extraction Overview
Information Extraction OverviewInformation Extraction Overview
Information Extraction OverviewNLPseminar
 
KONVR - интерактивное тестирование и улучшение конверсии рекламных страниц
KONVR - интерактивное тестирование и улучшение конверсии рекламных страницKONVR - интерактивное тестирование и улучшение конверсии рекламных страниц
KONVR - интерактивное тестирование и улучшение конверсии рекламных страницEugene Trofimenko
 
Creating a General Russian Sentiment Lexicon
Creating a General Russian Sentiment LexiconCreating a General Russian Sentiment Lexicon
Creating a General Russian Sentiment LexiconИванов Иванов
 
Технология "Спектр" Яндекса и классификация веб-страниц
Технология "Спектр" Яндекса и классификация веб-страницТехнология "Спектр" Яндекса и классификация веб-страниц
Технология "Спектр" Яндекса и классификация веб-страницАлександр Алаев
 

Semelhante a SentiScan: система автоматической разметки тональности в social media (20)

Метод построения корпуса коротких текстов
Метод построения корпуса коротких текстовМетод построения корпуса коротких текстов
Метод построения корпуса коротких текстов
 
ASO очень подробно
ASO очень подробноASO очень подробно
ASO очень подробно
 
Rule b platf
Rule b platfRule b platf
Rule b platf
 
PressPortrets
PressPortretsPressPortrets
PressPortrets
 
Яндекс Малый ШАД - лингвистика в поиске
Яндекс  Малый ШАД - лингвистика в поискеЯндекс  Малый ШАД - лингвистика в поиске
Яндекс Малый ШАД - лингвистика в поиске
 
Извлечение знаний и фактов из текстов
Извлечение знаний и фактов из текстовИзвлечение знаний и фактов из текстов
Извлечение знаний и фактов из текстов
 
Авиком
АвикомАвиком
Авиком
 
3-е свидание с functional-js, что дальше
3-е свидание с functional-js, что дальше3-е свидание с functional-js, что дальше
3-е свидание с functional-js, что дальше
 
Максим Литвинов
Максим ЛитвиновМаксим Литвинов
Максим Литвинов
 
TopRater.com Машинное понимание миллионов отзывов / Павел Велихов (TopRater)
TopRater.com Машинное понимание миллионов отзывов / Павел Велихов (TopRater)TopRater.com Машинное понимание миллионов отзывов / Павел Велихов (TopRater)
TopRater.com Машинное понимание миллионов отзывов / Павел Велихов (TopRater)
 
Получили заказ на постредактирование МП (PEMT): что дальше?
Получили заказ на постредактирование МП (PEMT): что дальше?Получили заказ на постредактирование МП (PEMT): что дальше?
Получили заказ на постредактирование МП (PEMT): что дальше?
 
Project Management 2.0: AI Transformation
Project Management 2.0: AI TransformationProject Management 2.0: AI Transformation
Project Management 2.0: AI Transformation
 
Инсталляция системы статистических вычислений R
Инсталляция системы статистических вычислений RИнсталляция системы статистических вычислений R
Инсталляция системы статистических вычислений R
 
Back to the future: Функциональное программирование вчера и сегодня
Back to the future: Функциональное программирование вчера и сегодняBack to the future: Функциональное программирование вчера и сегодня
Back to the future: Функциональное программирование вчера и сегодня
 
тема множество для загрузки 2013
тема множество для загрузки 2013тема множество для загрузки 2013
тема множество для загрузки 2013
 
Fact Extraction (ideograph)
Fact Extraction (ideograph)Fact Extraction (ideograph)
Fact Extraction (ideograph)
 
Information Extraction Overview
Information Extraction OverviewInformation Extraction Overview
Information Extraction Overview
 
KONVR - интерактивное тестирование и улучшение конверсии рекламных страниц
KONVR - интерактивное тестирование и улучшение конверсии рекламных страницKONVR - интерактивное тестирование и улучшение конверсии рекламных страниц
KONVR - интерактивное тестирование и улучшение конверсии рекламных страниц
 
Creating a General Russian Sentiment Lexicon
Creating a General Russian Sentiment LexiconCreating a General Russian Sentiment Lexicon
Creating a General Russian Sentiment Lexicon
 
Технология "Спектр" Яндекса и классификация веб-страниц
Технология "Спектр" Яндекса и классификация веб-страницТехнология "Спектр" Яндекса и классификация веб-страниц
Технология "Спектр" Яндекса и классификация веб-страниц
 

Mais de Dmitry Kan

London IR Meetup - Players in Vector Search_ algorithms, software and use cases
London IR Meetup - Players in Vector Search_ algorithms, software and use casesLondon IR Meetup - Players in Vector Search_ algorithms, software and use cases
London IR Meetup - Players in Vector Search_ algorithms, software and use casesDmitry Kan
 
Vector databases and neural search
Vector databases and neural searchVector databases and neural search
Vector databases and neural searchDmitry Kan
 
Haystack LIVE! - 5 ways to increase result diversity at web-scale - Dmitry Ka...
Haystack LIVE! - 5 ways to increase result diversity at web-scale - Dmitry Ka...Haystack LIVE! - 5 ways to increase result diversity at web-scale - Dmitry Ka...
Haystack LIVE! - 5 ways to increase result diversity at web-scale - Dmitry Ka...Dmitry Kan
 
Social spam detection by SemanticAnalyzer Group
Social spam detection by SemanticAnalyzer GroupSocial spam detection by SemanticAnalyzer Group
Social spam detection by SemanticAnalyzer GroupDmitry Kan
 
Lucene revolution eu 2013 dublin writeup
Lucene revolution eu 2013 dublin writeupLucene revolution eu 2013 dublin writeup
Lucene revolution eu 2013 dublin writeupDmitry Kan
 
Starget sentiment analyzer for English
Starget sentiment analyzer for EnglishStarget sentiment analyzer for English
Starget sentiment analyzer for EnglishDmitry Kan
 
Linguistic component Tokenizer for the Russian language
Linguistic component Tokenizer for the Russian languageLinguistic component Tokenizer for the Russian language
Linguistic component Tokenizer for the Russian languageDmitry Kan
 
Linguistic component Lemmatizer for the Russian language
Linguistic component Lemmatizer for the Russian languageLinguistic component Lemmatizer for the Russian language
Linguistic component Lemmatizer for the Russian languageDmitry Kan
 
Linguistic component Sentiment Analyzer for the Russian language
Linguistic component Sentiment Analyzer for the Russian languageLinguistic component Sentiment Analyzer for the Russian language
Linguistic component Sentiment Analyzer for the Russian languageDmitry Kan
 
Solr onfitnesse learningfromberlinbuzzwords
Solr onfitnesse learningfromberlinbuzzwordsSolr onfitnesse learningfromberlinbuzzwords
Solr onfitnesse learningfromberlinbuzzwordsDmitry Kan
 
Rule based approach to sentiment analysis at romip’11 slides
Rule based approach to sentiment analysis at romip’11 slidesRule based approach to sentiment analysis at romip’11 slides
Rule based approach to sentiment analysis at romip’11 slidesDmitry Kan
 
Machine translation course program (in English)
Machine translation course program (in English)Machine translation course program (in English)
Machine translation course program (in English)Dmitry Kan
 
Rule based approach to sentiment analysis at ROMIP 2011
Rule based approach to sentiment analysis at ROMIP 2011Rule based approach to sentiment analysis at ROMIP 2011
Rule based approach to sentiment analysis at ROMIP 2011Dmitry Kan
 
Icsoft 2011 51_cr
Icsoft 2011 51_crIcsoft 2011 51_cr
Icsoft 2011 51_crDmitry Kan
 
Poster: Method for an automatic generation of a semantic-level contextual tra...
Poster: Method for an automatic generation of a semantic-level contextual tra...Poster: Method for an automatic generation of a semantic-level contextual tra...
Poster: Method for an automatic generation of a semantic-level contextual tra...Dmitry Kan
 
Semantic feature machine translation system
Semantic feature machine translation systemSemantic feature machine translation system
Semantic feature machine translation systemDmitry Kan
 
NoSQL, Apache SOLR and Apache Hadoop
NoSQL, Apache SOLR and Apache HadoopNoSQL, Apache SOLR and Apache Hadoop
NoSQL, Apache SOLR and Apache HadoopDmitry Kan
 
Introduction To Machine Translation 1
Introduction To Machine Translation 1Introduction To Machine Translation 1
Introduction To Machine Translation 1Dmitry Kan
 
Introduction To Machine Translation
Introduction To Machine TranslationIntroduction To Machine Translation
Introduction To Machine TranslationDmitry Kan
 
Semantic Analysis: theory, applications and use cases
Semantic Analysis: theory, applications and use casesSemantic Analysis: theory, applications and use cases
Semantic Analysis: theory, applications and use casesDmitry Kan
 

Mais de Dmitry Kan (20)

London IR Meetup - Players in Vector Search_ algorithms, software and use cases
London IR Meetup - Players in Vector Search_ algorithms, software and use casesLondon IR Meetup - Players in Vector Search_ algorithms, software and use cases
London IR Meetup - Players in Vector Search_ algorithms, software and use cases
 
Vector databases and neural search
Vector databases and neural searchVector databases and neural search
Vector databases and neural search
 
Haystack LIVE! - 5 ways to increase result diversity at web-scale - Dmitry Ka...
Haystack LIVE! - 5 ways to increase result diversity at web-scale - Dmitry Ka...Haystack LIVE! - 5 ways to increase result diversity at web-scale - Dmitry Ka...
Haystack LIVE! - 5 ways to increase result diversity at web-scale - Dmitry Ka...
 
Social spam detection by SemanticAnalyzer Group
Social spam detection by SemanticAnalyzer GroupSocial spam detection by SemanticAnalyzer Group
Social spam detection by SemanticAnalyzer Group
 
Lucene revolution eu 2013 dublin writeup
Lucene revolution eu 2013 dublin writeupLucene revolution eu 2013 dublin writeup
Lucene revolution eu 2013 dublin writeup
 
Starget sentiment analyzer for English
Starget sentiment analyzer for EnglishStarget sentiment analyzer for English
Starget sentiment analyzer for English
 
Linguistic component Tokenizer for the Russian language
Linguistic component Tokenizer for the Russian languageLinguistic component Tokenizer for the Russian language
Linguistic component Tokenizer for the Russian language
 
Linguistic component Lemmatizer for the Russian language
Linguistic component Lemmatizer for the Russian languageLinguistic component Lemmatizer for the Russian language
Linguistic component Lemmatizer for the Russian language
 
Linguistic component Sentiment Analyzer for the Russian language
Linguistic component Sentiment Analyzer for the Russian languageLinguistic component Sentiment Analyzer for the Russian language
Linguistic component Sentiment Analyzer for the Russian language
 
Solr onfitnesse learningfromberlinbuzzwords
Solr onfitnesse learningfromberlinbuzzwordsSolr onfitnesse learningfromberlinbuzzwords
Solr onfitnesse learningfromberlinbuzzwords
 
Rule based approach to sentiment analysis at romip’11 slides
Rule based approach to sentiment analysis at romip’11 slidesRule based approach to sentiment analysis at romip’11 slides
Rule based approach to sentiment analysis at romip’11 slides
 
Machine translation course program (in English)
Machine translation course program (in English)Machine translation course program (in English)
Machine translation course program (in English)
 
Rule based approach to sentiment analysis at ROMIP 2011
Rule based approach to sentiment analysis at ROMIP 2011Rule based approach to sentiment analysis at ROMIP 2011
Rule based approach to sentiment analysis at ROMIP 2011
 
Icsoft 2011 51_cr
Icsoft 2011 51_crIcsoft 2011 51_cr
Icsoft 2011 51_cr
 
Poster: Method for an automatic generation of a semantic-level contextual tra...
Poster: Method for an automatic generation of a semantic-level contextual tra...Poster: Method for an automatic generation of a semantic-level contextual tra...
Poster: Method for an automatic generation of a semantic-level contextual tra...
 
Semantic feature machine translation system
Semantic feature machine translation systemSemantic feature machine translation system
Semantic feature machine translation system
 
NoSQL, Apache SOLR and Apache Hadoop
NoSQL, Apache SOLR and Apache HadoopNoSQL, Apache SOLR and Apache Hadoop
NoSQL, Apache SOLR and Apache Hadoop
 
Introduction To Machine Translation 1
Introduction To Machine Translation 1Introduction To Machine Translation 1
Introduction To Machine Translation 1
 
Introduction To Machine Translation
Introduction To Machine TranslationIntroduction To Machine Translation
Introduction To Machine Translation
 
Semantic Analysis: theory, applications and use cases
Semantic Analysis: theory, applications and use casesSemantic Analysis: theory, applications and use cases
Semantic Analysis: theory, applications and use cases
 

SentiScan: система автоматической разметки тональности в social media

  • 1. SentiScan система автоматического анализа тональности в social media AI '14
  • 2. whois Леонид Литвиненко CTO Дмитрий Кан CEO &
  • 3. YouScan: система мониторинга соцмедиа Мониторинг ВК, Facebook, Twitter, Instagram, форумов, сайтов отзывов Встроенная аналитика и инструменты командной работы Используют отделы маркетинга, PR, поддержки клиентов крупных компаний
  • 4. Лингвистические алгоритмы и API www.semanticanalyzer.info dk@semanticanalyzer.info
  • 5. outline - Постановка задачи - Теоретические границы - Why not machine learning - Алгоритм - Типичные проблемы - Метрики качества - Continuous integration - Система оценки - Планы на будущее
  • 7. неоднозначность постановки задачи - Настроение автора? - Настроение читающего? - Личное отношение к теме? - Что-то ещё, что предписал заказчик?
  • 8. тональность для компьютера - Общий тональный фон - Извлечение мнений - Извлечение мнения по конретному объекту - Определение силы тональности или эмоции
  • 9. от задачи к решению: уровень качества MTurk, ручная аннотация: 80% согласия [1] Реальное качество -- то, которое система показывает на неаннотированных данных
  • 10. why not machine learning? Некоторые методы дают 90% на тестовых данных
  • 11. why not machine learning? Сложно (невозможно?) сделать таргет- ориентированный метод
  • 12. why not machine learning? CEO of the company turned 50.
  • 14. потенцильно работающие методы Naive Bayes -- для которотких сообщений (твитов) [3] SVM -- для длинных (блог пост или статья)
  • 15. свежие веяния: deep learning Back to the future: нейронные сети из 80-х [4] Многонейронная логистическая регрессия Требует больших вычислений Не требует экспертных знаний
  • 16. [5]
  • 17. тональность в реальной жизни Контроль над качеством Быстрая аннотация Высокая точность (precision) при возможных потерях в выдаче
  • 18. алгоритм (sketch) - Лемматизация - Полярные лексиконы - Правила для русского языка - Shallow parsing + анафора - Учёт опечаток (Levenstein)
  • 19. полярные лексиконы - Автоматический mining из twitter: :) & :( - Ручная вычитка частотных таблиц n- грамм - Отбор полярно-однозначных кандидатов
  • 21. правила не / без / нет / … + {LEXICON_ENTRY} => инвертированная полярность
  • 22. правила а / но / хотя / зато / ... - противопоставление полярностей левой и правой части
  • 24. shallow parsing Отрицание Противительный союз Большинство любит это, а мне это не нравится. без, не, еле, ни, нет (проблем) Score = totalPosScore - totalNegScore - { 0 | ½ * sentimentCount }
  • 25. shallow parsing Противительный союз Мне понравился новый iPhone, а GalaxyS неудобен в использовании. а, но, зато, только, хотя Score = totalPosScore - totalNegScore - { 0 | ½ * sentimentCount }
  • 26. schematic flow on sentence level Большинство любит это, а мне не нравится. Phase 1 (negations): posScore = 0 - NEGATION_WEIGHT= -2 Phase 2 (individual words): “любит” posScore = -2 + 1 = -1 “не” negScore = 0 + 1 = 1 “нравится” posScore = -1 + 1 = 0 Phase 3 (opposite conjunctions): sentimentCount = 3 totalScore = posScore - negScore - ½ * sentimentCount = = 0 - 1 - 3/2 = -5/2 Sentiment: NEGATIVE
  • 27. анафора Джон встретил сегодня Ивана. Он передал Ивану текст договора.
  • 28. анафора Джон встретил сегодня Ивана. Он передал Ивану текст договора.
  • 29. cтруктурный подход ∃ местоимение (м.р., ед.ч., им.п.) ⊂ P2 (Джон ⊄ P2) = Он Джон Struct 1 { Джон встретить Иван } Struct 2 { Он передавать Иван }
  • 30. анафора: симметрия Джон встретил Ивана. Тот передал Джону ответ директора.
  • 31. анафора: симметрия Джон встретил Ивана. Тот передал Джону ответ директора.
  • 32. поиск ссылки ∃ местоимение (м.р., ед.ч., им.п.) ⊂ P2 (Иван ⊄ P2) = Тот Иван Struct 1 { Джон встретить Иван } Struct 2 { Тот передавать Джон }
  • 33. гео-словарный подход (Interfax) США? Америка? Geo словарь Соединенные Штаты Глава Америки… Сегодня президент США Б. Обама Глава президент премьер- министр директор страна, государство правительство завод leader leader leader [7]
  • 34. типичные проблемы Мне от похмелья помогают ужасные бичевые кружки магги с сухариками, открыла чудо Алгоритм: NEUTRAL Ручная: NEGATIVE Исправление: пополнить словарь лемматизатора словами бичевый (-ая, -ое, ые)
  • 35. типичные проблемы #2 своих близких. Мы знаем несколько мест, где можно это сделать в Апатитах: - Магазин электротоваров “АКЦЕНТ+” на ул. Дзержинского, 35 (брелоки). - Гипермаркет “Твой” (дорожные жилеты, брелоки). - Магазин “Зооландия” (майки, шлейки, ошейники для собак). - Магазин “Спортмастер” (браслеты, полоски на велосипедные спицы). - Магазины “Евророс” (жилеты, брелоки). - Книжный магазин “Студент” на ул. Бредова, 13 (брелоки). - Обувной отдел в магазине “Силуэт” (браслеты, брелоки). - Магазин игрушек “Фантик” (брелоки). - Заправка “Статойл” (дорожные жилеты ... Алгоритм: NEGATIVE Ручная: NEUTRAL Исправление: В негативный словарь закрались слова: “близкий” и “близко”. Их удаление исправило ситуацию.
  • 36. сложный случай Ужасно замерзли( сейчас в Мак Кафе пьем горячий шоколад, ммм ... наслаждение) Проблема: missing sentence boundary = sentiment overlap
  • 37. пополнение базы лексем пичаль печаль инет интернет ваще вообще
  • 39. какие задачи решает клиент анализ отношения к продуктам реагирование
  • 40. какие задачи решает клиент общая картина (recall) точный негатив (precision)
  • 41.
  • 42. качество = max precision max recall
  • 43. качество = max F (P, R) F (P, R) = 2 P * R / (P + R)
  • 44. качество это не только max F (P, R)
  • 46. инструментарий - эталонная выборка - QA для новых версий - A/B тесты конфигураций - ошибки определения контекста - поток исправлений от клиентов
  • 47. эталонная выборка - согласие в оценке 3-х лингвистов - легко пополнять
  • 48. QA новых версий - по тональности - конкретные тексты todo - те же метрики, разные тексты
  • 49. A/B тесты конфигов - title text - emoticons - words boosters todo - levenstein typos - версии словарей
  • 50. определение контекста - ошибка лемматайзера todo - тест с другими лемматайзерами
  • 51. поток исправлений - инсайты todo - больше инсайтов - авто улучшение
  • 53. Банк и постригут какого лоха дополнительный доход эти ребусы обнулить абонку
  • 54. Michelin бешено дрифтит единственная компания колёса tweel пневма рулит nokian hakkapeliitta
  • 55. больше инсайтов - частотные биграммы - кандидаты в полярный словарь - какое направление исправлений превалирует - moving average precision/recall - сигнал для движка
  • 56. we’re hiring :) @dmitrykan @llytvynenko
  • 57. Литература [1] Bermingham, A. and Smeaton, A.F. (2009). A study of interannotator agreement for opinion retrieval. In SIGIR, 784-785. [2] http://habrahabr.ru/company/yandex/blog/206058/ [3] http://habrahabr.ru/post/229779/ [4] http://vimeo.com/77050653 [5] http://nlp.stanford.edu/sentiment/ [6] Hatzivassiloglou McKeown: Predicting the semantic orientation of adjectives. 1997 [7] Zharikov A et al. Information Retrieval System for News Articles in Russian // The joint RuSSIR/EDBT 2011 Summer School, pp. 5-14. August 15-19, 2011