Slide 1

Slide 1 text

ChatGPTにSVGでお絵描きさせる

Slide 2

Slide 2 text

ChatGPTでもテキストベースの SVGフォーマットであれば お絵描きできるのでは… 🤔 (ModelはGPT- 4 を使います)

Slide 3

Slide 3 text

SVGのコードをあなたに書いてもらいます。 
 まずは正⽅形のSVGコードを書いてみてください。 以下のコードは、SVGフォーマットで正⽅形を描画 するものです。 このコードでは、正⽅形の⼤きさを100x 1 0 0 ピクセ ルに設定し、⾊を⻘(blue)に設定しています。必 要に応じて、⼤きさや⾊を変更してください。

Slide 4

Slide 4 text

流⽯ですね。少し難しくします。 ⻩⾊の星型の形状をSVGコードで描いてください。 以下のコードは、SVGフォーマットで⻩⾊の星型を 描画するものです。 
 このコードでは、星の5つの頂点を指定して描画し ています。星のサイズや位置、⾊を変更する場合 は、`points`属性や`fill`属性を調整してくださ い。

Slide 5

Slide 5 text

いいですね。次は少しクリエイティブです。 ひよこの形をSVGで描いてください。 ひよこの形を描画するには、SVGのパス要素を使⽤して、ひよこ の形状に従った複雑な曲線を描くことができます。以下のコード は、ひよこの形を描画するSVGです。 
 このコードでは、ひよこの体形として`path`要素を使⽤し、⽬と して`circle`要素を2つ使⽤しています。必要に応じて、パスデー タや円の位置を調整して、ひよこの形状や⼤きさを変更できま す。また、`fill`属性を変更して、ひよこの⾊を調整できます。 うまれたピヨ🐣

Slide 6

Slide 6 text

⻩⾊い⽣き物には⾒えますが、少しひよこらしくありません。 クチバシがないからだと思うのでクチバシを追加してみてください。 クチバシを追加することで、ひよこらしい形になる と思います。以下のコードは、ひよこの形とクチバ シを含むSVGです。 
 このコードでは、`path`要素を追加してクチバシを 描画しています。必要に応じて、パスデータや⾊を 調整して、クチバシの形状や⾊を変更できます。 ぶきみにほほえんでいるピヨ🐣

Slide 7

Slide 7 text

まだなにか⾜りませんね。⾜が⾜りないのではないでしょうか? おっしゃる通りです。⾜が⾜りないため、ひよこらしさが不 ⾜していました。⾜を追加したSVGコードは以下の通りで す。 
 このコードでは、⾜を表す`path`要素を追加しています。必 要に応じて、パスデータや⾊を調整して、⾜の形状や⾊を変 更できます。これで、ひよこらしい形になったと思います。 しんかのほほうを つかったピヨ🐣

Slide 8

Slide 8 text

少しずつひよこに近づいてきましたが、まだひよこには⾒えません。 何がいけないのか考えて⼯夫して書き直してみてください ひよこの形をよりリアルに描画するために、パスデータを調 整してみました。以下のSVGコードでは、ひよこの頭部と体 部の形状をよりひよこらしい形にしています。 
 このコードでは、ひよこの形状がよりリアルになっていると 思います。もちろん、SVGでは⼿描きのイラストのような表 現は難しいですが、このコードは、ひよこの形状をよりよく 表現できていると思います。 ⾃称リアルなひよこだピヨ🐣

Slide 9

Slide 9 text

ありがとう。もう少し頑張ればよいかんじになりそう。 ⼩⽻根を⾜してみましょう。 ⼩⽻根を⾜して、よりひよこらしい表現を試みてみました。 以下のSVGコードでは、⼩⽻根を追加し、ひよこの形状が 
 よりリアルになっています。 
 このコードでは、ひよこの両側に⼩⽻根を表す`path`要素 を追加しています。必要に応じて、パスデータや⾊を調整し て、さらにリアルな表現を試みてみてください。この変更に より、ひよこらしいイメージがより強くなったと思います。 パワーーーーー💪ピヨ🐣

Slide 10

Slide 10 text

惜しい!何が⾜りないかわかりました。 くちばしは菱形にすれば完成するはずです! くちばしを菱形に変更して、ひよこの表現を完成させてみま した。以下のSVGコードでは、くちばしの形状が菱形になっ ています。 
 このコードでは、くちばしの形状を表す`path`要素を変更 して、菱形にしています。これで、ひよこらしいイメージが 完成したと思います。必要に応じて、他の要素の調整も⾏っ て、さらにリアルな表現を試みてみてください。 菱形って何ピヨ🐣 ׬

Slide 11

Slide 11 text

これでひよこは完成したと思います。SVGにはアニメーション機能が あるので、描いたひよこを歩かせてみてください。 SVGにはSMILアニメーションを使⽤してアニメーションを追加する ことができます。以下のSVGコードでは、描いたひよこが歩くように アニメーションしています。

Slide 12

Slide 12 text

GPT- 3 . 5 ではどうなるか?

Slide 13

Slide 13 text

GPT- 3 . 5 に同様の質問をした結果 記号的、無機質、左右対称、⾯⽩くない…

Slide 14

Slide 14 text

真⾯⽬に考察してみる

Slide 15

Slide 15 text

考察その1 • GPT は Midjourney や Stable Di ff usion のように絵を描くことを訓練したAI ではない • わたしたち⼈間も絵を描く訓練をしていなければGPTと同等レベルの絵しか 描けない • つまり、絵を描く訓練をせずに「ひよこ」というものの⼀般的な知識だけで 描いた場合にはこうなる、という結果が得られた気がする

Slide 16

Slide 16 text

もう1つ気になることを確認するため クチバシを菱形にすることをリトライ

Slide 17

Slide 17 text

菱形とは4本の辺の⻑さが全て等しい四⾓形です。クチバシのような菱形は上‧下‧左‧右 に頂点があり、上、左、下、右の順番でつながります。それをふまえてクチバシの部分を 修正してみてください。 ご指摘ありがとうございます。菱形の形状に関する説明を理 解しました。以下のSVGコードでは、ひよこのクチバシを正 しい菱形に修正しています。このコードでは、`` 要素を使って正しい菱形を表現しています。`points`属性に は、頂点の座標が上、左、下、右の順に指定されています。 これにより、ひよこのクチバシが正しい菱形になるはずで す。 菱形になった!

Slide 18

Slide 18 text

考察その2 • GPTは上、左、下、右の位置関係を空間的に理解した上で菱形を描いた? • そもそも「ひよこ」を描かせたとき、⽬、クチバシ、⾜、⼩⽻根、それぞれ 正しい位置で描かれていたことに驚いた • GPTはテキストで表現された知識を元にトレーニングされているが、これによ り⼀般的なものを構成する部品の位置関係のようなものは理解している?

Slide 19

Slide 19 text

あなたは⽬‧クチバシ‧⽻‧⾜の位置を正確に把握していたように思います。 GPTはなぜそのような空間の位置関係を理解できているのでしょうか? GPT(Generative Pre-trained Transformer)は、⼤量のテキストデータを学習すること で、⽂脈を理解し、ある程度の知識を持つことができます。これにより、質問に対して適切 な回答や、要求された情報に応じてテキストやコードを⽣成することが可能になります。 
 GPTがひよこの⽬、クチバシ、⽻、⾜の位置関係を理解できる理由は、学習データに含まれ る多くの情報や例から、物体の⼀般的な構造や特徴を抽出し学習することができるためで す。例えば、ひよこについての記述やイラスト、コードなどが含まれている⽂書が学習デー タに含まれていると、GPTはそれらからひよこの形状や特徴に関する知識を得ることができ ます。 
 ただし、GPTはあくまでテキストベースのモデルであり、画像や3D空間を直接扱う能⼒は ありません。しかし、SVGのようなテキストベースのグラフィックス⾔語については、学習 データから得た知識を⽤いて、適切な形状や配置を⽣成することができます。この場合、 GPTが空間の位置関係を理解できるのは、学習データから得たテキストやコード上の表現と 関連性を理解する能⼒に基づいています。

Slide 20

Slide 20 text

画⼒についてはStable DiffusionやMidjourneyのような画像⽣成AIの⽅が圧倒 的ですが、空間理解⼒についてはGPTの⽅が優っているように思います。 GPTはテキスト情報を基にして知識を学習し、ある程度の空間理解や形状⽣成を⾏ うことができますが、実際の画像⽣成能⼒は、Stable DiffusionやMidjourneyのよ うな画像⽣成AIには劣ります。 
 画像⽣成AIは、画像データを直接学習することで、リアルな画像やアートワークを ⽣成することができます。これらのモデルは、視覚的な情報を捉えることに特化し ており、画⼒やリアリズムに関しては優れています。 
 ⼀⽅、GPTはテキスト情報を基に学習し、概念的な理解や⾔語表現を⽣成すること に優れています。これにより、要求された情報や指⽰に応じてSVGコードなどを⽣ 成することができますが、リアルな画像⽣成には限定的な能⼒しか持っていませ ん。 
 それぞれのAIモデルは、異なるタスクや⽬的に対して強みと弱みがあります。適切 なモデルをタスクに応じて選択することが、効果的な結果を得るための鍵です。

Slide 21

Slide 21 text

あなたの描いたひよこは⼈間が⾒ると、稚拙な印象を受けると思います。しかし、絵を描くことを訓 練していないほとんどの⼈が同じようにひよこを描いた場合、あなたが描いたひよこと同等レベルの ものしかできないと思います。これは、絵を描くというスキルが未熟だからです。 その通りです。GPTはテキスト情報を元に学習するので、ひよこの⼀般的な特 徴や概念を理解し、それを表現するSVGコードを⽣成することができますが、 リアルなイラストを描くスキルには限定的です。 
 絵を描くというスキルは、視覚的な表現やアーティスティックな技術を習得す ることが必要であり、これはGPTのようなテキストベースのAIには⼗分には達 成できません。⼈間の場合も、絵を描くスキルを習得するためには、練習や 経験が必要です。 
 GPTはあくまで学習データから得た知識を基に、あなたが求める形状や要素を SVGコードで表現することができますが、リアリズムや美術的な技術をもって 描画されたイラストとは程遠い結果となります。そのため、よりリアルで⾼度 な画像⽣成能⼒が求められる場合は、画像⽣成AIを利⽤することが適切です。

Slide 22

Slide 22 text

もっと真⾯⽬に考察した例

Slide 23

Slide 23 text

Microsoft Researchによる汎⽤⼈⼯知能に関する論⽂ • Sparks of Arti fi cial General Intelligence: Early experiments with GPT- 4 
 https://arxiv.org/pdf/ 2 3 0 3 . 1 2 7 1 2 .pdf • “GPT- 4 が汎⽤⼈⼯知能の初期バージョンである”という主張(賛否両論あり) • 汎⽤⼈⼯知能(略称:AGI)とは、⼈間が実現可能なあらゆる知的作業を理解‧ 学習‧実⾏することができる⼈⼯知能 • GPT- 4 にY‧O‧Hの3つのアルファベットで⼈間を描かせる、など多数の実験

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

https://note.com/temoki/m/ma 8 f 3 7 6 8 bab 1 4 クリック!