Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
AUTOMATED ASSESSMENT OF THE QUALITY OF A DIALOGUE SYSTEM IN REAL TIME
Document Type and Number:
WIPO Patent Application WO/2020/091619
Kind Code:
A1
Abstract:
The present invention relates to the field of processing digital data, more particularly to an automated assessment of the quality of a dialogue system on the basis of assessing the relevance of individual messages. The claimed system comprises: a module for determining the subject matter of a dialogue, which is capable of obtaining a dialogue text in real time and of automatically determining the subject matter of said dialogue text; a module for processing the dialogue text, which is capable of identifying phrases from the dialogue text on the basis of data relating to the subject matter that have been determined by the module for determining the subject matter; a phrase filtration module, which is capable of changing personal information into specialized topic words; a model module for classifying the current state of the dialogue, which is capable of determining the motivation for continuing the subject matter of the dialogue in real time on the basis of a sequence of phrases and of determining the state of completion of the dialogue on the subject matter determined by the module for determining the subject matter of the dialogue; a model module for classifying the current quality of the dialogue, which is capable, upon receipt of information relating to the state of completion of the dialogue, of assigning a numerical quality score to the dialogue on the basis of phrases obtained from the module for classifying the current state of the dialogue.

Inventors:
SUVOROV VLADIMIR ALEXANDROVICH (RU)
Application Number:
PCT/RU2018/000713
Publication Date:
May 07, 2020
Filing Date:
October 30, 2018
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
FEDERALNOE GOSUDARSTVENNOE AVTONOMNOE OBRAZOVATELNOE UCHREZHDENIE VYSSHEGO OBRAZOVANIYA MOSKOVSKY FI (RU)
International Classes:
G10L15/08; H04M3/51
Foreign References:
US6603854B12003-08-05
US20170006161A92017-01-05
RU2647661C12018-03-16
US20070067280A12007-03-22
US20100272246A12010-10-28
EP2287835B12012-05-23
US20090112586A12009-04-30
Other References:
See also references of EP 3876228A4
Attorney, Agent or Firm:
KOTLOV, Dmitry Vladimirovich (RU)
Download PDF:
Claims:
ФОРМУЛА ИЗОБРЕТЕНИЯ

1. Система автоматизированной оценки качества диалоговой системы в реальном времени, содержащая:

1) модуль определения тематики диалога, выполненный с возможностью получения текста диалога в реальном времени и автоматического определения тематики этого текста диалога;

2) модуль обработки текста диалога, выполненный с возможностью выделения фраз из текста диалога на основе данных о тематике, которые были определены модулем определения тематики;

3) модуль фильтрации фраз, выполненный с возможностью замены персональной информацию на специализированные топик-слова;

4) модуль модели классификатора текущего состояния диалога, выполненный с возможностью определения мотивации продолжения тематики диалога в реальном времени на основе последовательности фраз и определения состояния завершения диалога по тематике, определенной модулем определения тематики диалога;

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

2. Система по п.1, характеризующаяся тем, что дополнительно включает модуль дообучения диалоговой системы, выполненный с возможностью на основе бальной оценки качества диалога осуществлять дообучение диалоговой.

3. Система по п.1, характеризующаяся тем, что для классификации тематик используется библиотека с открытым кодом для тематического моделирования больших коллекций текстовых документов (BigARTM) или k-means.

4. Система по п.1, характеризующаяся тем, что персональной информацией являются: числа, имена, названия мест, названия компаний, индивидуальности. Система по п.1, характеризующаяся тем, что список топик-слов формируется заранее с использованием механизмов именованных сущностей NER (Named entity recognition).

Description:
АВТОМАТИЗИРОВАННАЯ ОЦЕНКА КАЧЕСТВА ДИАЛОГОВОЙ СИСТЕМЫ В

РЕАЛЬНОМ ВРЕМЕНИ

ОБЛАСТЬ ИЗОБРЕТЕНИЯ

[0001] Настоящее изобретение относится к области обработки цифровых данных, а именно к способам автоматизированной оценки качества диалоговой системы на базе оценки релевантности индивидуальных сообщений.

УРОВЕНЬ ТЕХНИКИ

[0002] Из патента ЕР2287835В1 (МПК G10L15/00; G10L15/22, опубл. 23.02.2011) известна система моделирования поведения пользователя для оценки речевого диалога.

[0003] Из заявки на изобретение US20090112586A1 (МПК G10L15/00, опубл. 30.04.2009) известны система и способ оценки имитаций пользователей в устной диалоговой системе. В данном решении используется пользовательское моделирование разговорной диалоговой системы, которое включает в себя объединение первого набора одного или нескольких баллов из реального диалогового окна пользователя, агрегирование второго набора из одного или нескольких баллов из имитированного диалогового окна пользователя, связанного с пользовательской моделью, определение сходства распределений, связанных с каждым из первого набора и второго набора, где сходство определяется с использованием показателя дивергенции, который не требует каких-либо предположений относительно формы распределений. Недостатками таких решений является большой уровень ошибок при оценке качества диалоговой системы и низкая эффективность за счет низкой скорости обработки диалогов.

[0004] Известны также решения оценки качества диалоговой системы, такие как, способ ассессорной оценки. В данном способе используется оценка по балльной шкале, где человек проставляет некоторое количество баллов диалогам согласно его мнению. Техническим примером имплементации такого решения являются сервисы типа - AWS Mechanical Turk или Яндекс Толока. Набору людей формулируются серии заданий, по оценке некоторого количества диалогов. В дальнейшем оценки могут усредняться. Данный тип оценки также реализован в ряде статей и используется повсеместно, например, в чатах типа Jivosite где в конце диалога пользователю предлагается оценить качество диалога. Недостатками данных решений является то, что они полностью не автоматизированы, т.к. в них принимает участие человек как элемент решения и плохо масштабируемые. [0005] В качестве решений на текущем уровне техники, локально решающие вопросы оценки набора диалогов математическими методами известны из таких решений, например, как: оценка набора диалогов математическими методами с помощью формальных метрик типа F1 или perplexity, где F1 - мера близости используется для сравнения эталонного ответа с реальным. Используется обычно мера близости по словам без их порядка или какая-нибудь модификация (http://www.aclweb.Org/anthology/E 12- 1048): решение Perplexity - математическая метрика из семантического анализа - условно насколько вероятность получения ответа от системы близка к вероятности получения ответа в реальной ситуации (https://arxiv.org/pdf/l30l.6705.pdf). Недостатками таких решений является плохое соответствие реальному качеству диалога, который воспринимается людьми. Большой уровень ошибки при оценке систем, генерирующих верные, но непохожие на эталонные ответы. Вариативность эталонных ответов.

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

[0006] Технической проблемой, на решение которой направлено заявленное техническое решение, является создание надежной и простой системы автоматизированной оценки качества диалоговой системы, позволяющей в режиме реального времени осуществлять автоматизированную оценку качества диалога. Также существенной решаемой проблемой подобного рода технических решений является обеспечение повышение скорости обработки данных и точности обработки диалогов.

[0014] Технический результат заключается в снижении вычислительных ресурсов и повышении скорости определения автоматизированной оценки качества диалоговой системы за счет замены персональной информацию на специализированные топик-слова.

[0015] В предпочтительном варианте реализации заявлена система автоматизированной оценки качества диалоговой системы в реальном времени, содержащая:

1) модуль определения тематики диалога, выполненный с возможностью получения текста диалога в реальном времени и автоматического определения тематики этого текста диалога;

2) модуль обработки текста диалога, выполненный с возможностью выделения фраз из текста диалога на основе данных о тематике, которые были определены модулем определения тематики;

3) модуль фильтрации фраз, выполненный с возможностью замены персональной информацию на специализированные топик-слова; 4) модуль модели классификатора текущего состояния диалога, выполненный с возможностью определения мотивации продолжения тематики диалога в реальном времени на основе последовательности фраз и определения состояния завершения диалога по тематике, определенной модулем определения тематики диалога;

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

[0016] В частном варианте система дополнительно включает модуль дообучения диалоговой системы, выполненный с возможностью на основе бальной оценки качества диалога осуществлять дообучение диалоговой.

[0017] В другом частном варианте для классификации тематик используется библиотека с открытым кодом для тематического моделирования больших коллекций текстовых документов (BigARTM) или k-means.

[0018] В другом частном варианте персональной информацией являются: числа, имена, названия мест, названия компаний, индивидуальности

[0019] В другом частном варианте список топик-слов формируется заранее с использованием механизмов именованных сущностей NER (Named entity recognition).

[0020] Именованные сущности (NER - Named-Entity Recognizing)— это объекты определенного типа, чаще всего составные, например, названия организаций, имена людей, даты, места, денежные единицы и т.д. Эти категории могут быть представлены концептами заранее определенной или динамически выстраиваемой онтологии.

Примеры именованных сущностей:

- Имена персоналий: И. Сечин, Ben White;

- Географические названия: р. Ока, гор. Москва;

- Названия компаний/организаций: РЖД, ОАО «Уют»;

- Даты и временные отрезки: 02.03.1913, 2 р.т;

- Номера телефонов: +7(123)456-78-90;

- Адреса: 3-ая улица Строителей д. 25, кв.12; - Марки товаров: Nokia, Apple, Land Rover;

- Обозначения денежных единиц: руб., $, GBP;

- Ссылки на литературу: [2], [Иванов, 1995];

- Гены, белки, хим. вещества: H2N-CH(R)-COOH.

ОПИСАНИЕ ЧЕРТЕЖЕЙ

[0021] Реализация изобретения будет описана в дальнейшем в соответствии с прилагаемыми чертежами, которые представлены для пояснения сути изобретения и никоим образом не ограничивают область изобретения. К заявке прилагаются следующие чертежи:

Фиг. 1 иллюстрирует общий вид заявленной системы;

Фиг. 2 иллюстрирует общую схему вычислительного устройства.

ДЕТАЛЬНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ

[0022] В приведенном ниже подробном описании реализации изобретения приведены многочисленные детали реализации, призванные обеспечить отчетливое понимание настоящего изобретения. Однако, квалифицированному в предметной области специалисту, будет очевидно каким образом можно использовать настоящее изобретение, как с данными деталями реализации, так и без них. В других случаях хорошо известные методы, процедуры и компоненты не были описаны подробно, чтобы не затруднять излишне понимание особенностей настоящего изобретения.

[0023] Кроме того, из приведенного изложения будет ясно, что изобретение не ограничивается приведенной реализацией. Многочисленные возможные модификации, изменения, вариации и замены, сохраняющие суть и форму настоящего изобретения, будут очевидными для квалифицированных в предметной области специалистов.

[0024] Настоящее изобретение направлено на создание системы автоматизированной оценки качества диалоговой системы в реальном времени.

[0025] Примером такой системы может являться, например, система колл-центра, которая должна принять решения может ли робот продолжить диалог с пользователем.

[0025] Как представлено на Фиг. 1, заявленная система (100) включает связанные между собой модуль определения тематики диалога (110), модуль обработки текста диалога (120), модуль фильтрации фраз (130), модуль модели классификатора текущего состояния диалога (140) и модуль модели классификатора текущего качества диалога (150).

[0026] Модуль определения тематики диалога (110), выполнен с возможностью получения текста диалога в реальном времени. Примером такого диалога может являться диалог между пользователем, с помощью, например, его мобильного телефона со специализированным программным обеспечением, и ботом. Где пользователь и бот обсуждают, например, работу пользователя, хобби, семью, погоду или вести диалоги на прочие темы (тематики).

[0027] Далее модуль определения тематики диалога (110) автоматически определяет тематику текста диалога между указанными выше пользователем и ботом.

При этом тематика полученного текста диалога определяется автоматически с использованием библиотеки с открытым кодом для тематического моделирования больших коллекций текстовых документов (BigARTM) или с использованием алгоритма к средних (k-means).

[0027] В библиотеке BigARTM сохранено множество предварительно обученных предикторов, в частном случае - нейросетевых моделей, целью применения которых является классификация входного текста диалога между человеком и ботом (роботом), то есть нахождения соответствия между входным текстом диалога и заранее определённым множеством возможных классов тематик (категорий) предыдущих сохраненных диалогов, к которым этот текст диалога может относиться.

[0028] Проклассифицированный текст диалога поступает на модуль обработки текста диалога (120), который выделяет фразы из текста диалога на основе данных о тематике, и которые были определены модулем определения тематики (110). После чего представляет полученный текст диалога, как набор последовательностей выделенных фраз.

[0029] Далее эти выделенные фразы поступают на модуль фильтрации фраз (130), в котором происходит замена персональной информацию на специализированные топик-слова. Это происходит следующим образом, анализируется каждая полученная фраз для того, чтобы найти те участки в фразе, в которых содержится персональная информация, такая как числа, имена, названия мест, названия компаний, индивидуальности и осуществляется замена этой персональной информации на специализированные топик-слова. Список топик-слов формируется заранее с использованием механизмов именованных сущностей NER (Named entity recognition). Ниже приведен пример такой замены.

Например фраза «У меня 10 декабря было день рождения» заменяется на фразу «У меня <DATE> было день рождения».

<DATE> является специализированным топик-словом.

[0030] После чего в модуле модели классификатора текущего состояния диалога (140), происходит определение мотивации продолжения тематики диалога в реальном времени на основе последовательности фраз и определение состояния завершения диалога по тематике, определенной модулем определения тематики диалога.

Например, мотивация может быть определена следующим образом: из полученных отфильтрованных фраз модуль модели классификатора текущего состояния диалога (140) формирует последовательность фраз по времени, когда они поступили на модуль определения тематики диалога (110). Известными из уровня техники лингвистическими методами анализа текста осуществляет определение мотивации продолжения тематики диалога в реальном времени.

В частности, последовательность фраз может состоять из следующих фраз:

- Как дела?;

- Хорошо;

- Что делаешь?;

- Митохондрии находятся в клетках.

Пример определения мотивации продолжения тематики: a. Как дела? - Да

B. Как дела? Хорошо - Возможно c. Как дела? Хорошо. Что делаешь? - Да d. Как дела? Хорошо. Что делаешь? Митохондрии находятся в клетках - Нет e. Хорошо - Возможно f. Хорошо. Что делаешь? - Да g. Хорошо. Что делаешь? Митохондрии находятся в клетках - Нет h. Что делаешь? - Да 1. Что делаешь? Митохондрии находятся в клетках. - Возможно j. Митохондрии находятся в клетках. - Возможно

Последовательность фраз может состоять из одной фразы: «Как дела?»

В таком случае согласно известным из уровня техники лингвистическими методам анализа текста определяет такую последовательность фраз в отношении данной тематики мотивированную и назначает активное состояние диалога на данную тематику.

В альтернативном варианте последовательность фраз может состоять из фраз, например:

«Как дела?» - «Хорошо.»

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

В другом альтернативном варианте последовательность фраз может состоять из фраз, например:

«Как дела?» - «Хорошо.» - «Что делаешь?» - «Митохондрии находятся в клетках.»

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

[0031] После определения состояния завершения диалога по тематике в модуле модели классификатора текущего качества диалога (150) происходит присваивание балльной оценки качества диалога на основании фраз, полученных от модуля классификатора текущего состояния диалога фраз.

Присвоение бальной оценки осуществляется, например, с использованием ранее сформированной базы, где хранится список фраз с указанием того какой балл может быть присвоен данной фразы. При этом, данный список фраз может быть сформирован известными из уровня техники методами с помощью нейронных сетей. Такой сетью может быть, например, двухслойная CNN с функцией softmax или четырехслойная CNN. [0032] На Фиг. 2 далее будет представлена общая схема компьютерного устройства (200), обеспечивающего обработку данных, необходимую для реализации заявленной системы.

[0033] В общем случае устройство (200) содержит такие компоненты, как: один или более процессоров (201), по меньшей мере одну память (202), средство хранения данных (203), интерфейсы ввода/вывода (204), средство В/В (205), средства сетевого взаимодействия (206).

[0034] Процессор (201) устройства выполняет основные вычислительные операции, необходимые для функционирования устройства (200) или функционала одного или более его компонентов. Процессор (201) исполняет необходимые машиночитаемые команды, содержащиеся в оперативной памяти (202).

В частности, процессор (201) может представлять собой микропроцессор с полным набором команд (CISC), микропроцессор с сокращенным набором команд (RISC), микропроцессор с командными словами сверхбольшой длины (VLIW), процессор, реализующий другой набор команд, или процессоры, реализующие комбинацию наборов команд. Процессор (201) также может представлять собой одно или несколько вычислительных устройств специального назначения, например, заказную интегральную микросхему (ASIC), программируемую пользователем вентильную матрицу (FPGA), процессор цифровых сигналов (DSP), сетевой процессор и т.п. Процессор (201) настроен на выполнение команд для осуществления рассмотренных в настоящем документе операций и функций.

[0035] Память (202), как правило, выполнена в виде ОЗУ и содержит необходимую программную логику, обеспечивающую требуемый функционал.

[0036] Средство хранения данных (203) может выполняться в виде HDD, SSD дисков, рейд массива, сетевого хранилища, флэш-памяти, оптических накопителей информации (CD, DVD, MD, Blue-Ray дисков) и т.п. Средство (203) позволяет выполнять долгосрочное хранение различного вида информации, например, истории обработки транзакционных запросов (логов), идентификаторов пользователей и т.п.

[0037] Интерфейсы (204) представляют собой стандартные средства для подключения, например, USB, RS232, RJ45, LPT, COM, HDMI, PS/2, Lightning, FireWire и т.п.

[0038] Выбор интерфейсов (204) зависит от конкретного исполнения устройства (200), которое может представлять собой персональный компьютер, мейнфрейм, серверный кластер, тонкий клиент, смартфон, ноутбук и т.п. [0039] В качестве средств В/В данных (205) может использоваться: клавиатура, джойстик, дисплей (сенсорный дисплей), проектор, тачпад, манипулятор мышь, трекбол, световое перо, динамики, микрофон и т.п.

[0040] Средства сетевого взаимодействия (206) выбираются из устройства, обеспечивающий сетевой прием и передачу данных, например, Ethernet карту, WLAN/Wi- Fi модуль, Bluetooth модуль, BLE модуль, NFC модуль, IrDa, RFID модуль, GSM модем и т.п. С помощью средств (205) обеспечивается организация обмена данными по проводному или беспроводному каналу передачи данных, например, WAN, PAN, ЛВС (LAN), Интранет, Интернет, WLAN, WMAN или GSM.

[0041] Компоненты устройства (200) сопряжены посредством общей шины передачи данных (210).

[0042] В настоящих материалах заявки было представлено предпочтительное раскрытие осуществление заявленного технического решения, которое не должно использоваться как ограничивающее иные, частные воплощения его реализации, которые не выходят за рамки испрашиваемого объема правовой охраны и являются очевидными для специалистов в соответствующей области техники.

[0043] Некоторые части описания предпочтительных вариантов реализации представлены в виде алгоритмов и символического представления операций с битами данных в памяти компьютера. Такие описания и представления алгоритмов представляют собой средства, используемые специалистами в области обработки данных, чтобы наиболее эффективно передавать сущность своей работы другим специалистам в данной области. В настоящем документе и в целом алгоритмом называется самосогласованная последовательность операций, приводящих к требуемому результату. Операции требуют физических манипуляций с физическими величинами. Обычно, хотя и не обязательно, эти величины принимают форму электрических или магнитных сигналов, которые можно хранить, передавать, комбинировать, сравнивать и подвергать другим манипуляциям. Оказалось, что прежде всего для обычного использования удобно описывать эти сигналы в виде битов, значений, элементов, символов, членов, цифр и т.д.

[0044] Однако следует иметь в виду, что все эти и подобные термины должны быть связаны с соответствующими физическими величинами, и что они представляют собой просто удобные метки, применяемые к этим величинам. Если иное специально и недвусмысленно не указано в нижеследующем обсуждении, следует принимать, что везде по тексту такие термины как "определение", "вычисление", "расчет", "вычисление", "получение", "установление", "изменение" и т.п., относятся к действиям и процессам вычислительного устройства или аналогичного электронного вычислительного устройства, которое работает с данными и преобразует данные, представленные в виде физических (например, электронных) величин в регистрах и памяти вычислительного устройства, в другие данные, аналогичным образом представленные в виде физических величин в памяти или регистрах вычислительного устройства, либо других подобных устройствах хранения, передачи или отображения информации.

[0045] Следует понимать, что вышеприведенное описание носит иллюстративный, а не ограничительный характер. Различные другие варианты осуществления станут очевидны специалистам в данной области техники после прочтения и понимания приведенного выше описания. Поэтому объем раскрытия должен определяться со ссылкой на прилагаемую формулу изобретения наряду с полным объемом эквивалентов, на которые такие требования предоставляют право.