ANN - image generation?

Fd80f81596aa1cf809ceb1c2077e190b
0
rouncer 104 Jan 10, 2013 at 17:18

Say ive got a basic nueral network thats id’ing images.

what if i twinned up 2 nn’s, one going forwards input to output, and another going backwards, output to input.

every time i train forwards (using back propagation) i train on the reverse nn. (with bp also)

going from picture to id, then going from id to picture.

would that mean i could now give it an id, and ill get a picture generated at the input?

or give it a picture, get to the id, then come back from the id?

8 Replies

Please log in or register to post a reply.

6eaf0e08fe36b2c23ca096562dd7a8b7
0
__________Smile_ 101 Jan 10, 2013 at 17:57

You get something like average image that corresponds to that id. It’s one of the methods of lossy compression.

Similar method used as training method through unsupervised learning: they train neural network to have output the same as input and use its intermediate level (with lower number of neurons) as a result.

Fd80f81596aa1cf809ceb1c2077e190b
0
rouncer 104 Jan 10, 2013 at 18:42

ah yes! so the intermediate level is the “label” i see… anyone else have any info?

A8433b04cb41dd57113740b779f61acb
0
Reedbeta 167 Jan 10, 2013 at 19:28

There was this story from awhile back where Google created some kind of unsupervised neural network thing, turned it loose on YouTube, and found that it trained itself to recognize cats (among other things). The picture in that article is generated from the neural network in a similar manner to what you were describing. As Smile said, it’s kind of an “average cat face”. :lol:

Fd80f81596aa1cf809ceb1c2077e190b
0
rouncer 104 Jan 10, 2013 at 20:25

I was thinking… what if you had a pyramid of cell layers, (multi layer) would the levels before the end nodes be more specific constraints than the output layer?

Like, you dont go all the way to the end, you only go so far before you use the reverse nn to make a picture, and you get a more specific output?
(like say, i want a neat “2” not just any old messy general “2”)

and another question - how could one possibly generate full motion video?

6837d514b487de395be51432d9cdd078
0
TheNut 179 Jan 10, 2013 at 21:54

@rouncer

what if you had a pyramid of cell layers, (multi layer) would the levels before the end nodes be more specific constraints than the output layer?

Generally an ANN converges on its output to closer you get to the end nodes, but imposing such organized neurons can affect ANN, perhaps even for the worse. Ken Stanley’s work on evolutionary neural networks IMO is a much better approach because it removes one more layer of human involvement. Let the computer decide how to rearrange its neurons to better itself. If your goal is to produce sharper, more specific images, then continue the training process until it reaches a low error variance or set your fitness function such that it is catered for a specific subject. If you want more generalized outputs, then allow for a larger error variance or relax the conditions you impose in your training. With an evolved network, you can supply multiple subjects and the neurons will be better arrange to accommodate them, whereas a fixed structure will have to find commonalities between the subjects and balance the weights accordingly for each neuron.
@rouncer

and another question - how could one possibly generate full motion video?

With a camcorder :D

Fd80f81596aa1cf809ceb1c2077e190b
0
rouncer 104 Jan 10, 2013 at 22:38

motion video is a hard one hmm… but its got to be possible (maybe not by me :P), another interesting idea is a “volume eye”, makes voxel models.

Fd80f81596aa1cf809ceb1c2077e190b
0
rouncer 104 Jan 11, 2013 at 08:05

oh no its all hyped up so bad, i cant get it out of my head…

B5262118b588a5a420230bfbef4a2cdf
0
Stainless 151 Jan 11, 2013 at 09:56

There was an app some time ago that drew the mona lisa using a neural net.

Interesting code, but not of any real use.

I’ve been thinking about using a genetic algo to produce procedural textures for a long time, the trouble is that producing graphics for games ended up needing a DNA string that was bigger than the graphics it generated.