11_1:ml5.js SketchRNN ml5.js JavaScript

SketchRNNは、Googleの「Quick Draw!」プロジェクトから集められた手描きのイラストを学習させたRNNモデルで、それのml5.jsバージョンが「ml5-library/src/SketchRNN」で公開されています。

Quick Draw!」ページでは、ユーザーがお題に指定された絵を描き、それが何かをAIが言い当てようとします。世界中のユーザーが参加して絵を描くので、AIの進化に必要な膨大なサンプルが集まっています。

RNN」はRecurrent Neural Networkの略で、日本語では「再帰型ニューラルネットワーク」と訳されます。RNNはごく簡単に言うと、時間の経過を経て得られたデータ(時系列データ)から、未来のデータの予測に使用される手法です。たとえば、最近10年間の月別降水量のデータを使った来年の月別降水量の予測に利用できます。

特徴は「ある時点のデータが、それ以降に発生するデータに何らかの影響を及ぼしている」という考え方を予測に生かせることです。つまり「ある時点でこうだったのだから、その後のある時点ではこうなっているはずだ」という予測です。

これを絵の描画に関係付けたのが「A Neural Representation of Sketch Drawings」というアイデアです。詳細は日本語で「絵を「描く」プロセスの模倣 – A Neural Representation of Sketch Drawings」ページで読むことができます。

実際の理論は難解ですが(「A Neural Representation of Sketch Drawings」)、ml5.jsのSketchRNNを利用すると、その一端を容易に体験することができます。「A Neural Representation of Sketch Drawings」の論文については「A Neural Representation of Sketch Drawingsのまとめ」が参考になります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA