My crazy scientist idea - collaborators wanted!
-
The other day I was playing with the idea of a generic processor emulator. Would someone like to join the experiment to implement it faster? Here's what I am up to. 1) I am going to produce a gigabyte of random bytes ( I know, I know, you volunteer for that :doh: ) 2) I am going to treat these bytes as Z80 op-codes, 3) I am going to feed them into neural network, 4) I am going to interpret them with an emulator and use expected processor behavior (i.e. state of registers, pc, flags, memory location read/writes, stack read/writes) to train the network, 5) I am going to wait for a week. And if I am lucky I am going to end up with Z80 neural network. But in reality /if it works/ I am going to end up with a generic interpreter generator / duplicator. ...and with it we are going to start "the era of neuro-device" where a software is just a bunch of weights (and infos about the network structure)...a trained puppy, really...muwhahaha...
-
That won't work. It's like yelling random words from the dictionary at a baby and expecting it learn English! It'll all end in tears!
- I would love to change the world, but they won’t give me the source code.
-
Um...wouldn't it be better to start from a known-working Z80 program, rather than random data? If you're trying to train it to work as a Z80 then starting from stuff that only includes valid Z80 opcodes has got to be better than stuff that will immediately crash if fed to a real Z80?
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
Funnily enough, random data would probably serve better, especially if backprop were used in place of the neural network. With AI, the best starting point is often not the one that makes logical (programming-type) sense, because it has to learn how to work processes out for itself, not how to take data and reprocess it.
I wanna be a eunuchs developer! Pass me a bread knife!
-
A bit like an infinite number of monkeys with typewriters. Let us know when it's finished.
That's the usual definition we use for AI procedures. The thing is, we settle for one line of Shakespeare, and use billions of iterations, rather than infinite monkeys.
I wanna be a eunuchs developer! Pass me a bread knife!
-
Tomaž Štih wrote:
I am going to produce a gigabyte of random bytes
Well, as the saying goes, "garbage in, garbage out" ;) Marc
Imperative to Functional Programming Succinctly Contributors Wanted for Higher Order Programming Project! Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny
Garbage in 1,000,000,000 times : garbage out 999,999,999 times is a good start. Iterate until it's: Garbage in 1,000,000,000 times : Whoa!
I wanna be a eunuchs developer! Pass me a bread knife!
-
A long time ago in a laboratory far far away I used to do Monte-carlo simulations of molecular surface interactions. Although the data was random (the Monte-carlo part) it had rules to follow. Your proposal seems to just be feed a ton of random into a system and . . . well that's what I don't get. Chaos begets chaos (localized pockets of order are implicit for true chaos as the sample grows large). Perhaps explain how your neural network will digest the information ?
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein
"If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010
OK, let's simplify AI training*: 0. You have data. You might have an idea what it means to you, but it's really only ones and zeroes. 1. You stream this data into a neural network/backprop routine/whatever, which does something (it doesn't matter what) with the data and gives you output. 2a. If the output is useless (99.99999% of the first very many iterations, if you've got it right), you tell it "That output is not useful" (in a coded manner, of course). 2b. If the output is useful, you tell it "That output is useful" 3. Rinse and repeat. Eventually, you get quasi-self-written code that does exactly what you want it to do, and actually does better than you could code it, because, as in facial recognition, where you'd need a hundred billion lines of code to deal with every possible detail/angle/lighting effect/mm of hair growth, it can just look at a face and tell you who it is. * As in training an AI, not training people to use it
I wanna be a eunuchs developer! Pass me a bread knife!
-
OK, let's simplify AI training*: 0. You have data. You might have an idea what it means to you, but it's really only ones and zeroes. 1. You stream this data into a neural network/backprop routine/whatever, which does something (it doesn't matter what) with the data and gives you output. 2a. If the output is useless (99.99999% of the first very many iterations, if you've got it right), you tell it "That output is not useful" (in a coded manner, of course). 2b. If the output is useful, you tell it "That output is useful" 3. Rinse and repeat. Eventually, you get quasi-self-written code that does exactly what you want it to do, and actually does better than you could code it, because, as in facial recognition, where you'd need a hundred billion lines of code to deal with every possible detail/angle/lighting effect/mm of hair growth, it can just look at a face and tell you who it is. * As in training an AI, not training people to use it
I wanna be a eunuchs developer! Pass me a bread knife!
Mark_Wallace wrote:
OK, let's simplify AI training
That's pretty much how genetic algorithms do auto programming. Only they combine useful programs in hope that they'll become even more useful.
-
Mark_Wallace wrote:
OK, let's simplify AI training
That's pretty much how genetic algorithms do auto programming. Only they combine useful programs in hope that they'll become even more useful.
Tomaž Štih wrote:
Only they combine useful programs in hope that they'll become even more useful.
Ha! Not twenty years ago, they didn't, and nor do they have to now. (Some of us old buggers have been in the game a while, you know)
I wanna be a eunuchs developer! Pass me a bread knife!