ランダムな画像を生成する
(x, y)の画素の位置を(r, g, b)のカラー値にマップするネットワークを無作為抽出することによって,画像を生成する.
画素座標からより高次元の特徴空間にマップした後RGBカラー空間にマップする一連の層からネットワークを作成する.
In[1]:=
net = NetChain[{30, Tanh, 3, Tanh, 3, LogisticSigmoid}, "Input" -> 2]
Out[1]=
ベースネットワークの無作為に初期化されたコピーの表を作成する.
In[2]:=
nets = Table[
NetInitialize[net,
Method -> {"Random", "Weights" -> 3, "Biases" -> 2}], 25];
初期化されたネットワークを使って,画像を画素座標の密な配列に適用することにより,画像を生成する.
In[3]:=
row = Range[-2, 2, 0.04];
coords = Tuples[row, 2];
plot[net_] := Image[Partition[net[coords], Length[row]]];
Multicolumn@Table[plot[net], {net, nets}]
Out[3]=