42

Python comes with a huge amount of inbuilt libraries. Many of the libraries are for Artificial Intelligence and Machine Learning. Some of the libraries are Tensorflow (which is high-level neural network library), scikit-learn (for data mining, data analysis and machine learning), pylearn2 (more flexible than scikit-learn), etc. The list keeps going and never ...


33

First, I guess that you mean Common Lisp (which is a standard language specification, see its HyperSpec) with efficient implementations (à la SBCL). But some recent implementations of Scheme could also be relevant (with good implementations such as Bigloo or Chicken/Scheme). Both Common Lisp and Scheme (and even Clojure) are from the same Lisp family. And as ...


28

Practically all of the most popular and widely used deep-learning frameworks are implemented in Python on the surface and C/C++ under the hood. I think the main reason is that Python is widely used in scientific and research communities, because it's easy to experiment with new ideas and code prototypes quickly in a language with minimal syntax like Python. ...


24

You don't need a powerful language for programming AI. Most of the developers are using libraries like Keras, Torch, Caffe, Watson, TensorFlow, etc. Those low level libraries are highly optimized and handle all the tough work. They are built with high-performance languages, like C, C++. Python is just there for high level task like describing the neural ...


16

What is artificial intelligence? Artificial Intelligence is a very broad field and it covers many and very deep areas of computer science, mathematics, hardware design, and even biology and psychology. What math do you need? As for math, I think calculus, statistics, and optimization are the most important topics, but learning as much math as you can won'...


16

Remembering that artificial intelligence has been an academic endeavour for the longest time, Prolog was amongst one of the early languages used as part of the study and implementation of it. It has rarely made its way into large commercial applications, having said that, a famous commercial implementation is in Watson, where prolog is used for NLP. The ...


16

David Nolen (contributor to Clojure and ClojureScript; creator of Core Logic a port of miniKanren) in a talk called LISP as too powerful stated that back in his days LISP was decades ahead of other programming languages. There are number of reasons why the language wasn't able to maintain it's name. This article highlights som key points why LISP is good for ...


15

Rick Briggs refers to the difficulty an artificial intelligence would have in detecting the true meaning of words spoken or written in one of our natural languages. Take for example an artificial intelligence attempting to determine the meaning of a sarcastic sentence. Naturally spoken, the sentence "That's just what I needed today!" can be the expression ...


13

Yes, as mentioned in other answers, Prolog is actually used in IBM Watson. Prolog doesn't get much "hype" and "buzz" these days, but it is absolutely still used. As always, it has certain specific areas where it shines, and specific techniques that map well to its use. Specifically, things like Inductive Logic Programming, Constraint Logic Programming, ...


12

C++ is actually one of the most popular languages used in the AI/ML space. Python may be more popular in general, but as others have noted, it's actually quite common to have hybrid systems where the CPU intensive number-crunching is done in C++ and Python is used for higher level functions. Just to illustrate: http://mloss.org/software/language/c__/ http:...


9

Overall, the answer is no, but the current paradigms owe a lot to LISP. The language most commonly used today is python. Relevant answers: Stack Overflow thread explaining why LISP was thought of as the AI language: Why is Lisp used for AI Quora answer by Peter Norvig, who wrote a popular textbook on the subject and is currently Director of Research at ...


9

If you're doing deep learning (which I assume you are, if you say you want to learn "AI"), then Python is a MUST. Virtually all the big frameworks are Python wrappers over a C++ core. C# has no real deep learning frameworks. There are a couple such as the Microsoft Cognitive Toolkit, but they are on a completely different level from PyTorch or Tensorflow. ...


8

What attracts me to Python for my analysis work is the "full-stack" of tools that are available by virtue of being designed as a general purpose language vs. R as a domain specific language. The actual data analysis is only part of the story, and Python has rich tools and a clean full-featured language to get from the beginning to the end in a single ...


8

I think the best approach would be to pick up a good book that lays out the fundamentals very well. Artificial Intelligence: A Modern Approach (AIMA) is a great place to begin with! It is used as a reference textbook for many university level AI courses. It has helped me quite a lot as a student.


7

Python has a standard library in development, and a few for AI. It has an intuitive syntax, basic control flow, and data structures. It also supports interpretive run-time, without standard compiler languages. This makes Python especially useful for prototyping algorithms for AI.


6

Question on-topicness questionable, but... The most logical reason why PHP is unsuited for neural networks is that PHP is, well, intended to be used for server side webpages. It can connect to various external resources, such as databases, via native language features. It is very much a glue language, and not a processing language. PHP is also mostly ...


6

I definitely continue to often use Lisp when working on AI models. You asked if it is being used for substantial work. That's too subjective for me to answer regarding my own work, but I queried one my AI models whether or not it considered itself substantial, and it replied with an affirmative response. Of course, it's response is naturally biased as ...


6

Adding some to what Christian said. Facts taken from the book, Artificial Intelligence: A Modern Approach Burrhus Frederic Skinner, a psychologist and behaviourist, published his book Verbal Behaviour in 1957. His work contains the detailed account of the behaviourist approach to language learning. Noam Chomsky later wrote a review on the book, which for ...


6

You'll find that both Calculus and Linear Algebra have some application in AI/ML techniques. In many senses, you can argue that most of ML reduces to Linear Algebra, and Calculus is used in, eg. the backpropagation algorithm for training neural networks. You'd be well served to take a class or two in probability and statistics as well. Programming ...


6

Second the recommendation for "AI: A Modern Approach". Outside of that, there are a ton of resources online to consider. I think a good start would include: Andrew Ng's Machine Learning course on Coursera (note: I mean the old course, not the "Deep Learning Specialization" which I have no experience with). The Berkeley CS188 course materials here: http://...


6

There is no "best language" for any problem. There are too many variables to consider, even when advising a single person with a single project plan. If the choice is between Python and C++, I would generally advise: If you want to implement from scratch and learn how the algorithm works, use Python with numeric/accelerated libraries such as NumPy or ...


5

When I got interested in AI, I started with the most basic things. My very first book was Russell&Norvig's Artificial Intelligence- A modern Approach. I think that's a good place to start, even if you're mostly interested in Deep Nets. It treats not just the basic AI concepts and algorithms (expert systems, depth-first and breadth-first search,knowledge ...


5

It depends how flexible it needs to be: if you have a fully-fledged system ready for production, which is not going to need much adjusting, then C++ (or even C) might be fine. You need to put a lot of time into building the software, but then it should run pretty fast. However, if you're still experimenting with settings and parameters, and maybe need to ...


5

Corporations, government research, and academia are favoring C, Python, Java, LISP, and R currently. The trends are not favorable to C# for AI. C#'s peak of use was in the 2009 to 2012 range. By buying GitHub, Microsoft intends to regain some control over development tools and language but has never been particularly successful in either. Even eclipse is ...


5

I agree with Felicity's answer, except the part where he says that "C# doesn't look hopeful for keep pace." There are new frameworks such as ML.Net being developed right now and the new version of C# (C# 7.0-8.0) focus on performance while keeping simplicity. I cannot find the link right now, but there was a post on their GitHub explaining their ...


5

Interpreted languages allow for a faster development cycle, as they don't require time for compilation, and fragments can often be run without having a complete program. They often also have fewer constraints for variable declaration or typing. That means they can be used to quickly scope out a problem and try different solutions. The drawback is the slower ...


4

Here are some resources I have found useful to get to know the basics of AI Andrew Ng's lecture series on AI Andrew Ng's lecture at the Stanford Business School Andrew Ng - The State of Artificial Intelligence Andrew Ng is a visiting professor at Stanford, founder of Coursera and currently the head of research at Alibaba. The above videos should give you (...


4

AI is a wide field that goes far beyond machine learning, deep learning, neural networks, etc. In some of these fields, the programming language does not matter at all (except for speed issues), so LISP would certainly not be a topic there. In search or AI planning, for instance, standard languages like C++ and Java are often the first choice, because they ...


4

I recommend python over any other programming language for its availability of libraries. When it comes to machine learning, we have two types of libraries. Deep learning (RNN, CNN, fully connected nets, linear models) classic Machine Learning and the rest (SVM, GBMs, Naive Bayes, Random Forests, K-NN etc) Python has very good libraries in both types. ...


4

LEGO Mindstorms is widely used to demonstrate AI in schools and universities [1, 2]. With LEGO as basis, you are very flexible. You can build what you want very easily. The AI programs can be written in different languages from very easy graphical once to Lisp and C++. The newest version has an SD Card drive, USB interface and a powerful ARM processor. You ...


Only top voted, non community-wiki answers of a minimum length are eligible