(ELOG 12 for CS3790: Cognitive Science)
Robots are cool.
(ELOG 12 for CS3790: Cognitive Science)
Robots are cool.
(ELOG 11 for CS3790: Cognitive Science)
Often, when one hears about AI, the topic of conversation is something grandiose. Strong AI, AI capable of conscious thought, is a fun thing to think about, but hardly something we can achieve currently, if at all. Discussions about this kind of AI are, more than anything, distractions from the equally interesting applications of AI that don’t require us to have a fully conscious machine.
For example, can we design a system that can adequately diagnose a mechanical problem, or a patient? Can we make a system capable of solving theorems or making logical deductions. These aren’t as exciting, but are certainly important to people working on AI, and are far more practical.
One of the first attempts at this was Cyc. Its goal is to be a sort of encyclopedia knowledge base capable of making inferences and answering queries. The database currently has over a million entries, and it’s been building since 1984. You can play around with it on their website, where they have a web frontend to query it. Interesting stuff. Of course, it still doesn’t know nearly enough. One suspects it might never be capable of learning enough.
(ELOG 10 for CS3790: Cognitive Science)
The Turing Test is an interesting idea. The construction is as follows: you put a person in one room, a computer in another, and then have them communicating with a third person, whom we call the interrogator. The interrogator then asks questions of both and tries, with this information alone, to guess which is the computer and which is the man. The computer’s goal is to communicate with the interrogator so effectively as to convince him that it is the person.
Note that to be fair with the computer, our communication medium needs to be something like a chat room, something that separates physical perception from intellectual perception. Still, the test is weighted heavily in favor of the interrogator, since the computer must be capable of processing and using natural language in answers, and the interrogator has a 50-50 chance of guessing against the computer anyway.
Still, Turing was convinced in 50 years time that a computer would be capable of pulling off this feat… He said this in 1950. It’d seem Turing was off a little bit.
(ELOG 9 for CS3790: Cognitive Science)
We all have an internal dialogue running in our heads all the time. It seems as though our very thoughts are tied to our linguistic ability. Given that this is the case, is it possible that these thoughts can ever be fully expressed in a language other than the one they are internally represented as? The linguistic relativity hypothesis, or Sapir-Whorf hypothesis, states that thought is so innately tied with language that there are thoughts in one language that are unique to that language and cannot be translated.
The Sapir-Whorf hypothesis has a weaker version that most scientists actually believe to be more accurate – that language impacts the thoughts and perceptions of people such that certain thoughts become more difficult to express in other languages, but not necessarily impossible. There are several studies that have been done about this.
Some of the more interesting ones include a study of people of different languages tasked to separate tokens into groups however they saw fit. Russians chose to separate light blue and dark blue into two separate groups, Setswana speakers would group green and blue. The theory is that these differences come from the differences in language. Setswana has no separate words for green and blue. Russian has two words for blue, one light and one dark. It doesn’t seem surprising to think language might have something to do with it.
I’ve taken several Japanese courses, and I’ve had friends ask me “how do I say X in Japanese?” Often, I just don’t know because I don’t have the vocabulary, but I’ve also seen that certain basic sentences just don’t really fit with any grammatical structures I’ve learned for Japanese. I guess that’s the linguistic relativity hypothesis at work.
(ELOG 7 for CS3790: Cognitive Science)
Artificial neural networks are kinda nifty. To learn more about them, I thought I’d try playing with one. Here’s a couple of the places I tried: Blackjack with Reinforcement Learning and Java Mouse Neuron Test.
The first site uses an ANN to learn how to play Blackjack. You can start by playing alongside the computer in real time. The computer plays randomly at this point. If you want the computer to start playing better, the computer needs some alone time to get to learn the rules a little better. I set it to a 1000 learning episodes of 100 games each. As you run through the training you can watch the computers win average improving. It steadily goes from about 30%, which is about what you get playing randomly – to 40%. It then sits around 40% slowly improving. It’s impossible for the computer to really get above 50% since the game’s odds are weighted in favor of the dealer (the applet doesn’t account for pushes or splits).
It’s interesting how with just a few training episodes the computer can start really playing a better game. It’s hard to observe the overall difference playing as hands as slowly as a human needs to, but you can see the computer making more informed decisions after the training. ANNs are kind of nifty like that.
I decided to try to improve the training. I experimented with different values for winning and losing weights. Trying to find the right balance of reward/punishment to encourage learning in the quickest manner possible. I found weighting a win heavier than a loss was a quick way to favor learning, since losing is expected over 50% of the time any way. Weighting the wins too heavily did cause a lot more oscillation however, since the network started to think it understood what was going on just because of a chance win more often.
The other ANN I played with didn’t have any sort of training whatsoever. The associated paper discusses designing a neural net that learns more like a person and less like a computer with the hand of god involvement you’ll typically see. In the real world, there’s not someone to tell you every time whether you responded correctly or not, so the network was designed to learn in whichever way it desired, without a person telling it whether its actions were correct or not. I was able with a few tries to get the mouse to start to circle the goal without any sort of training whatsoever. I’d like to play around with this idea further – no training ANNs…