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
論文読み会 / GUIGAN: Learning to Generate GUI Design...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
chck
January 18, 2022
Research
68
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
論文読み会 / GUIGAN: Learning to Generate GUI Designs Using Generative Adversarial Networks
社内論文読み会、PaperFridayでの発表資料です
chck
January 18, 2022
More Decks by chck
See All by chck
Research Engineerという仕事 / Research Engineering: Bridging Research and Business
chck
1
230
CyberAgent AI Lab研修 / Social Implementation Anti-Patterns in AI Lab
chck
7
4.7k
CyberAgent AI Lab研修 / Container for Research
chck
1
2.4k
CyberAgent AI Lab研修 / Code Review in a Team
chck
3
2.4k
論文読み会 / Socio-Technical Anti-Patterns in Building ML-Enabled Software: Insights from Leaders on the Forefront
chck
0
140
CyberAgent AI事業本部MLOps研修Container編 / Container for MLOps
chck
3
6k
論文読み会 / GLAZE: Protecting Artists from Style Mimicry by Text-to-Image Models
chck
0
94
論文読み会 / On the Factory Floor: ML Engineering for Industrial-Scale Ads Recommendation Models
chck
0
72
機械学習開発のためのコンテナ入門 / Container for ML
chck
0
990
Other Decks in Research
See All in Research
JICA QUEST 共創×革新プログラム Impact Report(海ノ向こうコーヒー)
ontheslope
0
190
シングルチャネルマルチトーカー音声認識の進展
ryomasumura
0
190
The Landscape of Agentic Reinforcement Learning for LLMs: A Survey
shunk031
4
1.1k
セマンティック通信勉強会 6Gに向けたデバイス間効率的な通信の技術紹介・課題・今後展望
satai
3
220
Cross-Media Information Spaces and Architectures
signer
PRO
0
310
LLM Compute Infrastructure Overview
karakurist
2
1.5k
重要だけど測れていないもの:高齢者ケアの見えない課題
theoriatec2024
0
410
計算情報学研究室(数理情報学第7研究室)2026
tomohirokoana
0
630
Language and AI
ayaniwa
0
170
進学校の生徒にはア行の苗字が多いのか
ozekinote
0
470
kintone リサーチ副部/UXリサーチャー 業務紹介
cybozuinsideout
PRO
0
110
量子コンピュータの紹介
oqtopus
0
360
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
650
Navigating Team Friction
lara
192
16k
Are puppies a ranking factor?
jonoalderson
1
3.7k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
63
55k
Leo the Paperboy
mayatellez
8
1.9k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
760
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
220
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.7k
Transcript
GUIGAN: Learning to Generate GUI Designs Using Generative Adversarial Networks
22/01/18 PaperFriday, Yuki Iwazaki@AI Lab
2 Point: スマホアプリのGUIを生成するタスクで、 Pixelではなくボタンなどの要素から逐次的に生成 定量・定性評価で従来手法を圧倒 arXiv, 2021 Authors: Tianming Zhao,
Chunyang Chen, Yuanning Liu, Xiaodong Zhu 選定理由: - Landing Pageの生成に使えそうなので
Introduction 3
優れたGUIはProductの成功に直結する 4 Rico dataset [Deka, 17]
GUIのデザインは大変 • Fluent interactivity • Universal usability • Clear readability
• Aesthetic appearance • Consistent styles 😥 UI/UX designers shortage in the market 😥 51% of 5700 developers reported, GUI design > dev task 😥 They almost aren’t familiar with UI/UX design 5 https://material.io/
GUIデザインを自動生成する GUIGANを提案 6
Preliminary 8
RICO Dataset [Deka, 17] 9 https://interactionmining.org/rico
GUI Subtree 10
GAN [Goodfellow, 14] • 識別モデル(D)を用いて学習データと見分けがつかないような データを生成するモデル(G)を獲得する仕組み ◦ Gは一様分布等からサンプルされた乱数zを入力とし出力x’を生成 ◦ Dは入力データが学習データか生成データ(x’)かを分類
◦ 自然画像の生成などで大きく成功 ◦ 生成した値を用いて学習が進むので文章等の離散値の生成は苦手 11 [Karras, 18]
SeqGAN [Yu, 17] 12 GANを文章などの系列データに拡張 GeneratorにRNNと強化学習を適用 D…文章全体が本物か偽物か識別(GANと同じ) G…state(生成途中の文章 )から action(次の単語)を出力する
policyと仮定 生成途中の評価はMC探索で生成完了させた文を Dに入力し本物と判断する確率 (自然な文章度合い)をGの報酬とし, 報酬が最大化するような (≒Dに実データと誤認してもらえるような )GのActionを学習 -> Gにシミュレーションで文章をいくつか作らせた結果の Dの期待報酬を Gに与えて学習 Discriminatorの学習 Generatorの学習
Approach 15
GUIGAN 16 state action SeqGAN 生成途中の文章 次の単語 GUIGAN 生成途中のGUI 次のGUIパーツ
A. Style Embedding of Subtree ペアで入力されたGUIのパーツ画像が同じ App(Class)出身なら 出力される特徴空間上で近づけ、違う Appなら遠ざけるように学習 ->
GUIパーツ(Subtree)のStyle Embeddingを得る 17
B. Modeling Subtree Compatibility GUIパーツのスタイル互換性 (compatibility)のモデル化 Generatorで生成されたGUIは, 各パーツ (Subtree)の参照元 AppがIDから割り出せる
参照元が同じ Appのパーツで構成される GUIほど評価されるように 学習 18 App GのEntropy App Cを条件としたときの GのEntropy 生成された GUIを 構成するパーツが 単一のAppだけである割合 cはAppの総数 同じAppのパーツが含まれるように lossを最小化 生成物のパーツが全て同じ App産の時loss_c=0
C. Modeling Subtree Structure GUIパーツの構造情報(structure)のモデル化 Generatorで生成されたGUIは, 各パーツ (Subtree)の種類もIDから割り出せる ここでいうパーツの種類とは ,
ListViewやFrame, Menu barなどのComponentカテゴリ 生成された GUIと実GUIのパーツの種類の順番が近い (≒編集距離が小さい )ほど 良い構造 となるように学習 19
Model Summary 20 Dを欺く程の生成 スタイルの互換性 GUIの構造整合性
Experiments 23
Dataset Rico Datasetのうちデータ数 の多い5カテゴリを抽出 -> カテゴリの特徴を捉えた GUIを生成できるか 更にアプリ数の多い3社も Datasetとして抽出 ->
特定企業らしいGUIを 生成できるか 24
Metrics Frechet Inception Distance (FID): 生成画像の品質と多様性の評価に使われる 生成されたGUIと本物のGUIを画像Encoder(InceptionV3)に食わせて出 力Vectorの分布間の距離を測る -> 本物と分布が近い程,
生成したGUIの品質が高いといえるので FIDは低い程良い 1-Nearest Neighbor Accuracy: 生成されたGUIか, 本物のGUIかの分類精度 -> 生成モデルの性能が良い程間違えるはずなのでAccは低いほど良い 25
Baselines • WGAN-GP [Gulrajani, 17] ◦ 勾配消失問題と収束速度を改善した生成モデル • FaceOff [Zheng,
19] ◦ DOM TreeベースのWebサイト探索モデル • GUIGAN-style ◦ style lossだけで学習させた提案手法 • GUIGAN-structure ◦ structure lossだけで学習させた提案手法 26
Evaluation Results 27
28 https://github.com/GUIDesignResearch/GUIGAN#examples-of-pre-built-components
Evaluation Results 29
30
31
Human Evaluation Android App開発経験のある CS専攻のMaster 5名 Rico 5大カテゴリのGUIを FaceOff, GUIGAN各10サンプルず
つ生成した結果に右の評価 以下3項目について 5段階評価 - Aesthetics - Color harmony - Structure 以下1項目は(0 or 1) - Functionality 32
Evaluation Results 33 • 5段階評価の3指標において どのカテゴリでも提案手法が 既存の3割増で良い評価に • 検定でも提案手法が有意に (*と**)
• Functionalityもavg. 0.812で既存 (0.452)の8割増 • “Travel > Books, Shopping”の結果 は、Travelの方が機能的なGUIを持つた め
34
Conclusion 35
Conclusion • GANによるGUIデザイン生成手法を提案 ◦ Style, Structure両方を加味した生成が可能に • 今後の課題 ◦ GUIにおけるルールの条件付与
▪ menu barは上にあるべきなど ◦ 人間によるEditableなInterfaceと組み合わせる ▪ GUI開発の半自動化, Human-in-the-loop 36
Comment • パーツの切り出しが一番大変そう • 生成されたGUIがUserにそのまま採用されるわけじゃ ないのでオンライン評価が難しそう • Editableではないので出力制御が難しそう ◦ StyleとStructureのバランス調整もできなそう
37