5 ms·
Ask YC: AI
The field of artificial intelligence has been always something I wanted to take a peek on, but never really had the chance. Could people here recommend me some good books to start my journey on this field?
- nickb 19y agoStart with this book: http://aima.cs.berkeley.edu/ http://aima.cs.berkeley.edu/ "Artificial Intelligence: A Modern Approach" by Russell/Norvig It's one of the best books on AI and it's a "standard" AI textbook for most of the intro AI courses. It's also great as a reference (I have it on my bookshelf beside me) and you can quickly look up algos and implement them in your fav language.
- jey 19y agoHere's the standard AI textbook: http://aima.cs.berkeley.edu/ http://aima.cs.berkeley.edu/ I'm assuming you mean "AI" in the sense of "fancy mathematical tricks to solve domain specific problems", not in the sense of artificial general intelligence.
- wastedbrains 19y agoJey I agree, I highly recommend Norvig and Russell's book. I had a one semester course back in college that used this. I actually just recently have been programming some of the exercises up in Ruby just to stay sharp with some different kind of coding than the standard webapp stuff. It has some great problems, and has source code available in many languages (not ruby unfortunately, but I guess makes it more of a challenge). Norvig also has some great essays and example AI code on his site, http://norvig.com/ http://norvig.com/
- Retric 19y agoI agree it's a great book but IMO it's important to understand that modern AI is about: 1. Classification and Learning (aka is that apple ripe? or what's the best website for a given search?) 2. Modeling / Machine vision (Where are the rocks around this rover.) 3. Goal Seeking (AKA what's the best path from here to DC.) With enough resources we can do any of the above fairly well. So using AI is more about understanding how to link the above activities to some useful problem. AKA control a rover when your ping is 15 min or solve a CAPTCHA.
- amichail 19y agoI actually don't find this sort of research all that interesting. I like out of the box solutions more: http://video.google.ca/videoplay?docid=-8246463980976635143 http://video.google.ca/videoplay?docid=-8246463980976635143
- david927 19y agoThat's brilliant, amichail. Thanks.
- whacked_new 19y agoSecond that thanks. That was expletively amazing. I didn't expect to watch more than the intro but couldn't stop. That's an intersection of CS and HCI cleverness raised to the level of art.
- viergroupie 19y agoFantastic video, thank you!
- ivankirigin 19y agoNorvig, Mitchell, Thrun have good books Also, google "Andrew Moore CMU" his homepage is full of useful tutorials That said, "AI" is too vague. What do you want to be able to do?
- Tichy 19y agoMaybe "Programming Collective Intelligence" would also be a good start.
- Kaizyn 19y agoIn addition to this book, you're probably going to want a good book covering the history and development of the field. Keep in mind that AI is a broad field. As such you might find it more helpful to identify which computer intelligence problem(s) you want to solve, then start accessing the AI writings that discuss how to solve your problem. This won't give you a general overview, but it at least would reduce what you'd need to learn about to produce something useful.
- neilc 19y agoYeah, that's definitely a nice, practical book for machine learning stuff (but not really AI proper). For a practical book on AI itself, Norvig's Paradigms of Artificial Intelligence Programming: http://norvig.com/paip.html http://norvig.com/paip.html is a great book, and a nice complement to Norvig and Russell, which is somewhat more theory-oriented.
- Tichy 19y agoWhat is "AI proper", though? I am fairly certain that when the true AI will be built, it won't be an expert system or based on first order logic. The classical AI stuff is still interesting, of course, and still has practical applications (ie A* search for games). But I tend to count "the other stuff" (ie Data Mining) as AI, too.
- neilc 19y agoI'd agree with machine learning falls within the purview of AI -- I'm just saying if all you want to learn is machine learning, then a book on just that subject would probably be more relevant than AIMA. I just got "Pattern Recognition and Machine Learning" by Bishop, and it's a great book.
- 19y ago
- mooneater 19y agoHaving looked through the introductory texts, I am left wanting to better understand current state of various parts of field. Any suggestions on where to get more of that higher-level commentary?
- pchristensen 19y agoI recommend "Beyond AI". It gives a high level history, present, and future of AI. It looks through the lens of a search for artificial general intelligence. http://www.amazon.com/o/asin/1591025117 http://www.amazon.com/o/asin/1591025117
- Novash 19y agoI mean AI as Learning Algorythms and Decision Making programs.
- jamiequint 19y agoIn that case get "Programming Collective Intelligence" like Tichy said, probably the best place to start.
- Kaizyn 19y agoYou might want to look at 'cognitive science' as well because that field tries to explain how humans think and make decisions for use as AI construction models.
- jey 19y agoThere currently are no good general solutions, so the best tool(s) to use strongly depends on the specific problem you're trying to solve, resources you have available, and how good the answer needs to be. Reading through the Russell & Norvig book would give you a good overview of the sorts of techniques available.
- robg 19y agoUnfortunately, too often, that perspective is lost. I know of no general solution to what defines intelligence. So I'm very dubious as to whether an encompassing artificial version is possible. I see lots of specific solutions to specific problems. That, to me, is the best approximation of intelligence. To the extent that many specific solutions can be approximated and optimized, we'll be very well off. It's easy to denigrate a calculator and spell-checker, but I seem much more intelligent than I would be without them.
- jey 19y ago"I know of no general solution to what defines intelligence. So I'm very dubious as to whether an encompassing artificial version is possible." Logical Fallacy Alert! http://en.wikipedia.org/wiki/Argument_from_ignorance http://en.wikipedia.org/wiki/Argument_from_ignorance I don't know how to build a rocket ship nor to do a heart transplant, but I'm fairly confident that these are both feasible.
- richcollins 19y agoAlso see Mitchell's machine learning: http://www.cs.cmu.edu/~tom/mlbook.html http://www.cs.cmu.edu/~tom/mlbook.html
- rkabir 19y agomy TA secretly recommended Norvig's book over Winston's, but we used Winston's "Artificial Intelligence" For more philosophy, read Minsky's books / papers, and the readings outlined here: http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/6-803The-Human-Intelligence-EnterpriseSpring2002/Readings/index.htm http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Compute... Minsky's paper "Steps toward Artificial Intelligence" reads like a summary of 6.034 at MIT. Speaking of which: http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/6-034Fall-2006/CourseHome/index.htm http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Compute...
- downer 19y agoI recommend starting from scratch and ignoring the field. All the field will teach you is very complex ways to NOT have AI.
- Kaizyn 19y agoWhy would you want someone to do this? Wouldn't that simply lead one to remake all the mistakes that have been made in the field?
- downer 19y agoDoing what has been done in the field would repeat the mistakes. Doing something original might actually be, you know, original.
- akkartik 19y ago"Do not deny the classical approach, simply as a reaction, or you will have created another pattern and trapped yourself there." -- Bruce Lee http://en.wikipedia.org/wiki/Bruce_Lee#Philosophy http://en.wikipedia.org/wiki/Bruce_Lee#Philosophy
- downer 19y agoThat's referring to refusing to use something you KNOW works, simply because it is traditional. Quite different from seeking your own path. If you follow the classical path, you will become bogged down in the vast field of AI. Ramanujan started from first principles and worked from there. My guess is that the person(s) who create "actual" AI will use that approach.
- akkartik 19y agoThat's a valid point. But there's value in studying things that didn't work. A huge number of obvious approaches to AI have been tried already, and the insights on why they don't work, or why they work on this problem but not this other one, are often the result of huge quantities of time spent on subtle traps and dead ends. To ignore them risks wasting your time all over again. I think AI boils down to just the problem of managing complexity that all of cs is about. The eventual solution will be vast, and will require designing lots of separate subsystems that work in very different ways and yet need to communicate in subtle ways. That emphasis on scale goes for research in general, I think. I recommend this video of Malcolm Gladwell talking about the nature of genius and how it's changed over the years. http://www.newyorker.com/online/video/conference/2007/gladwell http://www.newyorker.com/online/video/conference/2007/gladwe... He compares the decoding of the rosetta stone and linear B 40 years ago with Andrew Wiles proving Fermat's last theorem in the past decade, and how fundamentally different their respective approaches are. Both approaches may work, but you have to decide what attitude you want to take. You can either try to be a single monster-mind like Ramanujam sweeping through vast areas of research, or you can assume that won't happen and resign yourself to a lot of effort and learning before you're able to synthesize something useful. To summarize: I agree that you want to avoid cluttering your mind with the ideology of past approaches. There's huge value though in simply studying the episodic history of a field, to be aware of what has been tried, what worked and what didn't.
- deleted 19y ago[deleted]
- mojuba 19y agoI'd recommend starting with a definition of intelligence. Once you clearly and unambiguously define it, consider you have 51% of the task done already.