Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это содержимое относится к следующему:🟩v4.0 (GA) | Предыдущая версия:🟦v3.1 (GA)
Это содержимое относится к следующему:🟩v3.1 (GA) | Последняя версия:🟪v4.0 (GA)
Внимание
- Модель
v4.0 2024-11-30 (GA)пользовательской классификации по умолчанию не разделяет документы во время анализа. - Необходимо явно задать для свойства
splitModeзначение auto, чтобы сохранить поведение из предыдущих версий. ЗначениеsplitModeпо умолчанию —none. - Если входной файл содержит несколько документов, необходимо включить разделение, задав для этого значение
splitModeauto.
Аналитика документов Azure в средстве Foundry — это облачная служба средств Foundry, которая позволяет создавать интеллектуальные решения для обработки документов. API аналитики документов анализируют изображения, PDF-файлы и другие файлы документов для извлечения и обнаружения различных содержимого, макета, стиля и семантических элементов.
Пользовательские модели классификации — это типы моделей глубокого обучения, которые объединяют функции макета и языка для точного обнаружения и идентификации документов, обрабатываемых в приложении. Пользовательские модели классификации постранично классифицируют входной файл, чтобы выявлять содержащиеся в нем документы, а также распознавать несколько документов или несколько экземпляров одного и того же документа во входном файле.
Возможности модели
Примечание.
- Модели пользовательской классификации версии 4.0
2024-11-30(GA) поддерживают добавочное обучение. Вы можете добавить новые примеры в существующие классы или добавить новые классы, ссылаясь на существующий классификатор. - Пользовательская модель классификации версии 3.1
2023-07-31(GA) не поддерживает копирование моделей. Чтобы использовать функцию копирования моделей, обучите модель с помощью последней модели версии 4.0 (GA).
Пользовательские модели классификации могут анализировать документы с одним или несколькими файлами, чтобы определить, содержится ли любой из обученных типов документов в входном файле. Ниже приведены поддерживаемые в настоящее время сценарии:
Один файл, содержащий один тип документа, например форму заявки на кредит.
Один файл, содержащий несколько типов документов. Например, пакет документов для заявки на кредит, содержащий форму заявления на кредит, расчётный листок и банковскую выписку.
Один файл, содержащий несколько экземпляров одного документа. Например, коллекция отсканированных счетов.
✔️ Для обучения пользовательского классификатора требуется не менее two различных классов и минимум five образцов документов для каждого класса. Ответ модели содержит диапазоны страниц для каждого класса документов, определенных.
✔️ Максимально допустимое число классов 1,000. Максимально допустимое число примеров документов для каждого класса 100.
Модель классифицирует каждую страницу входного документа, если не указано, к одному из классов в помеченном наборе данных. Можно также указать номера страниц для анализа в входном документе. Чтобы задать пороговое значение для приложения, используйте оценку достоверности из ответа.
Добавочное обучение
С помощью пользовательских моделей необходимо поддерживать доступ к набору данных обучения, чтобы обновить классификатор с новыми примерами для существующего класса или добавить новые классы. Модели классификаторов теперь поддерживают добавочное обучение, где можно ссылаться на существующий классификатор и добавлять новые примеры для существующего класса или добавлять новые классы с примерами. Инкрементное обучение поддерживает сценарии, в которых хранение данных затруднено и классификатор необходимо обновлять в соответствии с меняющимися потребностями бизнеса. Инкрементное обучение поддерживается для моделей, обученных с использованием версии API v4.0 2024-11-30 (GA).
Внимание
Инкрементное обучение поддерживается только для моделей, обученных с использованием той же версии API. Если вы пытаетесь расширить модель, используйте версию API, с которым была обучена исходная модель, чтобы расширить модель. Добавочное обучение поддерживается только в API версии 4.0 2024-11-30 (GA) или более поздней версии.
Для инкрементного обучения необходимо указать исходный идентификатор модели в качестве baseClassifierId. Дополнительные сведения об использовании добавочного обучения см. в статье о добавочном обучении .
Поддержка типов документов Office
Теперь можно обучать классификаторы для распознавания типов документов в различных форматах, включая PDF, изображения, Word, PowerPoint и Excel. При сборке обучающего набора данных можно добавить документы любого из поддерживаемых типов. Классификатор не требует явной метки конкретных типов. Рекомендуется убедиться, что набор данных для обучения имеет по крайней мере один пример каждого формата, чтобы повысить общую точность модели.
Сравнение пользовательских классификаций и составных моделей
Пользовательская модель классификации может заменить составную модель в некоторых сценариях, но следует учитывать несколько различий.
| Возможность | Процесс настраиваемого классификатора | Процесс создания модели |
|---|---|---|
| Анализ одного документа неизвестного типа, относящегося к одному из типов, обученных для обработки модели извлечения. | ● Требуется несколько вызовов. • Вызов модели классификации на основе класса документа. Этот шаг позволяет проверить достоверность перед вызовом анализа модели извлечения. ● Вызовите модель извлечения. |
— требуется один вызов в составную модель, содержащую модель, соответствующую типу входного документа. |
| Анализ одного документа неизвестного типа, относящегося к нескольким типам, обученным для обработки модели извлечения. | ●Требуется несколько вызовов. • Вызовите классификатор, который игнорирует документы, не соответствующие указанному типу при извлечении. ● Вызовите модель извлечения. |
● Требуется один вызов к составной модели. Служба выбирает настраиваемую модель в составе составной модели, которая имеет наибольшее соответствие. • Составная модель не может игнорировать документы. |
| Проанализировать файл, содержащий несколько документов известного или неизвестного типа, относящихся к одному из типов, поддерживаемых моделью извлечения. | ● Требуется несколько вызовов. • Вызовите модель извлечения для каждого определенного документа в входном файле. ● Вызовите модель извлечения. |
● Требуется только один вызов к составной модели. • Составная модель вызывает модель компонента один раз в первом экземпляре документа. •Остальные документы игнорируются. |
Поддержка языков
Модели классификации в настоящее время поддерживают только документы английского языка.
Теперь модели классификации можно обучить на документах различных языков. Полный список см. в разделе поддерживаемые языки.
Требования к входным данным
Поддерживаемые форматы файлов:
| Модель | Изображение:jpeg/jpg, , pngbmp, tiffheif |
Microsoft Office: Word (docx), Excel (xlxs), PowerPoint (pptx) |
|
|---|---|---|---|
| Читать | ✔ | ✔ | ✔ |
| Макет | ✔ | ✔ | ✔ |
| Документ общего назначения | ✔ | ✔ | |
| Предварительно собранный | ✔ | ✔ | |
| Настраиваемая функция извлечения | ✔ | ✔ | |
| Настраиваемая классификация | ✔ | ✔ | ✔ (не поддерживается в студии) |
Для достижения наилучших результатов предоставьте пять четких фотографий или высококачественных сканов для каждого типа документа.
Для PDF и TIFF можно обрабатывать до 2000 страниц (с подпиской на бесплатный уровень только первые две страницы обрабатываются).
Размер файла для анализа документов составляет 500 МБ для платного уровня (S0) и 4 МБ для бесплатного уровня (F0).
Изображения должны иметь размеры в пределах от 50 x 50 до 10 000 x 10 000 пикселей.
Если PDF-файлы заблокированы паролем, перед отправкой необходимо снять блокировку.
Минимальная высота извлекаемого текста составляет 12 пикселей для изображения размером 1024 x 768 пикселей. Этот размер соответствует тексту размером
8пунктов при 150 точках на дюйм (DPI).Для обучения пользовательской модели максимальный объем обучающих данных составляет 500 страниц для пользовательской модели шаблона и 50 000 страниц для пользовательской нейронной модели.
Для обучения пользовательской модели извлечения общий размер обучающих данных составляет 50 МБ для модели шаблона и 1G-МБ для нейронной модели.
Для обучения пользовательской модели классификации общий размер обучающих данных составляет 2 ГБ, не более 25 000 страниц.
Разделение документов
При наличии нескольких документов в файле классификатор может определить различные типы документов, содержащиеся в входном файле. Ответ классификатора содержит диапазоны страниц для каждого из определенных типов документов, содержащихся в файле. Этот ответ может включать несколько экземпляров одного типа документа.
Теперь операция analyze имеет свойство splitMode, которое позволяет гибко управлять поведением разбиения.
- Чтобы обрабатывать весь входной файл как один документ для классификации, задайте для splitMode значение
none. При этом служба возвращает только один класс для всего входного файла. - Чтобы классифицировать каждую страницу входного файла, задайте для splitMode значение
perPage. Служба пытается классифицировать каждую страницу как отдельный документ. - Задайте для splitMode значение
auto, и служба определит документы и соответствующие диапазоны страниц.
Лучшие практики
Для обучения настраиваемых моделей классификации требуется как минимум пять образцов для каждого класса. Если классы похожи, добавление дополнительных примеров обучения повышает точность модели.
Классификатор пытается назначить каждый документ одному из классов, если ожидается, что модель будет видеть типы документов не в классах, входящих в набор данных обучения, следует запланировать установку порогового значения для оценки классификации или добавить несколько репрезентативных примеров типов документов в "other" класс.
"other" Добавление класса гарантирует, что ненужные документы не влияют на качество классификатора.
Обучение модели
Пользовательские модели классификации поддерживаются API версии v4.0 2024-11-30 (GA). Document Intelligence Studio предоставляет пользовательский интерфейс без кода для интерактивного обучения пользовательского классификатора. Следуйте инструкциям по началу работы.
При использовании REST API при организации документов по папкам можно использовать azureBlobSource свойство запроса для обучения модели классификации.
https://{endpoint}/documentintelligence/documentClassifiers:build?api-version=2024-11-30
{
"classifierId": "demo2.1",
"description": "",
"docTypes": {
"car-maint": {
"azureBlobSource": {
"containerUrl": "SAS URL to container",
"prefix": "sample1/car-maint/"
}
},
"cc-auth": {
"azureBlobSource": {
"containerUrl": "SAS URL to container",
"prefix": "sample1/cc-auth/"
}
},
"deed-of-trust": {
"azureBlobSource": {
"containerUrl": "SAS URL to container",
"prefix": "sample1/deed-of-trust/"
}
}
}
}
https://{endpoint}/formrecognizer/documentClassifiers:build?api-version=2023-07-31
{
"classifierId": "demo2.1",
"description": "",
"docTypes": {
"car-maint": {
"azureBlobSource": {
"containerUrl": "SAS URL to container",
"prefix": "{path to dataset root}/car-maint/"
}
},
"cc-auth": {
"azureBlobSource": {
"containerUrl": "SAS URL to container",
"prefix": "{path to dataset root}/cc-auth/"
}
},
"deed-of-trust": {
"azureBlobSource": {
"containerUrl": "SAS URL to container",
"prefix": "{path to dataset root}/deed-of-trust/"
}
}
}
}
Кроме того, если у вас есть неструктурированный список файлов или планируется использовать несколько файлов в каждой папке для обучения модели, можно использовать azureBlobFileListSource свойство для обучения модели. Для этого шага требуется file list в формате JSON Lines. Для каждого класса добавьте новый файл со списком файлов, которые будут отправлены для обучения.
{
"classifierId": "demo2",
"description": "",
"docTypes": {
"car-maint": {
"azureBlobFileListSource": {
"containerUrl": "SAS URL to container",
"fileList": "{path to dataset root}/car-maint.jsonl"
}
},
"cc-auth": {
"azureBlobFileListSource": {
"containerUrl": "SAS URL to container",
"fileList": "{path to dataset root}/cc-auth.jsonl"
}
},
"deed-of-trust": {
"azureBlobFileListSource": {
"containerUrl": "SAS URL to container",
"fileList": "{path to dataset root}/deed-of-trust.jsonl"
}
}
}
}
Например, список car-maint.jsonl файлов содержит следующие файлы.
{"file":"classifier/car-maint/Commercial Motor Vehicle - Adatum.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Fincher.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Lamna.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Liberty.pdf"}
{"file":"classifier/car-maint/Commercial Motor Vehicle - Trey.pdf"}
Перезапись модели
Примечание.
Пользовательская модель классификации версии 4.0 2024-11-30 (GA) поддерживает перезапись модели на месте.
Теперь можно обновить пользовательскую классификацию на месте. Если напрямую перезаписать модель, вы потеряете возможность сравнить качество моделей, прежде чем принять решение о замене существующей модели. Перезапись модели разрешена, если свойство allowOverwrite явно указано в теле запроса. После выполнения этого действия невозможно восстановить исходную модель, которая была перезаписана.
{
"classifierId": "existingClassifierName",
"allowOverwrite": true, // Default=false
...
}
Копирование модели
Примечание.
Пользовательская модель классификации версии 4.0 2024-11-30 (GA) поддерживает копирование модели как в любые из следующих регионов, так и из них.
- Восточная часть США
- Западная часть США2
- Западная Европа
Используйте REST API или Document Intelligence Studio для копирования модели в другой регион.
Создание запроса на авторизацию копирования
Следующий HTTP-запрос получает авторизацию на копирование из целевого ресурса. Необходимо ввести конечную точку и ключ целевого ресурса в качестве заголовков.
POST https://myendpoint.cognitiveservices.azure.com/documentintelligence/documentClassifiers:authorizeCopy?api-version=2024-11-30
Ocp-Apim-Subscription-Key: {<your-key>}
Текст запроса
{
"classifierId": "targetClassifier",
"description": "Target classifier description"
}
Вы получаете код ответа 200 с телом ответа, содержащим полезную нагрузку JSON, необходимую для инициирования копирования.
{
"targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService",
"targetResourceRegion": "targetResourceRegion",
"targetClassifierId": "targetClassifier",
"targetClassifierLocation": "https://targetEndpoint.cognitiveservices.azure.com/documentintelligence/documentClassifiers/targetClassifier",
"accessToken": "accessToken",
"expirationDateTime": "timestamp"
}
Запуск операции копирования
Следующий HTTP-запрос запускает операцию копирования в исходном ресурсе. Необходимо ввести конечную точку и ключ исходного ресурса в качестве URL-адреса и заголовка. Обратите внимание, что URL-адрес запроса содержит идентификатор классификатора исходного классификатора, который требуется скопировать.
POST {endpoint}/documentintelligence/documentClassifiers/{classifierId}:copyTo?api-version=2024-11-30
Ocp-Apim-Subscription-Key: {<your-key>}
Текст запроса — это ответ, полученный на предыдущем шаге.
{
"targetResourceId": "/subscriptions/targetSub/resourceGroups/targetRG/providers/Microsoft.CognitiveServices/accounts/targetService",
"targetResourceRegion": "targetResourceRegion",
"targetClassifierId": "targetClassifier",
"targetClassifierLocation": "https://targetEndpoint.cognitiveservices.azure.com/documentintelligence/documentClassifiers/targetClassifier",
"accessToken": "accessToken",
"expirationDateTime": "timestamp"
}
Ответ модели
Анализ входного файла с помощью модели классификации документов.
https://{endpoint}/documentintelligence/documentClassifiers/{classifier}:analyze?api-version=2024-11-30
v4.0 2024-11-30 (GA) API позволяет указывать страницы для анализа из входного документа с помощью pages параметра запроса в запросе.
https://{service-endpoint}/formrecognizer/documentClassifiers/{classifier}:analyze?api-version=2023-07-31
Ответ содержит идентифицированные документы с соответствующими диапазонами страниц в разделе документов ответа.
{
...
"documents": [
{
"docType": "formA",
"boundingRegions": [
{ "pageNumber": 1, "polygon": [...] },
{ "pageNumber": 2, "polygon": [...] }
],
"confidence": 0.97,
"spans": []
},
{
"docType": "formB",
"boundingRegions": [
{ "pageNumber": 3, "polygon": [...] }
],
"confidence": 0.97,
"spans": []
}, ...
]
}
Следующие шаги
Узнайте, как создавать пользовательские модели классификации: