Мы должны были в какой-то степени сталкиваться с разговорными роботами в своей жизни. Например, мы все знаем, что многие роботы службы поддержки клиентов сначала отвечают на вопросы пользователей. Некоторые роботы обладают значительными запасами знаний, Например, если вы покупаете машину, Затем я хочу узнать в службе поддержки подробности страховки автомобиля. Вы спросите: Сколько стоит годовая страховка автомобиля? Но во многих случаях размер страховой премии зависит от разных моделей, годов выпуска и других деталей. В это время роботу необходимо собрать эту информацию в форме запросов (мы называем это информационными слотами), поэтому робот должен сначала определить намерение пользователя. Затем определите, какие ключевые слова (то есть, информация) отсутствуют для ответа на этот вопрос, а затем соберите эту информацию путем повторных вопросов и разъяснений. чтобы ответить на вопрос. Или пользователь задает роботу очень профессиональный вопрос: Например, вопрос «Как поменять тормозную жидкость определенной модели» требует от робота значительных запасов знаний. Во многих случаях этот ответ не может быть найден ни одной поисковой системой, а уточняется на основе строгого руководства по эксплуатации компании клиента. Итак, все знают, да? Разговорный робот корпоративного уровня — это не просто случайный робот, как GPT Просто добавьте такую модель (GPT могу только столкнуться C Чтобы конечные пользователи могли использовать разговорный робот компании или робот службы поддержки клиентов, он должен обладать профессиональными знаниями компании). Поэтому нам нужен двигатель со значительным опытом в этой области. Можно только создавать знания.
Прежде всего, мы сейчас живем в эпоху больших моделей. Итак, аналогичный GPT Крупные производители довольно часто добавляют в свою продукцию такие большие модели. У каждого крупного производителя есть свои большие модели для тренировок. иметь GPT Такая большая модель может значительно улучшить качество ответов разговорных роботов. Но, как мы сказали выше, этого недостаточно. По вопросам и ответам в профессиональных областях, Требуется создание базы профессиональных знаний. Поэтому среди таких изделий их обычно называют двигателем. знаний。
Поэтому, когда мы описываем ученика (мальчика первого класса, средней школы №1), для его выражения мы можем использовать форму 1 0 1 0 0 0 1 0 0. Это также один из методов реализации комбинации функций. Или мы также можем использовать метод, подобный растровому изображению, чтобы создать горячий вектор для представления дискретных функций. Мы можем выразить это в форме, подобной следующей:
Предположим, что в столбце профессий имеется в общей сложностииметь 100 ценить, Предположим, учитель считает 6 В этом положении число 6 расположение ide Значение 1, все остальные значения 0, мы используем этот вектор для представления характеристики учителя. По аналогии, если номер студенческого представителя 10, затем
10 Стоимость в этом месте составляет 1. Значения в остальных позициях 0, используя векторы слов для представления студентов. Таким образом, в конце концов мы 100 индивидуальный 100 размерные векторы для представления этих функций.
Вышеупомянутые два метода являются очень распространенными методами, используемыми для выражения особенностей текста.,Но их вопрос в том, что слова независимы друг от друга.,Нет друг другаиметьассоциация。 Например, в наших данных обучения предложение иметь-индивидуальный this is apple сок, мы ожидаем появления, когда this is orange __ , модель может сделать для нас вывод, что пустое пространство этого человека также должно быть заполнено словами. juice。 То есть мы надеемся, что модель сможет найти связь между словами посредством предыдущего обучения первому индивидуальному предложению, и модель сможет узнать apple и orange слова со схожим значением, поэтому можно сделать вывод, что orange Вы также можете заполнить его позже juice。 И это именно то, что делают векторы слов.
Как показано выше,Векторы слов вращаются вокруг этих центральных слов (гендер,вещь,Дворянская степень), вычисляют степень корреляции между каждым отдельным словом и этими центральными словами. Таким образом, мы можем вычислить связь между словами по степени ассоциации каждого слова по отношению к этим центральным словам. Например, яблоки и апельсины имеют относительно высокие и близкие значения в центральных словах «еда».,Таким образом, модель может знать, что яблоки и апельсины в определенных сценариях похожи на одни и те же король и королева. Таким образом, модель также знает, что в некоторых сценариях король и королева похожи. Итак, вернемся к вопросу о заполнении пропусков, о котором мы упоминали выше: Когда мы тренировались раньше, мы apple Забрал позже juice Это индивидуальное слово, которое мы знаем на основе слова-вектора. apple и orange похожи, поэтому apple Забрал позже сок, затем orange Позже велика вероятность, что за ним последует juice из. Объяснив таким образом роль векторов слов, каждый поймет. Фактически, принцип этой похожей на блокировку модели (или генеративной модели, которая представляет собой модель, генерирующую «Отвечать» для пользователей, например, разговорного робота), заключается в обходе всех слов в словаре на основе слов, которые пользователь уже использовал. сгенерированное слово, Вычислите вероятность того, что каждое индивидуальное слово появится в следующей индивидуальной позиции, а затем вставьте индивидуальное слово с наибольшей вероятностью в следующую индивидуальную позицию. Итак, все видят, Однажды я сказал, что почти все модельные сценарии не могут избежать бинарной классификации, мультиклассификации и регрессии. Наша генеративная модель на самом деле представляет собой очень большую модель с несколькими классификациями (возьмите вероятность каждой классификации, а затем выберите ту, которая имеет наибольшую вероятность). дивидуальный классифицируется как Отвечать, и здесь каждая индивидуальная классификация — это каждое индивидуальное слово в словаре).
Во-первых, нам нужно прояснить общую базовую логику разговорного робота.,Когда пользователь предлагает вопрос,Сама система сначалавопрос Послеиндивидуальный Модель мультиклассификации, используемая для идентификации пользователейнамерение,потому чтопо мнению разных пользователей, нам нужно дать разным подсистемам ответить, Например, если это общий тип чата, его можно отправить непосредственно в большую модель для ответа. И если это тип вопроса и ответа на знания, Вам нужно отправить его двигателю знания для поиска связанных Отвечать. Или это общий тип поиска, Например, если пользователь спрашивает, какова текущая цена акций Apple, очевидно, что этот вопрос нельзя отправить напрямую в двигатель. знания большая модель, но вызовите поисковик API наводить справки, Конечно, результаты запроса часто проходят через вторичную упаковку больших моделей, о чем мы поговорим позже. Здесь мы просто говорим об базовой логике разговорных роботов.
Когда модель оценивает текущий вопрос, его необходимо отправить двигателю. знанийназад, Необходимо перейти к двигателю по вопросу пользователя. Найдите в библиотеке знаний слово Отвечать. Конечно, поиск здесь можно реализовать разными способами, Это зависит от того, какой из них выберет команда:
Подводя итог, можно сказать, что существует множество сценариев, в которых используется модель семантического поиска/сопоставления.
Видно, что разговорный робот состоит из N Система, объединяющая несколько моделей. двигатель Знания также представляют собой поиск контента, выполняемый путем объединения нескольких индивидуальных моделей. Итак, давайте посмотрим, как протестировать эти модели.
Парсинг документов. Важно протестировать различные типы документов, которые могут использовать ваши клиенты (execl, word, pdf). и т. д.) и различные форматы в нем (текст, изображения, Смешанный текст и картинки, таблицы разных форматов, гиперссылки и т.д.). Поэтому важно подготовить разнообразные тестовые данные, Затем посчитайте соответствующие показатели. Например: Сходство текстовой последовательности: как правило, статистика включает частоту ошибок вставки = ошибка типа вставки/длина выходной последовательности алгоритма, частота ошибок замены = ошибка типа замены/длина выходной последовательности алгоритма, частота ошибок удаления = ошибка типа удаления/длина выходной последовательности алгоритма. , точная скорость = количество правильных символов/общая длина выходной последовательности алгоритма. Это то, что я писал раньше ASR Индивидуальные показатели в системе очень похожи на из.
Конечно, самое главное, чтобы тестовые данные охватывали разные сценарии:
Например, охватывая сценарии в разных отраслях:
Например, охватывая документы разных форматов:
документ в формате docx:
Документ в формате pdf:
Цель исследования: на основе данного текста или диалога выделить один или несколько индивидуальных вопросов. + Ответ правильный. Фокус проверки: модель извлекает ключевую информацию из текста и преобразует ее в вопросы. + Способность «Отвечать» требует от модели определенной способности понимать текст, а модель должна правильно ответить на загаданный ею вопрос. Индекс оценки: степень точности. Измеряет долю правильных пар вопрос-ответ среди сгенерированных пар вопрос-ответ. Чем выше точность, тем точнее пары вопрос-ответ, генерируемые моделью, отражают ключевую информацию в тексте.
Например: Джордж Оруэлл (1903-1950).,Родившийся Эрик Артур Блэр,британский писатель、Журналист и критик. Его произведения основаны на критике тоталитаризма и социальной несправедливости. на славится. Два самых известных романа Оруэлла — «Скотный двор» и «1984», оба из которых считаются 20 Одно из важнейших литературных произведений века. в его жизни,Оруэлл также написал большое количество эссе, репортажей и критических статей.,К ним относятся «Низшие классы Парижа и Лондона» и «Посвящение Каталонии».
Тогда согласно предположению модели нам нужно извлечь 5 индивидуальный Вопросы и ответы:
Поэтому тестировщикам необходимо оценить эффективность этой индивидуальной модели. Фактически, это оценка правильности вопроса Отвечать, который он генерирует. Самое трудоемкое здесь то, что генерация этого вопроса и ответа может каждый раз быть разной. И корректны ли эти сгенерированные вопросы и ответы – это тоже относительно субъективное суждение, которое сложно проверить в автоматизированной форме. Так что на самом деле мне очень не нравится проверять эффект этой модели. Потому что это чисто физическая работа. Что касается того, как бороться с субъективными проблемами. Вы можете сослаться на средний балл нескольких людей, которых я публиковал ранее, и 3 система персонального арбитража.
Тоже очень субъективная сцена,Модель необходима для определения различной семантики в относительно большом документе., Затем разрежьте текст с одинаковой семантикой на один индивидуальный сегмент и embedding После обработки он сохраняется в базе данных. Таким образом Поиск/сопоставление В игру вступит модель документов. Здесь от тестировщиков требуется убедиться, что каждый вырезанный моделью индивидуальный фрагмент документа соответствует одной и той же индивидуальной семантике, а фрагменты документа под этой индивидуальной семантикой являются полноценными.
Эта индивидуальная модель предназначена для извлечения фрагментов документа через вопрос пользователя, Первоначально это тоже была классическая сцена поисковой системы. Но поисковые системы могут возвращать несколько результатов и сортировать их по рейтингу. А диалоговые боты часто не могут вернуть несколько отдельных фрагментов документа. Вместо этого нам нужно выбрать тот Отвечать, который индивидуальная модель считает оптимальным. Поэтому некоторые индикаторы, изначально использовавшиеся поисковыми системами, такие как MAP и NDCG Большую часть времени его можно не использовать. Конечно, если мы тестируем возможности самой индивидуальной модели, это не имеет ничего общего с реальными бизнес-сценариями. Это все еще можно использовать MAP и NDCG из. Но если мы тестируем сквозной эффект, то точность может быть наиболее часто используемым показателем.
В дополнение к данным, охватывающим различные отраслевые сценарии, необходимо предоставить данные испытаний. Также при тестировании необходимо обратить внимание на статистику индикатора для длинного текста и короткого текста вопроса. Потому что в области сопоставления документов Мы делаем это, разбивая документ вопросов на embedding Наконец, определенный алгоритм сходства используется для расчета степени совпадения фрагментов интересующего документа, а затем ближайшие документы возвращаются пользователю после сортировки по степени совпадения. Итак, в этом поле существует два классических сценария: сопоставление короткого текста и сопоставление длинного текста.То есть, каков эффект модели, когда вопрос, заданный пользователем, очень короткий? А когда пользователь использует длинный абзац текста для описания своих требований,Как выглядит эффект сопоставления, возвращаемый моделью?
Как мы сказали выше,Системе необходимо сначала использовать модель мультиклассификации, чтобы определить, какой тип индивидуального вопроса задал пользователь.,Какую индивидуальную подсистему следует отправить для ответа. Только если иметь принадлежит разделу викторины индивидуальноенамерение, оно будет отправлено двигателю. знаний Делать Поиск/сопоставление документов。 И как оценивать модели мультиклассификации, Как рассчитать матрицу путаницы,Также рекомендуется прочитать мой первый пост в серии «Индивидуальные».,Показатели оценки общепринятой научно-популярной модели.
Вы можете видеть, что текущий диалоговый робот N Сочетание индивидуальных ИИ моделей, В сочетании с некоторыми инженерными методами для завершения составной сцены. На этот раз я сначала представлю двигатель в этой индивидуальной системе. Какую роль играют знания и с какими сценариями тестирования обычно сталкиваются тестировщики. На самом деле вы можете обнаружить, что большая часть работы по тестированию здесь утомительна и выполняется вручную, а большая часть — чисто физическая работа. Многие люди, которые не понимают искусственный интеллект, подсознательно думают, что тестирование искусственного интеллекта — это очень загадочная, очень техническая и очень высокоуровневая работа. Но на самом деле зачастую это не то, что все думают.