Основная идея нового Python API — интерактивная работа с тематическими моделями. При интерактивной работе пользователь (исследователь) может последовательно выполнять различные действия с тематической моделью:
Пользователь может повторять эти действия в любом порядке несколько раз, размышляя в промежутках о существе мира и неполноценности человеческого языка.
Здесь мы акцентируем внимание на пункте смотреть на внутренности модели. Как можно посмотреть на тематическую модель? Один из способов — интерактивная визуализация LDAvis.
Давайте добавим в новое API функции для немедленной визуализации тематической модели при помощи LDAvis, чтобы это стало неотъемлемой частью инструментария исследователя.
ArtmModel.visualize()
¶ArtmModel
— изюминка нового Python API, напоминает класс модели из SciKit-Learn, позволяет работать с моделью как с изменяющимся объектом, выполняя основные операции в одну строчку.
В каждый момент времени объект класса ArtmModel
содержит в себе текущее состояние тематической модели. Добавим метод для построения визуализации:
model.visualize()
Далее будет описан прототип этого метода (proof-of-concept).
from visualization_ldavis import TopicModelVisualization
class ArtmModel(object):
def visualize(self):
import json
with open('lda.json') as f:
data = json.load(f)
return TopicModelVisualization(data)
model = ArtmModel()
# ... дальше мы типо работаем с моделью ...
В какой-то момент необходимо посмотреть на модель:
vis = model.visualize()
vis
А затем сохранить эту визуализацию в отдельный файл и отправить коллегам по почте:
vis.to_file('model_visualization.html', title='My Cool Model')
Новый файл model_visualization.html
не зависит от файла ldavis.js
и его можно просто открыть в браузере.