I have been looking for AI resources, but most books and material seems to be theory only. I would like to know about material that have more to do with the programming side of the thing. Where can i find more practical (books, sites, articles, blogs, etc) information about ai?
views:
169answers:
6A nice start would be search algorithms like Breadth and Depth First search, A* [A-Star], etc.
Search algorithms is a really interesting topic of AI!
Some links to get you started with some code:
I recommend you a book called "Artificial Intelligence: A Modern Approach 3rd. Edition" which is very popular in this area. It is very easy to read and I think a good choice to begin. You can also find implementations of the algorithms mentioned in the book from its web site: aima.cs.berkeley.edu
For the natural language (NLP) side of things, the NLTK toolkit for Python is well worth investigating. Open source and intended for teaching, but is also used in many practical applications where speed & heavy processing are not an issue. Being Python, it is great for tinkering with.
AI is very wide. Which area are you really interested in AI? If you are really into AI I would recommend to really go into formal university course on AI subject. You could also read books but teacher would definitely help. Programming can be learned on your own, but in my experience, someone needs to inspire you with AI. I completed my Masters in AI specialization. "Collective INtelligence" is also a good book.
This is a very big question, and I don't pretend to be an expert, but I've been searching for resources for a few years now and this presents a good opportunity for me to enumerate my findings.
Programming Books
The following provide working source code, explanations and example usages. I think these most directly answer your question and I suggest starting with them.
Programming Collective Intelligence: Python code, very accessible. Covers things such as k-means, clustering, genetic programming, Bayesian filtering, and neural networks. Most unusual topic covered is support vector machines, which I don't grasp.
Algorithms of the Intelligent Web: Java, similar topics as above, but also covers some more interesting cluster algorithms: particularly ROCK
Artificial Intelligence: A Modern Approach: I admit to not reading this one, but my searches have turned it up more than once. I would describe it as the seminal work in the field for learners based on reviews I've read from others.
Theory
I know you said you want to avoid it, but I think AI is still very much a developing field. As a result, if you really want to understand new ideas you'll need to look at research papers, and these use notation, proofs and maths. So this is an area I myself have been boning up on. Fortunately, a guy name Bradford Cross put together a very comprehensive list of books to this end for how to learn about machine learning.
I've started with How to Solve It, How to Prove It, and Introduction to Analysis. Fortunately, I already read the Algorithms Design Manual. But there are a lot more books in other areas I've yet to touch upon. So I want to impress upon you my own perception of how much there is to grasp in order to understand new ideas in the field.
Other Resources
I list these here because you inquire, but I think without theory they will not be of much use. I don't understand much of what I read on them.
For an approachable, engaging and fun place to get a quick start with practical machine learning algorithms it would be hard to beat "Programming Collective Intelligence" by Toby Segaran (O'Reilly). Nice short code examples for things like neural nets, decision trees, clustering, SVM's, etc. that work on real world "web 2.0" data APIs to keep you motivated. Example code is in Python but porting to your own favorite language (if not Python) is a great way to understand the algorithms.