以下イベントでの登壇資料 2019/03/07 Machine Learning Production Pitch #1 https://line.connpass.com/event/120518/
Copyright © 2015 M3, Inc. All Rights ReservedGraph構造を用いたユーザの興味タグ付けshunsuke kawai
View Slide
Copyright © 2015 M3, Inc. All Rights Reserved自己紹介河合 俊典 (@vaaaaanquish)エムスリー株式会社(1ヶ月と7日目)機械学習エンジニアフォロワー 1万7千人
Copyright © 2015 M3, Inc. All Rights ReservedAgenda● エムスリーの課題「医師の興味ワード推定」● 課題解決のためのサーベイ● モデリングと実験● これから
Copyright © 2015 M3, Inc. All Rights Reservedエムスリーの課題「医師の興味ワード推定」
Copyright © 2015 M3, Inc. All Rights Reservedプロジェクトの目的● 医師の興味(疾患や薬剤など)の可視化○ 適切な医師の紹介○ 広告やコンテンツの出し分け○ 時系列分析によるユーザへの販促 ...etc
Copyright © 2015 M3, Inc. All Rights Reservedイメージ参考: Google トレンド(上), Google Ads(右)
Copyright © 2015 M3, Inc. All Rights Reservedプロジェクトの制約● タグの定義○ コンテンツに紐付く疾患、薬剤名のみ○ 医師に対するランキングスコア○ 今後大学名などに拡大予定■ 自動で評価できる汎用的なモデル化が必要● 利用可能なデータ○ 医療ニュースやジャーナルなどのコンテンツビュー■ 各コンテンツにはバイアスが強くかかっている● レコメンドなどのバイアス● 閲覧等のアクション起因のサービス内ポイントが存在● 単純なコンテンツビュー数から取ると偏りが出るbias
Copyright © 2015 M3, Inc. All Rights Reserved課題解決のためのサーベイ
Copyright © 2015 M3, Inc. All Rights ReservedTag recommendation サーベイ○ Folksonomy-Based (ユーザの行動などの情報を使う)■ Graph● Bi-Partite, Tri-Partite Graph○ PageRank, Folk Rank○ TriRank● Graph-based SSL (NN)■ Co-Occourrence● User-Tag-Itemの共起■ Collaborative Filltering● Adapted k-NN, SVD● Authority-Basedl■ Matrix Factorization○ Content-Based (コンテンツの内容ベースでタグを推薦する)■ topic model● LDA+TFIDF■ vector model● w2v, ft, ...● コンテンツに対するタグが既にあるため採用● 正確な教師データが無い事に留意 → 医師の興味のラベルは現状ない → 評価関数の設計が必要● 疎行列ベース → メモリに乗るデータ量にクレンジング
Copyright © 2015 M3, Inc. All Rights Reservedgraph model❏ TriRank: Review-aware Explainable Recommendation by Modeling Aspects [CIKM 2015] : paper , slide❏ Ranking and Community detection in undirected networks : slide❏ Extraction and Analysis of Tripartite Relationships from Wikipedia [IEEE 2008] : paper❏ Personalized PageRank vectors for tag recommendations: inside FolkRank" [RecSys 2011] : paper❏ Tag Recommendation and Ranking [Springer 2017] : link● TriRank を参考に拡張したモデル○ User-Tag-Itemをpageviewで接続した3部graph○ label propagationを利用したtagの伝播○ tagの出現頻度、userのacceptはfilterとして利用○ user同士の関係は考慮しない (biasの除去)○ タグ付け-> 直接userノードに伝播したタグを評価-> pageviewより似たユーザを検索しタグ付け(協調フィルタリング)
Copyright © 2015 M3, Inc. All Rights Reservedlabel propagation● ラベルを伝搬させる半教師あり学習○ 接続情報を使う手法やクラス、ノード間の距離を使う手法がある○ Tag情報を教師として伝搬させる○ NNへの拡張も● ネットワークのクラスタ情報を考慮しつつタグを確率的に伝播させる● オンライン学習へも拡張可能❏ Semi-Supervised Learning Using Gaussian Fields and Harmonic Functions, [Xiaojin Zhu, ICML2003] : paper❏ Predicting the popularity of web 2.0 items based on user comments [Xiangnan He, SIGIR 2014] : paper❏ http://yamaguchiyuto.hatenablog.com/entry/2016/09/22/014202?骨折顔面痙攣脳出血脳梗塞骨折骨肉腫関節症骨折老眼白内障
Copyright © 2015 M3, Inc. All Rights Reservedモデリングと実験
Copyright © 2015 M3, Inc. All Rights Reservedデータクレンジング● 医者データのノイズクレンジング○ non active なユーザ○ プロフィール情報のないユーザ○ ポイント獲得数が異常なユーザ● ポイント目当ての行動の推定○ time diff (前回からのpageview間隔)● タグの分布の利用○ TF-IDFのように珍しさを考慮
Copyright © 2015 M3, Inc. All Rights Reserved手法の比較● pageview base○ 単純にPageview単位で紐づく単語をカウントしたモデル● Folk Rank (PageRank base)○ ユーザに重みをつけてPage Rankを計算する手法○ あるユーザから見たgraph内の中心性を算出しランキングとする● TriRank拡張モデル○ 今回良かった手法○ 3部graphのタグノードにラベルを付与しlabel propagation
Copyright © 2015 M3, Inc. All Rights Reserved結果のサンプル (ある消化器内科の医師Aの興味疾患top10)参考用ラベル数順top20----------------------------------糖尿病 10432型糖尿病 586咳喘息 360疼痛 288肺癌 281心房細動 266ジャディアンス 243非小細胞肺癌 235トラゼンタ 229関節リウマチ 227不眠症 197トルリシティ 178高血圧症 174花粉症 157慢性閉塞性肺疾患 155サイラムザ 154アレルギー性鼻炎 143PageRank base糖尿病慢性閉塞性肺疾患疼痛便秘症認知症心房細動骨粗鬆症心房粗動不眠症アレルギー性鼻炎TriRank肝線維腫炎症性腸疾患橈骨遠位端骨折肝性脳症肝炎高トリグリセライド血症慢性膵炎コレラ便秘型過敏性腸症候群肥満症pageview base糖尿病 (52)2型糖尿病 (32)慢性閉塞性肺疾患 (14)疼痛 (12)心不全 (10)不眠症 (10)心房細動 (10)認知症 (10)便秘症 (9)心房粗動 (10)pageview数に強く依存しない専門的、興味ベースなタグ
Copyright © 2015 M3, Inc. All Rights Reserved結果のサンプル (ある形成外科の医師Bの興味疾患top10)TriRank変性側弯症骨粗鬆症心疾患骨折脆弱性骨折非びらん性胃食道逆流症急性冠症候群上腕骨近位端骨折消化管出血若年性特発性関節炎pageview base骨粗鬆症 (8)骨折 (5)疼痛 (3)大動脈弁閉鎖不全症 (3)上腕骨近位端骨折 (3)心不全 (2)心房細動 (2)心房粗動 (2)心疾患 (2)変性側弯症 (2)一般的なユーザに対してより専門に近く興味ありそうなワードを出せる
Copyright © 2015 M3, Inc. All Rights Reserved結果のサンプル (ある眼科の医師Cの興味疾患top10)pageview baseアレルギー性結膜炎 (1)ドライアイ (1)ぶどう膜炎 (1)TriRank (近辺ユーザからの予測)開放隅角緑内障正常眼圧緑内障季節性アレルギー性結膜炎高眼圧症加齢黄斑変性糖尿病黄斑浮腫ドライアイ緑内障アレルギー性結膜炎感音難聴pageviewが少ないユーザに対しても近いユーザからサジェストできる
Copyright © 2015 M3, Inc. All Rights Reservedこれから
Copyright © 2015 M3, Inc. All Rights Reserved上手くいってる例だけ出してるんじゃないの?
Copyright © 2015 M3, Inc. All Rights Reservedうるせー!
Copyright © 2015 M3, Inc. All Rights Reserved今後の課題は山積み● 先述の例のように概ねのユーザに対しては上手くいっているように見える● 評価○ 一旦「診療科目」「疾患」の紐付きを目視で見て私の肌感で判断している○ 絶対的な教師データがない■ ロールアウトする事で評価されていく■ 検索やエンティティリンキングの整備を勧めている■ 医師へのアンケートや購買情報もマージしていく● モデリング○ 本当にクレンジング方法は正しいか○ 例外的に何でも見るようなユーザ、何も見ないユーザをどう捉えるか○ データの分布の変化に強い?拡張できる?● ロールアウト○ 実際にサービス系の人に見てもらいながら詰める○ どういう提供の仕方が嬉しいか (インフラ、データ形式)● 説明可能性○ なぜそのタグが気になっているのか○ 手法レベルではなく、事例ベースで出せると営業として使いやすい● 他プロダクト、OSS、論文へのアウトプット
Copyright © 2015 M3, Inc. All Rights ReservedWe’re Hiring!Thanks.