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

問題設定とデータの説明 / Problem setting and Data description_Sansan x atmaCup #12

Sansan DSOC
December 17, 2021

問題設定とデータの説明 / Problem setting and Data description_Sansan x atmaCup #12

■イベント 
:Sansan x atmaCup #12 振り返り会
https://atma.connpass.com/event/229180/

■登壇概要
タイトル:Sansan x atmaCup #12 Solution概要
発表者: 

技術本部 DSOC R&D研究員 内田 奏
https://www.atma.co.jp/

▼Twitter
https://twitter.com/SansanRandD

Sansan DSOC

December 17, 2021
Tweet

More Decks by Sansan DSOC

Other Decks in Technology

Transcript

  1. 問題設定/データの説明
    Sansan株式会社 技術本部 DSOC Automationグループ 研究員
    内⽥ 奏
    ヤンチャなベースラインも添えて

    View Slide

  2. 問題設定について

    View Slide

  3. Data Strategy and Operation Center
    項⽬ラベルを予測せよ!
    概要
    • ⽂字列検出矩形の位置情報から項⽬ラベル(⽒名・E-mail等)を推定
    出題の背景・意図
    • 名刺⼊⼒では,⽂字列検出→項⽬ラベル推定→項⽬⼊⼒の順に処理
    > 項⽬ラベルを間違えると後段処理に悪影響があり,⾼い精度が求められる
    • 画像特徴を⽤いない軽量なモデルを構築したい
    > パフォーマンス・移植性の観点から
    名刺取り込み ⽂字列検出 セキュリティー項⽬細分割、項⽬⼊⼒
    項⽬ラベル推定

    View Slide

  4. Data Strategy and Operation Center
    データ説明
    3
    train.csv / test.csv
    • 名刺ID, 矩形の位置情報, クラスID(予測対象)で構成
    • test.csv はクラスIDを含まない
    cards.csv
    • 名刺IDごとの画像サイズ
    categories.csv
    • クラスIDとクラス名のマッピング
    bcid left top right bottom class_id
    000612e… 68 487 721 517 4
    000612e… 191 552 375 577 5
    000612e… 192 586 376 610 6
    000612e… 222 105 893 179 2
    … … … … … …
    train.csv
    bcid width height
    000612e… 1080 645
    … … …
    cards.csv
    class_id class_name
    0 full_name
    … …
    categories.csv
    ※Sansan, Eightの名刺データ化の過程で⽣成されたデータ. 個⼈情報を含まない統計情報として利⽤規約の範囲内で提供.

    View Slide

  5. Data Strategy and Operation Center
    (余談) 出題の経緯
    4
    社内で開催していた集合勉強会での案を流⽤
    • 集合: 順序に意味を持たないデータ構造 e.g., 1, 2 = {2, 1}
    • モデルの⼊出⼒によって下記の性質を持つ
    > Permutation Invariant: ⼊⼒順序を⼊れ替えても出⼒が変化しないこと
    > Permutation Equivariant:
    ⼊⼒順序を⼊れ替えると順序のみ⼊れ替わった出⼒が得られること
    𝑓 😃, 😃, 😡 = 0, 0,1
    𝑓 😡, 😃, 😃 = 1,0, 0
    𝑓 1, 2, 3 = 6
    𝑓 3, 2, 1 = 6
    Invariant なモデルの例 (加算) Equivariant なモデルの例 (異常検知)

    View Slide

  6. Data Strategy and Operation Center
    (余談) 取り組み概要
    5
    集合モデルをパッケージ化
    論⽂の再現実装
    (上: MNIST※画像の加算, 下: 異常検知) ※THE MNIST DATABASE of handwritten digits - http://yann.lecun.com/exdb/mnist/

    View Slide

  7. ヤンチャなベースラインについて 😈

    View Slide

  8. Data Strategy and Operation Center
    ヤンチャなベースライン v1
    モデル:
    • Transformer Encoder (6 layers)
    • 参考は Set Transformer [J. Lee+ NeurIPS2019]
    > Encoder-decoder で構成された Permutation Invariant なモデル
    > Encoder だけ⾒ると Positional Encoding を加えない Transformer Encoder
    前処理
    • [0, 1] 正規化のみ
    Public score
    • 0.7486
    [J. Lee+ NeurIPS2019] J. Lee, et. al, “Set Transformer: A Framework for Attention-based Permutation-Invariant Neural Networks,” in NeurIPS, 2019, vol. 97, pp. 3744–3753.

    View Slide

  9. Data Strategy and Operation Center
    モデルのコード
    8
    これだけ!!!
    標準モジュール便利!!!

    View Slide

  10. Data Strategy and Operation Center
    ヤンチャなベースライン v2
    9
    Unseenクラスへの対応
    1. testの⽅が1枚あたりのピース数が多いことを確認
    2. Unseen クラスはどこかのクラスに多く混同されてると仮定し,
    出現回数の増加が著しいクラスを⾒てみる (今回は class_id=3)
    3. なんとなく傾向が⾒えたので,trainより端にある矩形を class_id=9 とみなす
    train test
    閾値調整で⼤体10sub消費?

    View Slide

  11. Data Strategy and Operation Center
    ヤンチャなベースライン v2
    10
    モデル
    • Transformer Encoder (12 layers)
    > (6 layers のまま出そうとしたが, colum2131 さんに負けてたのが悔しかった)
    > (出すタイミングを伺っていたら1位を取り損ねた)
    Public score
    • 0.8147

    View Slide

  12. Data Strategy and Operation Center
    まとめ
    11
    問題設定/データの説明
    • 項⽬ラベルを予測せよ!!!
    • 矩形情報のみから構成されたシンプルなデータを提供
    • 出題背景のご紹介
    ベースライン
    • シンプルな Transformer によるベースライン
    • 簡単な後処理の紹介
    v3はここにおりました

    View Slide