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
LMDX / 論文紹介 LMDX:Language Model-based Document Information Extraction and Localization
ymicky06
0
24
Kaggleのたんぱく質コンペで銅メダルとった話 / Get Bronze medal on Kaggle Competition
ymicky06
0
350
Kaggle鳥コンペ反省会 / Retrospective Birt Competition on Kaggle
ymicky06
0
160
Other Decks in Technology
See All in Technology
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
340
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
29
13k
Is Go A Good Language to Build Compilers?
kennethanceyer
0
100
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
200
"とにかくやってみる"で始めるAWS Security Hub
maimyyym
2
110
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
3.9k
『Firebase Dynamic Links終了に備える』 FlutterアプリでのAdjust導入とDeeplink最適化
techiro
0
230
Mastering Quickfix
daisuzu
1
350
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.5k
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
140
Chasing the White Whale of Open Source - ROI
mrbobbytables
0
120
Featured
See All Featured
Fireside Chat
paigeccino
34
3k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Typedesign – Prime Four
hannesfritz
40
2.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
KATA
mclloyd
29
14k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
The Cult of Friendly URLs
andyhume
78
6k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
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 ご清聴ありがとうございました
スモールビジネスを、世界の主役に。