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
Case Study of Machine Learning in CrowdWorks
Search
Akira Yumiyama
January 27, 2018
Technology
0
1.9k
Case Study of Machine Learning in CrowdWorks
Akira Yumiyama
January 27, 2018
Tweet
Share
More Decks by Akira Yumiyama
See All by Akira Yumiyama
GAE/Python2 to Python3 Migration Journey
akiray03
0
1.5k
オブジェクト指向で考える アプリケーションアーキテクチャ設計 / Object-Oriented Conference 2020
akiray03
6
20k
Terraform Introduction
akiray03
0
80
CrowdWorksを支える管理画面 - 管理画面チラ見せ♡ナイト #5
akiray03
0
1.5k
DevSumi2015 19-D-2 IIJ社内におけるアジャイル開発、DevOpsへの取り組み
akiray03
0
410
mruby introduction -- jinbocho.rb #01
akiray03
9
1.1k
Other Decks in Technology
See All in Technology
サービスでLLMを採用したばっかりに振り回され続けたこの一年のあれやこれや
segavvy
2
390
組織に自動テストを書く文化を根付かせる戦略(2024冬版) / Building Automated Test Culture 2024 Winter Edition
twada
PRO
13
3.6k
どちらを使う?GitHub or Azure DevOps Ver. 24H2
kkamegawa
0
690
LINEヤフーのフロントエンド組織・体制の紹介【24年12月】
lycorp_recruit_jp
0
530
ブラックフライデーで購入したPixel9で、Gemini Nanoを動かしてみた
marchin1989
1
520
OpenAIの蒸留機能(Model Distillation)を使用して運用中のLLMのコストを削減する取り組み
pharma_x_tech
4
550
【re:Invent 2024 アプデ】 Prompt Routing の紹介
champ
0
140
スタートアップで取り組んでいるAzureとMicrosoft 365のセキュリティ対策/How to Improve Azure and Microsoft 365 Security at Startup
yuj1osm
0
210
あの日俺達が夢見たサーバレスアーキテクチャ/the-serverless-architecture-we-dreamed-of
tomoki10
0
430
re:Invent をおうちで楽しんでみた ~CloudWatch のオブザーバビリティ機能がスゴい!/ Enjoyed AWS re:Invent from Home and CloudWatch Observability Feature is Amazing!
yuj1osm
0
120
2024年にチャレンジしたことを振り返るぞ
mitchan
0
130
Qiita埋め込み用スライド
naoki_0531
0
860
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1030
460k
Typedesign – Prime Four
hannesfritz
40
2.4k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
0
97
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Statistics for Hackers
jakevdp
796
220k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Documentation Writing (for coders)
carmenintech
66
4.5k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
It's Worth the Effort
3n
183
28k
Visualization
eitanlees
146
15k
Transcript
CrowdWorksにおける 機械学習活用 取り組み 2018/01/27 株式会社クラウドワークス CTO 弓山彬
自己紹介 • 弓山 彬 (ゆみやま あきら) • 株式会社クラウドワークス 執行役員 CTO
• 経歴 ◦ 2011年4月 インターネットイニシアティブ入社 ◦ 2015年4月 クラウドワークス入社 ◦ 2016年7月 クラウドワークス CTO就任 • 業務 ◦ マネジメントしないCTO ◦ 最近:データ分析基盤 構築、新サービス アーキテクチャレビュー、 機械学習活用プロジェクト 推進、技術方針・戦略 策定、 ...
CrowdWorksについて
None
None
サービス 成長(ユーザ数) クラウドワークスについて
サービス 成長(仕事 投稿数) ユーザ数 増加に伴って、仕事 依頼数も堅調に推移 クラウドワークスについて
サービス 抱える課題
悪質案件
ユーザによる不適切投稿(スパム投稿) 増加 • CGM (ユーザ投稿型メディア) に共通する課題 • 不適切な投稿が増えることによって ◦ 目的
仕事を見つけづらくなる ◦ サービス品質 低下 • 不適切な投稿(仕事募集) 例: ◦ サービス 意図に反する投稿(アフィリエイト、情報商材、等) ◦ 外部サービス 規約に反する投稿(ランキング操作、不正な評価 依頼、等) ◦ 成功報酬、雇用を前提とした募集など、サービス 利用規約を把握せぬまま投稿するケース クラウドソーシング・サービス 抱える課題
ユーザによる不適切投稿(スパム投稿) 増加 クラウドソーシング・サービス 抱える課題 利用者が増えて メディア媒体として 価値があがる 悪質案件 急増が課題になっていた スパムに狙われやすくなる
悪質案件に対する取り組み
悪質案件に対する従来 取り組み 悪質案件に対する取り組み ユーザから フィードバック • 「違反報告」によるフィードバック収集 悪質案件 検出 •
「禁止ワード」チェック(正規表現) • 機械学習 活用
ユーザフィードバック 収集を増やす 悪質案件に対する取り組み
ユーザフィードバック 収集を増やす 悪質案件に対する取り組み • シンプルな選択肢で回答しやすい • スマホアプリ、Webページともに実装(導線を増やした) • 多く フィードバックが集まり、検索・違反検出
改善に繋がっ た
悪質案件に対する従来 取り組み 悪質案件に対する取り組み ユーザから フィードバック • 「違反報告」によるフィードバック収集 悪質案件 検出 •
機械学習 活用 • 「禁止ワード」チェック (正規表現)
「禁止ワード」による違反案件 検出 • 違反案件 文面に頻出するキーワードを列挙 ◦ HTMLタグ除去、Unicode正規化 後、正規表現で一致判定 ◦ いずれか
「禁止ワード」が含まれる場合に事務局チェック 対象とする 違反案件に対する取り組み 事務局 目視チェック後、 違反であれ 掲載停止や利用制限と いった対応を実施 ☞ 自動処理が可能な 精度に至っていなかった
悪質案件に対する従来 取り組み 悪質案件に対する取り組み ユーザから フィードバック • 「違反報告」によるフィードバック収集 悪質案件 検出 •
機械学習 活用 • 「禁止ワード」チェック (正規表現)
機械学習 活用 • 教師データが存在する ◦ ⇒ 過去 ユーザサポートチーム 判断結果が残っている •
人によって判断基準 ブレにくい ◦ ⇒ 「あなたにおすすめ」 人それぞれ 好みへ 依存度が高い ◦ ⇒ 「よくない」「あやしい」 人による判断 ブレが少ない • 判定基準が明確である ◦ ⇒ 「利用規約」「ガイドライン」として基準が言語化されている ◦ ⇒ 迷った時 最終判断できる人が社内にいる(ユーザサポートチーム) 悪質案件 検出
試行錯誤するも.. • word2vec • doce2vec • SVM • LSTM •
… • 全てOKか、全てNGに... 悪質案件 検出 - 機械学習 活用
ベイジアンフィルタによる 違反案件 検出
違反案件 検出処理 流れ 違反案件検出 高精度化に向けた取り組み 前処理 • 必要なデータセット 抽出 •
HTMLタグ 除去、Unicode (NFKC)正規化 検出処理 • 形態素解析にMeCabを利用 ◦ mecab-ipadic-NEologd を辞書として利用 ◦ 抽出対象 名詞、動詞、形容詞、形容動詞、副詞 ◦ 装飾用記号列など 除外した ◦ 活用するも について 基本形 (base form)を用いた • ベイジアンフィルタで判定 後処理 • サービス本体と 連携 • 事務局による目視チェック結果 フィードバック
ベイジアンフィルタによる検出 違反案件検出 高精度化に向けた取り組み 違反案件 非違反案件 違反判定 807 77 非違反判定 193
923 適合率 再現率 F値 0.913 0.807 0.857 ベイジアンフィルタ 性能評価 違反案件 非違反案件 違反判定 326 100 非違反判定 674 900 適合率 再現率 F値 0.765 0.326 0.457 禁止ワードチェック 性能評価 • 適合率、再現率ともに改善した • 複数 語 出現傾向をもとに判定することで誤判定を減らせた • 従来検知できなかった種類 違反案件も大部分を検知できた
ベイジアンフィルタによる検出をサービスに適用する 違反案件検出 高精度化に向けた取り組み • 従来手法に比べて、適合率が大きく改善(76%→91%)したこと ☞ 自動非公開処理が現実味を帯びてきた ◦ 違反で無いも を非公開にしてしまうケース
ゼロに できない ◦ そ 対応コストが許容可能な範囲に収まる程度に性能改善できた 手法 適合率 再現率 F値 正規表現 0.765 0.326 0.457 ベイジアンフィルタ 0.913 0.807 0.857
ベイジアンフィルタ サービス環境へ 組み込み 違反案件検出 高精度化に向けた取り組み サービス提供用DB 機械学習用DB 必要なデータ み 取得・同期する
判定結果を HTTP JSON API で連携する 機械学習用 EC2インスタンス Rails App Server サービス環境
ベイジアンフィルタ サービス本体と 連携 違反案件検出 高精度化に向けた取り組み 学習フェーズ (1回/day) • 1日1回、N日前〜N+60日前 60日分
仕事依頼 データを対象に学習させる (N=3〜7) • 違反案件 傾向変化に追従させるため • 直近数日分 目視チェック未完了 場合があるため 除外 判定フェーズ (1-2回/hour) • 新着 案件に対して判定処理を実施 • 違反と判定されたも HTTP JSON API 経由で サービス本体に連携し掲載停止処理を実施
ベイジアンフィルタを組み込んでみて (まとめ) • 今回 取り組みによって、初めて「禁止ワード」チェック(正規表現) 性能を定量的 に評価した ◦ 従来 感覚値で会話していたも
が、定量的に評価し、改善・予測できるようになった • 人力 対応コストを大幅に削減できた ◦ 目視で 巡回を大幅に減らすことができた ◦ 人力チェック 結果を次回ベイジアンフィルタ 学習にフィードバックすることで、追加コスト無く継 続的に性能を維持できるようになった ◦ アーキテクチャ 工夫により、新たな取り組み 成果を速やかにサービス適用できた 違反案件検出 高精度化に向けた取り組み
振り返りとこれから
「ど ような課題を解決したい か」 をしっかりと定義することが重要
これまで:守り 悪質案件 検出 RPA(自動化)による工 数削減
これまで:守り 悪質案件 検出 RPA(自動化)による工 数削減 これから:攻め サービス価値を 大きくする
良い “仕事上 出会い” を 創っていきたい
マッチング 改善 • いい仕事と、いいクラウドワーカーが出会い環境を作りたい ◦ いい仕事、いいクラウドワーカー 特徴 、状況(コンテキスト)によって違う ◦ いいエンジニアが、いいデザイナーと
限らない • 今よりも、もっと良い出会いが起こりやすく • クラウドワーカー スキルアップ、ステップアップ 支援
ユーザに届ける”価値”を 最大化するために、何が必要か?
ユーザに価値を届ける”価値”を最大化するために • ユーザ視点で課題を捉え、プロダクトが届けるべき”価値”を整理する • プロダクトオーナー、UXデザイナーを中心に、メンバー全員で議論する • “価値”を届けるために、機械学習が生きる場面があれ 、活用していく • プロダクトオーナー(PO)、
エンジニア、UXデザイナー、 混成チームで”ユーザー 課題”に 向き合い続ける
http://designer.crowdworks.co.jp/entry/customer-journey-map-uxdesign http://designer.crowdworks.co.jp/entry/three-conscious-things
https://qiita.com/yo-iida/items/053f7613a68e086a01a4
We're Hiring • インターネットを通じた “仕事” マッチングをより良くしていきたい • ユーザ 課題に向き合いながら、サービスを成長させていきたい方 •
プロダクトオーナー、デザイナー、エンジニア 混成チームで働きたい方 https://crowdworks.doorkeeper.jp/events/69911 2月21日(水) 19:30〜 弊社オフィス (恵比寿ガーデンプレイス) にてミートアップ開催
None