Поделиться через


Принятые форматы данных в пользовательской аналитике текста для работоспособности

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

Если вы пытаетесь импортировать данные в пользовательский анализ текста для здоровья, он должен соответствовать определенному формату. Если у вас нет данных для импорта, вы можете создать проект и использовать Language Studio для добавления к документам меток.

Файл меток должен использоваться в json следующем формате при импорте меток в проект.

{
	"projectFileVersion": "{API-VERSION}",
	"stringIndexType": "Utf16CodeUnit",
	"metadata": {
		"projectName": "{PROJECT-NAME}",
		"projectKind": "CustomHealthcare",
		"description": "Trying out custom Text Analytics for health",
		"language": "{LANGUAGE-CODE}",
		"multilingual": true,
		"storageInputContainerName": "{CONTAINER-NAME}",
		"settings": {}
	},
	"assets": {
		"projectKind": "CustomHealthcare",
		"entities": [
			{
				"category": "Entity1",
				"compositionSetting": "{COMPOSITION-SETTING}",
				"list": {
					"sublists": [
						{
							"listKey": "One",
							"synonyms": [
								{
									"language": "en",
									"values": [
										"EntityNumberOne",
										"FirstEntity"
									]
								}
							]
						}
					]
				}
			},
			{
				"category": "Entity2"
			},
			{
				"category": "MedicationName",
				"list": {
					"sublists": [
						{
							"listKey": "research drugs",
							"synonyms": [
								{
									"language": "en",
									"values": [
										"rdrug a",
										"rdrug b"
									]
								}
							]

						}
					]
				}
				"prebuilts": "MedicationName"
			}
		],
		"documents": [
			{
				"location": "{DOCUMENT-NAME}",
				"language": "{LANGUAGE-CODE}",
				"dataset": "{DATASET}",
				"entities": [
					{
						"regionOffset": 0,
						"regionLength": 500,
						"labels": [
							{
								"category": "Entity1",
								"offset": 25,
								"length": 10
							},
							{
								"category": "Entity2",
								"offset": 120,
								"length": 8
							}
						]
					}
				]
			},
			{
				"location": "{DOCUMENT-NAME}",
				"language": "{LANGUAGE-CODE}",
				"dataset": "{DATASET}",
				"entities": [
					{
						"regionOffset": 0,
						"regionLength": 100,
						"labels": [
							{
								"category": "Entity2",
								"offset": 20,
								"length": 5
							}
						]
					}
				]
			}
		]
	}
}

Ключ Заполнитель Значение Пример
multilingual true Логическое значение, которое позволяет иметь документы на нескольких языках в наборе данных. После развертывания модели вы можете отправить к ней запрос на любом поддерживаемом языке (не обязательно включенном в обучающие документы). См. дополнительные сведения о поддержке нескольких языков. true
projectName {PROJECT-NAME} Имя проекта myproject
storageInputContainerName {CONTAINER-NAME} Имя контейнера mycontainer
entities Массив, содержащий все типы сущностей в проекте. Это типы сущностей, которые будут извлекаться из документов.
category Имя типа сущности, который можно определить для новых определений сущностей или предопределен для предварительно созданных сущностей. Дополнительные сведения см. в приведенных ниже правилах именования сущностей.
compositionSetting {COMPOSITION-SETTING} Правило, определяющее, как управлять несколькими компонентами в сущности. Параметры или combineComponents separateComponents. combineComponents
list Массив, содержащий все вложенные списки, которые есть в проекте для определенной сущности. Списки можно добавлять в предварительно созданные сущности или новые сущности с помощью наученных компонентов.
sublists [] Массив, содержащий вложенные списки. Каждый вложенный список является ключом и связанными с ней значениями. []
listKey One Нормализованное значение списка синонимов для сопоставления с прогнозом. One
synonyms [] Массив со всеми синонимами синоним
language {LANGUAGE-CODE} Строка, указывающая языковой код синонима в подлисте. Если проект является многоязычным проектом и вы хотите поддержать список синонимов для всех языков в проекте, необходимо явно добавить синонимы на каждый язык. Дополнительные сведения о поддерживаемых кодах языков см. в разделе Поддержка языков. en
values "EntityNumberone", "FirstEntity" Список разделенных запятыми строк, которые будут соответствовать точно для извлечения и сопоставления с ключом списка. "EntityNumberone", "FirstEntity"
prebuilts MedicationName Имя предварительно созданного компонента, заполняющего предварительно созданную сущность. Предварительно созданные сущности автоматически загружаются в проект по умолчанию, но их можно расширить с помощью компонентов списка в файле меток. MedicationName
documents Массив, содержащий все документы в проекте и список сущностей, помеченных в каждом документе. []
location {DOCUMENT-NAME} Расположение документов в контейнере хранилища. Так как все документы находятся в корне контейнера, это должно быть имя документа. doc1.txt
dataset {DATASET} Тестовый набор, к которому переходит этот файл при разбинии перед обучением. См. дополнительные сведения о разделении данных. Возможные значения для этого поля: Train и Test. Train
regionOffset Позиция символа начала текста (включая сам символ). 0
regionLength Длина ограничивающего прямоугольника в символах UTF16. При обучении учитываются данные только в этом регионе. 500
category Тип сущности, связанной с заданным фрагментом текста. Entity1
offset Начальная позиция текста сущности. 25
length Длина сущности в символах UTF16. 20
language {LANGUAGE-CODE} Строка, указывающая код языка для документа, используемого в проекте. Если проект является многоязычным, выберите код языка большинства документов. Дополнительные сведения о поддерживаемых кодах языков см. в разделе Поддержка языков. en

Правила именования сущностей

  1. Предварительно созданные имена сущностей предопределяются. Они должны быть заполнены предварительно созданным компонентом, и он должен соответствовать имени сущности.
  2. Новые пользовательские сущности (сущности с обучаемыми компонентами или помеченным текстом) не могут использовать предварительно созданные имена сущностей.
  3. Новые определяемые пользователем сущности не могут быть заполнены предварительно созданными компонентами, так как предварительно созданные компоненты должны соответствовать именам связанных сущностей и не иметь помеченных данных, назначенных им в массиве документов.

Следующие шаги

  • Вы можете импортировать данные с метками непосредственно в свой проект. Узнайте, как импортировать проект
  • Дополнительные сведения о добавлении меток к данным приведены в этой статье.
  • Завершив добавление меток к данным, можно приступить к обучению модели.