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
53
Kaggleのたんぱく質コンペで銅メダルとった話 / Get Bronze medal on Kaggle Competition
ymicky06
0
400
Kaggle鳥コンペ反省会 / Retrospective Birt Competition on Kaggle
ymicky06
0
220
Other Decks in Technology
See All in Technology
開発生産性を測る前にやるべきこと - 組織改善の実践 / Before Measuring Dev Productivity
kaonavi
3
1.2k
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
960
自律的なスケーリング手法FASTにおけるVPoEとしてのアカウンタビリティ / dev-productivity-con-2025
yoshikiiida
1
15k
マネジメントって難しい、けどおもしろい / Management is tough, but fun! #em_findy
ar_tama
7
910
AIの全社活用を推進するための安全なレールを敷いた話
shoheimitani
2
450
AI専用のリンターを作る #yumemi_patch
bengo4com
5
4.1k
Claude Code に プロジェクト管理やらせたみた
unson
5
2.4k
LangChain Interrupt & LangChain Ambassadors meetingレポート
os1ma
2
290
ビズリーチにおけるリアーキテクティング実践事例 / JJUG CCC 2025 Spring
visional_engineering_and_design
1
110
OPENLOGI Company Profile for engineer
hr01
1
34k
OPENLOGI Company Profile
hr01
0
67k
Should Our Project Join the CNCF? (Japanese Recap)
whywaita
PRO
0
330
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Six Lessons from altMBA
skipperchong
28
3.9k
Navigating Team Friction
lara
187
15k
KATA
mclloyd
30
14k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Making Projects Easy
brettharned
116
6.3k
Into the Great Unknown - MozCon
thekraken
39
1.9k
We Have a Design System, Now What?
morganepeng
53
7.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
Done Done
chrislema
184
16k
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 ご清聴ありがとうございました
スモールビジネスを、世界の主役に。