Jump to content

getting started on machine learning

Hi,

 

I want to get started on supervised machine learning using neural networks. I know a fair bit about how neural networks work. I also have some coding experience (mainly C++, C#, python). Building my own basic neural network in C++ would be tedious, but would really make me understand everything in depth. The other option I consider is getting started using the tensorflow library for python. This would probably be more fun because the first good be results can be reached way more quickly.

Which option is better?

 

My second problem is that I am looking for an interesting, yet not to hard, little project to start with. Any suggestions?

 

regards,

Xilef

Link to comment
Share on other sites

Link to post
Share on other sites

I guess it depends on your long term goals. If you want to eventually solve hard learning problems (as in problems that require real data science techniques to solve meaningfully), then you're probably going to want to study more on the statistical side of machine learning and learn more about interpreting the data you get as well as more about the algorithms themselves (data is meaningless if you don't know how to convert the results into meaningful info).

 

If you want to just get more familiar for your own projects where a bad classification doesn't result in accidental racial profiling or classify a VERY vulnerable patient as not in danger (both real world examples of what can happen when data science is applied poorly), then i'd honestly do a mix of your 2 ideas. First take on a simple classification problem and get used to the "how to" of actually using a learning model. Then, i'd make my own library to get a feel for the innards. Both experiences have value, but I think having the cursory info of the "how to use" would be more useful in the "under the hood" project than vice versa, but that's just me.

Gaming build:

CPU: i7-7700k (5.0ghz, 1.312v)

GPU(s): Asus Strix 1080ti OC (~2063mhz)

Memory: 32GB (4x8) DDR4 G.Skill TridentZ RGB 3000mhz

Motherboard: Asus Prime z270-AR

PSU: Seasonic Prime Titanium 850W

Cooler: Custom water loop (420mm rad + 360mm rad)

Case: Be quiet! Dark base pro 900 (silver)
Primary storage: Samsung 960 evo m.2 SSD (500gb)

Secondary storage: Samsung 850 evo SSD (250gb)

 

Server build:

OS: Ubuntu server 16.04 LTS (though will probably upgrade to 17.04 for better ryzen support)

CPU: Ryzen R7 1700x

Memory: Ballistix Sport LT 16GB

Motherboard: Asrock B350 m4 pro

PSU: Corsair CX550M

Cooler: Cooler master hyper 212 evo

Storage: 2TB WD Red x1, 128gb OCZ SSD for OS

Case: HAF 932 adv

 

Link to comment
Share on other sites

Link to post
Share on other sites

Machine Learning is a pretty broad field.
You said neural networks so start on those. Theory wise, depends how deep you want to go, you could read papers that go super indepth but also half of it is math. Or you could look at various online videos or online blogs, the information is out there you just have to go find it. For example : http://neuralnetworksanddeeplearning.com/

Is an online textbook on the topic
My personal favorite is find an open source example and recreating it, as its very hands on.

Link to comment
Share on other sites

Link to post
Share on other sites

Depends on what you want to go into though the youtuber codebullet has done a few videos for AI learning games. 

For instance he made an AI play “dinosaur game” where when google chrome doesn’t have internet, you play this infinite runner game. He also did 2048 with limited success. I think he did snake once too. 

Link to comment
Share on other sites

Link to post
Share on other sites

Thank you for all of your replies.

22 hours ago, reniat said:

I guess it depends on your long term goals. If you want to eventually solve hard learning problems (as in problems that require real data science techniques to solve meaningfully), then you're probably going to want to study more on the statistical side of machine learning and learn more about interpreting the data you get as well as more about the algorithms themselves (data is meaningless if you don't know how to convert the results into meaningful info).

 

If you want to just get more familiar for your own projects where a bad classification doesn't result in accidental racial profiling or classify a VERY vulnerable patient as not in danger (both real world examples of what can happen when data science is applied poorly), then i'd honestly do a mix of your 2 ideas. First take on a simple classification problem and get used to the "how to" of actually using a learning model. Then, i'd make my own library to get a feel for the innards. Both experiences have value, but I think having the cursory info of the "how to use" would be more useful in the "under the hood" project than vice versa, but that's just me.

Bad classification won't do any harm for now, I'll just do it for fun and to learn a new skill. A agree that processing data so that classification by neural nets can be applied as well as interpreting it later on are probably difficult. Thats why I am looking for an easy project to start with, where I can focus on machine learning itself, and not so much on the preparation and interpretation.

 

11 hours ago, MyName13 said:

How did you learn the theory behind machine learning?

Various youtube videos, reading on it. That's been some time ago, so don't rembermber video titles... Apart from that, I used the free e-learning offered by my employer.

5 hours ago, Isvan said:

Machine Learning is a pretty broad field.
You said neural networks so start on those. Theory wise, depends how deep you want to go, you could read papers that go super indepth but also half of it is math. Or you could look at various online videos or online blogs, the information is out there you just have to go find it. For example : http://neuralnetworksanddeeplearning.com/

Is an online textbook on the topic
My personal favorite is find an open source example and recreating it, as its very hands on.

Thank you very much for that recommendation, the book looks like a solid knowledge-basis to build on. I'll start reading :)

3 hours ago, fpo said:

Depends on what you want to go into though the youtuber codebullet has done a few videos for AI learning games. 

For instance he made an AI play “dinosaur game” where when google chrome doesn’t have internet, you play this infinite runner game. He also did 2048 with limited success. I think he did snake once too. 

Ok, I will look into that channel, and see wether that's the right kind of task/project for me.

 

If any of you has further recommendations for websites/youtubers/sample projects that you had good experience with, please share them.

 

Thanks a lot,

xilef

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×