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
みてねのレコメンドを支える技術 / Building 1s Movie of Mitene
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
_sobataro
August 22, 2018
Technology
1.5k
0
Share
みてねのレコメンドを支える技術 / Building 1s Movie of Mitene
_sobataro
August 22, 2018
More Decks by _sobataro
See All by _sobataro
1秒動画の作り方―「家族アルバム みてね」における 動画エンコードパイプラインとその最適化事例 / 1s Movie Under the Hood
_sobataro
1
300
ステンレスのすゝめ / An Encouragement of Stainless Steel
_sobataro
1
760
サーバレスの動画・画像解析プラットフォーム Media Insights Engine さわってみた / Introduce Media Insights Engine: a serverless media analysis framework
_sobataro
1
1.2k
1秒動画のつくりかた・概要編 / Introduction of Mitene Meetup #4
_sobataro
1
1.7k
いい感じの素材選択ロジック / How to select videos for 1sec Movie
_sobataro
1
4.7k
「簡単でつかいやすい」を追求する開発の裏側 〜メディア解析基盤の話〜 / Medium analysis infrastructure to make FamilyAlbum user-friendly
_sobataro
1
1.3k
みてねのプロダクトを改善するエンジニアリング / Improve Family Album Mitene by Engineering
_sobataro
1
1.9k
みてねのレコメンドを支える技術 / Building 1s Movie of Mitene
_sobataro
0
2.1k
Other Decks in Technology
See All in Technology
Typiaで配信JSONの安全性を構造的に担保する(TSKaigi2026)
righttouch
PRO
1
190
速さだけじゃない! VoidZero ツールが移行先に選ばれる理由
mizdra
PRO
4
310
Kaigi Effect Effect
ngtyuk
0
110
JJUG CCC 2026 Spring AI時代の開発こそ標準化を武器に! ― 方式・プロセス・プラットフォームの標準化
s27watanabe
2
540
テストコードのないプロジェクトにテストを根付かせる
tttol
0
210
TROCCOで始めるクラウドコストを民主化するためのFinOps
tk3fftk
1
250
eBPF Can Do It! A 5-Minute Tour of 5 Real-World PHP Issues Solved with eBPF
egmc
0
310
GitHub Copilot CLI の Rubber Duck 機能を使ってコーディングの品質をあげよう #techbaton_findy
stefafafan
2
1.2k
Don't Just Patch — MOTTAINAI! Learn Security from Laravel CVE Diffs
codmoninc
0
140
【ハノーバーメッセ振り返りイベントat名古屋】データは集約からAI起点の収集に ~組織内・組織間でのデータ連携~
tanakaseiya
0
130
oracle-to-databricks-migration-with-llm-and-dbt
casek
0
300
さきさん文庫の書籍ができるまで
sakiengineer
0
280
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Heart Work Chapter 1 - Part 1
lfama
PRO
7
36k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
270
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
830
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
350
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Rails Girls Zürich Keynote
gr2m
96
14k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
510
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
190
Transcript
みてねのレコメンドを 支える技術 2018-08-22 Dive into mixi night! #4 みてね事業部
開発グループ コンテンツ開発チーム 松石浩輔 (@_sobataro )
自己紹介 • 松石浩輔 (@_sobataro) • 2016年新卒 ◦ 1年目: みてねエンジニア (アプリ、サーバ、インフラ)
◦ 2年目〜: みてねコンテンツ開発エンジニア (サーバ、インフラ)
None
None
None
None
None
コンテンツ開発チーム
コンテンツ開発チームとは • 自動生成系コンテンツを 開発・運用するチーム • エンジニア3人 提供する機能 • 1秒動画 •
自動提案フォトブック • DVD「1枚にまとめる」機能
コンテンツ開発チームの提供する機能 1秒動画 • 画像・動画を 1秒ずつ繋いだ ダイジェスト動画 自動提案フォトブック • 1ヶ月分の画像から 22枚を選んで提案
DVD「1枚にまとめる」 • 1年分の動画から ディスク1枚 (50分)ぶ んを提案
自動生成・自動提案機能の裏側 1秒動画のケース
最高の1秒動画とは チーム内でヒアリング • 子どもがよく写っている • 成長が感じられる • 盛り上がっている 実装に落とし込むための仮説 •
顔検出された画像・動画? • 時系列順に並べる? • コメント件数が多い? 気をつけること • 仮説の難易度と優先順位 • 検証方法 • データの取り扱い
1秒動画の生成・配信処理 1. 生成対象家族の抽出 2. 素材となる画像・動画の選択 3. 動画ファイルの生成 4. 配信 素材選択ロジック
• アップロードされた画像・動画を事前に解析しておく ◦ 顔検出、人物検出、BGM 検出など ◦ 大規模処理 (最大で37万+件/時間のアップロード、累計10億+件) • 解析結果をもとに点数付け ◦ 点数が高くなるように素材選択 顔検出: 0件 人物検出: 0件 コメント: 0件 ➔ △点 顔検出: 2件 人物検出: 2件 コメント: 3件 ➔ ◯点 顔検出: 1件 人物検出: 1件 コメント: 0件 ➔ ◻点
画像・動画解析基盤 (現行構成) • 画像・動画解析部分を microsevice として切り出している
画像・動画解析基盤 (構築中) • RDB, Redis などインフラを分離してスケーリングを容易に • SageMaker の導入
まとめ
まとめ • みてねではコンテンツ自動生成・自動提案のため ML 技術を活用 ◦ 顔検出、人物検出、BGM 検出など • 大規模な画像・動画解析のため、自前の解析基盤を構築・運用
◦ メインのアプリサーバから基盤を分離中 • 幅広い仕事 ◦ 研究 ◦ 企画・ディレクション ◦ 開発・運用