?

Log in

No account? Create an account

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

Новостная лента www.solarix.ru

Previous Entry Share Next Entry
прототип движка для entity extraction в чатботе
kelijah
В код чатбота добавлен движок (черновой proof-of-concept прототип) для entity extraction. В качестве тестового примера сделана обработка запросов для прогноза погоды:

B:> Здравствуй
H:> подскажи, какая завтра утром будет погода
B:> Прогноз погоды на момент времени "завтра утром" сгенерирован в функции on_weather_forecast для демонстрации
H:> а сегодня вечером что у нас с погодкой ожидается?
B:> Прогноз погоды на момент времени "сегодня вечером" сгенерирован в функции on_weather_forecast для демонстрации



Текст ответа "Прогноз погоды на момент ...." зашит в функции-заглушке on_weather_forecast в console_chatbot.py:87

def on_weather_forecast(bot, session, user_id, interpreted_phrase):
    when_arg = bot.extract_entity(u'когда', interpreted_phrase)
    return u'Прогноз погоды на момент времени "{}" сгенерирован в функции on_weather_forecast для демонстрации'.format(when_arg)


По плану - добавление в entity extraction модуль извлечение сущности "как_долго", чтобы обрабатывать вопросы типа "Сколько еще будет дождь идти?".

Кусочек текущего тренировочного датасета лежит тут. Для сборки tsv файла я использую prepare_entities_dataset.py. Тренировка модели лежит в nn_entity_extractor.py. Алгоритм - рекуррентная нейросетка + CRF.