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
Machine Learning and Feedback
Search
Agata Naomichi
September 26, 2018
Programming
1
1.5k
Machine Learning and Feedback
Agata Naomichi
September 26, 2018
Tweet
Share
More Decks by Agata Naomichi
See All by Agata Naomichi
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
9k
全員アーキテクトで挑む、 巨大で高密度なドメインの紐解き方
agatan
8
23k
チームで開発し事業を加速するための"良い"設計の考え方 @ サポーターズCoLab 2025-07-08
agatan
2
670
医療系スタートアップが経験した 認知負荷問題の症状分析と処方箋 チーム分割による認知負荷の軽減 / Cognitive Load Busters
agatan
2
600
専門性の高い領域をいかに開発し、 テストするか / How to test and develop complicated systems with Domain Experts!
agatan
3
880
Henry のサーバーサイドアーキテクチャ 狙いと課題 2022.08.25 / Server-Side Architecture at Henry, Inc.
agatan
3
5.9k
The Web Conference 2020 - Participation Report
agatan
1
740
○○2vec 再考
agatan
1
4.6k
Improving "People You May Know" on Directed Social Graph
agatan
4
2.7k
Other Decks in Programming
See All in Programming
20260228_JAWS_Beginner_Kansai
takuyay0ne
4
340
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
7
1.2k
CSC307 Lecture 11
javiergs
PRO
0
580
AI時代でも変わらない技術コミュニティの力~10年続く“ゆるい”つながりが生み出す価値
n_takehata
2
510
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
290
PostgreSQL を使った快適な go test 環境を求めて
otakakot
0
360
CSC307 Lecture 13
javiergs
PRO
0
310
AWS Infrastructure as Code の新機能 2025 総まとめ~ SA 4人による怒涛のデモ祭り ~
konokenj
9
2.5k
オブザーバビリティ駆動開発って実際どうなの?
yohfee
2
610
並行開発のためのコードレビュー
miyukiw
2
2.1k
浮動小数の比較について
kishikawakatsumi
0
350
Metaprogramming isn't real, it can't hurt you
okuramasafumi
0
130
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
New Earth Scene 8
popppiees
1
1.6k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.7k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
130
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
170
Six Lessons from altMBA
skipperchong
29
4.2k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
The SEO identity crisis: Don't let AI make you average
varn
0
400
Transcript
ユーザフィードバックと機械学習 Machine Learning Casual Talks #6
Naomichi Agata Software engineer at Wantedly, Inc. Server side +
Machine learning @ Wantedly People GitHub Twitter @agatan @agatan_
サービスにおける機械学習システムには ユーザフィードバックが重要
フィードバック • ユーザからのフィードバック ◦ レビューやお問い合わせだけではなく、 「ふつうにサービスを使うなかでの行動」から得られる ◦ e.g. 「検索結果をクリックした」「購入せずに戻った」「誤情報を訂正した」 •
ユーザへのフィードバック ◦ より良いサービスを提供する ◦ e.g. 「あなたへのおすすめ」「全体の精度が向上する」
何を持ってそのモデルを「良い」と判断するか 機械学習をサービスに活用するためには 1. モデル自体の精度(オフラインで測れる精度) 2. KPI / ユーザ体験への影響(オンラインでしか測れない精度) の 2
面から「良さ」を判断する必要がある ユーザ体験への影響は「ユーザからのフィードバック」でしか測れない
サービスの成長とモデルの成長 • サービスが大きくなるにつれてできることは増えていくはず ◦ e.g. パーソナライズ • フィードバックループを繰り返して改善していきたい 、というのは機械学習も一緒 良い機械学習によってサービスの成長を加速する
→ データが増える → 精度があがる and/or できることが増える → 成長を加速 → …
理想 良い体験を実現するほど、使ってもらえる ↑↓ 使ってもらうほど、改善がすすむ 使う 改善 より良い体験の提供
現実 • どの程度フィードバックを得られるかは、問題とサービスの性質に依存する ◦ たとえば、推薦はフィードバックを得やすい • 「サービスの拡大とともに使える情報が増える」ことは期待できない場合もある ◦ 学習データにするには壁がある ▪
より高度な annotation 作業が必要, ノイズが多い, … • 機械学習システムだけ成長に置いていかれるわけにはいかない
どんな対応ができるか
前提... • フィードバックを逃さないログ基盤などはとても重要 ◦ 「なにかがおかしい」を察知できないと改善の余地がない ◦ 継続的に評価できないと新しいことに挑戦できなくなる • フィードバックを受けやすい UX
設計も重要になってくる(?) ◦ 予測が間違っているときにそれを伝えられる ◦ 予測が正しかったときにそれを伝えられる ◦ 機械学習エンジニアも UX 設計に参加する必要がある
半教師あり学習として解く • 「少量の教師ありデータ + 大量の教師なしデータ」 • 教師なしでもできることを組み合わせたシステムにするのが一番うまくいった ◦ たとえば、word embedding
layer を教師なしデータで事前学習しておく
データの分布に注目する • annotate されていないデータでも、現実のデータの分布を反映している • 活用できていなかったデータも、細かく分析することで使えるようになる(こともある) • 分布さえわかればできることもある ◦ たとえば、bi-gram
の出現頻度を見ながら sequence 全体での尤度が最大になるように decode する ◦ たとえば、出現頻度の多いパターンにはアドホックにルールベースで対処する ▪ e.g. 高い頻度・確率で「m」が「nn」に訂正されている • より現実に近い data augmentation ができる ◦ データの分布から教師データを作る
ノイズを許容する • ノイズを許容してでも大きなデータで学習したほうが良い場合もある ◦ とはいえ単純につっこんでもうまくいかない(はず) • 地道に分析してノイズを取り除くのが(可能なら)一番よさそう • 教師データのノイズに耐性を持つようなモデルも提案されている
まとめ • サービスの成長にあわせてモデルも改善したい ◦ モデル改善 → サービス向上 → 使ってもらえる →
改善 → … のループが回せると幸せ ◦ 問題・領域によっては、モデルの改善に直接使えるデータは集まらない • どうやってモデルの改善を進めるか ◦ そもそも UX としてユーザフィードバックが得られる構造になっているか? ◦ 半教師あり的に扱う ◦ ひたすら分析 + パターンを見出して改善する