$30 off During Our Annual Pro Sale. View Details »

NineOCRの改善を⽀えるFeature Store / Feature Store Supporting NineOCR Improvements

Sansan R&D
November 10, 2023

NineOCRの改善を⽀えるFeature Store / Feature Store Supporting NineOCR Improvements

■イベント: Sansan R&D TECH SHOWCASE -ビジネスをドライブするR&Dのウラガワ大公開-
https://sansan.connpass.com/event/299113/

■登壇概要
タイトル: NineOCRの改善を⽀えるFeature Store
発表者: 技術本部 研究開発部 Architectグループ 八藤丸 諒士

◉ 研究開発職 採用情報
https://media.sansan-engineering.com/randd

◉ Sansan Tech Blog
https://buildersbox.corp-sansan.com/

Sansan R&D

November 10, 2023
Tweet

More Decks by Sansan R&D

Other Decks in Technology

Transcript

  1. NineOCRの改善を⽀える
    Feature Store
    Sansan株式会社
    研究開発部 ⼋藤丸 諒⼠
    Sansan R&D TECH SHOWCASE

    View Slide

  2. 写真が入ります
    ⼋藤丸 諒⼠
    R&Dエンジニア
    前職ではナビゲーションサービスの運営会社でWebAPI
    の設計・開発を担当。2020年にSansan株式会社へ⼊社
    し、Sansan事業部プロダクト開発部に所属。現在は、
    研究開発部 Automation GroupにてDevOps/MLOpsを担
    当し、名刺やビジネス⽂書のデータ化を効率化・⾃動
    化する技術の研究開発に従事。関⻄⽀店勤務。

    View Slide

  3. - 名刺データ⼊⼒の⾃動化を⽀えているNineOCRの改善に使われている
    Feature Storeの役割について理解してもらう。
    - Feature Store導⼊の背景や導⼊によって改善されたこと、実際に研究員に
    どのように活⽤されているかを紹介する。
    本発表の⽬的

    View Slide

  4. - データ化における⼈とコンピュータには、それぞれ⻑所と短所があり、
    データ化精度とコストの間にはトレードオフがある
    - 研究開発部は、精度を保ちながらコストを削減するためのエンジンを
    提供している
    GEES - ⼈とコンピュータが協働する名刺データ化システム -

    View Slide

  5. NineOCR - 名刺に特化したOCRエンジン -
    5
    ⽂字列検出器と⽂字認識器を別々に学習して組み合わせている
    検出器
    認識器 株式会社 サン・グローバルジャパン
    ⽔上␣弘太郎
    [email protected]
    ピース切り出し

    View Slide

  6. GEESとNineOCRの関係
    6
    GEESの中でNineOCRが使われている
    GEESは昔から⾼精度な⼊⼒を⽬指した設計であったので、学習データはクリーンな
    状態で取得可能
    下記は名刺のデータ化(GEES)のフロー
    NineOCR

    View Slide

  7. - データ収集に時間がかかるため学習を頻繁に回せない、分析着⼿に時間が
    かかるという課題があった
    - データ収集に時間がかかっていた要因
    - GEESと学習データで形式が異なり、補正ロジックが必要
    - 様々なリソース(Elasticsearch, S3, RDS, NineOCR など)にアクセスする必要が
    あり、⼿間がかかる
    - 従来は⼿動実⾏
    - ⽣成したデータを契約に則って永続化する仕組みがない
    当時の課題

    View Slide

  8. 当時の課題
    8
    学習のたびに⼿動で様々なリソースにアクセス(30⽇かかるようなケースもある)
    時間をかけて頑張って集めたデータを永続化できない

    View Slide

  9. - Feature Storeは、データ化プロセスで⽣成されたOCR結果のキャッシュを、
    学習に適した形式に変換して、保存・共有・管理するための基盤
    - Feature Storeを導⼊することで、常に最新のデータを含む⼤量のデータから
    必要な情報を⾼速にピックアップしてすぐに学習に取り掛かれるようになる
    と想定
    - 課題
    - 解約によるデータ削除
    - 照合⽤データを取得するタイミング
    - どのようにGEESと連携するか
    解決策としてのFeature Store

    View Slide

  10. Feature StoreとしてのOpenSearch
    名刺ID
    対象IDの名刺情報
    会社名 + Sansan株式会社
    対象の名刺情報⼀覧
    データ⼊⼒フローを通った名刺の学習データをOpenSearchに貯める仕組み
    貯めた学習データからフィルタリングによって必要なデータのみを取得可能

    View Slide

  11. Feature Storeの構成

    View Slide

  12. Feature Storeの構成

    View Slide

  13. Feature Storeの構成

    View Slide

  14. Feature Storeの構成

    View Slide

  15. - 改善されたこと
    - データ収集の所要時間が30⽇→8時間に短縮
    - 活⽤事例
    - 回転判定の更新
    - 更新前
    - ⽂字認識器と回転判定器に依存関係があり、常に⽚⽅のモデルのみを更新するこ
    とができなかった
    - 更新後
    - モデル間の結合がなくなり、⾮同期に改善を⾛らせることが可能になった
    - 着⼿から2週間でリリース
    - 軽微なモデル変更でもデータ収集がボトルネックとなっていたが、Feature Store
    の導⼊で解消された
    Feature Storeによって改善されたこと・活⽤事例①

    View Slide

  16. - 改善されたこと
    - 新しいデータの継続的な流⼊
    - 活⽤事例
    - ⽂字列検出器の更新
    - 従来の学習データ
    - ピースを⼿動で切り抜くサービスを利⽤していたため、データを増やす
    ことが困難
    - データドリフトへの対応が不可能
    - Feature Store導⼊後の学習データ
    - 常に最新の学習データから検出器に適したデータをフィルタリングして
    学習
    Feature Storeによって改善されたこと・活⽤事例②

    View Slide

  17. - 改善されたこと
    - 検索が可能になった
    - 活⽤事例
    - 異体字候補画像の抽出
    - 異体字を含む名刺を検索、学習に使⽤
    - ex) 「吉-𠮷」
    - 結果
    - ほぼ全ての項⽬で精度が向上
    - コスト削減
    - 異体字候補を含む⽂字列は⼿動⼊⼒されていた
    - 縦横混在ピースの抽出
    - 特徴的なミスをするので、苦⼿なパターンで検索
    - ex) 「〒四」「〒の」
    Feature Storeによって改善されたこと・活⽤事例③

    View Slide

  18. - リリースサイクルの完全⾃動化
    - 評価項⽬の拡充が課題
    - 現状
    - 共通データ基盤”Colossus”に⽇々のNineOCRの評価を貯める仕組みは構築済み
    - LookerStudioで可視化しており、リリースの結果等を定例で確認している
    - カナリアリリース→全展開 or ロールバックまでの間GEESで検証
    - 今後
    - ビジネスKPIに直結するより多くの指標も監視対象に加えることで、改善サイクル
    を効率化、将来的には完全⾃動化することができると期待
    今後の展望

    View Slide

  19. NineOCRにとってのMLOpsの理想形
    Source
    repository
    CI / CD
    テスト・デプロイ
    ML
    Prediction
    Service
    精度監視
    Model
    registry
    検証・分析・モデル作成
    Feature
    Store

    View Slide

  20. Sansan 研究開発部
    募集ポジション紹介
    https://media.sansan-engineering.com/randd

    View Slide

  21. View Slide