これは、ソフトウェア工学コースのブログです
[TODO形プレースホルダ]
では、以前のブログで、私は簡単にOCRフォームツールとそのローカル展開を紹介し、このブログでは、さらにソフトウェアの評価となります。
まず、再び完全なソフトウェア実行中のプロセス、その機能の直感的な理解を行きます
このツール・ベースのデータ記憶Azureストレージサービスは、トレーニング形式のPDFファイルの5部を含有する、倉庫の下方に設けられたテストを開発するために教師によって使用されています。同時にテストデータと同じ形式のPDFファイルのローカル形式があります。
プロジェクトを作成します。
初期画面を見るために実行した後。
あなたはマイクロソフトの全体的なインターフェースのデザインは風が常に10年間で横ばいとなっている取って、突然人々の暗いテーマカラーは対主力製品を考えるとVSC見ることができます。新しいフォーム識別プロジェクトを作成しようとする新規プロジェクトをクリックします:
様々なこのフォームが完全であることを確認し、プレースホルダとヒントは非常に明確であると入力します。
Azureストレージサービスに関連付ける新しい接続を追加することに留意すべきです。インターフェイスは非常に近くに「接続の追加」ボタンを提供し、あなたはまた、ページの左側に小さなアイコン・インタフェースプラグをクリックし、[接続の追加の管理を完了することができます。
フォームに新しいプロジェクトバックの完了後だけで作られました。記入し、新しいフォーム識別プロジェクトを作成するための情報の残りの部分を続行
エディタに、マーキングされるPDFのプレビューページを参照してください。
タグを追加します
トレーニングモデルを識別するために、我々は、フォームをマークする必要があり、私たちはさまざまな機能を準備するためにモデルとして使用して、ラベルを付けた(名前、住所、電子メールなど)の情報に興味があります。この情報を区別するために、我々は、異なるタグでそれをマークしたいです
最初の名前は、文字列にタグの名前とそのタイプを追加します。
プロンプトボックスが変色キー「1」をマークした後、プレスを参照して、名前フィールドのPDFドキュメントジョン・シンガーをクリックして、名前が赤いボックスが表示され、右側の名前タグ、ラベルの成功に現れるように選ばれました。
順次追加メール、郵便番号、EXPDATE、金額、いくつかのタグ、および割り当て、文字列、整数、日付、数値型、テストの種類を標識するタグ; 5つのPDF、上記のすべてに完全な注釈タグ
あなたは、注釈付きのラベル付きの小さなアイコンが表示されますファイルを見ることができます。
迅速なので、非常に便利な事前のOCRテキストのクリックを行うデジタルラベルプレスを入力し、すぐにマークダウンマウスとキーボードで行うことができます削除します入力し、移動するにはPDFリーダー支持ホイールのズームとドラッグでマークされました。タグの五種類は私に10分で完了し5つの文書、非常に高い効率をマーク。
モデルのトレーニング
トレーニングページに入り、列車ボタンの完了をマークし、左クリックしてください
各タグの予測精度とモデル情報の復帰が完了した後、新しいモデルを訓練するために、列車の右側にクリックしてください
モデルのテスト
モデルが訓練されたモデルを予測した後、ちょうど新しいPDFを予測するために訓練を受けてみてください、ページの左側にクリックしてください。ブラウズ、プレビュー後に残さ上のファイルを選択し、その後、予測を予測クリック開始
信頼リターンが完了した後、および
あなたは、個々のタグが適切にマーキーある見ることができます。このPDFは、トレーニングセットには表示されませんので、記述モデルの訓練は非常に成功しました。予測結果に注目することも、(ここで撮影したそのうちのいくつかは、テキストが長すぎる)JSON形式でダウンロードすることができます。
"fields":{"Email":{"type":"string","valueString":"[email protected]","text":"[email protected]","page":1,"boundingBox":[2.045,6.0200000000000005,3.345,6.0200000000000005,3.345,6.15,2.045,6.15],"confidence":0.99,"elements":["#/analyzeResult/readResults/0/lines/25/words/0"],"fieldName":"Email","displayOrder":1},"Zipcode":{"type":"integer","valueInteger":5001,"text":"05001","page":1,"boundingBox":[7.2250000000000005,6.55,7.58,6.55,7.58,6.655,7.2250000000000005,6.655],"confidence":0.999,"elements":["#/analyzeResult/readResults/0/lines/33/words/0"],"fieldName":"Zipcode","displayOrder":2},"Amount":{"type":"number","text":"45.00","page":1,"boundingBox":[6.54,7.84,6.875,7.84,6.875,7.95,6.54,7.95],"confidence":1,"elements":["#/analyzeResult/readResults/0/lines/42/words/0"],"fieldName":"Amount","displayOrder":4},"ExpDate":{"type":"date","text":"10 / 21","page":1,"boundingBox":[4.49,7.88,4.92,7.88,4.92,8.01,4.49,8.01],"confidence":1,"elements":["#/analyzeResult/readResults/0/lines/38/words/0","#/analyzeResult/readResults/0/lines/39/words/0","#/analyzeResult/readResults/0/lines/40/words/0"],"fieldName":"ExpDate","displayOrder":3},"Name":{"type":"string","valueString":"Jaime Gonzales","text":"Jaime Gonzales","page":1,"boundingBox":[2.365,5.74,3.35,5.74,3.35,5.845,2.365,5.845],"confidence":0.97,"elements":["#/analyzeResult/readResults/0/lines/15/words/0","#/analyzeResult/readResults/0/lines/15/words/1"],"fieldName":"Name","displayOrder":0}}}],"errors":[]}}
このプロジェクトの主な機能は、我々は共謀ということですので:Azureストレージブロブに最初にアップロードされますPDFのトレーニングセットを、接続して、モデルを訓練、彼らのツールをマークするためにどのとのプロジェクトを作成し、フォームの形式を識別するためのモデルを得ることができます。それ以来、必要性は、新しいフォーム入力訓練されたモデルを識別するために、あなたはフォーマット後、フォームデータをエクスポートすることができます。
体験
全体的に私は本当にこのツールのように、私はそれが大幅に現在の状況のフォーム処理は、人材の多くを必要と向上させることができると思います。具体的には、私は利点があると思います。
- 事前にマークされ、この設計に基づいた迅速なフィールド選択の実現、および操作のショートカットOCRは非常にユーザーフレンドリーれていると、効率を標識することは非常に高いです
- 該当技術的背景が簡単になることはできません場合でも、詳細推論ワークフローの多く - ワンストップモデルのトレーニングは、すぐにラベルされた良好なデータ転送モデルは、退屈なAPI呼び出しの多くの保存、トレーニング直後に隠された機械学習の訓練を使用しました始めます
- 展開ステップ、準備袋をインストールすることなく、Webアプリケーションの形で提供スパを、反応基づき、
- モデルは、そののみ、強い拡張性を有する任意のモデルが容易同じバックエンドインターフェースAPIにアクセスできることを意味し、ベースURLを提供する必要が後端部に配置されました
- クールなインターフェイス
全体のプロセスは非常に滑らかな経験のツールですが、それでも私はいくつかの小さな問題があると思いますが。
- マーキーフィールドを削除するには削除キーの使用を示唆して、注釈インタフェースは、標識されたボタンに対応する新しいタグを表しデジタルアイコンの新しいユーザーのために理解することは困難、ヒントがあまりにも漠然としています
- それは、タグの種類を提供しているが、タグの種類、したがって、タグの種類の設定の見直しを見ることができない設定メニューのタグを開くためにポイントしていませんがあまりにも面倒、やすいタグセットの省略があります。異なる機能タイプの一般的なモデルでは、異なるプレコーディング処理を選択するので、不正確なタグタイプは、符号化機能は、モデルの精度に影響を与える使用して、誤った又は準最適モデルを引き起こし得ます。(インターフェイスとタグ付けトレーニング結果テーブルの下にタグカテゴリを充填されている、ことをお勧めします)
- ユーザーはすでに多少不親切なストレージソリューションの独自の形式を持っているため、今モデルは、Azureのストレージサービスをサポートしています
- モデルは、一括アップロード、バルク推論を予測することはできません
- JSONダウンロード形式は、ユーザの生の大量のデータがない興味のある含んでいる(例えば、位置検出ブロック、等);およびExcel形式のような非専門家が困難ワークフローに直接ツールを統合するように、得られた結果を提供しません。
テストとバグレポート
コースワークは、ソフトウェアのバグを見つけるために必要なので、私は、ブラウザで異なる動作環境でソフトウェアをテストするブラックボックスを持っていると、以下の問題が見つかりました:
ドッキングウィンドウのためのドッカーToolboxの仮想ランタイム環境ではまず、リモート倉庫への接続は失敗します。エラーメッセージは、ユーザーを理解することは困難であり、これは開発者の予期しない未処理の例外のようになります。
公式画像がドッキングウィンドウのリリースバージョンとして構築されているように、窓を再現するために考慮に入れたシミュレーションドッカーToolboxのネットワーク環境を服用することは、より複雑であるため、唯一のエラー報告を行う、エラーの原因を突き止めるためにそれ以上の試みが存在しない、十分なデバッグ情報を提供していません。
ラベルに関連する別の問題。繰り返しマークされている小数点データのテストファイル、ポストクリックデータの単一ケースにラベルを付けるときに発生します。
それぞれ図のテストファイルをクリックするCCAuth-1.pdf
とCCAuth-2.pdf
結果が金額フィールドに留意し、小数を誤って二回選択されています。したがって、チェック-二つの別々のブロックOCRワード、衝突ブロック一致の両方として識別されながら分析は、おそらくので、PDFファイルの処理要素は、息子を2つの小数を分割しました。この問題に対処するために、考慮がの範囲は、2つの単語を選択したときに、与えられたときのブロックとの一致や含む、いくつかの判断と処理。かもしれません
それは、これらがどのような深刻な問題ではありませんが、注意すべきである - 前者は極端な動作環境での散発的なエラーが表示されている、ターゲットグループは、許容範囲内で完全にの面で比較的ソフトウェアと使用のシナリオであり、後者がマークされている場合いくつかの小さな確率の機能不全、経験の使用に有意な低下がありません。
実際には、我々はこのソフトウェアツールの品質が非常に高いことを認めなければなりません。私は、Firefox、エッジと主流のブラウザの他の様々な明らかな機能や表示エラーではない、Chromeでのブラックボックステストの多くを持っていました。
ニーズと機能解析を理解するために
完全に実行した後、再び、私はすでにこのプロジェクトの機能の一般的な理解を持っています。私の理解では、これがあることであるバックエンド形式の認識アルゴリズムの設計フォームの注釈ツール、あなたが可能な、非常に効率的で、フォーマット形式ファイルの注釈機能を使用して簡単に提供してすぐにトレーニングセットを構築する。同時に、それはまた、フォローアップを簡素化し、それは可能な認識モデルの訓練に与えられたトレーニングセットを使用して、すぐに訓練を受けました。
私は、このツールがポイントである痛みを解決すると思います:
- フォームデータは、問題を標識することは困難です。通常の用語は、学習アルゴリズムはほとんど含まれたデータに焦点を当てる:ターゲット・フィールドの位置を文書、ターゲット・フィールドの対象フィールドの真の値のデータ型に。ほとんどのドキュメントフォーマット(PDF、DOCX、等)またはクラスXML組織の形態のXML文書、ならびに純粋な形態は、文書内のフィールド(典型的には、角座標)を処理する必要の画像フォーマットの多数ので直感的に困難ですそれはによって与えられているので、多くの場合、手動た後、その真の価値を完了するために様々なグラフィカルテキスト要素の座標を測定するためのツール、およびタイプに基づいて必要な機能のをマークし、 -これは非常に面倒な作業なので、高い人件費です。そして、前述の分析として、このマークの良いツールは、このプロセスを簡素化します。
私は現在、プロジェクトは暫定的にユーザーグループであることを理解します。
- マイクロソフトOCR-フォームユーザー。このツールは、READMEと記載されている、それが大幅にOCR-フォームエクスペリエンスを最適化(することができ、実際と)に意図された電荷のシートを、リードする一連のツールです。このツールを使用すると以下のことができすばやく注釈データ、モデルのトレーニング、モデルの検証
そして私は、このツールは、痛みのポイントを解決する可能性を秘めていると思います:
- 非技術者フォームデータを処理するモデルの問題を機械学習を使用することを学ぶことは困難です。人間、金融や他の部門を考慮し、紙の数が多い日に再開、レポートが必要デジタル化するために、フォームの同定モデルの武器は、これらの生産性を解放することができている-統計を容易にするために、このプロセスは非常に面倒な作業の簡単な重複があります。このビジョンを実現するのではなく、スタッフの人材、金融や他の部門は、多くの場合、必要なトレーニングモデル検索APIの専門知識を持っていないので、難しい-しかし、頻繁に書式を変更するこれらのレポートは、対応する認識モデルはそれに応じて再トレインにする必要があります。このツールは、新しい技術はまた、これらの人々にエネルギーを与えることが予想されながら、集中して全体のワークフロー、隠されたアルゴリズム、API呼び出しやその他の技術的な詳細を簡素化します。
:だから、私はこのプロジェクトの将来の潜在的なユーザーがいると思います
- 上記の非熟練した医師。仕事の報告企業の多くがありますが、より多くの便利なツールをフロントエンドを開発するために行く(または由来)があり、このプロジェクトは、急用の痛みのポイントは、実際に存在して解決するために、彼らのビジネスのための非常に強力な武器を提供します。
潜在的なユーザーに応えるために、私は、このツールはまた、行われる必要があると思います:
- バッチ推論は、上記のダウンロード機能を優れています。私は理想的に基づいて、そのワークフローは、そのユーザーのアップロードとマークされたレポート形式、完全なモデルの訓練のいくつかの種類であると考え、その後、未処理のレポートデータを大量にアップロードし、推論は不要な情報からバッチフィルタをダウンロードすることができ、すでに概要をエクセル表:レポートファイルの各表の行が対応する、対応する各列(基本情報、レポートファイル名、等)タグ
- さらに、しきい値を減らすために埋め込まれたヒントの助けを借りて、完全に更に洗練インタフェース、