A computer program that could learn... anything?
February 23, 2014 1:44 AM Subscribe
Has anyone ever tried to make a generalized learning program, such that it could be fed any kind of data, and would correlate it all, and eventually be able to form new conclusions or answer complex questions relating to the data?
posted by CustooFintel to Technology (17 answers total) 4 users marked this as a favorite
I'm sure smart people have already thought about this, but I don't know exactly what you'd call this concept, so I'm unable to search for it. Let me give an example of the concept:
You have this computer program. All it "knows" to begin with are simple rules of logic and how to parse simple sentences. You start feeding it data. You feed it sentences like
* Apples are fruit.
* Breakfast cereals often contains much sugar.
* Fresh vegetables are good for your health.
* Jenny is a vegan.
And so on and so forth. Anything related to food. When you give it these sentences, it doesn't know what most of the words refer to, but it can remember the connections. It doesn't know what Jenny is or what a vegan is, but it knows that Jenny is a vegan. Later you tell it that Tom is a vegan. You also tell it that vegans don't eat meat. Though it still doesn't know what any of these things are, it now knows that Jenny and Tom both don't eat meat.
As you continue to feed it information, it continues to draw as many connections as possible. After a while, it not only knows that Jenny does not eat meat, but it knows that she won't eat most cakes (even though it was never given that sentence). When it sees a conflict, or an opportunity to make many connections as possible, it asks clarifying questions. Questions like, "Are all humans vegan?" or "Can fruit be eaten raw?" or "Can milk be fried?" or "Do shrimp taste better when they are bitter?" or "What is the difference between a sandwich and a calzone?" Every question can be answered with a simple answer, or with an answer which introduces a new concept, or with something fuzzy like "Most of the time" or "I don't know" or "I don't want to answer that right now".
Eventually, after receiving enough input (maybe from many many users), the program starts asking more subtle questions. Eventually, you can even ask it your own questions. You can say to the program, "I'm making a soup with ingredients X, Y, and Z. How should I spice it?" Or you can say, "What side dish would go well with steak?" Given enough data, and enough correlation, the program should be able to provide you with useful answers.
The program need not be used only for food. You could also enter information about clothing, or cars, or weapons, or even relationships.
This concept makes sense in my mind, but I have a hard time determining whether it's feasible, even theoretically. In a sense, it's basically the question of whether we could program something that functioned largely like a human brain. What makes it think it might be possible is the fact that it seems like the initial program wouldn't actually have to be that complicated; all it would really need, like I said above, is the ability to use logic and understand simple sentences. Well, and probably a pretty hefty processor.