Статьи

Классификация естественного языка без машинного обучения

С помощью службы Natural Language Classifier Watson в IBM Bluemix разработчики могут классифицировать естественный язык, чтобы, например, вы могли создать приложение виртуального агента, отвечающее на общие вопросы. Ниже приведен простой пример того, как вы можете использовать этот сервис.

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

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

positive,positive
good,positive
excellent,positive
brilliant,positive
really good,positive
best,positive
supportive,positive
reassuring,positive
encouraging,positive
negative,negative
bad,negative
ugly,negative
really bad,negative

Сохраните этот файл как CSV-файл и отправьте его в службу Watson.

curl -i -u "<username>":"<password>" -F training_data=@./data_train.csv -F training_metadata="{\"language\":\"en\",\"name\":\"PosNegClassifier\"}" "https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers

Через пару минут обучение завершено, и служба Watson возвращает classifier_id, который вам необходимо задать службе, к которой относится конкретный класс. Вот запрос слова «удивительный», которого не было в начальных данных обучения.

curl -G -u "<username>":"<password>" "https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers/3AE103x13-nlc-1116/classify" --data-urlencode "text=awesome"

Сервис Watson возвращает не только один класс, но и пять лучших классов с самыми высокими уровнями достоверности.

classifierresponse2

Чтобы узнать больше об услуге, ознакомьтесь с онлайн-демонстрацией , примером приложения галереи взаимодействия , документацией и документацией по API .

Для повышения качества классификатора необходимо оценить результаты и обновить данные обучения. Для упрощения управления данными обучения и классификаторами имеется инструментарий / веб-приложение .