Slide 1

Slide 1 text

  みてねのレコメンドを 支える技術 2018-08-22 Dive into mixi night! #4 みてね事業部 開発グループ コンテンツ開発チーム 松石浩輔 (@_sobataro )

Slide 2

Slide 2 text

自己紹介 ● 松石浩輔 (@_sobataro) ● 2016年新卒 ○ 1年目: みてねエンジニア (アプリ、サーバ、インフラ) ○ 2年目〜: みてねコンテンツ開発エンジニア (サーバ、インフラ)

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

  コンテンツ開発チーム

Slide 9

Slide 9 text

コンテンツ開発チームとは ● 自動生成系コンテンツを 開発・運用するチーム ● エンジニア3人 提供する機能 ● 1秒動画 ● 自動提案フォトブック ● DVD「1枚にまとめる」機能

Slide 10

Slide 10 text

コンテンツ開発チームの提供する機能 1秒動画 ● 画像・動画を 1秒ずつ繋いだ ダイジェスト動画 自動提案フォトブック ● 1ヶ月分の画像から 22枚を選んで提案 DVD「1枚にまとめる」 ● 1年分の動画から ディスク1枚 (50分)ぶ んを提案

Slide 11

Slide 11 text

  自動生成・自動提案機能の裏側 1秒動画のケース

Slide 12

Slide 12 text

最高の1秒動画とは チーム内でヒアリング ● 子どもがよく写っている ● 成長が感じられる ● 盛り上がっている 実装に落とし込むための仮説 ● 顔検出された画像・動画? ● 時系列順に並べる? ● コメント件数が多い? 気をつけること ● 仮説の難易度と優先順位 ● 検証方法 ● データの取り扱い

Slide 13

Slide 13 text

1秒動画の生成・配信処理 1. 生成対象家族の抽出 2. 素材となる画像・動画の選択 3. 動画ファイルの生成 4. 配信 素材選択ロジック ● アップロードされた画像・動画を事前に解析しておく ○ 顔検出、人物検出、BGM 検出など ○ 大規模処理 (最大で37万+件/時間のアップロード、累計10億+件) ● 解析結果をもとに点数付け ○ 点数が高くなるように素材選択 顔検出: 0件 人物検出: 0件 コメント: 0件     ➔ △点 顔検出: 2件 人物検出: 2件 コメント: 3件     ➔ ◯点 顔検出: 1件 人物検出: 1件 コメント: 0件     ➔ ◻点

Slide 14

Slide 14 text

画像・動画解析基盤 (現行構成) ● 画像・動画解析部分を microsevice として切り出している

Slide 15

Slide 15 text

画像・動画解析基盤 (構築中) ● RDB, Redis などインフラを分離してスケーリングを容易に ● SageMaker の導入

Slide 16

Slide 16 text

  まとめ

Slide 17

Slide 17 text

まとめ ● みてねではコンテンツ自動生成・自動提案のため ML 技術を活用 ○ 顔検出、人物検出、BGM 検出など ● 大規模な画像・動画解析のため、自前の解析基盤を構築・運用 ○ メインのアプリサーバから基盤を分離中 ● 幅広い仕事 ○ 研究 ○ 企画・ディレクション ○ 開発・運用