БММО (курс лекций)/2013осень/Задание 2

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
м (Оформление задания)
Строка 24: Строка 24:
# Выводы о том, подходит ли, в целом, LDA для анализа данного корпуса текстов, и какие задачи можно было бы решать с помощью этого инструмента на данном корпусе?
# Выводы о том, подходит ли, в целом, LDA для анализа данного корпуса текстов, и какие задачи можно было бы решать с помощью этого инструмента на данном корпусе?
-
Для каждого из пунктов необходимо также прокомментировать согласованность формального критерия качества с субъективной интерпретируемостью тем.
+
Для каждого из пунктов необходимо также прокомментировать согласованность формального критерия качества с субъективной интерпретируемостью тем. В отчете должно содержаться подробное описание каждого из поставленных экспериментов, значения используемых параметров и т.д.
 +
 
 +
=== Памятка по использованию Mallet ===
 +
Пакет Mallet содержит достаточно хорошую документацию (см. раздел, посвященный [http://mallet.cs.umass.edu/topics.php тематическому моделированию]) на английском языке, все команды имеют параметр <code>--help</code> для вывода краткой справочной информации. Тем не менее, здесь приводятся некоторые параметры и команды, полезные при выполнения задания.
 +
 
 +
* Задать значения гиперпараметров <tex>\alpha</tex> и <tex>\beta</tex> можно, соответственно, с помощью параметров <code>--alpha ЗНАЧЕНИЕ</code> и <code>--alpha ЗНАЧЕНИЕ</code> при выполнении команды <code>mallet learn-topics</code>
 +
* Команда <code>mallet learn-topics</code> имеет также параметр <code>--optimize-interval ЗНАЧЕНИЕ</code>, позволяющий указать число итераций, после которых будет произведена автоматическая оптимизация гиперпараметров. Разумно выбирать значение 5-10 итераций. По умолчанию оптимизации гиперпараметров не проводится.
 +
* Для последующего измерения тестовой выборки при обучении модели с помощью команды <code>mallet learn-topics</code> следует сохранить специальное представление модели с помощью параметра <code>--evaluator-file ФАЙЛ</code>, после чего указывать путь к данному файлу в параметре <code>--evaluator ФАЙЛ</code> команды <code>mallet evaluate topics</code>
 +
* С помощью параметра <code>--output-topic-keys ФАЙЛ</code> можно сохранить наиболее важные слова для каждой темы, порог важности и максимальное число слов можно так же проконтролировать соответствующими параметрами.
 +
* Команда <code>mallet infer-topics --inferencer ФАЙЛ --input ФАЙЛ</code> строит для каждого входного документа (упакованного во один входной файл в специальном формате) его профиль (распределение по темам, <tex>\theta</tex>). Для использования этой команды при построении модели необходимо указать параметр <code>--inferencer-file ФАЙЛ</code>.
== Распределение студентов по вариантам ==
== Распределение студентов по вариантам ==

Версия 12:59, 1 декабря 2013

Описание задания в настоящий момент не завершено. Просьба дождаться окончания работ


Содержание


Начало выполнения задания: 3 ноября 2013 г.
Срок сдачи: ?? 2013 г., 23:59. За каждый день просрочки оценка за задание будет снижаться на 0.1 балла.

Анализ текстов на естественном языке с помощью скрытого размещения Дирихле

В рамках данного задания студентам предлагается самостоятельно провести исследование по применению метода скрытого размещения Дирихле (LDA) на реальном корпусе текстов и получить интерпретируемые результаты в виде описаний тем (топиков). Используя готовую реализацию LDA, необходимо изучить зависимость меры качества от параметров модели и получить качественные выводы об их влиянии как на формальные критерии качества, так и на субъективные, подразумевающие интерпретируемость полученных тем с точки зрения человека.

В качестве формального критерия качества используется правдоподобие тестовой выборки p(\mathbf{w}_{\text{test}} | \mathbf{w}_{\text{train}}) (см. напр. конспект лекции). Рекомендуется выбрать реализацию LDA, входящую в состав пакета Mallet, однако студент может выбрать и любую другую на свой страх и риск, если ее функциональности достаточно для проведения данного исследования.

В дальнейшем используются обозначения, совместимые, как с конспектом, так и с документацией Mallet: \alpha обозначает значение параметра априорного распределения, отвечающего за пропорции тем в документе; \beta аналогично обозначает параметр априорного распределения для тем. Оба априорных распределения полагаются симметричными (все соответствующие параметры равны между собой), если не указано обратное.

Вариант задания определяет корпус текстов, на котором должно проводиться исследование. Корпус доступен, как в первоначальной форме, так и в обработанной (с нормализацией и удалением стоп-слов), уже готовой для работы в Mallet. По желанию студент может самостоятельно предобработать входные данные.

Исследование должно включать в себя следующие пункты:

  1. Зависимость качества модели от числа тем при фиксируемых значениях \alpha = 0.1 и \beta = 0.01. Необходимо построить график, а также привести качественные выводы о полученной зависимости. Удалось ли с помощью данного критерия уверенно определить оптимальное число тем в модели? Допускается перебор числа тем не через 1, а с большим интервалом, если это позволяет сделать все необходимые выводы.
  2. Зависимость качества модели от параметров одного из априорных распределений (в зависимости от варианта) при различном количестве тем, включая оптимальное из предыдущего пункта (в случае если оно было найдено). Можно ли сделать вывод о том, что какие-то значения параметров на данном корпусе текстов достаточно стабильно дают лучшую модель по сравнению с другими значениями? Чем можно объяснить оптимальность этих значений?
  3. Как изменяется зависимость, исследуемая в пункте 1, при оптимизируемых параметрах \alpha и \beta? Имеют ли смысл оптимальные значения параметров при оптимальном числе тем? В отчете следует привести темы, полученные при оптимальном наборе параметров.
  4. Выводы о том, подходит ли, в целом, LDA для анализа данного корпуса текстов, и какие задачи можно было бы решать с помощью этого инструмента на данном корпусе?

Для каждого из пунктов необходимо также прокомментировать согласованность формального критерия качества с субъективной интерпретируемостью тем. В отчете должно содержаться подробное описание каждого из поставленных экспериментов, значения используемых параметров и т.д.

Памятка по использованию Mallet

Пакет Mallet содержит достаточно хорошую документацию (см. раздел, посвященный тематическому моделированию) на английском языке, все команды имеют параметр --help для вывода краткой справочной информации. Тем не менее, здесь приводятся некоторые параметры и команды, полезные при выполнения задания.

  • Задать значения гиперпараметров \alpha и \beta можно, соответственно, с помощью параметров --alpha ЗНАЧЕНИЕ и --alpha ЗНАЧЕНИЕ при выполнении команды mallet learn-topics
  • Команда mallet learn-topics имеет также параметр --optimize-interval ЗНАЧЕНИЕ, позволяющий указать число итераций, после которых будет произведена автоматическая оптимизация гиперпараметров. Разумно выбирать значение 5-10 итераций. По умолчанию оптимизации гиперпараметров не проводится.
  • Для последующего измерения тестовой выборки при обучении модели с помощью команды mallet learn-topics следует сохранить специальное представление модели с помощью параметра --evaluator-file ФАЙЛ, после чего указывать путь к данному файлу в параметре --evaluator ФАЙЛ команды mallet evaluate topics
  • С помощью параметра --output-topic-keys ФАЙЛ можно сохранить наиболее важные слова для каждой темы, порог важности и максимальное число слов можно так же проконтролировать соответствующими параметрами.
  • Команда mallet infer-topics --inferencer ФАЙЛ --input ФАЙЛ строит для каждого входного документа (упакованного во один входной файл в специальном формате) его профиль (распределение по темам, \theta). Для использования этой команды при построении модели необходимо указать параметр --inferencer-file ФАЙЛ.

Распределение студентов по вариантам

Оформление задания

Результаты выполнения задания в виде отчета в формате PDF следует присылать на адрес bayesml@gmail.com с темой «[БММО13] Задание 2 <ФИО>». Убедительная просьба присылать выполненное задание только один раз с окончательным вариантом.

Личные инструменты