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
Yoshiken
July 11, 2019
Technology
0
470
1万枚の写真の中から我が子を見つける顔検索の裏側
Yoshiken
July 11, 2019
Tweet
Share
More Decks by Yoshiken
See All by Yoshiken
サイトの信頼性の前にチームとしての信頼性を高めよう
yoshiken
0
1.2k
転生したらEKSをTerraform管理することになった件
yoshiken
1
1.1k
Other Decks in Technology
See All in Technology
AI時代に必要なデータプラットフォームの要件とは by @Kazaneya_PR / 20251107
kazaneya
PRO
4
640
AIエージェントは「使う」だけじゃなくて「作る」時代! 〜最新フレームワークで楽しく開発入門しよう〜
minorun365
PRO
3
310
Copilotの精度を上げる!カスタムプロンプト入門.pdf
ismk
1
120
窓口業務を生成AIにおまかせ!Bedrock Agent Coreで実現する自治体AIエージェント!
rayofhopejp
0
150
書籍『実践 Apache Iceberg』の歩き方
ishikawa_satoru
0
470
Databricks Free Editionで始めるMLflow
taka_aki
0
790
Kotlinで型安全にバイテンポラルデータを扱いたい! ReladomoラッパーをAIと実装してみた話
itohiro73
3
260
GTC 2025 : 가속되고 있는 미래
inureyes
PRO
0
150
The Twin Mandate of Observability
charity
1
170
Spec Driven Development入門/spec_driven_development_for_learners
hanhan1978
1
630
Data Engineering Guide 2025 #data_summit_findy by @Kazaneya_PR / 20251106
kazaneya
PRO
7
1.2k
初海外がre:Inventだった人間の感じたこと
tommy0124
1
190
Featured
See All Featured
Making Projects Easy
brettharned
120
6.4k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Context Engineering - Making Every Token Count
addyosmani
8
330
Mobile First: as difficult as doing things right
swwweet
225
10k
Music & Morning Musume
bryan
46
6.9k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
Into the Great Unknown - MozCon
thekraken
40
2.1k
GraphQLとの向き合い方2022年版
quramy
49
14k
The Cult of Friendly URLs
andyhume
79
6.7k
Fireside Chat
paigeccino
41
3.7k
Facilitating Awesome Meetings
lara
57
6.6k
Producing Creativity
orderedlist
PRO
348
40k
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 :)