Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Простые методы
выделения ключевых
слов и построения
рефератов
Котиков Дмитрий
Группа 425
Выделение ключевых слов
 Исходный текст
Курс рубля снизился к доллару и евро при открытии торгов
на Московской бирже во вторник, падению рубля
способствует продолжающееся снижение мировых цен на
нефть. Первые сделки по доллару прошли на Московской
бирже во вторник в диапазоне 63,10-64,83 рубля, по итогам
первой минуты торгов курс составил 63,38 рубля, что на 36
копеек выше уровня предыдущего закрытия.
 Нужно выделить из него ключевые
слова
Рубль, доллар, евро, курс, биржа…
2
Зачем?
 Извлечение информации
для обработки в дальнейшем
{
‘доллар’ : 63.38
‘дата’ : 27.10.2015
}
 Генерация тэгов и хэштегов
#курс #доллар #биржа
 Индексация текста
 Автоматическая генерация новых
текстов
3
Как?
 Разбиение текста на слова
Наивный вариант: по пробелам и знакам препинания.
Более продвинутый вариант: учитывать аббревиатуры,
сокращения и т.д.
 Приведение слов в нормальную форму
Глаголы – в инфинитив, существительные – в именительный
падеж и т.д.
 Выбор из полученного списка слов
наиболее подходящих
Например, выкинуть служебные части речи и отсортировать
по частотности (или более сложные алгоритмы).
4
Как?
 Выбор из полученного списка слов
наиболее подходящих
 Наивный метод: отсортировать по частоте
Проблема: часто встречаются служебные части
речи, необходим словарь для их исключения.
Пример: Danneo CMS
$adjectivearray = array(
"ые","ое","ие","как","для","что","или","это“, <…>
); <…>
if(strlen($word) >= $len && !is_numeric($word)){
$adjective = substr($word,-2);
if(!in_array($adjective,$adjectivearray) &&
!in_array($word,$adjectivearray)) <…>
5
Как?
 Выбор из полученного списка слов
наиболее подходящих
Веса tf.idf
tf – количество вхождений слова в документ
df – количество документов с данным словом
idf = log(N/df), где N – количество документов
в качестве документов можно взять предложения
Пример: rutermextract 0.2
>>> from rutermextract import TermExtractor
>>> term_extractor = TermExtractor()
>>> text = ...
>>> idf = ...
>>> terms = term_extractor(text, weight=lambda term:
idf.get(term.normalized, 1.0) * term.count)
6
Как?
 Выбор из полученного списка слов
наиболее подходящих
 Методы для структурированных документов
Модификация предыдущих двух методов, в
которых может учитываться:
Нахождение в заголовке.
Выделение в тексте (<strong>, <font color=…>)
Определённое форматирование абзаца
(<blockquote>, <p class=“note”>)
Расположение в определённой части текста
 Машинное обучение
7
Средства и решения
 Pymorhy2
Морфологический анализатор
 OpenCalais
Выделяет ключевые слова, строит семантическую сеть.
Не работает с русскоязычными текстами
 TextAnalyst 2.0
По функционалу похож на предыдущий и
поддерживает русский язык
 Site Content Analyzer 3
Работает с web-сайтами
8
Для моей работы
 Дан текст учебно-научной работы
 Нужно выделить из него по 2-3
предложения на слайд
 Из полученных слайдов составить
презентацию к докладу.
9
Идея реализации
 Достаточно выделить наиболее
популярные ключевые слова
 На их основании подобрать
подходящие предложения
 Полученные предложения вставить на
слайд в виде маркированного списка
(как на этом слайде).
 Это один из методов реферирования
10
Реферирование
Дан текст
На его основании построить
другой текст:
Меньшего объёма
Выражающий суть документа
Осмысленный и связный (опционально)
11
Реферирование
Дан текст
Курс рубля снизился к доллару и евро при открытии
торгов на Московской бирже во вторник, падению
рубля способствует продолжающееся снижение
мировых цен на нефть. Первые сделки по доллару
прошли на Московской бирже во вторник в диапазоне
63,10-64,83 рубля, по итогам первой минуты торгов
курс составил 63,38 рубля, что на 36 копеек выше
уровня предыдущего закрытия.
На его основании построить
другой текст:
Курс [доллара] составил 63,38 рубля 12
Реферирование: зачем?
 Аннотация к статье, книге
 Описание документа в результатах
поиска
 Новостные агрегаторы
(Яндекс.Новости)
 В моей работе: создание слайда из
раздела учебно-научной работы
13
Реферирование: как?
Квазиреферирование
Краткое изложение
содержания первичного
документа
14
Реферирование: как?
Квазиреферирование
Строим текст из предложений или
словосочетаний, которые уже имеются в тексте,
на основе выделенных ключевых слов
Относительно простой в реализации
Не всегда получается связный осмысленный
текст
15
Реферирование: как?
Квазиреферирование
 Cтатические методы
Основной критерий информативности для предложения
– частота появления ключевых слов (словосочетаний)
 Позиционные методы
Критерий – позиция элемента в документе (например, в
заголовке)
 Индикаторные методы
Критерий – специальные слова и словосочетания,
которые бы указывали на значимость предложения
Определение 1. Сайт — это система электронных
документов частного лица или организации
в компьютерной сети под общим адресом
16
Реферирование: как?
Квазиреферирование
W= L + K + S
 W – вес фрагмента (предложения)
 L – вес расположения (какой раздел, в каком
месте раздела)
 K – вес индикаторных конструкций вида
 S – сумма весов наших ключевых слов в
предложении.
17
Реферирование: как?
 Краткое изложение содержания
первичного документа
18
Первичный текст
База знаний
Реферат
Реферирование: как?
 Краткое изложение содержания
первичного документа
Строим текст на основе базы знаний, созданной при
анализе документа
 Первичный документ – файл, на основании
которого строим реферат
 Сложнее в реализации, затратный алгоритм
 Текст генерируется по заданному алгоритму, что
обеспечивает его связность по смыслу.
19
Реферирование: как?
Краткое изложение содержания
первичных документов
Метод синтаксического разбора
предложений
используются деревья разбора текста
Методы, опирающиеся на понимание
естественного языка
основываются на системах искусственного
интеллекта, в которых формируются семантические
структуры в виде концептуальных подграфов в базе
знаний.
20
Средства и решения
http://visualworld.ru/referat.jsp
Реферирование текста онлайн
TextAnalyst 2.0
Уже рассматривался при выделении ключевых
слов
Broadcast News Navigator
Средство поиска, просмотра и реферирования
новостей на английском языке.
21
Реферирование: пример
 http://visualworld.ru/referat.jsp
22
Реферирование: пример
 http://visualworld.ru/referat.jsp
23
Реферирование: пример
 http://visualworld.ru/referat.jsp
24
Для моей работы
 Дан текст учебно-научной работы
 Нужно выделить из него по 2-3
предложения на слайд
 Из полученных слайдов составить
презентацию к докладу.
25
Идея реализации
 В презентации изложение тезисное
 Предложения выстраиваются в виде
маркированного списка
 Не слишком важна связность
предложений по смыслу.
26
Идея реализации
 Для данной задачи удобнее
использовать квазиреферирование
 Относительно простой алгоритм
 Выдаёт не обязательно связные
предложения
27
Идея реализации
 По ключевым словам ищем
подходящие 2-3 предложения
(определения, формулировки
утверждений).
Учитываем важность ключевого слова по его
расположению (встречаемость в заголовке)
Индикаторные конструкции
<…> – это <…>,
<…> называется <…>, и т.д. 28
Итоги: идея реализации
 Разбиваем текст учебно-научной работы на
разделы, выбираем подходящие ключевые
слова в каждом разделе.
 В зависимости от важности и длины раздела
слайдов может быть несколько.
 На основании ключевых слов выбираем
наиболее важные предложения из каждого
раздела
 Полученные предложения вставляем на
слайд. 29
Спасибо за внимание!
30

More Related Content

Котиков Простые методы выделения ключевых слов и построения рефератов

  • 1. Простые методы выделения ключевых слов и построения рефератов Котиков Дмитрий Группа 425
  • 2. Выделение ключевых слов  Исходный текст Курс рубля снизился к доллару и евро при открытии торгов на Московской бирже во вторник, падению рубля способствует продолжающееся снижение мировых цен на нефть. Первые сделки по доллару прошли на Московской бирже во вторник в диапазоне 63,10-64,83 рубля, по итогам первой минуты торгов курс составил 63,38 рубля, что на 36 копеек выше уровня предыдущего закрытия.  Нужно выделить из него ключевые слова Рубль, доллар, евро, курс, биржа… 2
  • 3. Зачем?  Извлечение информации для обработки в дальнейшем { ‘доллар’ : 63.38 ‘дата’ : 27.10.2015 }  Генерация тэгов и хэштегов #курс #доллар #биржа  Индексация текста  Автоматическая генерация новых текстов 3
  • 4. Как?  Разбиение текста на слова Наивный вариант: по пробелам и знакам препинания. Более продвинутый вариант: учитывать аббревиатуры, сокращения и т.д.  Приведение слов в нормальную форму Глаголы – в инфинитив, существительные – в именительный падеж и т.д.  Выбор из полученного списка слов наиболее подходящих Например, выкинуть служебные части речи и отсортировать по частотности (или более сложные алгоритмы). 4
  • 5. Как?  Выбор из полученного списка слов наиболее подходящих  Наивный метод: отсортировать по частоте Проблема: часто встречаются служебные части речи, необходим словарь для их исключения. Пример: Danneo CMS $adjectivearray = array( "ые","ое","ие","как","для","что","или","это“, <…> ); <…> if(strlen($word) >= $len && !is_numeric($word)){ $adjective = substr($word,-2); if(!in_array($adjective,$adjectivearray) && !in_array($word,$adjectivearray)) <…> 5
  • 6. Как?  Выбор из полученного списка слов наиболее подходящих Веса tf.idf tf – количество вхождений слова в документ df – количество документов с данным словом idf = log(N/df), где N – количество документов в качестве документов можно взять предложения Пример: rutermextract 0.2 >>> from rutermextract import TermExtractor >>> term_extractor = TermExtractor() >>> text = ... >>> idf = ... >>> terms = term_extractor(text, weight=lambda term: idf.get(term.normalized, 1.0) * term.count) 6
  • 7. Как?  Выбор из полученного списка слов наиболее подходящих  Методы для структурированных документов Модификация предыдущих двух методов, в которых может учитываться: Нахождение в заголовке. Выделение в тексте (<strong>, <font color=…>) Определённое форматирование абзаца (<blockquote>, <p class=“note”>) Расположение в определённой части текста  Машинное обучение 7
  • 8. Средства и решения  Pymorhy2 Морфологический анализатор  OpenCalais Выделяет ключевые слова, строит семантическую сеть. Не работает с русскоязычными текстами  TextAnalyst 2.0 По функционалу похож на предыдущий и поддерживает русский язык  Site Content Analyzer 3 Работает с web-сайтами 8
  • 9. Для моей работы  Дан текст учебно-научной работы  Нужно выделить из него по 2-3 предложения на слайд  Из полученных слайдов составить презентацию к докладу. 9
  • 10. Идея реализации  Достаточно выделить наиболее популярные ключевые слова  На их основании подобрать подходящие предложения  Полученные предложения вставить на слайд в виде маркированного списка (как на этом слайде).  Это один из методов реферирования 10
  • 11. Реферирование Дан текст На его основании построить другой текст: Меньшего объёма Выражающий суть документа Осмысленный и связный (опционально) 11
  • 12. Реферирование Дан текст Курс рубля снизился к доллару и евро при открытии торгов на Московской бирже во вторник, падению рубля способствует продолжающееся снижение мировых цен на нефть. Первые сделки по доллару прошли на Московской бирже во вторник в диапазоне 63,10-64,83 рубля, по итогам первой минуты торгов курс составил 63,38 рубля, что на 36 копеек выше уровня предыдущего закрытия. На его основании построить другой текст: Курс [доллара] составил 63,38 рубля 12
  • 13. Реферирование: зачем?  Аннотация к статье, книге  Описание документа в результатах поиска  Новостные агрегаторы (Яндекс.Новости)  В моей работе: создание слайда из раздела учебно-научной работы 13
  • 15. Реферирование: как? Квазиреферирование Строим текст из предложений или словосочетаний, которые уже имеются в тексте, на основе выделенных ключевых слов Относительно простой в реализации Не всегда получается связный осмысленный текст 15
  • 16. Реферирование: как? Квазиреферирование  Cтатические методы Основной критерий информативности для предложения – частота появления ключевых слов (словосочетаний)  Позиционные методы Критерий – позиция элемента в документе (например, в заголовке)  Индикаторные методы Критерий – специальные слова и словосочетания, которые бы указывали на значимость предложения Определение 1. Сайт — это система электронных документов частного лица или организации в компьютерной сети под общим адресом 16
  • 17. Реферирование: как? Квазиреферирование W= L + K + S  W – вес фрагмента (предложения)  L – вес расположения (какой раздел, в каком месте раздела)  K – вес индикаторных конструкций вида  S – сумма весов наших ключевых слов в предложении. 17
  • 18. Реферирование: как?  Краткое изложение содержания первичного документа 18 Первичный текст База знаний Реферат
  • 19. Реферирование: как?  Краткое изложение содержания первичного документа Строим текст на основе базы знаний, созданной при анализе документа  Первичный документ – файл, на основании которого строим реферат  Сложнее в реализации, затратный алгоритм  Текст генерируется по заданному алгоритму, что обеспечивает его связность по смыслу. 19
  • 20. Реферирование: как? Краткое изложение содержания первичных документов Метод синтаксического разбора предложений используются деревья разбора текста Методы, опирающиеся на понимание естественного языка основываются на системах искусственного интеллекта, в которых формируются семантические структуры в виде концептуальных подграфов в базе знаний. 20
  • 21. Средства и решения http://visualworld.ru/referat.jsp Реферирование текста онлайн TextAnalyst 2.0 Уже рассматривался при выделении ключевых слов Broadcast News Navigator Средство поиска, просмотра и реферирования новостей на английском языке. 21
  • 25. Для моей работы  Дан текст учебно-научной работы  Нужно выделить из него по 2-3 предложения на слайд  Из полученных слайдов составить презентацию к докладу. 25
  • 26. Идея реализации  В презентации изложение тезисное  Предложения выстраиваются в виде маркированного списка  Не слишком важна связность предложений по смыслу. 26
  • 27. Идея реализации  Для данной задачи удобнее использовать квазиреферирование  Относительно простой алгоритм  Выдаёт не обязательно связные предложения 27
  • 28. Идея реализации  По ключевым словам ищем подходящие 2-3 предложения (определения, формулировки утверждений). Учитываем важность ключевого слова по его расположению (встречаемость в заголовке) Индикаторные конструкции <…> – это <…>, <…> называется <…>, и т.д. 28
  • 29. Итоги: идея реализации  Разбиваем текст учебно-научной работы на разделы, выбираем подходящие ключевые слова в каждом разделе.  В зависимости от важности и длины раздела слайдов может быть несколько.  На основании ключевых слов выбираем наиболее важные предложения из каждого раздела  Полученные предложения вставляем на слайд. 29