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
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
950
Datadogとともにオブザーバビリティを布教しよう
mego2221
0
130
テストアーキテクチャ設計で実現する高品質で高スピードな開発の実践 / Test Architecture Design in Practice
ropqa
3
710
SCSAから学ぶセキュリティ管理
masakamayama
0
140
これからSREになる人と、これからもSREをやっていく人へ
masayoshi
6
4.1k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
57k
20250208_OpenAIDeepResearchがやばいという話
doradora09
PRO
0
170
10分で紹介するAmazon Bedrock利用時のセキュリティ対策 / 10-minutes introduction to security measures when using Amazon Bedrock
hideakiaoyagi
0
170
エンジニアの育成を支える爆速フィードバック文化
sansantech
PRO
3
660
バックエンドエンジニアのためのフロントエンド入門 #devsumiC
panda_program
16
6.5k
TAMとre:Capセキュリティ編 〜拡張脅威検出デモを添えて〜
fujiihda
0
100
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
130
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
GitHub's CSS Performance
jonrohan
1030
460k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
A Philosophy of Restraint
colly
203
16k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
How GitHub (no longer) Works
holman
313
140k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
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 ご清聴ありがとうございました
スモールビジネスを、世界の主役に。