SB C&Sの最新技術情報 発信サイト

C&S ENGINEER VOICE

Automation Anywhere - 【A2019】 Community Edition で IQ Bot 使ってみた

AI/RPA
2020.11.25

みなさまごきげんよう、永瀬です。

今回は IQ Bot です。Automation Anywhere A2019 Community Edition を使用して、お手軽に AI-OCR を試してみます。

始める前に IQ Bot の能書きをお伝えしておこうと思います。ベンダーのホームページによると、以下のようなことです。

AUTOMATION ANYWHERE IQ BOT

AI ベースの文書処理プラットフォームで時代の変化を先取り

非構造化データを手作業で探して整理してからでなければ始められないビジネスプロセスが多数あります。IQ Bot はその 80% を完全に自動化できるよう開発されています。

  • AI を活用したドキュメント抽出
     形式の異なる複雑なドキュメントからデータを抽出
  • エンドツーエンドのインテリジェント オートメーション
     RPA とシームレスに統合してBot を構築しビジネス ワークフロー全体を自動化

20201118180501.png 

誤解をおそれずにざっくりいうと、PDF や画像ファイルで送られてきた請求書や発注書などの「非構造化データ」をシステムに入力する処理を自動化できるということです。

IQ Bot のいいところは、こちらも誤解をおそれずに柔らかい言葉で言い換えると、以下のようになります。

  • サンプルドキュメントを放り込んでグラフィカルに設定すると簡単に使える
  • AI の細かいこととかまったく知らなくても大丈夫
  • ちょっとくらい書式が違っても対応しちゃう
  • RPA と統合されていて最適化されている
  • (もうすぐ Tegaki もくるみたいだから、日本語の手書き文字もイケるようになる)

それでは、さっそく AI-OCR をお手軽に使ってみましょう。

 

今回の記事作成に使用した環境です。

  • Automation Anywhere A2019 Community Edition (A2019.17 build 7083)
  • Google Chrome (Version: 76.0.3809.100)

 
□目次

1.準備するもの
 1-1. 読み込ませるドキュメントを用意する
 1-2. Community Edition に登録する
2.簡単!AI-OCR の設定
 2-1. 学習インスタンスを作成して、サンプルドキュメントで学習させる
 2-2. ドキュメントを読み込ませるとテキストデータを出力してくれる
3.超簡単!RPA と連携
 3-1. アップロードする Bot
 3-2. ダウンロードする Bot

 


 

1.準備するもの

1-1. 読み込ませるドキュメントを用意する

AI-OCR で読み込ませるドキュメントを用意します。学習用に使用するサンプル実際に読み込ませるドキュメントで、同じフォーマット(書式)で複数のドキュメントが必要です。学習用のサンプルとして複数用意できると、学習結果がより安定します。

実際の業務で使用しているドキュメントを用意できると素敵です。実際のドキュメントを用意するのはたいへんという場合は、Automation Anywhere 社が用意したサンプルファイルを使用することもできます(英語のみ)。サンプルファイルのダウンロード方法は、後ほど手順の中で紹介します。

ドキュメントは日本語のものでも大丈夫です。ファイルサイズは 1 ファイル 50 MB まで、ファイルタイプは JPG/JPEG、PDF (Vector PDF, Raster PDF, Hybrid PDF)、PNG、TIF/TIFFがサポートされています。

 

1-2. Community Edition に登録する

Automation Anywhere のホームページから Community Edition に申し込みます。以下の URL から利用条件を確認して申し込みをすると、すぐに受付完了メールが届き、使い始めることができます。

Automation Anywhere COMMUNITY EDITION

A2019 Community Edition 登録画面.png 

 


 

2.簡単!AI-OCR の設定

2-1. 学習インスタンスを作成して、サンプルドキュメントで学習させる

さっそく、Automation Anywhere Community Edition にログインして、IQ Bot の学習インスタンスを作成していきます。学習インスタンス(英語では Learning Instances)とは、IQ Bot サーバーのメモリー上で実行されている AI の実体のことで、ドキュメントのどのフィールドがどの項目に該当するかなどを相対的な位置関係も含めて覚えていき、渡されたドキュメントから値を抽出してくれます

 

20201117164128.png

Automation Anywhere Community Edition (CE) の Control Room (CR) のログイン画面です。CE の登録時に指定したメールアドレスがユーザー名になります。
ユーザー名とパスワードを指定してログインしてください。

 

20201117164216b.png

CR にログインしたら、[ホーム]ページの[IQ Bot を起動]ボタンをクリックするか、左側の[IQ Bot]-[ラーニングインスタンス]メニューをクリックします。

 

20201117164232b.png

ここからは現時点では英語のままですが、いずれ日本語になっていくはずです。
[ラーニングインスタンス]ページで、今回は[Train other documents]をクリックします。
[Create Learning Instance]をクリックすると、用途別にプリセットされた学習インスタンスを簡単に作成できますが、現状は英語ドキュメントのみ対応です。

 

20201118120953b.png

ブラウザーの別タブで IQ Bot のページが開きます。
左側のメニューで[Learning Instances]をクリックし、[Create one now!]ボタンか、または、[Create Instance]ボタンをクリックします。

 

20201118133832b.png

[Create new learning instance]ページが開きます。
Instance name」は必須です。あとで Bot から IQ Bot を選択するときに、この名前で識別します。
Document type」は IQ Bot が用意しているテンプレートを選択することができます。テンプレートを選択すると、下側の「Fields to extact」の項目が変わり、抽出する項目が変化します。現状では日本語に対応したテンプレートはないので、日本語のドキュメントを読み込ませる場合は「Other」を選択し、右側の「Primary language of documents」で「Japanese」を選択してください。ここでは「invoice」テンプレートを選択しています。
Browse」ボタンから、サンプルとして読み込ませるドキュメントを選択します。サンプルは1枚でもよいですが、複数読み込ませると処理結果が安定します。抽出したい項目は同じでもフォーマット(書式)がことなるドキュメントは、各パターンをサンプルとして読み込ませておきます。
サンプルドキュメントを用意できなかった方は、「Download sample documents」ボタンで、サンプルのドキュメント(英語)をダウンロードすることができます。この記事もこのサンプルドキュメントを使用しています。
サンプルドキュメントを選択すると「Create instance and analyze」ボタンが有効化されて濃い緑色になりますが、ここではもう少し待って下側へページをスクロールしてください。

 

20201118134005b.png

「Fiealds to extract」で「Common form fields」と「Common table/repeated section fields」があります。
Common form fields」は、宛名や請求書番号などドキュメント内に1回しか出てこない項目を指定します。
Common table/repeated section fields」は明細などの表形式で繰り返し出てくる項目を指定します。
テンプレートを選択している場合は、それぞれの用途で代表的な項目はあらかじめ準備されています。
上記でテンプレートがなく「Other」を選択した場合は「Fields to extact」は自動では出てこないので、「Add form fields (optional)」を使ってすべて自分で設定する必要があります。このため、日本語のドキュメントを読み込ませたい場合は、面倒ですが抽出したい項目を自分で追加する必要があります。
抽出したい項目を選択したら、「Create instance and analyze」ボタンをクリックします。

 

20201118134409b.png

AI っぽいイメージの画面が表示されて分析が完了すると、マッピングの確認画面になります。
ドキュメントを解析して、それぞれのフィールドがどの項目に紐づくのかを自動的に抽出してくれます。
マッピングを確認して、問題があれば訂正してください。問題がないようであれば、「Save and go to next group」ボタンをクリックします。
自動的に検出された複数のフォーマット(書式)がグループとして分類されますので、それぞれのグループでマッピングを確認します。

 

20201118134513b.png

マッピングの確認が完了したら、学習インスタンスの設定は完了です。簡単ですね。
この学習インスタンスを RPA から使うためには「Production」(本番環境)ステージとして設定する必要があります。「Set to production」をクリックして、オレンジ色の Production が有効な状態にしてください。

 

2-2. ドキュメントを読み込ませるとテキストデータを出力してくれる

学習インスタンスの設定が終わったら、Bot からドキュメントをアップロードして、抽出結果の CSV ファイルをダウンロードするだけです。

image.png

Bot の具体的な内容は次の章をご覧ください。

 

ここでは、学習インスタンスを鍛えていく手順を紹介します。

 

20201118144847b.png

Bot からドキュメントをアップロードした後、フィールドを自動的にうまく抽出できなかったドキュメントは「Validation」(検証)にまわされます。
[Learning Instances]ページで学習インスタンスを一覧表示すると、Validation 待ちのドキュメントがあるインスタンスには赤いびっくり「!」マーク(エクスクラメーションマーク)がついたアイコンが表示されます。
このアイコンをクリックすると[Validator]ページが開きます。

 

20201118144907b.png

今回の例では、明細表の下にある合計額を明細表の項目のひとつと認識して取得してしまったようです。合計額は「Invoice Total」としてすでに抽出されていますので、不要な項目です。これは「Delete row」アイコンをクリックして削除します。ほかにもエラーになっている項目を確認して修正していきます。
修正が完了したら、「Save current document」ボタンをクリックして修正内容を保存します。
IQ Bot ではこのように抽出エラーが発生して、それを人間が修正すると、その修正内容を覚えて次回以降に使用します。賢いですね。
# 実は、学習インスタンスの作成時に「表の終わり」を示すフィールドを調整すると、この問題は発生しません。ですが、今回はサンプルということでご容赦ください。

 


 

3.超簡単!RPA と連携

3-1. アップロードする Bot

IQ Bot の学習インスタンスを使用するには、Bot を作成してドキュメントをアップロードします。

20201118124557b.png

アップロードに使用するアクションが用意されています。「IQ Bot」パッケージの「Upload Document」アクションです。
「IQ Bot: Upload Document」アクションはファイルを一つずつアップロードします。このため、Bot では「フォルダーの各ファイルに対して」ループを使用して特定のフォルダー内のファイルを取得し、各ファイルをアップロードするように作成します。
ループ内では「$pDicUploadFiles{name}$.$pDicUploadFiles{extension}$」のようにファイル名を指定することで、ループで取得した各ファイルのファイル名とファイル拡張子を取得できます。
「File & Folder」トリガーでドキュメントアップロード先のフォルダーを監視して「ファイルが作成されたら」Bot が起動するようにしてもよいですし、スケジュール実行で1時間おきなど定期的に実行してもよいでしょう。

 

3-2. ダウンロードする Bot

IQ Bot が処理した結果を取得します。

20201118145117b.png

ダウンロードに使用するアクションが用意されています。「IQ Bot」パッケージの「Download all documents」アクションです。
「IQ Bot: Download all documents」アクションは処理済みの結果を一括でダウンロードします。このためとても簡単です。
スケジュール実行で定期的に実行させるとよいでしょう。
アップロードする Bot とダウンロードする Bot に分割して作成することがベストプラクティスです。アップロードする処理とダウンロードする処理を一つの Bot にまとめることもできますが、ドキュメントの処理には一定の時間がかかりますので、アップロード後に Delay で待機させてからダウンロードをすることになります。

 


 

今回はここまで。IQ Bot は裏側ではとても難しい計算をしているはずですが、使うだけなら全然難しいことは知らなくても大丈夫ですね。

また次回まで、みなさまごきげんよう。

 

AA_EV_Banner2.png

著者紹介

先端技術推進統括部
RPAビジネス推進部
永瀬 晋作

みなさま、ごきげんよう。