Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
freeeのOCR開発における Amazon SageMaker Ground Truthの活...
Search
ymicky06
May 16, 2022
Technology
0
130
freeeのOCR開発における Amazon SageMaker Ground Truthの活用 / SageMaker Ground Truth for OCR at freee
ymicky06
May 16, 2022
Tweet
Share
More Decks by ymicky06
See All by ymicky06
Kaggleのたんぱく質コンペで銅メダルとった話 / Get Bronze medal on Kaggle Competition
ymicky06
0
340
Kaggle鳥コンペ反省会 / Retrospective Birt Competition on Kaggle
ymicky06
0
160
Other Decks in Technology
See All in Technology
LLVM/ASMを使った有限体の高速実装
herumi
0
120
ロリポップ! for Gamersを支えるインフラ/lolipop for gamers infrastructure
takumakume
0
140
ついに出た!OpenAIの最新モデル「o1」って何がすごいの?
minorun365
PRO
3
1.3k
Classmethod AI Talks(CATs) #1 司会進行スライド(2024.09.19) / classmethod-ai-talks-aka-cats_moderator-slides_vol1_2024-09-19
shinyaa31
0
240
横断組織として考える共通DBの課題解決 〜 桃園の誓いアーキテクチャ 〜 / Addressing Shared Database Challenges as Cross-Team: “Peach Garden Oath” Architecture
4geru
0
230
ナレッジグラフとLLMの相互利用
koujikozaki
0
430
『GRANBLUE FANTASY: Relink』最高の「没入感」を実現するカットシーン制作手法とそれを支える技術
cygames
1
160
『GRANBLUE FANTASY: Relink』専任エンジニアチームで回す大規模開発QAサイクル
cygames
0
110
OSTという文化を組織に根付かせてみた
sansantech
PRO
2
430
DuckDB雑紹介(1.1対応版)@DuckDB座談会
ktz
6
1.4k
タイミーのレコメンドにおける ABテストの運用
ozeshun
1
210
あなたの知らないiOS開発の世界
recruitengineers
PRO
3
190
Featured
See All Featured
Building an army of robots
kneath
302
42k
The World Runs on Bad Software
bkeepers
PRO
64
11k
Scaling GitHub
holman
458
140k
4 Signs Your Business is Dying
shpigford
179
21k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
109
6.9k
In The Pink: A Labor of Love
frogandcode
139
22k
Documentation Writing (for coders)
carmenintech
65
4.3k
Testing 201, or: Great Expectations
jmmastey
36
7k
Why You Should Never Use an ORM
jnunemaker
PRO
53
8.9k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
36
1.7k
Fashionably flexible responsive web design (full day workshop)
malarkey
401
65k
How GitHub (no longer) Works
holman
310
140k
Transcript
freeeのOCR開発における Amazon SageMaker Ground Truthの活用 freee 株式会社 YUKI MIKI
2022.03.24
2 01 freeeについて 02 AI Labについて 03 freeeのOCR 04 Amazon SageMaker Ground Truthの活用 目次
3 経歴 2017年 通信会社で機械学習に関する研究開発 2021年 freee入社 freee での役割 OCRモデルの開発・運用
YUKI MIKI 機械学習エンジニア@AI Lab Twitter: @ymicky06 プロフィール画像の トリミング方法
freeeについて
Mission スモールビジネスを、 世界の主役に。 freeeは「スモールビジネスを、世界の主役に。」 をミッションに掲げ、 「だれもが自由に経営できる統合型経営プラットフォーム」 の構築を目指してサービスの開発及び提供をしております。 大胆に、スピード感をもってアイデアを具現化することができる スモールビジネスは、様々なイノベーションを生むと同時に、
大企業を刺激して世の中全体に新たなムーブメントを起こすことが できる存在だと考えております。
6 freee会計 freee開業 freee福利厚生 freeeアプリストア freee人事労務 freee会社設立 freeeスマート受発注 freeeプロジェクト管理
freee資金調達 freee申告 freeeカード プロダクトラインアップ
AI Labについて
freeeのAI Lab • ミッション ◦ 機械学習や統計処理を用いてユーザーに本質的価値(マジ価値)を届けきる ◦ 「ルーチンワークを自動化して経営状況をリアルタイムにモニタリングする」、「データドリブンな意思決定 と経営のアクションをサポートする」など、freeeが提供するサービスにとって必要不可欠なコア技術を一 から考えて実現し、継続的な進化を支える
• 特徴 ◦ 機械学習関連機能の研究・開発・運用までワンチームで一気通貫で行う • AI Labの開発例 ◦ OCR、明細自動仕分け、金融商品レコメンド、ABテスト基盤、etc
9 freeeのOCR 撮影するとOCRで金額・日付・勘定科目を自動推測
OCR開発の課題 • クリーンな評価用データセットを持っていなかった ◦ ユーザの取引レコードから正解ラベルを作成しているが、入力ミス等もあり、 noisyなデータ ◦ 正しくモデルの性能を測れるようなデータセットを作りたい • OCR開発用のアノテーション環境がなかった
◦ 今後読み取りたい内容が増えることをに備え、環境を整備しておきたい → Amazon SageMaker Ground Truthを利用してアノテーション環境を構築
Amazon SageMaker Ground Truth(Ground Truth)とは • ラベリングアプリケーションを簡単に作成できる ◦ 典型的なタスクはテンプレですぐに作れる •
ラベリングチームの管理もできる ◦ パブリック ◦ プライベート ◦ ベンダー
Amazon SageMaker Ground TruthでOCRデータ作成 • OCR用アノテーションタスクはデフォルトにない • Ground Truthではカスタムラベリングフローを構築できる •
OCRアノテーション用の独自ラベリングフローを構築した
カスタムラベリングワークフロー • おおまかな流れ ◦ 1.カスタムウェブテンプレート (UI)を構築 ◦ 2.プレラベリングタスクのAWS Lambda関数をデプロイ ◦
3.ポストラベリングタスクのAWS Lambda関数をデプロイ ◦ 4.入力マニフェストを作成してS3に置く ◦ 5.ワークフォース作成 ◦ 6.ラベリングジョブ開始 ◦ 7.結果がS3に吐かれる https://aws.amazon.com/jp/blogs/news/build-a-custom-data-labeling-workflow-with-amazon-sagemaker-ground-truth/
OCR用カスタムウェブテンプレート作成 • SageMakerが提供するCrowd HTMLを使用 ◦ コンポーネントを組み合わせることで独自UIを作れる ◦ Bounding Boxを描画するcrowd-bounding-boxを ベースに使用
• OCR用にアノテーションしたい項目 ◦ 画像ごとに文書の種類 ◦ bounding boxごとに ▪ クラス ▪ 文字列 ▪ 座標 ▪ その他メタ情報 crowd-bounding-box:https://docs.aws.amazon.com/sagemaker/latest/dg/sms-ui-template-crowd-bounding-box.html
カスタムウェブテンプレートで作成したUI
カスタムウェブテンプレートで作成したUI 画像ごとに種別を選択
カスタムウェブテンプレートで作成したUI バウンディングボックスごとの アノテーション • ラベル • テキスト • その他の情報
カスタムウェブテンプレートで作成したUI ① • 「add」を押してラベルを追加する • 上記で入力した情報を文字列に押し込む • 右上にできたラベルを使って文字をbboxで 囲む ②
追加されたラベルを使って Bounding Boxを描画する
アノテーション出力例 output manifestに以下のようなjsonが書き込まれる
プレ・ポストラベリングタスクのAWS Lambda関数作成 • プレラベリングタスクのAWS Lambda関数 ◦ input manifestの内容をGround Truthが使用するjson形式に変換する •
ポストラベリングタスクのAWS Lambda関数 ◦ ワーカーがラベリングした情報を統合するために使用 • 今回はサンプルにあるものをそのまま使用した サンプル:https://github.com/aws-samples/aws-sagemaker-ground-truth-recipe/tree/master/aws_sagemaker_ground_truth_sample_lambda
ラベリングワークフォースの作成 • プライベートワークフォースを使用 ◦ データの機密性が高く、データを社内に留めておきたかったため • ワーカーはAmazon Cognito + 外部のIDプロバイダで管理
◦ より厳密なワーカー管理 ◦ ラベリングポータルの認証に二段階認証 • ラベリングポータルへのIP制限 ◦ VPN内のみからアクセス可能
構築した環境で実際にアノテーションをしてみた所感 • よかったこと ◦ 複数人でアノテーションできるので効率が良い ◦ UIをカスタマイズできるのでPDCAが回しやすい ◦ データをAWS外に出さずにセキュアな環境でアノテーションできる •
大変だったこと ◦ カスタムワークフローを使った事例があまりネットにないのでUIづくりに苦労した ◦ 権限周りで少しハマった • 要望的なこと ◦ ラベリングジョブの最大期限が1ヶ月なのでもっと長くしてほしい ◦ submitした後に前の画面に戻りたいときがある ◦ ラベリングジョブを削除できるようにしてほしい
まとめ • freeeにおけるAmazon SageMaker Ground Truthの活用について紹介した • 普段からAWSを使っていてアノテーション環境が欲しくなった場合 はおすすめ •
今後やりたいこと ◦ Active Learning ご清聴ありがとうございました
スモールビジネスを、世界の主役に。