Классифицировать текст / Classify text
Группа "Robin AI", подгруппа "Машинное обучение"
Описание
Действие определяет класс, к которому относится текст, на основе обученной модели классификации, т.е. показывает вероятность отношения текста к определенному классу, соответствующему рубрике на основе обученного метода классификации.
Целью выполнения действия является определение той рубрики, к которой ближе всего относится текст, то есть должна быть определена рубрика с наибольшим процентом точности, чтобы позволит принять решение о дальнейших действиях с этим текстом.
Параметры
Входные параметры:
- Текст для классификации Текст, класс которого необходимо определить. Язык может быть любой. Если будет язык отличный от языка обучающей выборки, то процент определения класса будет близким к нулю.
- Обученная модель Путь к папке, которая содержит обученную модель классификации. В папке должно содержаться два файла: machine_model.pkl и tfidf_model.pk Отсутствие какого-то файла или изменение имени папки на другое может привести к ошибке.
Выходные параметры:
- Результат -Словарь, где ключ - название класса, а значение - процент вхождения в данный класс. Сортировка в словаре производится по проценту вхождения в класс.
Настройки
Свойство | Описание | Тип | Пример заполнения | Обязательность заполнения поля |
Параметры | ||||
Текст для классификации | Текст для классификации | Robin.String | Да | |
Обученная модель | Путь к папке, которая содержит обученную модель. | Robin.FolderPath | C:\doc\img | Да |
Результаты | ||||
Результат | Словарь, где Ключ - рубрика, а Значение - процент вхождения в данную рубрику. Сортировка в словаре по проценту вхождения в рубрику. | Robin.Dictionary |
Особые условия использования
1.В папке, которая содержит обученную модель, должно содержаться два файла. Файлы предоставляются заказчику по требованию. Данные файлы представляют из себя запакованную модель машинного обучения.
2.Если какого-то файла нет/другое название, то это приведет к ошибке при работе действия.
3.Робот выдаст ошибку, если:
- в поле "Обученная модель" указан неверный путь/не содержит обученную модель (один или два файла изменены);
- в поле "Текст для классификации" указана пустая строка или действие не смогло определить класс.
4.Робот не выдаст ошибку, если:
- подан текст не на языке обученной модели, при этом % совпадения с классом будет небольшой.
4. Существующую обученную модель нельзя "дообучать",
5. Для сведения обученная модель на 20000 записей классифицирует текст за 2-3 минуты.
Дополнительная информация о теории классификации текста:
https://vas3k.blog/blog/machine_learning/
https://www.edureka.co/blog/classification-in-machine-learning/
Пример использования
Задача: классифицировать текст на основе обученной модели.
Решение: воспользоваться действием "Классифицировать текст".
Реализация:
- Перенести действие "Классифицировать текст" на рабочую область.
- Заполнить параметры действия "Классифицировать текст".
В поле "Текст для классификации" указать следующий текст:
3. Указать путь к папке, которая содержит обученную модель.
3. Нажать на кнопку "Старт" в верхней панели.
Результат:
Программный робот отработал успешно. Получен словарь , где Ключ - рубрика, а Значение - процент вхождения в данную рубрику. Сортировка в словаре по проценту вхождения в рубрику.
В результате получился словарь с названием категории и с точностью принадлежности к данной категории.
При необходимости получения рубрики к которой текст относится в наибольшей степени необходимо воспользоваться действием "Получить коллекцию ключей", потому что в значениях % указаны, а сами рубрики-категории в ключах. Далее, нужно получить коллекцию ключей и нулевой элемент этой коллекции - это та рубрика, к которой скорее всего относится текст (действие "Получить значение по индексу").