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
140
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
36
Kaggleのたんぱく質コンペで銅メダルとった話 / Get Bronze medal on Kaggle Competition
ymicky06
0
380
Kaggle鳥コンペ反省会 / Retrospective Birt Competition on Kaggle
ymicky06
0
170
Other Decks in Technology
See All in Technology
『AWS Distinguished Engineerに学ぶ リトライの技術』 #ARC403/Marc Brooker on Try again: The tools and techniques behind resilient systems
quiver
0
130
データの品質が低いと何が困るのか
kzykmyzw
6
1k
家電アプリ共通PF "Linova" のAPI利用とPostman活用事例ご紹介
yukiogawa
0
130
Moved to https://speakerdeck.com/toshihue/presales-engineer-career-bridging-tech-biz-ja
toshihue
2
550
Developer Summit 2025 [14-D-1] Yuki Hattori
yuhattor
19
5.1k
インフラをつくるとはどういうことなのか、 あるいはPlatform Engineeringについて
nwiizo
5
2.1k
技術負債の「予兆検知」と「状況異変」のススメ / Technology Dept
i35_267
1
1k
自動テストの世界に、この5年間で起きたこと
autifyhq
10
7.1k
バックエンドエンジニアのためのフロントエンド入門 #devsumiC
panda_program
16
6.5k
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
110
目の前の仕事と向き合うことで成長できる - 仕事とスキルを広げる / Every little bit counts
soudai
22
5.8k
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
1.5k
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Building Adaptive Systems
keathley
40
2.4k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Producing Creativity
orderedlist
PRO
343
39k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
How to train your dragon (web standard)
notwaldorf
90
5.8k
Being A Developer After 40
akosma
89
590k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
The Invisible Side of Design
smashingmag
299
50k
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 ご清聴ありがとうございました
スモールビジネスを、世界の主役に。