Beginner AI, where to start?
-
https://en.wikipedia.org/wiki/Artificial_intelligence
The majority of AI done today is through Machine Learning and that is mostly using specialized hardware. Whether it's a nicer GPU or a specialty SBC, you'll likely want to get some ML hardware and start programming for that.
-
AI generally involves a lot of horsepower, even for learning. This is an example...
-
The RockPI N10 is highly rated for low cost machine learning hardware with TensorFlow
-
Don't forget that learning a framework is important, too.
-
Lol, I missed the AI part. I thought, "he has an A. but no B."
-
@flaxking said in Beginner, where to start?:
Lol, I missed the AI part. I thought, "he has an A. but no B."
Oh yeah, I spoke to him offline. He writes AI as A. I
-
Thank you everyone for your help, I'm going to check all of those links.
So far I was studying Python but I wasn't sure if I was on the "right track" anymore...Also, thank you Scott for giving some of your time yesterday, I learned a lot from you!
Sorry for the A. I part, I just fixed the space, but do you guys use the point between the two letters?
-
@Julien said in Beginner, where to start?:
Thank you everyone for your help, I'm going to check all of those links.
So far I was studying Python but I wasn't sure if I was on the "right track" anymore...Also, thank you Scott for giving some of your time yesterday, I learned a lot from you!
Sorry for the A. I part, I just fixed the space, but do you guys use the point between the two letters?
typically, no. simply
AI
. If you are going to use the period, you need to use it after both asA.I.
-
@Julien said in Beginner, where to start?:
So far I was studying Python but I wasn't sure if I was on the "right track" anymore...
Python is a highly useful, general purpose language. So a decent place to start for anything.
-
@Julien said in Beginner, where to start?:
Sorry for the A. I part, I just fixed the space, but do you guys use the point between the two letters?
It is commonly written AI, but is okay to write A.I. but those are really the only two ways to do it. Can't have a space or it becomes something totally different, and can't have a period between the letters without one after the second letter additionally.
-
I'm going to try to put what I read with my own words :
-
Prolog and Lisp seems to be used for advanced AI and deep mathematical problems - Hard to learn but possibility to do many things even though I don't really get the difference between them.
-
R seems to be related to data, I am not sure it's something I like.
-
Python is easy to learn but is mainly used for script, data and non complex system
-
C++ is used in video games, can build powerful system but not as complex as Prolog and Lisp.
Unless I'm saying something stupid, isn't better to learn and master very few technologies instead of learning a little bit of everything?
It's also really frustrating to have so many languages and technology claiming to be used in AI (or any other field) but not having clear explaination of what it can do...Let's use an exemple, I learned some blacksmith skills with my grandfather when I was young, it was clear that to build a knife you need your set of tools and practice. I didn't have to choose between 10 type of hammers, 20 type of stoves...
Also, it might sound weird for some people but I intend to make a living asap with what I learn. I rather start small and being able to work in the field then having an idea. My goal is to be able to work in a year or less, I don't care about the money for now.
I forgot to mention that until now I was learning Linux (I like the fact that I can interact with my system and configure things) and Python because I thought it was the best option to get me in the industry easier and faster. For the long term I wanted to learn a more complex language that can be versatile in AI.
-
-
@Julien said in Beginner, where to start?:
- Python is easy to learn but is mainly used for script, data and non complex system
Python is pretty much used everywhere where there is not a concern with having to tweak for performance with the underlying system.
-
@Julien said in Beginner, where to start?:
Unless I'm saying something stupid, isn't better to learn and master very few technologies instead of learning a little bit of everything?
In general, not necessarily, it depends on your role. When starting learning something, yes it would make sense to have the ability to actually do something. But you don't need to master it.
-
@Julien said in Beginner, where to start?:
Let's use an exemple, I learned some blacksmith skills with my grandfather when I was young, it was clear that to build a knife you need your set of tools and practice. I didn't have to choose between 10 type of hammers, 20 type of stoves...
That's the case when you go to university or take a course, they limit the exposure to the tools they decide to train you on. They've already chosen the stoves and hammers, but what they chose doesn't always represent what other shops are using.
But the knowledge you learn is culmalative. Pretty much all of what you learn on one stove will help you on the next different stove .
-
Python was the first language I learned. But these days I don't often get to use it. Would I have been further ahead in my career today if I had chosen one of the languages I use now as my first language? No, it just doesn't work that way. The knowledge is culmalative. Experience with a variety of things becomes an asset, even if you don't actually use that tool.
-
@Julien said in Beginner, where to start?:
It's also really frustrating to have so many languages and technology claiming to be used in AI (or any other field) but not having clear explaination of what it can do...
In a way this is like saying that there are so many languages for business (English, French, Spanish, German, Mandarin). Every language CAN do anything, just some languages are better than others. English is the top language for International business. Why? Mostly because it has loads of native speakers, is relatively easy to say and learn, there are loads of resources for it, it's spoken in business friendly locations, and it is insanely expressive and highly accurate.
Prolog and LISP rule AI because they are vastly more expressive at "thinking" tasks than other languages. They were written for the purpose of expressing AI problems.
You can write a Prolog or LISP processor in Python, so by Python can do anything they can do. And you can write a Python processor in either of them, so vice versa. But there are things that the language itself does well, mostly a performance concern. And there are things that the language encourages the human to do well, this is called expressiveness.
Python is highly expressive, but not for AI tasks. That's why it is so generally popular. But it is not performant for anything, and AI is heavily influenced by performance.
-
@Julien said in Beginner, where to start?:
R seems to be related to data, I am not sure it's something I like.
AI is a data field.
-
@Julien said in Beginner, where to start?:
Unless I'm saying something stupid, isn't better to learn and master very few technologies instead of learning a little bit of everything?
When one knows how to program, learning multiple languages is relatively trivial. Learning totally different programming paradigms can be rather demanding, but is considered pretty critical for teaching your brain how to think. That's why learning multiple spoken languages is considered important, it improves cogitative skills. It gives your brain multiple ways to express an idea, construct, or problem.
-
@Julien said in Beginner, where to start?:
My goal is to be able to work in a year or less, I don't care about the money for now.
I think you have to step back and realize that AI is very specifically an insanely niche part of the industry that has no entry level point.
This is like my Bard's Tale example. I wish more people knew that game. But in that game, you could be a Mage or a Conjurer at level one. If you wanted to become a Sorcerer, you had to master either Mage or Conjurer first. If you wanted to become a Wizard, you had to master any two of Mage, Conjurer, and/or Sorcerer. If you wanted to become and ArchMage, you had to master all four.
AI is like being a wizard. You can't get any real AI job when you are starting out in software engineering. There just aren't many AI jobs and those that are out there expect some serious experience. You get that experience by putting in lots of time doing non-AI programming.
Getting a job in the software engineering world in a year, yes that is very doable. Getting one in AI in a year? That's not realistic. It has nothing to do with you or where you are, no one is going to go from ground zero to AI programmer in a year. AI is the most advanced thinking that humans do. There is so insanely much to learn. And AI is a research field. So getting paid to be a researcher is always tough. You always have to do a lot of proving before you start doing that kind of stuff.
-
@Julien said in Beginner, where to start?:
For the long term I wanted to learn a more complex language that can be versatile in AI.
The simplest answer here is... by the time AI can be on your radar, learning languages will be a "I learned that in an evening" kind of thing.
Think of it a little like wanting to be a race car driver. Once you are a professional driver, certainly you will have your personal preferences as to the best car. And you might know one car way better than another. But the best drivers for Ferrari can jump into a Honda and don't think of it as a problem to "learn a new car". It feels a little different, you need to take it around the track a few times to get the feel for it. But fundamentally, they can drive any car that you throw at them and do so well and safely without thinking twice.
Programming is like that. Once you are a comfortable, experienced programmer you'll be able to jump between Python, PHP, C, Java, C#, etc. with almost no effort.