lecture11-2015 (1126930)
Текст из файла
Обработка текстовОсновы обработки текстовЛекция 11 Тематическое моделированиеОбработка текстовТематическое моделирование(Topic Modelling)• Тематическая модель коллекциитекстовых документов определяет к какимтемам относится каждый документ и какиеслова (термины) образуют каждую тему• Тема - набор терминов, неслучайно частовстречающихся вместе в относительноузком подмножестве документовОбработка текстовЗадача тематическогомоделирования• Вход– D - коллекция текстовых документов• Задача– Для каждого документа определить к какимтемам и в какой степени он принадлежит– Для каждого слова определить к каким темами в какой степени это слово принадлежит• Задача мягкой кластеризации• Тематическую модель можноиспользовать как языковую модельОбработка текстовПрименение• Кластеризация документов• Определение близости и рекомендательныесистемы– Определить насколько похожи интересыпользователей Твиттера на основе их постов• Уменьшение размерности– Возможность решать задачу классификации впространстве меньшей размерности• Семантический поиск• Анализ и агрегирование новостных потоков• Поиск научной информации и фронтаисследованийОбработка текстовОсновные предположения• Порядок документов в коллекции не важен• Порядок слов в документе не важен• Предварительная обработка– Лемматизация или стемминг– Выделение терминов и словосочетаний– Удаление стоп-слов и слишком редкихсловОбработка текстовВероятностная формализация• Для каждой темы t и документа d зададимвероятность темы в документе p(t|d)• То же самое сделаем для слов и тем:p(w|t) - вероятность встретить слово w втеме t• Предположим что слова в документезависят только от темы p(w|d, t) = p(w|t)• Вероятностная модель порождениядокументаp(w|d) =Xt2Tp(w|d, t)p(t|d) =Xt2Tp(w|t)p(t|d)Обработка текстовГенерация документов• Пусть мы хотим сгенерировать документ в 100 слов.Документ написан про футбол (на 0.7), про пиво (на 0.2)и про космические ракеты (на 0.1)1.
Выбираем тему t для первого слова (каждая тема t выбирается свероятностью p(t|d))2. Из этой темы выбираем слово w (слово w выбирается свероятностью p(w|t))3. Повторяем шаги 1 и 2 для остальных 99 слов• Как видим, слова генерируются независимо друг от другаОбработка текстовПримерОбработка текстовПринцип максимума правдоподобия• Правдоподобие - плотность распределения выборкиnYY Yndwp(D) =p(di , wi ) =p(d, w)i=1d2D w2d– ndw - число вхождений термина w в документ d• Обозначим– wt - распределение терминов по темам– ✓td - распределение тем по документам• Задача: найти максимум (логарифма) правдоподобияXXXL( , ⇥) =ndw lnwt ✓td ! maxd2D w2dt2Tс ограничениями8tXwp(w|t) = 1, 8d8t, w p(w|t)Xtp(t|d) = 10, 8d, t p(t|d)0Обработка текстовПринцип максимума правдоподобия• Правдоподобие - плотность распределения выборкиnYY Yndwp(D) =p(di , wi ) =p(d, w)i=1d2D w2d– ndw - число вхождений термина w в документ d• Обозначим– wt - распределение терминов по темам– ✓td - распределение тем по документам• Задача: найти максимум (логарифма) правдоподобияXXXL( , ⇥) =ndw lnwt ✓td ! maxd2D w2dt2T8tXp(w|t) = 1, 8dXКудаделся множитель p(d)?с ограничениямиw8t, w p(w|t)tp(t|d) = 10, 8d, t p(t|d)0Обработка текстовНекоторые постановки задачи• Можно не делать предположение обаприорном распределении слов по темам итем по документам (PLSA: вероятностныйлатентный семантический анализ)• Можно предполагать, что распределенияслов по темам и тем по документамполучены из распределения Дирихле (LDA:скрытое размещение Дирихле)• Можно учитывать редкие и общие слова(Robust PLSA)Обработка текстовPLSA• PLSA не делает никаких предположенийотносительно распределений• Параметры будем оценивать с помощьюEM-алгоритма–Оцениваем число слов в документе d,порожденных темой t–Уточняем распределения документов по темам–Уточняем распределение тем по словам• По правилу Байесаp(w|t)p(t|d)wt ✓tdp(t|d, w) ==Pp(w|d)s2T ws ✓sdОбработка текстовУточнение распределениятем по документам• Е-шаг: Оценка числа слов из темы– Оцениваем число слов документа d, порожденных изтемы tntd =Xwnwd Pwt ✓tdtwt ✓td• М-шаг: Оценка вероятности темы в документе✓tdntd= p(t|d) =ndОбработка текстовУточнение распределенияслов по темам• Е-шаг: Оценка числа слов из темы–Оцениваем число слов в теме tnwt =Xdnwd Pwt ✓tdtwt ✓td• М-шаг: Оценка вероятности темы в документеwtnwt= p(w|t) =ntОбработка текстовНедостатки PLSA• PLSA переобучается, т.к.
числопараметров wt и ✓td слишком велико|D| · |T | + |W | · |T |• PLSA не позволяет управлятьразреженностью– если в начале wt = 0, то в финале wt = 0– если в начале ✓td = 0 , то в финале ✓td = 0• PLSA неверно оценивает вероятностьновых слов: еслиnw = 0тоp̂(w|d) = 0, 8t 2 TОбработка текстовМодель LDA• Пусть распределение тем по документами слов по темам имеет априорноераспределение Дирихле (симметричное) сплотностью вероятностиf (x1 , x2 , . . . xn ) = Cx↵11⇥ x↵21⇥ · · · ⇥ x↵n1• Чем больше параметр ↵ , тем болеесглаженные распределения будемполучатьОбработка текстовРаспределение Дирихле• Почему именно распределение Дирихле?– Математическое удобство– Порождает как сглаженные, так иразреженные векторы– Неплохо описывает кластерные структуры насимплексеОбработка текстовОтличие LDA от PLSA• В PLSA - несмещенные оценки максимумаправдоподобия:wtnwt=nt✓tdntd=nd• В LDA - сглаженные байесовские оценки:wtnwt +=nt +w0✓tdntd + ↵t=nd + ↵ 0Обработка текстовНедостатки LDA• Слабые лингвистические обоснования“особой роли” распределения Дирихле• В оригинальном методе сложный выводпараметров (требует интегрирования попространству параметров модели)• Сглаживание вместо разреживания• На практике на достаточно большихданных нет значимых различий междуPLSA и LDAОбработка текстовRobust PLSAZdw + ⇡dw + ✏⇡wp(w|d) =1+ +✏Тематическая компонента.
Совпадает сZdw моделью PLSA. Если она плохо объясняетизбыточную частоту слова в документа, тослово относят к фону или шуму⇡dw ⌘ pnoise (w|d)⇡w ⌘ pbgr (w), ✏Шумовая компонента. Слова специфичные дляконкретного документа d, либо редкиетермины, относящиеся к темам, слабопредставленным в данной коллекцииФоновая компонента. Общеупотребительныеслова, в частности, стоп-слова, не отброшенныена стадии предварительной обработкиПараметры, ограничивающие долю слов вкаждой компонентеОбработка текстовРеализации тематическихмоделей• Gensim - реализация для Python• BigARTM - Распределенная реализацияPLSA с аддитивный регуляризацией на C• Topic Modelling в Spark - распределеннаяреализация Robust PLSA с аддитивнойрегуляризацией на фреймворке Spark(https://github.com/akopich/dplsa)Обработка текстовПример LDA на• Википедия, в качестве коллекции• 6 часов 20 минут на MacBook Pro, IntelCore i7 2.3GHz, 16GB DDR3 RAM, OS XОбработка текстовДля дальнейшего изучения• Thomas Hofmann. Probilistic latent semantic analysis // Proceedingsof the Twenty-Second Annual International SIGIR Conference onResearch and Development in Information Retrieval.
1999.• David M. Blei, Andrew Ng, Michael Jordan. Latent Dirichlet allocation// Journal of Machine Learning Research (3) 2003 pp. 993-1022.• Воронцов К. В., Потапенко А. А. Модификации EM-алгоритмадля вероятностного тематического моделирования // Машинноеобучение и анализ данных. — 2013• Коршунов Антон, Гомзин Андрей Тематическое моделированиетекстов на естественном языке // Труды Институтасистемного программирования РАН : журнал. — 2012.• Воронцов К. В.
Лекции по вероятностным тематическим моделям• Байесовские методы машинного обучения (курс лекций, Д.П.Ветров, Д.А. Кропотов)• machinelearning.ruОбработка текстовЗаключение• Тематические модели являются одним изспособов моделирования языка• Тематические модели являютсягенеративными моделями: каждыйдокумент определяет темы, а каждая темаопределяет слова• Тематическое моделирование можнорассматривать как задачу мягкойкластеризации документов.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.