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
[社内論文読み会資料] Adapting User Interfaces with Model...
Search
Kazuhiro Ota
November 10, 2021
Technology
0
67
[社内論文読み会資料] Adapting User Interfaces with Model-based Reinforcement Learning
社内の論文読み会で紹介したCHI2021採択論文Adapting User Interfaces with Model-based Reinforcement Learningの紹介スライドです
Kazuhiro Ota
November 10, 2021
Tweet
Share
More Decks by Kazuhiro Ota
See All by Kazuhiro Ota
研究開発組織のエンジニアによる画像系プロダクトサポート
cielan
1
410
Other Decks in Technology
See All in Technology
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
37
12k
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
110
OS 標準のデザインシステムを超えて - より柔軟な Flutter テーマ管理 | FlutterKaigi 2024
ronnnnn
0
180
Evangelismo técnico: ¿qué, cómo y por qué?
trishagee
0
360
SRE×AIOpsを始めよう!GuardDutyによるお手軽脅威検出
amixedcolor
0
150
Amazon CloudWatch Network Monitor のススメ
yuki_ink
1
210
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
250
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
110
Application Development WG Intro at AppDeveloperCon
salaboy
0
190
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
250
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
950
プロダクト活用度で見えた真実 ホリゾンタルSaaSでの顧客解像度の高め方
tadaken3
0
170
Featured
See All Featured
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Making Projects Easy
brettharned
115
5.9k
GitHub's CSS Performance
jonrohan
1030
460k
Ruby is Unlike a Banana
tanoku
97
11k
Site-Speed That Sticks
csswizardry
0
27
Teambox: Starting and Learning
jrom
133
8.8k
Unsuck your backbone
ammeep
668
57k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
The Language of Interfaces
destraynor
154
24k
Fireside Chat
paigeccino
34
3k
Statistics for Hackers
jakevdp
796
220k
Transcript
Adapting User Interfaces with Model-based Reinforcement Learning Kashyap Todi, Gilles
Bailly, Luis A. Leiva, Antti Oulasvirta 社内論文読み会, 20211109 Kazuhiro Ota 1
UIの改善とユーザの反応 ウェブサービスを展開している企業にとっては重要な課題 例えば右のようなメニューデザインの改善を考える場合においても… • 急激な改変は既存ユーザに混乱や慣れるまでの学習コストをもたらす ◦ 画面キャプチャによるマニュアルが意味なくなったりする • デザインの局所最適解(初心者向けUIなど)を採用してしまうとその後 の対応が取りづらい
◦ ユーザはいつまでも初心者ではない そのため、UIを少し更新→使い勝手について評価→UIを少し更新→…というよ うに、徐々に変更を反映する手法が採用されている(Adaptive User Interface) 2
提案手法: モデルベース強化学習を用いたAdaptive UI MCTSによるシミュレーションとHCIモデルによる状態評価でユーザに優しいUI更新フローを計画する 3
Adaptive interfaces literature • ルールベース・ヒューリスティック ◦ かなりの事前知識が要求される職人芸 • 教師あり学習 ◦
更新内容とそのユーザーへの影響に関するデータを得るのが困難 • バンディット・ベイズ最適化 ◦ インターフェイスパラメータ選定などで成功を収めているが、連続的な変化に伴う更新 計画を立てるといったことができない • 強化学習 ◦ 次のページ 4
強化学習を用いたAdaptive Interface 最終報酬がすぐには得られないような一連の行動から意思決定方針(ポリシー、 方策)を学習することが出来る • モデルフリー(エージェントが実際に試行錯誤して経験から学習) ◦ クラウドソーシング・対話システムなどでの成功例 ◦ 良いポリシーを学習するために膨大な数のtrial-and-errorが必要
◦ 今回のような状態行動空間がとてつもなく大きいような状況には適していない • モデルベース(報酬関数を直接利用、またはモデル化したものを利用) ◦ 可能性をシミュレーションすることで試行回数や時間を抑えることができる ◦ 今回のようなAdaptive UIに適していると考えられるがこれまで事例は見当たらなかった 5
問題設定:Stochastic sequential decision problem Markov decision processと して定式化 逐次的なUI更新計画によっ て得られる累積割引報酬を
最大化する問題を解いてデ ザイン変更ポリシーを得る 6
状態はデザインとユーザ属性のペアで表現 UIデザイン … 熟練度・スキル・興味 などのユーザ属性 7
Menu Adaptation with Deep Model-based RL 8
Possible menu design adaptations • moving a menu item to
a certain position • swapping two items • adding or removing a separator • moving an entire group • swapping two groups • not making any changes • etc. 9
Monte-Carlo Tree Search ランダムサンプリングに基づくシミュレーションによって状態遷移を表現した木を構築 するアルゴリズム Adaptive UIのためにユーザの状態を考慮したデザインの変更フローを計画できる 10
Monte-Carlo Tree Search ランダムサンプリングに基づくシミュレーションによって状態遷移を表現した木を構築 するアルゴリズム Adaptive UIのためにユーザの状態を考慮したデザインの変更フローを計画できる 11
Monte-Carlo Tree Search 1. Selection Upper Confidence Tree値を基準として良い子ノード(変更適応後のUIデザイン・ ユーザの状態)を選択しつつ現在の最深ノードまで辿って行く 過去の累積報酬値と探索回数をもと
にした各ノードの良さを表す値 定数Cで知識活用(第1項)と探索 (第2項)のバランスを調節できる 12
Monte-Carlo Tree Search ランダムサンプリングに基づくシミュレーションによって状態遷移を表現した木を構築 するアルゴリズム Adaptive UIのためにユーザの状態を考慮したデザインの変更フローを計画できる 13
Monte-Carlo Tree Search 2. Expansion デザイン変更回数上限に達していない、かつ、まだそこ からシミューレションしていないUIデザイン・ユーザの状 態が残っている場合は新たに現行ノードの子ノードとし て追加する 
14
Monte-Carlo Tree Search ランダムサンプリングに基づくシミュレーションによって状態遷移を表現した木を構築 するアルゴリズム Adaptive UIのためにユーザの状態を考慮したデザインの変更フローを計画できる 15
Monte-Carlo Tree Search 3. Roll-out 追加した子ノードからさらにその子や孫ノード についてランダムサンプリングし続けるシミュ レーションを一定回数行う デザイン変更回数上限に達したらその状態のデ ザインの使い勝手についてHCIモデルを利用して
予測し報酬化する(もしくは効率化のために学 習済みNNを利用) 16
UIの使い勝手をHCIモデルで報酬化 ユーザのメニュー探索体験をHCIモデルでシミュレーションしその改善度を報酬とする 例えば、デザイン変更前後で目当ての項目を探し当てるまでの平均探索時間の減少度を ユーザの熟練度・興味などの推定値で重み付けしたもの Before After diff in average selection
time 17
メニュー探索モデルの種類 • Serial search ◦ 目的の項目を見つけるまで上から下へと連続的に探索する • Foraging search ◦
項目のグルーピングに従って関連するグループの中から目的のものを探索する • Recall search ◦ 記憶を頼りにメニューの中の予想される場所にあたりを付けてアイテムを探索する 例えば、ユーザが初心者であればSerial searchとForaging search、熟練者であれ ばForaging searchとRecall searchについ て探索時間を計算する、みたいな重み付け が考えられる 18
HCIモデルを模したニューラルネットモデルの活用 長期に渡る様々なデザイン変更に対しHCIモデルによるユーザのメニュー探索シ ミュレーションを行うのは現実的ではない ニューラルネットを予めこれまでのデータで学習しておき、MCTS Roll-out時の 報酬算出の効率化のために利用する 19
Monte-Carlo Tree Search ランダムサンプリングに基づくシミュレーションによって状態遷移を表現した木を構築 するアルゴリズム Adaptive UIのためにユーザの状態を考慮したデザインの変更フローを計画できる 20
Monte-Carlo Tree Search 4. Backpropagation シミューレション後に得られた報酬を親ノード(適応前のデ ザイン・ユーザ状態)に伝播していく 21
Menu Adaptation with Deep Model-based RL 22
Technical Evaluation 提案手法がそもそも使い物になるのか、ユーザ興 味に基づくMenu Adaptationについて実験 予測される平均選択時間の減少をもって成功とみ なす シミュレーションモデル別の成功率: • HCIモデル:
92.7% • NNモデル: 89.6% 提案手法が使い勝手の向上に役立つことを確認 23
Technical Evaluation MCTSの探索深度を変化させつつHCIモデル とニューラルネットでのシミューレションに かかる計算時間を比較 400回のシミューレションにおいて、木が深 くなるほど計算時間が伸びていくHCIモデル と比較してニューラルネットでの計算時間の 変化は微々たるもの 提案手法のスケーラビリティについて確認
24
Empirical Evaluation 各Adaptive UI手法によって更新されたデザインにおける、メニュー内の指定項 目の選択時間について被験者を集めて比較 比較手法 • STATIC ◦ デザインの変更は全くされない
• FREQUENCY ◦ 項目のクリック率に基づく手法 [Lee, 2004] • MCTS ◦ 提案手法 詳細な実験設定や評価方法については論文参照してください… 25
Empirical Evaluation 26
Conclusion • 強化学習を用いたAdaptive UIにおける逐次的意思決定問題のモデル化 • HCIモデルを用いたMCTSシミュレーション手法の提案およびそれを促進する ためのDNNの提案 27
Limitations and Future Work • シミュレーションに利用するモデルが正確であることが何より大事 • 大規模なアプリケーションデザインに展開するためには計算リソースが必要 になる ◦
今回例に挙げたメニューデザインの場合20項目までぐらいが手の届く範囲 ◦ GPU利用などシステムでの解決とか • 今回は価値ネットワークを用いて成功したが、AlphaGoのようにポリシー ネットワークも用いることでさらなる改善も期待できる 28