У вас должна быть учетная запись в облаке IBM, если у вас ее нет, не волнуйтесь, она бесплатна. Зарегистрируйтесь в первую очередь.

После создания учетной записи создайте службу студии знаний.

После создания сервиса запустите инструмент «Студия знаний».

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

Эту страницу вы увидите после входа в рабочую область.

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

Ваш документ должен быть только на естественном языке и только в заданном формате.

Создайте набор аннотаций. этот набор является копией вашего исходного документа, над которым вы выполняете задачу nlu.

Значение перекрытия - это то, насколько вы хотите скопировать исходный документ в набор.

Аннотатором в бесплатной версии студии знаний будете только вы. платная версия имеет возможность иметь несколько аннотаторов.

Сущность - это объект в системе, о котором мы хотим моделировать и хранить информацию. Сущности - это обычно узнаваемые концепции, конкретные или абстрактные, например человек, места, предметы.

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

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

Словари используются для предварительного аннотирования данных. вы можете добавить словарь для своего домена.

Предварительная аннотация выполняется двумя способами:

  1. Аннотация на основе словаря: она пометит все слова в соответствии с заданным словарем.
  2. Понимание естественного языка: он автоматически аннотирует некоторые типы объектов, такие как человек, местоположение и т. Д., Вы можете найти список типов объектов, которые он может аннотировать здесь: https://cloud.ibm.com/docs/services/ понимание-естественного-языка? topic = понимание-естественного-типа-сущности-версия-1 & locale = en-US

здесь у меня был аннотированный объект местоположения с помощью IBM nlu.

Теперь вам нужно создать задачу аннотации, это процесс аннотации человека.

предварительные аннотации не на 100% точны, поэтому нам также нужно сделать некоторые аннотации, сделанные человеком.

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

Некоторые объекты, которые вам нужно вручную аннотировать здесь.

Теперь сопоставьте отношения сущностей вручную.

После успешной аннотации и сопоставления отношений. Принять аннотированный набор.

В окне производительности вы можете обучить и оценить свою модель.

Введите коэффициент разделения и нажмите «обучить и оценить».

Теперь, после обучения, пришло время развернуть модель.

Сначала создайте версию модели, щелкнув вкладку версии.

Для развертывания вам потребуется одна служба понимания естественного языка.

убедитесь, что у вас создана служба nlu. А затем следуйте приведенным ниже фрагментам.

После завершения модели развертывания вам понадобится небольшой код на Python, чтобы получить результат в формате JSON.

import json
from ibm_watson import NaturalLanguageUnderstandingV1
from ibm_watson.natural_language_understanding_v1 import Features, EntitiesOptions, RelationsOptions
natural_language_understanding = NaturalLanguageUnderstandingV1(
 version=’Date of you version',
 iam_apikey=’2I8nEr14QNelwxWglT30PybtY51SUYU0JzkUBPoDSVFS’,
 url=’https://gateway-fra.watsonplatform.net/natural-language-understanding/api'
)
response_entity = natural_language_understanding.analyze(
 text=”Which are the diseases in Potato?”,
 features=Features(entities=EntitiesOptions(model=”your model id”))).get_result()
response_relation = natural_language_understanding.analyze(
 text=”Which are the diseases in Potato?”,
 features=Features(relations=RelationsOptions(model=”your model id”))).get_result()
print(json.dumps(response_entity, indent=2))
print(json.dumps(response_relation, indent=2))

Запустите это, и вы получите JSON, напечатанный на вашей консоли вывода, который дает сущность и отношение.