【UiPath】Document Understanding 分類器の早見表

# はじめに

- 本記事は、Document Understanding の分類器はどれを使えばよいか悩んでらっしゃる方向けの内容です。
- 記事の内容は、個人の見解または確認結果であり、UiPath の公式見解ではありません。
- 製品仕様や参考画像は 24.10 バージョンのもので構成しています。
- 動作確認は次の依存パッケージでおこなっています。

::: note
■キーワード分類器、インテリジェントキーワード分類器
"UiPath.IntelligentOCR.Activities": "[6.22.1]"

■Classify Document、生成AI分類器、DUプロジェクト分類器
"UiPath.DocumentUnderstanding.Activities": "[2.13.2-preview]"
:::

# DU分類器の早見表

![分類器早見表.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/3573ec08-3e7e-4530-9926-b3bc73cc5bd8.jpeg)

## キーワード分類器

![キーワード分類0.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/00c0aa59-30af-4bd1-8356-c2c906ff5a93.jpeg)

***無料で設定を手軽に編集できるのが良いところ。***
前方3ページ分でしか判定できないものの、人が目視ですぐ振り分けれるレベルの帳票はこれ一本で十分におもう。

## インテリジェントキーワード分類器

![インテリジェントキーワード分類0.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/075a2d00-2464-4552-8a6d-2156738f8b4c.jpeg)

***入力ファイルが25ページ未満であれば無料で使えること、また
入力ファイルに複数のドキュメントを含む場合にもページ単位で判定できるのが強み。***
また、ドキュメント毎に学習用ファイルをある程度（10ファイルくらい）準備できるのであれば
インポートして精度の高い単語ベクトルを自動生成・設定可能。
設定を手で編集できないのが若干痛い。理由は、設定ファイルのスコアよりも、出現する順位が早いもので判定されやすいため、レイアウト上部の不要な単語は除外したいができない点。なお、スコア自体も編集できません。

（ページ判定の例）
![インテリジェントキーワード分類.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/5ee00125-204c-447d-ba0e-5b59c744677f.jpeg)

::: note
（上のキャプチャの出力コマンド - ***「StartPage」で開始ページが取得可能***）
currentClassificationResult.DocumentTypeId.ToString+" 信頼度："+currentClassificationResult.Confidence.ToString+" 開始ページ番号："+currentClassificationResult.DocumentBounds.StartPage.ToString+" ページカウント："+currentClassificationResult.DocumentBounds.PageCount.ToString
:::

## オリジナル分類器

***ワークフローの実装に慣れてる方にお勧め。
自前の設定ファイルでおこなうキーワード分類器のイメージです。***
単純な AND や OR 条件だと実現が難しく、NGワード（スコアの引き算）など含めたい場合に次の記事を参考にしてみてください。

https://qiita.com/Kajiita/items/388bb5506864f9dc2677

## Classify Document

![ClassifyDoc.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/b656f3e0-8da4-4369-b055-d98ca0c11f4a.jpeg)

***事前学習済みモデルがある場合、これ1つで分類できる（タクソノミーの設定やデジタル化も不要な）のは良い。***

::: note warn
あくまでサポートされているドキュメント種類を返すものです。

■公式ガイドページ
https://docs.uipath.com/ja/activities/other/latest/document-understanding/document-understanding-classify-document

サポートされているドキュメントの種類: 
1040, 1040 Schedule C (Preview), 1040 Schedule D (Preview), 1040 Schedule E (Preview), 1040X (Preview), 3949A (Preview), 4506T, 709 (Preview), 941X (Preview), 9465 (Preview), ACORD 125, ACORD 126, ACORD 131, ACORD 140, ...

![ClassifyDoc2.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/35d8b52c-ae4c-499b-aee4-ce782412669b.jpeg)
:::

## 生成AI分類器

![生成AI分類器0.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/569423eb-da9e-490c-9d94-e74c01813a4c.jpeg)

***メリットは設定の手軽さに尽きます。***
英字帳票の分類は動作を確認できたが、最新のプレビュー版だからか？日本語帳票では期待する分類結果を返してくれなかった。（ClssificationResult[0]が返ってきた）

Junさんの次の記事が参考になります↓↓

https://qiita.com/Jun96427231/items/df69a914462087058c15

## 画像分析

![画像分析.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/28e02c50-d6c9-40da-9550-64cfd3bbcae8.jpeg)

***個人的には GPT-4o や gemini のOCRを適用できるのが推しポイントです。***
信頼度や確認画面は出せませんが、不要なユースケースであればメンテの容易さ含め優秀です。

## DUプロジェクト分類器

![PJ分類器0.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3301444/9f664420-8d45-4ace-b323-a4603ea477aa.jpeg)

***簡単につくれる自前のAI分類器です。***
単語ベクトルだけではなく、座標なども含めた判断が必要なケースでつかうのだと想像しますが、わたしには適当なユースケースがおもいつかない。。。

# さいごに
いかがでしたでしょうか。
機能は多いがどれ使ったらよいか悩む方もいらっしゃいますよね。わたしもそうなので書きました。
少しでもお役に立てば幸いです。
最後までお読みいただきありがとうございます(・ω・)ノ