Upgrade to Pro — share decks privately, control downloads, hide ads and more …

研究開発組織のエンジニアによる画像系プロダクトサポート

 研究開発組織のエンジニアによる画像系プロダクトサポート

2021年10月8日のこちらのイベントでの発表資料です

Discovery DataScience Meet up (DsDS) #2
https://scramble.connpass.com/event/201414/

Kazuhiro Ota

October 08, 2021
Tweet

More Decks by Kazuhiro Ota

Other Decks in Technology

Transcript

  1. 自己紹介 大田 和寛 @ciela • 医療画像処理で修士取得 ◦ 動的計画法に基づく画素マッチングを用いた心臓三尖弁3Dモデルの半自動構築 ◦ 機械学習は名前は聞いたことあったものの、OpenCVのAdaBoost顔検出で遊ぶ程度

    • 2011年 サイバーエージェント入社 ◦ 約6年間サーバサイドエンジニアとしてウェブサービス開発・ミドルウェア運用 • 2017年 AI Lab異動 ◦ 機械学習およびそれを用いたコンピュータビジョンについて勉強開始 ◦ 研究したりエンジニアリングで研究者をサポートしたり 2
  2. サイバーエージェント AI Lab デジタルマーケティングに関わるAI技術の研究開発組織 • 機械学習 • 計量経済学 • コンピュータビジョン

    • コンピュータグラフィックス • 自然言語処理 • 音声合成・音声認識 • HCI • etc. 2021年10月現在34名所属 https://cyberagent.ai/ailab/ 4
  3. サイバーエージェント AI Lab プロダクトへの研究成果還元 リサーチサイエンティストが研究に集中でき る環境の構築 デジタルマーケティング領域における課題解決 のための研究、論文執筆、国際会議への投稿 5 リサーチサイエンティスト

    リサーチエンジニア ※あくまで役割に名前を付けている程度で、リサーチサイエンティストがプロダクト向けエンジニア リングまで行ったり、リサーチエンジニアが論文書いて投稿するケースもたくさんあります
  4. 画像変換機能付きContent Delivery Network(CDN) • インターネットにおける画像や動画などメディアデータの効率的な配信とキャッシュ • 画像変換機能を有した CDN (Cloudinaryなど) が多数提供されており、弊社も社内基盤と

    して各ウェブサービス向けの画像変換CDNを運用中 ◦ オンラインで画像編集を行いつつファイル配信可能 ◦ 解像度変更 ◦ ファイルサイズ圧縮 ◦ ファイルフォーマットの変換 1920x1272 245 KB JPG 1920x1272, 272 KB, JPG 1280x848 189 KB JPG 1280x848 145 KB WebP ファイルサイズ圧縮 (画質クオリティ低下を行う) 解像度変更 解像度・フォーマット変更 13
  5. CDNにおける利用例 各フォーマットごとに利用者側で定める最低許容画 質を下回らない圧縮パラメータを求めることができ る(ここでは画質をSSIMとしたがNIMAや独自画質 指標値など値域のある連続値で画質が取れれば何で もOK) WebP is better than

    JPEG 圧縮率 90% JPEG is slightly better than WebP 指定された圧縮率(ファイルサイズ)を保ったう えでより画質の良いフォーマットを選択して配信 することができる 圧縮率 30% 17 最低画質 0.8 WebP Q=2 JPEG Q=34
  6. データセット整備用のDataflowを極予測AIに実装 この擬似ラベル付きデータセットを構築する下記フローを極予測AIのGCP上にDataflowパイプラインとし て実装し、素材画像に対するモデルの予測精度評価を行うためのデータ環境を整備 1. バナー画像に対応するPSDをロード 2. PSDをパースして素材画像を抽出、GCSに保存 3. バナー画像の広告効果実績値を各素材画像に対応付けてBigQueryに格納 27

    広告バナーID 素材画像ファイル 広告効果実績値 img0001 img0001_a.jpg 3.512 img0001 img0001_b.png 3.512 img0001 img0001_c.jpg 3.512 img0002 img0002_a.jpg 5.468 img0002 img0002_b.png 5.468 データセットのBigQueryテーブルサンプル(値はダミーです) 課題・懸念 • PSDからの素材抽出方法 ◦ 木構造となっているレイヤ構造を探索する際の最大深度 ◦ 非可視レイヤを含めるか否か ◦ 素材として抽出するレイヤの種類(テキストやレイヤ効 果も含めるかどうか) • 広告効果の紐付け方 ◦ 全ての素材画像にそのままの実績値を等しく付与するの は少し安直では? ◦ バナーにおける素材画像の可視面積の割合などで重み付 けするとか…
  7. クリエイティブ 画像 CNN MLP 配信設定 クリック率 システムに最適化されているモデル実装 システムに組み込まれていると… 31 画像特徴は事前に計算してお

    きキャッシュ! 各カラムに対するエンコーダ の実行はパイプラインで! TFRecordで書き出してね! 画像データは全てGCS・S3 上に保存! BigQueryからフェッチ! その他、学習ワークフローの整備、推論APIの更新 判断など、MLOps意識の高いプロダクトほどモデ ルの構成要素が各所に分散していることが多い
  8. システムに最適化されているモデル実装 システムに組み込まれているモデルの出力の分布分析や追加実験についてサポートすることに なったものの、プロダクトがローカル実験用の実装を保持していない場合… A. ローカルにデータを落としモデル部分のみ抽出実装して調査する ◦ 調査・分析はしやすいが、モデルの複雑度によっては実装の手間がかかる上にバグ混入の恐れ ◦ 前処理やモデル全体に関わる設定など細かいところに手を入れやすい ◦

    データ取得タイミングによっては最新データとの分布乖離の懸念 B. Dev環境などの学習ワークフローを叩かせてもらいシステム実装のまま調査する ◦ 常にプロダクトによる最新実装および最新データを利用可能だが、まずシステム全体について把握する必要 ◦ 特徴量キャッシュ部分の処理に手を入れる度にキャッシュ全体更新 ◦ プロダクト外の人間が色々いじることになるので何となく気を使う MLOpsが裏目に出てしまうが、かといってプロダクトでMLOpsを諦めるわけにはいかない プロダクトにモデルの実験用実装も一緒にメンテしてもらえたらありがたいが、研究を行わない メンバーにとっては負担が大きそう 32
  9. プロトタイプのままリリースされたモデル 日は流れ、以前提供したプロトタイプがその後どうシステムに導入されたのか尋ねると… 35 プロダクト + 学習済み重みファイル そういえばあれって今ど うなりました?AWSです しSageMakerとか使って る感じですか?

    頂いたDockerコンテナその ままAPIとしてEC2で動かし ちゃいました…リリース早 めにしちゃいたくて… なるほど…(問題ないな らいいけど、今後の運用 大丈夫なんだろうか…) • モデルのServing方式 ◦ リアルタイムエンドポイント? ◦ バッチ推論? • フレームワーク ◦ PyTorchのままでOK? ◦ JIT化は試してみた? • 再学習のタイミングは?
  10. 39 A Hybrid Bandit Model with Visual Priors for Creative

    Ranking in Display Advertising [Wang et al, WWW21] 表示クリエイティブ選定のためのBanditに加えて画像特 徴を活用するDeepとのハイブリッドモデル VisualTextRank: Unsupervised Graph-based Content Extraction for Automating Ad Text to Image Search [Mishra et al, KDD21] 広告テキストをもとに明示的な検索ワードの入力を省き つつ素材画像を検索 Adapting User Interfaces with Model-based Reinforcement Learning [Todi et al, CHI21] 急激なデザイン変化でユーザを戸惑わせないように強化 学習を用いて適応的にユーザインターフェイスを更新