"ibm watson — компьютерная лингвистика". Артём...

36
1

Upload: yandex

Post on 27-Dec-2014

3.753 views

Category:

Technology


10 download

DESCRIPTION

Компьютерная система IBM Watson основана на технологии DeepQA и предназначена для извлечения и анализа информации из текстов на естественном языке, а также для быстрого поиска ответов на вопросы. DeepQA основана на статистическом подходе в компьютерной лингвистике, то есть для построения когнитивных систем используются мощности вычислительной техники. Для подобных систем важно подбирать сложные и интересные тесты. Отличным вариантом оказалась телевикторина Jeopardy! (американский прообраз «Своей игры»). В докладе описан общий подход DeepQA к поиску ответа, а также разбираются несколько частных методов. Мы проследим за тем, как IBM Watson учился всё лучше отвечать на вопросы. В заключение обсудим возможности практического применения технологий DeepQA в бизнесе и социальной среде — в частности, обсудим последние результаты использования когнитивных систем в медицине.

TRANSCRIPT

Page 1: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

1

Page 2: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation

IBM WatsonКомпьютерная лингвистика

Артём Семенихин

Follow us @IBMWatson

Page 3: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 3

Понимает вопросы на естественном для человека языке

Адаптируется и учится с помощью пользователя

Генерирует и оценивает гипотезы для ответа

Что делает IBM Watson?

1 2

3

Page 4: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 4

Чем экспертная система отличается от поисковой машины?

Человек

Поиск Находит документы по ключевым словам

Возвращает ранжированный список

Формулирует вопрос

Выделяет ключевые слова

Читает документы, ищет ответ

Оценивает результат

Эксперт Понимает вопрос

Находит варианты ответов

Предоставляет отчет

Оценивает степень уверенности в ответе

Задает вопрос

Оценивает результат

Человек

Page 5: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 5

Декомпозиция вопроса

Оценка ответов

Models

Ответ со степенью

уверенности

Вопрос

Источники доказательств

Models

Models

Models

Models

Models Поиск Генерация ответов-кандидатов

Генерация гипотезы Доказательство и оценка

Окончательная оценка и

ранжирование Синтез

Источники ответов

Анализ вопроса и темы

Получение доказательств

Оценка доказательств

Machine learning: изученные модели для взвешенной

оценки доказательств

Генерация гипотезы Доказательство и оценка

Архитектура Watson: DeepQA

Page 6: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 6

На чем основан DeepQA?

§ PIQUANT (TREC) § UIMA (uima.apache.org)

§ UIMA – фреймворк для аналитики § Цель UIMA – извлекать знания

UIMA pipeline

Аннотатор Аннотатор Аннотатор

§ Hadoop (Map/Sort/Reduce)

Page 7: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 7

DeepQA: Анализ вопроса

1.  Выделить Focus 2.  Найти LAT 3.  Определить класс вопроса 4.  Найти специальные элементы

POETS & POETRY: He was a bank clerk in the Yukon before he published “Songs of a Sourdough”

Focus

LATs QClass = factoid QSection = none

Page 8: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 8

DeepQA: Анализ вопроса

POETS & POETRY: He was a bank clerk in the Yukon before he published “Songs of a Sourdough”

Анализ вопроса: •  ESG (English Slot Grammar) – синтаксический разбор •  PAS (Predicate-argument structure) – семантический разбор

Page 9: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 9

DeepQA: Анализ вопроса (Prolog)

Input: lemma(1, ‘‘he’’).

partOfSpeech(1,pronoun).

lemma(2, ‘‘publish’’).

partOfSpeech(2,verb).

lemma(3,‘‘Songs of a Sourdough’’).

partOfSpeech(3,noun).

subject(2,1).

object(2,3).

POETS & POETRY: He was a bank clerk in the Yukon before he published “Songs of a Sourdough”

Правила Prolog: authorOf(Author, Composition) :-

createVerb(Verb),

subject(Verb, Author),

author(Author),

object(Verb, Composition),

composition(Composition).-

createVerb(Verb) :-

partOfSpeech(Verb, verb),

lemma(Verb, VerbLemma),

[‘‘write’’, ‘‘publish’’, . . .].

authorOf(1,3)

Page 10: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 10

DeepQA: источники знаний

§  Протестировали Wikipedia на 3500 случайных вопросов Jeopardy §  Источники информации § Чтобы обеспечить достаточную полноту и точность

Wikipedia Wiktionary Wikiquote Project Gutenberg The Bible …

§  Расширение источников § Поиск Yahoo! по вопросам, которые остались без ответов

§  Парсинг и построение внутреннего представления § Не простой инвертированный индекс § Преобразование источников в наборы коротких абзацев

Page 11: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 11

DeepQA: Автоматическое извлечение семантической информации

§  Поверхностный синтаксический анализ

«Эйнштейн, опубликовавший свыше 300 научных статей, получил Нобелевскую премию по физике в 1921 году» § Эйнштейн – ученый § Ученые публикуют статьи § Ученые получают Нобелевские премии § Нобелевская премия характеризуется предметом и годом

Page 12: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 12

DeepQA: Автоматическое извлечение семантической информации

PRISMATIC

Page 13: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 13

DeepQA: генерация гипотез

Три этапа § Генерация поисковых запросов § Поиск релевантной информации § Выделение ответов-кандидатов

Главное – побольше гипотез! ...но не слишком

Генерация запросов

Document search

Поиск

TIC passage

Indri passage

Indri passage

Answer Lookup

PRISMATIC

TOD

Wikipedia title

Anchor text

Simple

Выделение кандидата

Page 14: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 14

DeepQA: генерация гипотез. Поисковые запросы

Вопрос: MOVIE-"ING": Robert Redford and Paul Newman starred in this depression-era grifter flick.

Анализ: actorIn(Robert Redford; flick : focus) actorIn(Paul Newman; flick : focus)

Поисковые запросы: § Полный: (2.0 Robert Redford) (2.0 Paul Newman) depression-era

grifter (1.5 flick) § LAT-only: depression-era grifter flick

Page 15: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 15

DeepQA: генерация гипотез. Типы поисков

§ Document search (для title-oriented документов) § Indri search engine (lemurproject.org/indri) § Используется 2 индекса: § Для больших документов – генерирует 50 ответов-кандидатов § Для маленьких документов – генерирует 5 ответов-кандидатов

§ Passage search § TIC (title in the clue) – генерирует 10 ответов-кандидатов § Использует Indri и Lucene – по 5 ответов-кандидатов каждый § Выделяет 1-2 предложения

Page 16: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 16

DeepQA: генерация гипотез. Типы поисков

§ Поиск по структурированным источникам § Answer Lookup

§ Часть вопроса переводится в язык запроса (например, SPARQL для DBpedia)

§ Общий принцип поиска: § Допустим есть actorIn(Robert Redford; flick : focus) § Мы ищем запись в базе по «Robert Redford» § Если у данной записи есть relation – actorIn, то мы пытаемся найти запись film, где отношение starring указывает на «Robert Redford» § Если мы находим взаимосвязь, то получаем ответ-кандидат

Page 17: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 17

DeepQA: генерация гипотез. Типы поисков

§ Поиск по структурированным источникам § Поикс по PRISMATIC

§ PRISMATIC содержит множество коротких entities, связанных одним relation § Позволяет быстро определять «is a» связи

§ Пример, где это нужно: § Вопрос: «Unlike most sea animals, in the Sea Horse this pair of sense organs can

move independently of one another» § Поиск по LAT «sense organs» в PRISMATIC даст сильный вариант «eyes»: § Eye is a sense organ

Page 18: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 18

DeepQA: генерация гипотез. Выделение ответа-кандидата

§ Для структурированных источников – результат поиска и есть ответ-кандидат

§ Для неструктурированных три типа поиска: § Title of Document

§ Для кандидатов от Document Search

§ Wikipedia Title § Для кандидатов от Passage Search § 95% ответов на вопросы Jeopardy! содержатся в названии Wikipedia документов § Из passage выделяются все существительные {n1, n2, n3, …} § Если n_i == Wikipedia_doc_title, то получаем ответ-кандидат

§ Anchor Text § Для обоих типов поиска § Тексты ссылок – это и есть кандидаты

Page 19: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 19

DeepQA: оценка гипотез

§ К данному моменту есть § Кандидаты-ответы § Confidence score, что кандидат и вопрос имеют один и тот же тип

§ Требуется собрать дополнительные доказательства § Passage evidence – параграфы текста «поддерживающие» кандидата

§ Ответ-кандидат добавляется к вопросу: § Запускаются «стандартные» механизмы поиска DeepQA § Дополнительный поиск – SER (Supporting Evidence Retrieval) на базе Indri

§ Разные типы evidence имеют разную степень «доверия»

Page 20: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 20

DeepQA: оценка гипотез. Passage Term Match

celebrated

India

In May 1898

400th anniversary

arrival in

Portugal

India

In May

Gary explorer

celebrated

anniversary

in Portugal

Term Matching

Term Matching

Term Matching

Term Matching

Term Matching

arrived in

In May, Gary arrived in India after he celebrated his anniversary in Portugal.

In May 1898 Portugal celebrated the 400th anniversary of this explorer’s arrival in India.

Page 21: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 21

DeepQA: оценка гипотез. Deep Evidence

celebrated

May 1898 400th anniversary

arrival in

In May 1898 Portugal celebrated the 400th anniversary of this explorer’s arrival in India.

Portugal landed in

27th May 1498

Vasco da Gama

Temporal Reasoning

Statistical Paraphrasing

GeoSpatial Reasoning

explorer

On the 27th of May 1498, Vasco da Gama landed in Kappad Beach

Kappad Beach

Para-phrase

s

Geo-KB

Date Math

India

Page 22: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 22

DeepQA: оценка гипотез. Еще методы...

§ Skip-Bigram § Поиск соответсвия пар терминов в вопросе и параграфе

§ Textual Alignment § Соответсвия длинных цепочек слов из вопроса в параграфе § Является модификацией алгоритма Waterman-Smith для sequence

matching в ДНК

§ Logical Form Answer § Оценка соответсвия семантических графов вопроса и параграфа

Page 23: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 23

DeepQA: финальное ранжирование ответов

§ Проходит в семь этапов (1-3): § (1) Hitlist normalization

§ Убираются совсем слабые кандидаты § Остается только 100 вариантов

§ (2) Base § Распределяем кандидатов по классам (QClasses) § Разные классы имеют разные «маршруты» доказательств

§ (3) Transfer Learning § Только для редких типов вопросов (definition или translation) § Применяется специализированная модель ранжирования

Page 24: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 24

DeepQA: (4) Answer Merging

§ Пример: «John F. Kennedy» и «J.F.K» значат одно и то же

§ Каждая пара ответов-кандидатов проверяется на «похожесть»: § Морфологический анализ § Анализ полнотоы (пример: <ФИО>, а не <Фамилия>) § Подготовленные таблицы

§ Из двух совпавших выбирается наиболее каноничная форма

Page 25: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 25

DeepQA: финальное ранжирование ответов

§ Проходит в семь этапов (5-7): § (5) Elite

§ Аналогично Hitlist normalization § Остается только пять вариантов

§ (6) Evidence Diffusion § Проверяет скрытые связи между кандидатами § Если связь есть, то более сильному кандидату добавляется очки

§ (7) Multi Answers § Объединение кандидатов для ответа на вложенные вопросы § Пример: When "60 Minutes" premiered this man was U.S. president

Page 26: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 26

DeepQA: финальное ранжирование ответов

§ Каждый этап состоит из двух шагов: § Объединение однотипных доказательств (например, passages) § Запуск классификатора

§  В режиме обучения §  В режиме применения

§ Тренировока классификатора – 25000 вопросов Jeopardy! § www.j-archive.com – архив вопросов Jeopardy! §  5.7 млн ответов-кандидатов §  у каждого ответа-кандидата 550 фич

Page 27: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 27

§ DeepQA позволяет встроить любой классификатор § Что пробовалось пока разрабатывали Watson: § Логистическая регрессия § SMV (Support Vector Machines)

§ Линейные и нелинейные ядра § Бустинг § Нейросети § Деревья решений

§ Логистическая регрессия – выбор для Jeopardy! § x – вектор численных значений доказательств § β – «веса» доказательств (из обучения) § Не требует мучительной настройки для каждого запуска

DeepQA: классификатор

Page 28: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 28

Первые шаги Watson

THE AMERICAN DREAM Decades before Lincoln, Daniel Webster spoke of government "made for", "made by" & "answerable to" them

NEW YORK TIMES HEADLINES An exclamation point was warranted for the "end of" this! In 1918

MILESTONES In 1994, 25 years after this event, 1 participant said, "For one crowning moment, we were creatures of the cosmic ocean”

THE QUEEN'S ENGLISH Give a Brit a tinkle when you get into town & you've done this

FATHERLY NICKNAMES This Frenchman was "The Father of Bacteriology"

the Big Bang

urinate

No One

a sentence

How Tasty Was My Little Frenchman

Apollo 11 moon landing

the People

WW I

Call on the phone

Louis Pasteur

Page 29: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 29

Baseline 12/06

v0.1 12/07

v0.3 08/08

v0.5 05/09

v0.6 10/09

v0.8 11/10

v0.4 12/08

v0.2 05/08

V0.7 04/10

Точность

ответа

Watson развивается... Облако победителей

Page 30: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 30

Watson в числах

§ Команда: 25 человек § Время: 4 года

§ Софт: 1,000,000 SLOC § 700K Java, 300K C++ § ~ 130 компонент

§ Железо: 90 IBM Power-750 servers 2880 Power7 cores @ 80+ TFLOPS § 20 TB Disk, 16 TB RAM (memory) § 10 Gbps network

Page 31: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 31

On February 14, 2011, IBM Watson made history

Page 32: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 32

IBM Watson в работе. Медицина

Медицинская информация удваивается каждые 5 лет 81% терапевтов читают медицинские журналы меньше 5 часов в месяц (США) Такие системы как Watson могут помочь врачам

Page 33: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 33

Семейная история История пациента Анализы Медикаменты

Симптомы

UTI

Diabetes

Influenza

Hypokalemia

Renal Failure

no abdominal pain no back pain no cough no diarrhea

(Thyroid Autoimmune)

Esophagitis

pravastatin Alendronate

levothyroxine hydroxychloroquine

Модели  диагностики  

frequent UTI

cutaneous lupus

hyperlipidemia osteoporosis

hypothyroidism

Увереность   difficulty swallowing

dizziness

anorexia

fever dry mouth thirst

frequent urination

Семейна

история

Graves’ Disease

Oral cancer Bladder cancer Hemochromatosis Purpura

История

пациента

Медикам

.

Анализы

supine 120/80 mm HG

urine dipstick: leukocyte esterase

urine culture: E. Coli heart rate: 88 bpm

Симптомы A 58-year-old woman complains of

dizziness, anorexia, dry mouth, increased thirst, and frequent

urination. She had also had a fever. She reported no pain in her abdomen,

back, and no cough, or diarrhea.

A 58-year-old woman presented to her primary care physician after several days

of dizziness, anorexia, dry mouth, increased thirst, and frequent urination.

She had also had a fever and reported that food would “get stuck” when she was

swallowing. She reported no pain in her abdomen, back, or flank and no cough,

shortness of breath, diarrhea, or dysuria

Her family history included oral and bladder cancer in her mother, Graves' disease in two sisters,

hemochromatosis in one sister, and idiopathic thrombocytopenic

purpura in one sister

Her history was notable for cutaneous lupus, hyperlipidemia, osteoporosis,

frequent urinary tract infections, a left oophorectomy for a benign cyst, and primary hypothyroidism, diagnosed a

year earlier

Her medications were levothyroxine, hydroxychloroquine, pravastatin, and

alendronate. A urine dipstick was positive for leukocyte esterase and nitrites. The patient was given a prescription for

ciprofloxacin for a urinary tract infection. 3 days later, patient

reported weakness and dizziness. Her supine blood pressure was

120/80 mm Hg, and pulse was 88.

•  Extract Symptoms from record •  Use paraphrasings mined from text to handle alternate

phrasings and variants •  Perform broad search for possible diagnoses •  Score Confidence in each diagnosis based on

evidence so far

•  Identify negative Symptoms •  Reason with mined relations to explain away

symptoms (thirst is consistent w/ UTI)

•  Extract Family History •  Use Medical Taxonomies to generalize medical

conditions to the granularity used by the models

•  Extract Patient History •  Extract Medications •  Use database of drug side-effects •  Together, multiple diagnoses may best explain

symptoms •  Extract Findings: Confirms that UTI was present

Most Confident Diagnosis: Diabetes

Most Confident Diagnosis: UTI Most Confident Diagnosis: Esophagitis

Most Confident Diagnosis: Influenza

Как DeepQA помогает диагностике

Page 34: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 34

Где еще может пригодиться такая технология?

Поддержка: Help-desk, Contact Centers

Управление знаниями в крупных компаниях

Государственные службы

Поисковики?

Page 35: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 35

Краткая история IBM Watson

R&D

Demonstration

Commercialization

Cross-industry Applications

IBMResearch

Project (2006 – )

Jeopardy!Grand

Challenge(Feb 2011)

Watson for

Healthcare(Aug 2011 –)

Watson Industry

Solutions(2012 – )

Watson for Financial

Services(Mar 2012 – )

Expansion

Что будет дальше?

Page 36: "IBM Watson — компьютерная лингвистика". Артём Семенихин, IBM

© 2013 International Business Machines Corporation 36

Все будет хорошо...

I'm completely operational, and all my circuits are functioning perfectly