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
【論文紹介】Sketch-n-Sketch: Output-Directed Programm...
Search
Kaito Sugimoto
April 20, 2020
Research
130
0
Share
【論文紹介】Sketch-n-Sketch: Output-Directed Programming for SVG
演習 III 論文紹介
内容に問題や不備がある場合は、お手数ですが hellorusk1998 [at] gmail.com までご連絡お願いいたします。
Kaito Sugimoto
April 20, 2020
More Decks by Kaito Sugimoto
See All by Kaito Sugimoto
ChatGPTを活用した病院検索体験の改善 〜病院探しをもっと楽しく〜
hellorusk
0
160
【論文紹介】Word Acquisition in Neural Language Models
hellorusk
0
350
【論文紹介】Toward Interpretable Semantic Textual Similarity via Optimal Transport-based Contrastive Sentence Learning
hellorusk
0
300
【論文紹介】Unified Interpretation of Softmax Cross-Entropy and Negative Sampling: With Case Study for Knowledge Graph Embedding
hellorusk
0
570
【論文紹介】Modeling Mathematical Notation Semantics in Academic Papers
hellorusk
0
350
【論文紹介】Detecting Causal Language Use in Science Findings / Measuring Correlation-to-Causation Exaggeration in Press Releases
hellorusk
0
190
【論文紹介】Efficient Domain Adaptation of Language Models via Adaptive Tokenization
hellorusk
0
510
【論文紹介】SimCSE: Simple Contrastive Learning of Sentence Embeddings
hellorusk
0
1.1k
【論文紹介】Automated Concatenation of Embeddings for Structured Prediction
hellorusk
0
320
Other Decks in Research
See All in Research
ウェブ・ソーシャルメディア論文読み会 第36回: The Stepwise Deception: Simulating the Evolution from True News to Fake News with LLM Agents (EMNLP, 2025)
hkefka385
0
220
台湾モデルに学ぶ詐欺広告対策:市民参加の必要性
dd2030
0
310
【SIGGRAPH Asia 2025】Lo-Fi Photograph with Lo-Fi Communication
toremolo72
0
160
typst の使い方:言語学を研究する学生のために
gitomochang
0
400
オーストリア流 都市の公共交通サービス水準評価@公共交通オープンデータ最前線2026
trafficbrain
0
150
LLM の Attention 機構まとめ — 数式・計算量・メモリ
puwaer
7
1.7k
老舗ものづくり企業でリサーチが変革を起こすまで - 三菱重工DXの実践
skydats
0
140
2026 東京科学大 情報通信系 研究室紹介 (すずかけ台)
icttitech
0
3.1k
2026年1月の生成AI領域の重要リリース&トピック解説
kajikent
0
980
An Open and Reproducible Deep Research Agent for Long-Form Question Answering
ikuyamada
0
440
Φ-Sat-2のAutoEncoderによる情報圧縮系論文
satai
4
560
20年前に50代だった人たちの今
hysmrk
0
190
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
What's in a price? How to price your products and services
michaelherold
247
13k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
450
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
220
Ruling the World: When Life Gets Gamed
codingconduct
0
220
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.5k
AI: The stuff that nobody shows you
jnunemaker
PRO
6
630
Thoughts on Productivity
jonyablonski
76
5.1k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
350
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
340
Optimising Largest Contentful Paint
csswizardry
37
3.7k
Transcript
Sketch-n-Sketch: Output-Directed Programming for SVG 演習 III 論文紹介 杉本 海人
2020/04/20 1 / 23
1 概要 2 背景‧先行研究 3 この研究のポイント 4 議論 2 /
23
1 概要 2 背景‧先行研究 3 この研究のポイント 4 議論 3 /
23
概要 ベクター画像1を生成するプログラムを書くためのシステム Sketch-n-Sketch に, 新しい技術を取り入れた. 1点や直線などの幾何学的な図形で構成される画像 4 / 23
デモ https://www.youtube.com/watch?v=ilwdnnAT2F0 5 / 23
1 概要 2 背景‧先行研究 3 この研究のポイント 4 議論 6 /
23
背景 GUI: 人の目で分かりやすい ↕ CUI: 柔軟性が高い プログラマは GUI アプリケーションを使わずテキストベースでプロ グラムを書くことが多い.
GUI のメリットも取り入れてプログラミングができれば, より便利で 魅力的になるのではないか. 7 / 23
背景 Output-Directed Programming (ODP) プログラムの出力結果自体をマウスなどで操作することで, プログラ ムを組み立てる手法 • 初心者にとって分かりやすいものに. •
経験者にとっても, プログラミングでより多くのことができるよ うに. ODP 自体は, 今回の論文に限らず, 数多くの先行研究がある. 8 / 23
先行研究 Kevin Kwok and Guillermo Webster. 2016. Carbide Alpha https://alpha.trycarbide.com/
9 / 23
先行研究 Ravi Chugh, Brian Hempel, Mitchell Spradlin, and Jacob Albers.
2016. Programmatic and Direct Manipulation, Together at Last. (Sketch-n-Sketch の初期バージョン) 10 / 23
1 概要 2 背景‧先行研究 3 この研究のポイント 4 議論 11 /
23
この研究のポイント Sketch-n-Sketch に, 以下のシステムを新たに取り入れた. 1. 中間的な値の表示 2. フォーカス 3. リファクタリング
4. Provenance Tracing 12 / 23
中間的な値の表示 出力に直接関係しない部分(点やオフセット)であっても, 表示して 操作できるようにすると利便性が高まる 13 / 23
フォーカス プログラムの特定の部分の修正に役立つ 14 / 23
フォーカス プログラムの特定の部分の修正に役立つ 15 / 23
リファクタリング • 関数名の変更 • 関数のパラメータの順序の変更 • 関数のパラメータの削除 などを, 後からできる 16
/ 23
Provenance Tracing プログラムの各部分がどこから来たかを記録し, 出力がソースコードのどの部分に相当するのかを常に対応づける 先ほど述べた「関数のパラメータの順序の変更」のような複雑なリ ファクタリングを ODP で実現する上で必要. 17 /
23
どんなメリットが...? 1. 中間的な値の表示 2. フォーカス 3. リファクタリング 4. Provenance Tracing
いずれも, ベクター画像の表現能力を高めるという目的だけにとどま らず, 今後 ODP をあらゆる種のプログラミングに適用していく上でも 重要. 18 / 23
実例 出力側の操作だけで, 以下の画像を作成できた. 19 / 23
1 概要 2 背景‧先行研究 3 この研究のポイント 4 議論 20 /
23
画像作成の面での課題 Watch What I Do: Programming by Demonstration という本に挙げられ た
15 の画像生成タスクのうち, 出力側の操作のみで完了できたのは 4 つ, 入力側(エディタ)の助けも借りて完了できたのは 2 つだった. 残りの 9 つを完了させるのに足りない機能 • テキストボックス • リスト操作 • 線の交点の操作 etc... 21 / 23
Widget Visibility ボタンやパネルが多い! → GUI の利便性が損なわれる どの Widget を出すかなど, 画面の表示もシステムでコントロールでき
るようになると便利. 22 / 23
ODP for Novices 初学者でも, 初歩的なプログラムをすぐに習得できるようなシステム にするにはどうすればいいのか. 23 / 23