Home
Explore
Submit Search
Upload
Login
Signup
Advertisement
jubabanditの紹介
Report
JubatusOfficial
Follow
Jun. 30, 2016
•
0 likes
0 likes
×
Be the first to like this
Show More
•
12,266 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Check these out next
backbone としての timm 入門
Takuji Tahara
未来のプログラミング技術をUnityで -UniRx-
torisoup
みんなが知らない pytorch-pfn-extras
Takuji Tahara
Jubatus使ってみた 作ってみたJubatus
JubatusOfficial
(Pythonで作って学ぶ) Youtube の動画リストを作るアプリの開発 第4回
Project Samurai
Jubakitの解説
JubatusOfficial
性能測定道 実践編
Yuto Hayamizu
HADOにおけるUniRxのObjectPool
Yasuyuki Kado
1
of
29
Top clipped slide
jubabanditの紹介
Jun. 30, 2016
•
0 likes
0 likes
×
Be the first to like this
Show More
•
12,266 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Download Now
Download to read offline
Report
Engineering
jubabanditの紹介
JubatusOfficial
Follow
Advertisement
Advertisement
Advertisement
Recommended
jubarecommenderの紹介
JubatusOfficial
12K views
•
10 slides
JubaQLご紹介
JubatusOfficial
11.9K views
•
15 slides
小町のレス数が予測できるか試してみた
JubatusOfficial
10.6K views
•
10 slides
"アレ"からJubatusを使う
JubatusOfficial
7.9K views
•
10 slides
データ圧縮アルゴリズムを用いたマルウェア感染通信ログの判定
JubatusOfficial
12.1K views
•
13 slides
Jubakit の紹介
kmaehashi
13.6K views
•
20 slides
More Related Content
Slideshows for you
(20)
backbone としての timm 入門
Takuji Tahara
•
5.9K views
未来のプログラミング技術をUnityで -UniRx-
torisoup
•
152.4K views
みんなが知らない pytorch-pfn-extras
Takuji Tahara
•
2.5K views
Jubatus使ってみた 作ってみたJubatus
JubatusOfficial
•
11.2K views
(Pythonで作って学ぶ) Youtube の動画リストを作るアプリの開発 第4回
Project Samurai
•
1K views
Jubakitの解説
JubatusOfficial
•
10.2K views
性能測定道 実践編
Yuto Hayamizu
•
55.2K views
HADOにおけるUniRxのObjectPool
Yasuyuki Kado
•
1.8K views
0730 bp study#35発表資料
Yasuhiro Horiuchi
•
1.4K views
Jubatusでマルウェア分類
Shuzo Kashihara
•
5.4K views
SensorBeeの紹介
Shuzo Kashihara
•
2.1K views
インフラエンジニアがUnityをやるべきたった一つの理由
axsh co., LTD.
•
123.2K views
超絶技巧プログラミングと Ruby 3.0 (大江戸 Ruby 会議 05 コミッタ LT)
mametter
•
13.6K views
SensorBeeのご紹介
Daisuke Tanaka
•
3.8K views
Deep Learningハンズオン勉強会「Caffeで画像分類を試してみようの会」
Yasuyuki Sugai
•
31.4K views
(Pythonで作って学ぶ) Youtube の動画リストを作るアプリの開発 第1回
Project Samurai
•
1.5K views
職場で使用しているOSSの開発に参加してみた!
infinite_loop
•
6.3K views
Led cube lt
Naohito Yamashita
•
43.6K views
(Pythonで作って学ぶ) Youtube の動画リストを作るアプリの開発 第2回
Project Samurai
•
866 views
SensorBeeでChainerをプラグインとして使う
Daisuke Tanaka
•
3.2K views
Viewers also liked
(20)
Jubatus 新機能ハイライト
JubatusOfficial
•
12.5K views
Isolation forest
kataware
•
9.1K views
Jubatusハンズオン 機械学習はじめてみた
JubatusOfficial
•
7.8K views
もくもくしたこと
k_oi
•
8.3K views
もくもく成果 IMAMASU
JubatusOfficial
•
7.7K views
gRPCをちょこっと調べた話
Shuzo Kashihara
•
9.4K views
コンテンツマーケティングでレコメンドエンジンが必要になる背景とその活用
JubatusOfficial
•
12K views
まだCPUで消耗してるの?Jubatusによる近傍探索のGPUを利用した高速化
JubatusOfficial
•
12.2K views
かまってちゃん小町
JubatusOfficial
•
11.2K views
新機能紹介 1.0.6
JubatusOfficial
•
10.7K views
Jubatus 1.0 の紹介
JubatusOfficial
•
10.8K views
Python 特徴抽出プラグイン
JubatusOfficial
•
11K views
単語コレクター(文章自動校正器)
JubatusOfficial
•
10.5K views
発言小町からのプロファイリング
JubatusOfficial
•
11.1K views
Jubatus解説本の紹介
JubatusOfficial
•
10.4K views
新聞から今年の漢字を予測する
JubatusOfficial
•
10.9K views
小町の溜息
JubatusOfficial
•
10.8K views
JUBARHYME
JubatusOfficial
•
11.1K views
銀座のママ
JubatusOfficial
•
11K views
地域の魅力を伝えるツアーガイドAI
JubatusOfficial
•
30K views
Advertisement
Similar to jubabanditの紹介
(9)
モデル最適化指標・評価指標の選び方
幹雄 小川
•
1.9K views
L 05 bandit with causality-公開版
Shota Yasui
•
6K views
ゆるドラ運営記
亮太 松本
•
2.6K views
Pydata_リクルートにおけるbanditアルゴリズム_実装前までのプロセス
Shoichi Taguchi
•
3.1K views
データサイエンティスト協会 木曜勉強会 #09 『意志の力が拓くシステム~最適化の適用事例から見たデータ活用システムの現在と未来~』
The Japan DataScientist Society
•
3.5K views
【Logic Apps編】ノンコーディングでデキる!お問い合わせフォーム機能拡張
典子 松本
•
2.4K views
Optimization and simulation with DataRobot
Yuya Yamamoto
•
2.3K views
【ライヴエイド福島】Rainbow apps 2013.0614
Tomoharu Fukushima
•
1.2K views
Lagopusで試すFirewall
Tomoya Hibi
•
1.3K views
Recently uploaded
(20)
★可查可存档〖制作国立大学文凭证书毕业证〗
tujjj
•
2 views
揭秘德国留学:如何获得马格德堡大学毕业证?
beyeme1761
•
3 views
★可查可存档〖制作波恩大学文凭证书毕业证〗
tujjj
•
8 views
mabl - 負荷テストにおけるmablのAPIテスト活用_20230525
Yuki Shimizu
•
13 views
★可查可存档〖制作巴黎第十二大大学文凭证书毕业证〗
tujjj
•
2 views
《勒芒大学毕业证|学位证书校内仿真版本》
hj123saf
•
2 views
《萨斯喀彻温大学毕业证|学位证书校内仿真版本》
124hdjkhas
•
3 views
《卡尔顿大学毕业证|学位证书校内仿真版本》
124hdjkhas
•
3 views
★可查可存档〖制作萨福克大学文凭证书毕业证〗
vvvvv24
•
3 views
《萨德伯里大学毕业证|学位证书校内仿真版本》
124hdjkhas
•
2 views
★可查可存档〖制作卡尔顿大学文凭证书毕业证〗
mmmm282537
•
2 views
《斯旺西大学毕业证|学位证书校内仿真版本》
w124dsa
•
2 views
DBチューニング超入門
VirtualTech Japan Inc./Begi.net Inc.
•
6 views
《尚贝里大学毕业证|学位证书校内仿真版本》
hj123saf
•
2 views
揭秘美国留学:如何获得内华达大学毕业证?
xefexep
•
2 views
《达特茅斯学院毕业证|学位证书校内仿真版本》
123shab123
•
2 views
★可查可存档〖制作密德萨斯大学文凭证书毕业证〗
vgfg1
•
2 views
《天普大学毕业证|学位证书校内仿真版本》
d520dasw12
•
2 views
★可查可存档〖制作奥克兰商学院文凭证书毕业证〗
tujjj
•
2 views
W&B Seminar #4.pdf
Akira Shibata
•
0 views
Advertisement
jubabanditの紹介
jubabanditの紹介 NTTソフトウェアイノベーションセンタ 宇田川 拓郎 Copyright©2016 NTT
corp. All Rights Reserved.
1 今日の話 • jubabanditとMulti-Armed Bandit問題について •
jubabanditの使い方について • jubabanditを使ってみたデモの紹介 Copyright©2016 NTT corp. All Rights Reserved.
2 jubabanditとは • Jubatus 0.7.0で実装された、Multi-Armed Bandit
(多腕バンディット) 問題のための機能 ※Multi-Armed Bandit問題 • 報酬が未知である複数の選択肢から1つ選ぶ試行を 繰り返す過程において、得られる報酬を最大化する 問題 • 報酬のフィードバックを得ながらオンラインで最適 化 Copyright©2016 NTT corp. All Rights Reserved.
3 Multi-Armed Bandit問題の例 例)報酬の期待値がわからない3台のスロットマシンがあり、これらを100 回プレイするときに得られる報酬を最大にするには? どの台をどうやって選ぶのが得なのだろうか・・・? player :
armを選ぶ人 arm: 各選択肢 A B C Copyright©2016 NTT corp. All Rights Reserved.
4 Multi-Armed Bandit問題の例 • 真の期待値がわかれば最大のものを選び続けるのが良い 例)報酬の期待値がわからない3台のスロットマシンがあり、これらを100 回プレイするときに得られる報酬を最大にするには? 真の期待値
1.2 0.5 0.1 A一択が最強。100 x 1.2 で120もらえるはず A B C Copyright©2016 NTT corp. All Rights Reserved.
5 Multi-Armed Bandit問題の例 • 実際には報酬を観測しながら期待値を推測する 例)報酬の期待値がわからない3台のスロットマシンがあり、これらを100 回プレイするときに得られる報酬を最大にするには? 真の期待値
? ? ? 1回回してみた 0/1 = 0.0 0/1 = 0.0 10/1 = 10 +10+0+0 A B C Copyright©2016 NTT corp. All Rights Reserved. Cがいいんじゃないか?
6 例)報酬の期待値がわからない3台のスロットマシンがあり、これらを100 回プレイするときに得られる報酬を最大にするには? 真の期待値 ? ?
? 1回回してみた 0/1 = 0.0 0/1 = 0.0 10/1 = 10 2回回してみた 5/2 = 2.5 5/2 = 2.5 10/2 = 5 +5 +5 +0 • 実際には報酬を観測しながら期待値を推測する Multi-Armed Bandit問題の例 A B C Copyright©2016 NTT corp. All Rights Reserved. Cがいいんじゃないか?
7 例)報酬の期待値がわからない3台のスロットマシンがあり、これらを100 回プレイするときに得られる報酬を最大にするには? 真の期待値 ? ?
? 1回回してみた 0/1 = 0.0 0/1 = 0.0 10/1 = 10 2回回してみた 5/2 = 2.5 5/2 = 2.5 10/2 = 5 3回回してみた 15/3 = 5.0 5/3 = 1.666... 10/3 = 3.333... やっぱりAのほうがいいかも? Aを選び続ける? 他のももっと試す? +10 +0 +0 • 実際には報酬を観測しながら期待値を推測する Multi-Armed Bandit問題の例 A B C Copyright©2016 NTT corp. All Rights Reserved.
8 Multi-Armed Bandit問題とは • 知識の”活用(exploit)”と”探索(explore)”のトレード オフを解決する問題 •
探索 => 選択肢の知識を増やす試み • 活用 => これまでの知識を基に最良の選択をする 知識の活用 今のところAが一番出てるから Aを引こう 知識の探索 Aより良い台があるかもしれないから、 他の台も試してみよう Copyright©2016 NTT corp. All Rights Reserved.
9 • 知識の”活用(exploit)”と”探索(explore)”のトレード オフを解決する問題 • 活用が強すぎると・・・ (1回目の施行後Cを回し続ける) •
探索が強すぎると・・・ (全部の台を均等に回す) 結局最初に当たった 10しか出なかった… 60くらい出たけど、 もっと出たはずでは・・・? 良くない選択肢を選び続けてし まうことがある 本来得られるはずの報酬を逃 してしまう Multi-Armed Bandit問題とは 活用と探索を”ほどよく”実 施して、報酬をなるべく多 く手に入れるのが重要 Copyright©2016 NTT corp. All Rights Reserved.
10 Multi-Armed Banditの応用先 • 広告配信 –
いろんな広告を試してみたいけど、効果の薄いもの はCTRが下がるのであまり出したくない • 臨床試験 – 効果がわかってない新薬を試すか、安定している薬 を使うか • ウェブサイトデザインの最適化 – いろんなデザインを試してみたいけど、イマイチな ものはあまり出したくない Copyright©2016 NTT corp. All Rights Reserved.
11 jubabanditの特徴 • 5種類のアルゴリズムが利用可能 • epsilon-greedy •
softmax • ucb1 • exp3 • Thompson sampling (0.9.0から) • playerごとに選択回数や報酬を管理 • パーソナライズした最適化も可能 • 選択肢の種類は全player共通 • APIから動的な追加・削除が可能 Copyright©2016 NTT corp. All Rights Reserved.
12 確率εで全ての選択肢からランダムに選ぶ(探索) 確率1-εで現在最も期待値の高い選択肢を選ぶ(活用) (参考) epsilon-greedy 1-ε ε 最も期待値の高 い選択肢 全ての選択肢から ランダム Copyright©2016 NTT
corp. All Rights Reserved.
13 jubabanditの使い方 • 設定ファイルの書き方 • APIと動作イメージ Copyright©2016
NTT corp. All Rights Reserved.
14 設定ファイル • 使うアルゴリズムをmethodに指定 • アルゴリズムごとのパラメータを指定 •
assume_unrewarded オプションを指定 ①アルゴリズムの指定 (前述の5つのアルゴリズムから1つを選ぶ) ②epsilon_greedyの場合は、epsilonパ ラメータを設定 ③assume_unrewardedオプション を指定(true/false) { "method": "epsilon_greedy", "parameter": { "epsilon" : 0.1 "assume_unrewarded" : false, } } ① ② ③ Copyright©2016 NTT corp. All Rights Reserved.
15 assume_unrewarded option • armの選択回数を更新するタイミングを調整す るオプション •
true => Armが選択された時にそのArmの選択回数 を1増やす • false => Armに報酬が登録されるときにそのArmの 選択回数を1増やす • 選択から報酬の登録までに時間差がある場合に 便利 Copyright©2016 NTT corp. All Rights Reserved.
16 クライアントAPI • 主に使うのは以下の3つ • register_arm(arm_id) •
選択肢をJubabanditサーバーに追加する • select_arm(player_id) • player_idのarmを選ぶ • register_reward(player_id, arm_id reward) • player_idのarm_idにrewardの報酬を登録する Copyright©2016 NTT corp. All Rights Reserved.
17 jubabandit 動作イメージ jubabandit client A register_arm(“A”) register_armによって 選択肢が追加される Copyright©2016 NTT
corp. All Rights Reserved.
18 jubabandit 動作イメージ jubabandit client A B
C register_arm(“B”) register_arm(“C”) register_armによって 選択肢が追加される Copyright©2016 NTT corp. All Rights Reserved.
19 jubabandit 動作イメージ jubabandit client select_arm(“hoge”) player A
B C hoge 0, 0 0, 0 0, 0 playerは各腕の (重み, 試行回数)を持つ Copyright©2016 NTT corp. All Rights Reserved.
20 jubabandit 動作イメージ jubabandit client select_arm(“hoge”) A B
C hoge 0, 1 0, 0 0, 0 A 設定したアルゴリズムに応じて 腕を選択する assume_unrewarded optionがtrue ならselect_arm時に 試行回数+ 1 Copyright©2016 NTT corp. All Rights Reserved.
21 jubabandit 動作イメージ jubabandit client register_reward(“hoge”, “ A
“, 10.0) A B C hoge 10.0, 1 0, 0 0, 0 報酬を受け取り重みを更新 assume_unrewarded optionがfalse なら、この時試行回数を更新 Copyright©2016 NTT corp. All Rights Reserved.
22 jubabandit 動作イメージ jubabandit client A B
C hoge 100, 50 40, 25 10, 10 fuga 20, 10 10, 10 150, 50 試行を繰り返して、playerごとに 学習していく Copyright©2016 NTT corp. All Rights Reserved.
23 jubabanditを利用したデモの紹介 • ツイートを表示するシステム • ユーザからのフィードバックをもらいながらツイー トを表示するユーザを最適化する •
カテゴリの選択と、カテゴリ内でのユーザの選択の 2段階のjubabanditを利用して表示するtweetを選択 • クリックされたらそのカテゴリ・ユーザに 報酬を+1する • githubで公開中 • http://github.com/TkrUdagawa/tweet_bandit/ ※利用にはtwitterのアクセスキーが必要 Copyright©2016 NTT corp. All Rights Reserved.
24 デモ画面 Copyright©2016 NTT corp.
All Rights Reserved.
25 デモシステムの構成 tornado server js news, popular, IT jubabandit client jubabandit client jubabandit client jubabandit client @nikkei @Yomiuri_Online @ariyoshihiroiki @pamyurin @jptechcrunch @gizmodojapan カテゴリ推薦用 Jubabandit server ユーザ推薦用 Jubabandit server Copyright©2016
NTT corp. All Rights Reserved.
26 jubabanditの使い方(select_arm) ① 表示するtwitterアカウントのカテゴリをjubabanditで選択 ② カテゴリごとのjubabanditで、 表示するtwitterアカウントを選択 news IT ….. ①
どのカテゴリを 表示する? ② どのユーザを 表示する? ユーザ推薦用 Jubabandit カテゴリ推薦用 Jubabandit news Yomiuri_Online IT 担当 news 担当 Copyright©2016 NTT corp. All Rights Reserved. @jptechcrunch @gizmodojapan …. @nikkei @Yomiuri_Online …
27 jubabanditの使い方(register_reward) ① 表示されたツイートをユーザがクリック ② カテゴリ推薦用のjubabanditに報酬登録 ③
ユーザ推薦用のjubabanditに報酬登録 IT ….. ② newsに+1 ユーザ推薦用 Jubabandit カテゴリ推薦用 Jubabandit IT 担当 news 担当 ③ Yomiuri_Onlineに+1 ① Yomiuri_Onlineの ツイートをクリック Copyright©2016 NTT corp. All Rights Reserved. news @jptechcrunch @gizmodojapan …. @nikkei @Yomiuri_Online …
28 まとめ • Multi-Armed Bandit問題のための機能 jubabanditを紹介 •
知識の活用と探索のトレードオフを解決して、報酬 を最大化 • jubabanditを使ったデモを紹介 • ツイートの表示を学習 • コードを整理してjubatus-exampleに追加予定 http://github.com/TkrUdagawa/tweet_bandit/ Copyright©2016 NTT corp. All Rights Reserved.
Advertisement