korymath / visual-illusions

Can we teach a machine to classify visual illusions and generate new ones?
MIT License
2 stars 1 forks source link

Generative Model Ideas #1

Open korymath opened 6 years ago

korymath commented 6 years ago
kylemath commented 6 years ago

I think generating is much more interesting than classifying,

korymath commented 6 years ago

Probably want to be able to generate from a given category.

From Goodfellow: https://www.quora.com/Can-Generative-Adversarial-networks-use-multi-class-labels

"Class-conditional models: you make the label the input, rather than the output. You can then ask the GAN to generate an example from a specific class. For example, you ask for the horse class, and it draws you a picture of a horse. Mehdi Mirza and Simon Osindero were the first to make this kind of model: [1411.1784] Conditional Generative Adversarial Nets"

That said, I agree, generation is very interesting, though harder to evaluate.

Here is a start https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/gan inside of the TF codebase.

kylemath commented 6 years ago

Evaluation is easy, you just show them to people, on twitter, turk, my lab, whatever, so if you want multile stages of learning, then you could use some sort of genetic algo, generate 100, pick the 10 coolest, generate 100, pick the 10 coolest, etc.

korymath commented 6 years ago

Yes, evaluation is easy with humans in the loop.

I meant to say automated optimization is hard without a decent, rapidly calculable target.

aka. can you write the function coolness = calculate_coolness(image)

On 24 March 2018 at 17:48, Kyle Mathewson notifications@github.com wrote:

Evaluation is easy, you just show them to people, on twitter, turk, my lab, whatever, so if you want multile stages of learning, then you could use some sort of genetic algo, generate 100, pick the 10 coolest, generate 100, pick the 10 coolest, etc.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/korymath/visual-illusions/issues/1#issuecomment-375927369, or mute the thread https://github.com/notifications/unsubscribe-auth/AAK3s_U1y40no0FO_VlQzy3Q7apSact5ks5thr9LgaJpZM4S55zq .

--


Kory Mathewson

kylemath commented 6 years ago

On Sat, Mar 24, 2018 at 4:10 PM, Kory Mathewson korymath@gmail.com wrote: You are missing a fundamental piece that categorization is INHERENT in generation.

In your examples you are categorizing twice (artist, medium).

If you cannot categorize, then you can not generate.

On 24 March 2018 at 17:53, Kyle Elliott Mathewson kmathews@ualberta.ca wrote: We want to create a Akiyoshi_Kitaoka generating network, and give it him as a present (have him as an author on the paper), I am not explaining myself maybe, Artists want to generate art, scientists ideas, etc. creativitiy categorization and creativity are almost opposites,

I want to create a Nomi Stricker art bot (abstract art) and a Rodin art bot (statues) and a con boland bot (photographs) etc.

The way to sell EVERYONE on AI is by selling them a better version of themselves

Joel Reboh is so full of himself, he wants an AI that he teaches that can be deployed to trade stocks for him, in parallel,

Poetry bot Music bot, etc.

Don't judge right or wrong, judge asthetic qualities, we can hold art shows, with the artist presenting along with their bot

lets change the world,,,

On Sat, Mar 24, 2018 at 3:47 PM, Kory Mathewson korymath@gmail.com wrote: Exactly ... maybe they are the same... I can do you one better...

Here are 6436 well labelled https://drive.google.com/drive/u/0/folders/1R2626myKPLIcHksYDuKRTbROE77VGaj5 in moillusions... they are well labelled too, that is:

{ "url": "https://www.moillusions.com/4-dots-illusion/", "img_src": "https://www.moillusions.com/wp-content/uploads/2018/01/4-dots-illusion-1-580x342.jpg", "alt_text": "dots illusion", "categories": ["Disappearing Effect"] } Not sure about all the categories, but I presume they are the cateogies listed here: https://www.moillusions.com/

So we can filter by cateogory to some that are self similar.

What is the justification here... why do we want to generate new ones?

On 24 March 2018 at 17:42, Kyle Elliott Mathewson kmathews@ualberta.ca wrote: can you scrape all these pages too: http://www.psy.ritsumei.ac.jp/~akitaoka/saishin59e.html 59 pages of illusions this guy is a machine

maybe they are the same pics

On Sat, Mar 24, 2018 at 3:40 PM, Kyle Elliott Mathewson kmathews@ualberta.ca wrote: incredible now that is alot of illusions https://en.wikipedia.org/wiki/Akiyoshi_Kitaoka

On Sat, Mar 24, 2018 at 3:02 PM, Kory Mathewson korymath@gmail.com wrote: https://drive.google.com/drive/u/0/folders/1R2626myKPLIcHksYDuKRTbROE77VGaj5

https://github.com/korymath/visual-illusions/

kylemath commented 6 years ago

yes I can write function coolness = x(s);

but the function is showing it to a person and having them input a number from 1-10

same like cannabis effects, or audience members at your show

everyone in machine learning is trying to maximize something objective, but the real problems will be where the value function is subjective, you have to ask people, there is no way around it,

korymath commented 6 years ago

It is because that function takes too long to run. Human in the loop slows things down, so surrogate functions approximate a stable distribution

On 24 March 2018 at 20:35, Kyle Mathewson notifications@github.com wrote:

yes I can write function coolness = x(s);

but the function is showing it to a person and having them input a number from 1-10

same like cannabis effects, or audience members at your show

everyone in machine learning is trying to maximize something objective, but the real problems will be where the value function is subjective, you have to ask people, there is no way around it,

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/korymath/visual-illusions/issues/1#issuecomment-375935842, or mute the thread https://github.com/notifications/unsubscribe-auth/AAK3s24oeUn5e3vX7kHxvD20PwDCuWbKks5thuZkgaJpZM4S55zq .

--


Kory Mathewson

kylemath commented 6 years ago

sounds like a million dollar question to span that gap then, there is no surrogate that would ever work if the goal is a subjective experience in a person, if the problem isn't hard someone else is doing it, don't be afraid of the 'impossible'

kylemath commented 6 years ago

i guess this is the problem uber is trying to deal with right now as well , they failed fatally

korymath commented 6 years ago

Lana says just use a random number generator, 'why do you need a person to do that'

On 24 March 2018 at 21:39, Kyle Mathewson notifications@github.com wrote:

i guess this is the problem uber is trying to deal with right now as well , they failed fatally

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/korymath/visual-illusions/issues/1#issuecomment-375938732, or mute the thread https://github.com/notifications/unsubscribe-auth/AAK3sx2445PhZ81697i9mg_TJeDF7fhPks5thvVYgaJpZM4S55zq .

--


Kory Mathewson

kylemath commented 6 years ago

tell her that would be like uber testing their cars in a big hall of random numbers, not valid given the goal in mind

kylemath commented 6 years ago

i want something to grade exams for me so I grade 100 exams, train it, it grades 10 i judge it I grade 100 more it grades 10 i judge it humans are willing to go slow build AI that can wait for them, and deploy

korymath commented 6 years ago

https://gradescope.com/

On 24 March 2018 at 21:48, Kyle Mathewson notifications@github.com wrote:

i want something to grade exams for me so I grade 100 exams, train it, it grades 10 i judge it I grade 100 more it grades 10 i judge it humans are willing to go slow build AI that can wait for them, and deploy

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/korymath/visual-illusions/issues/1#issuecomment-375939052, or mute the thread https://github.com/notifications/unsubscribe-auth/AAK3s_z_60rYpbJuwxEXs6VZaXigbLRgks5thvdwgaJpZM4S55zq .

--


Kory Mathewson

kylemath commented 6 years ago

this got lost:


I disagree, that is what abstract art is, it is generating without categorization thats what kids do when they draw

maybe you are stuck thinking about value functions

it does seem hard

how to solve this problem

show a algorithm 100 items, have it learn commonalities of those images, how do you learn without reward? need to categorize, succeed/fail, reward, adjust

but is there some other way

If I look at 100 chagal paintings, then I can generate a new one in that style

you are talking about between artist and between modality, but I want a single input of just a single group of art, then generation of new art in that vain,


A categorization training will find features that best distinguish the different illusion classes, but those features may be orthogonal to the visual effects that actually lead to illusions, it will find difference between categories, not commonalities and themes within a category,

So lets frame it this way, a predictor network, whose goal is to constantly predict the next image instead of learning the linear combination of features that best separates the categories

learn the linear combination of weights that best predicts the next image, minimize the suprise, minimize the difference between the prediction and the image

present, through neural network, 3 layers, recurrent connections, so input layer is reactivated after hidden and top layer compute and send back down, next image comes, compare prediction to next image, adjust weights if prediction error large repeat?

something like that?

do you get what I am trying to do here,

kylemath commented 6 years ago

gradescope only works because of the objectivity of math grading