Генерирование случайных изображений
Создайте изображения, случайно отбирая сети, которые сопоставляют пиксельные позиции (x, y) со значениям цветов (r, g, b).
Создайте сеть из цепочки слоёв, которая переводится из пиксельных координат в высокоразмерное пространство признаков, а затем и в цветовое пространство RGB.
In[1]:=
![Click for copyable input](assets.ru/generate-random-images/In_86.png)
net = NetChain[{30, Tanh, 3, Tanh, 3, LogisticSigmoid}, "Input" -> 2]
Out[1]=
![](assets.ru/generate-random-images/O_72.png)
Составьте таблицу случайно запущенных копий основной сети.
In[2]:=
![Click for copyable input](assets.ru/generate-random-images/In_87.png)
nets = Table[
NetInitialize[net,
Method -> {"Random", "Weights" -> 3, "Biases" -> 2}], 25];
Используйте запущенные сети для создания изображений путём их применения к плотным массивам пиксельных координат.
In[3]:=
![Click for copyable input](assets.ru/generate-random-images/In_88.png)
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]=
![](assets.ru/generate-random-images/O_73.png)