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
1万枚の写真の中から我が子を見つける顔検索の裏側
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Yoshiken
July 11, 2019
Technology
480
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
1万枚の写真の中から我が子を見つける顔検索の裏側
Yoshiken
July 11, 2019
More Decks by Yoshiken
See All by Yoshiken
サイトの信頼性の前にチームとしての信頼性を高めよう
yoshiken
0
1.3k
転生したらEKSをTerraform管理することになった件
yoshiken
1
1.2k
Other Decks in Technology
See All in Technology
"何を作るか"を任される エンジニアは、どう育つのか
yutaokafuji
1
580
Chainlitで作るお手軽チャットUI
ynt0485
0
180
現地で盛り上がった WWDC26 Keynote
zozotech
PRO
1
180
失敗を経て、Harness Engineering で 大切にしたいことを考える / Learning from Failure: What Matters in Harness Engineering
bitkey
PRO
1
290
地球に⽣きるAI —GeoAIと「中間領域」— / AI Living on Earth — GeoAI and the “Intermediate Layer” —
ykiyota
0
270
2026TECHFRESH畢業分享會 - AI 時代的人生存檔點
line_developers_tw
PRO
0
740
Claude Code×Terraform IaC テンプレート駆動開発
itouhi
1
490
FDE という解 ― 暗黙知と明示知をつなぐ、伴走型エンジニアリング ―
otanet
0
130
小さくはじめるSLI/SLO ~育てながら組織に定着させる実践知~ / Starting Small with SLI/SLOs: Building Adoption Through Continuous Growth
nari_ex
3
1.4k
エンジニアリング戦略の作り方 / Crafting Engineering Strategy
iwashi86
19
6.4k
攻撃者視点で考えるDetection Engineering
cryptopeg
0
900
[モダンアプリ勉強会]今更聞けないGit/GitHub入門
tsukuboshi
0
360
Featured
See All Featured
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
250
Utilizing Notion as your number one productivity tool
mfonobong
4
320
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
330
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Designing Powerful Visuals for Engaging Learning
tmiket
1
410
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
200
Technical Leadership for Architectural Decision Making
baasie
3
400
The SEO Collaboration Effect
kristinabergwall1
1
480
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Transcript
1 X-Tech JAWS 【第8回】 1万枚の写真の中から 我が子を見つける顔検索の裏側
2 自己紹介 • 名前 : 吉田 健太, M.Sc • H.N.
: Yoshiken • 所属 : 千株式会社 ◦ ものづくり部 ▪ SREチーム • 技術的負債の抹殺が得意 • 言語 : Python・Go • 趣味 : ライブ・植田ひかる @yoshiken if Github or Qiita else @yoshiken_tut if Twitter else None
3 自己紹介 • 名前 : 吉田 健太, M.Sc • H.N.
: Yoshiken • 所属 : 千株式会社 ◦ ものづくり部 ▪ SREチーム • 技術的負債の抹殺が得意 • 言語 : Python・Go • 趣味 : ライブ・植田ひかる @yoshiken if Github or Qiita else @yoshiken_tut if Twitter else None
4 植田ひかる さん 超絶可愛いこの世に舞い降りたAngel 植田ひかるさんを応援していたら業務の生産性が上がりました (26歳男性KY さん) 植田ひかるさんに出会ってからtcpdumpを介さず直接通信内容が見れるように なりました(26歳会社員KYさん) 植田ひかるさんのおかげでAWSマネージドコンソール(GUI)から卒業できまし
た(26歳インフラエンジニア) もう植田ひかるさんしか考えられない(26歳独身) https://twitter.com/hikaru_uedaz オフィスアネモネ
5 オタクを支えるAWS12ヶ月無料枠
6 本題
7 あじぇんだっぽいやつ • はいチーズ!の紹介 ◦ Webサービスについて ◦ 課題 ◦ Amazon
Rekognition導入経緯 ◦ 結果 • 顔検索機能 ◦ Amazon Rekognition機能説明 ◦ 顔検索機能のフロー ◦ 注意点 ビジネス テクニカル
8 <ご注意> 途中一部デモ画面の撮影はご遠慮くさだいさますよう、 お願い致します。 オンラインでChime配信を見ている方も 一部デモ中は非表示になってしまうことをご了承ください
9 の紹介 導入前 【幼稚園保育園などの団体様】 撮影・印刷・掲示・代金回収・集計等いろんな雑務… 【保護者様】 決まった期間に紙媒体で思ったような写真がない… 導入前
10 の紹介 導入後 【幼稚園保育園などの団体様】 撮影・印刷・掲示・代金回収等の手間から解放される 【保護者様】 写真購入がいつでも・どこでも・手軽に 導入前 導入後
11 の紹介 導入後 【幼稚園保育園などの団体様】 撮影・印刷・掲示・代金回収等の手間から解放される 【保護者様】 写真購入がいつでも・どこでも・手軽に 導入前 導入後 幼稚園・保育園中心に
全国6000団体以上 が利用する写真販売サービス
12 はいチーズ!カメラマンは、保護者のために、 “園児一人一人が主人公の写真”を沢山撮る の課題
13 はいチーズ!カメラマンは、保護者のために、 “園児一人一人が主人公の写真”を沢山撮る 大規模園は園児200名以上。多いイベントでは “1万枚以上の中から、我が子の写真を探す”必要性 の課題
14 はいチーズ!カメラマンは、保護者のために、 “園児一人一人が主人公の写真”を沢山撮る 大規模園は園児200名以上。多いイベントでは “1万枚以上の中から、我が子の写真を探す”必要性 ユーザの中には共働き世帯も多く忙しい。 写真探しに時間がかかる。忙しい保護者を助けたい! の課題
15 とある幼稚園の運動会の写真(約1万3千枚)
16 顔検索機能実現のために 技術選定 最新技術への追従 運用コスト 採用コスト 安定した性能 学習コスト ユーザーが離脱しない速度 属人化
17 自社サービスに実用的なインテリジェンス を追加することは無理なのか…
18 諦めかけたその時、 一筋の光明が差してきました! Amazon Rekognition
19 Amazon Rekognitionとは • AmazonのAIサービスの1つ ◦ 学習済みのAIをサービスとして利用可能 • Rekognitionでできること(一部分) ◦
画像の物体、シーン、顔の検出 ◦ 顔の表情の分析 ◦ 顔と顔が似ているかどうかの判定
20 Amazon Rekognitionとは • AmazonのAIサービスの1つ ◦ 学習済みのAIをサービスとして利用可能 • Rekognitionでできること(一部分) ◦
画像の物体、シーン、顔の検出 ◦ 顔の表情の分析 ◦ 顔と顔が似ているかどうかの判定 これで顔検索を 実現できる!
21 Rekognitionの優位性
22 Rekognitionの優位性 • 安い ◦ 初期費用不要、使った分だけ支払う従量課金
23 Rekognitionの優位性 • 安い ◦ 初期費用不要、使った分だけ支払う従量課金 • 速い ◦ 処理速度が高速。前処理も検索処理も。
24 Rekognitionの優位性 • 安い ◦ 初期費用不要、使った分だけ支払う従量課金 • 速い ◦ 処理速度が高速。前処理も検索処理も。
• 高精度 ◦ 試作品を開発・検証したところ、十分な精度
25 Rekognitionの優位性 • 安い ◦ 初期費用不要、使った分だけ支払う従量課金 • 速い ◦ 処理速度が高速。前処理も検索処理も。
• 高精度 ◦ 試作品を開発・検証したところ、十分な精度 既存のAWSの他サービスとの親和性も高く、 導入を決定してから1ヶ月程度でリリース
26 Rekognitionで実現できた購入フロー
27 Rekognitionで実現できた購入フロー 我が子の顔写真をアップロード 即座に対象が 写っている写真を返す
28 Rekognitionで実現できた購入フロー 我が子の顔写真をアップロード 注文 注文履歴の画像を投げる 購入している子供の顔を 事前に分析 おすすめ写真と して表示 即座に対象が
写っている写真を返す
29 Rekognitionで実現できた購入フロー 我が子の顔写真をアップロード 注文 注文履歴の画像を投げる 購入している子供の顔を 事前に分析 おすすめ写真と して表示 即座に対象が
写っている写真を返す 初回ユーザー 既存ユーザー
30 デモ 撮影不可
31 顔検索&おすすめ写真機能 導入結果 コンバージョン率が向上! ※ここで言うコンバージョン率とは、ある写真を実際に購入したユーザーの数を その写真のページを見たユーザーの数で割った時のパーセンテージ
32 ビジネス編まとめ ◦ コストを抑えて、 スピード感のある開発 ができる ◦ 弊社からフィードバック 送信→機能開発 ◦
忙しいママ・パパを助け たいという思い ◦ 新しい技術を即検証・ 即本番投入
33 ビジネス編まとめ AIの力で、忙しいママ・パパの我が子の 写真探しをお手伝いすることができました ◦ コストを抑えて、 スピード感のある開発 ができる ◦ 弊社からフィードバック
送信→機能開発 ◦ 忙しいママ・パパを助け たいという思い ◦ 新しい技術を即検証・ 即本番投入
34 テクニカル編
35 アクセス毎にイベント全ての写真と比較するのは レスポンスに時間がかかるな…
36 _人人人人人人_ > 突然のO(n) <  ̄Y^Y^Y^Y^Y^Y ̄
37 精度を上げるために複数枚アップロードできるよ うにしたいな…
38 _人人人人人人_ > 突然のO(n ) <  ̄Y^Y^Y^Y^Y^Y ̄ i ここでのiはアップロードされる写真枚数を指します
39 諦めかけたその時、 一筋の光明が差してきました! (2回目) Amazon Rekognition
40 コレクション内での顔の検索 Amazon Rekognition では、検出した顔に関する情報をコレクションというサーバー側のコンテナに保存できます。コレクション に保存された顔の情報を使用して、イメージ、保存済みビデオ、およびストリーミングビデオ内の既知の顔を検索できます。 Amazon Rekognition は IndexFaces
オペレーションをサポートしています。このオペレーションを使用して、イメージ内の顔を 検出し、検出した顔の特徴に関する情報をコレクション内に保持できます。サービスによって情報がサーバーに保持されるた め、これは ストレージベースの API オペレーションの例です。 > https://docs.aws.amazon.com/ja_jp/rekognition/latest/dg/collections.html 特徴ベクトルを予めIndexできるようになり高速で検索ができる (その上叩くAPIは一回で済む!
41 RekognitionのAPI(抜粋) 顔検索する場合に必要なAPIは以下の3つ • CreateCollection 顔コレクションを作成 • IndexFaces 顔メタデータを顔コレクションに追加 •
SearchFacesByImage 指定した画像で顔コレクション内の類似画像を検索
42 1.顔コレクションを作成。入れ物を作る Rekognitionで顔検索する手順 AWS SDK Face Collection test_faces ※メタデータ (特徴情報)のみ保持
※検索画像も被検索画像も、 S3上にある前提 CreateCollection (collection-id test_faces )
43 2.顔メタデータを追加。入れ物に顔を入れる 1.顔コレクションを作成。入れ物を作る Rekognitionで顔検索する手順 AWS SDK AWS SDK Face Collection
test_faces 被検索画像指定 ※被検索画像に対して実行 ※メタデータ (特徴情報)のみ保持 ※検索画像も被検索画像も、 S3上にある前提 CreateCollection (collection-id test_faces ) イベントの写真 顔メタデータ追加 IndexFaces
44 2.顔メタデータを追加。入れ物に顔を入れる 1.顔コレクションを作成。入れ物を作る Rekognitionで顔検索する手順 AWS SDK AWS SDK Face Collection
test_faces 被検索画像指定 ※被検索画像に対して実行 ※メタデータ (特徴情報)のみ保持 ※検索画像も被検索画像も、 S3上にある前提 CreateCollection (collection-id test_faces ) イベントの写真 顔メタデータ追加 IndexFaces AWS SDK 検索画像指定 SearchFacesByImage 画像分析 検索画像用 検索! 検索結果(JSON)を応答 3.指定した画像で顔コレクション内の類似画像を検索
45 デモ
46
47 まとめ • Rekognitionのcollection機能使うと簡単に顔検索機能が 実装できる ◦ 自前で新しくシステム構築不要 ◦ 保守コストも不要 •
安い・速い・高精度! ◦ 大量の画像もcollectionを使えば一瞬で検索できる • 植田ひかるさんは可愛い
48 最後に… • 人の心に火をつけるよう なエンジニアを募集して います! • パパママエンジニアに優 しい福利厚生! https://www.wantedly.com/companies/sencorp
49 Thank you for your kind attention :)