19 ms·
Ask HN: How to Seriously Start with Machine Learning and AI
Hey,
Since years I've been seeing tones of news "how machine learing did smth... " and today that's enough with just reading how other people change the world with AI. I want to join into this area and scientificly understand how it everything works - make my own projects...
-I'm a third-year Computer Science student who just has passed most of the needed courses like obj programming,python course, databases, math statistics, algebra etc... I really enjoy playing with data like projecting databases, programming backed etc...
Everything I know until today - I have learned on my own(swift, python, backend). Mostly by practice and solving problems. Now I really want to start serious journey with Machine Learning and AI.
But by making some small research which made me realised that I don't want just to implement already done frameworks for e.q face recognition (maybe I should?)
I would like to understand the topic really seriously and be able to explore this area...
---but here's a problem because I don't know how to start it. I've got enthusiasm, some ideas for a projects, but still don't know almost anything about how exactly everything works.
When I was starting with programming, I read some books, watched online lecture and bang. I started doing my own projects. How to start in this more scientifically sophisticated area?
Are there any courses, books, online lectures which you can recommend me for a start to understand how it all works? Unfortunately, my university doesn't lead any more interesting courses in this area... People here are just fascinated with it but nothing more complex...
I'm still young so why not to lose time on something that seems to be really fascinating ;)
- sharemywin 9y agoThese were to 2 books I had when I took AI classes in college(~1998) pre-deep learning, CNN etc.. http://aima.cs.berkeley.edu http://aima.cs.berkeley.edu https://www.allbookstores.com/book/compare/9780201533774 https://www.allbookstores.com/book/compare/9780201533774 might be good for some foundational stuff. I felt they were pretty readable. I remember having to do backprop in excel as one assignment.
- sharemywin 9y agosome free courses: https://www.class-central.com/subject/ai https://www.class-central.com/subject/ai Some guys self made Master's program: https://hackernoon.com/my-self-created-ai-masters-degree-ddc7aae92d0e https://hackernoon.com/my-self-created-ai-masters-degree-ddc...
- joshgel 9y agoI would highly recommend starting with course.fast.ai. Really helped me.
- paulgb 9y ago+1. I started with a bunch of theory courses before jumping in to the fasi.ai course but I wish it had been available at the time for me to start with. The theory is a lot easier to internalize when you're working on real networks instead of toys.
- darepublic 9y agoThink you should pick a project that seems reasonable and then start working on it, learning what you need to along the way.
- nrjames 9y agoIMO, to start with AI, it's best to start as simple as possible so that you understand the algorithms that drive things that are accessible to tweak. If you are a gamer, think about the various AI routines that control pathfinding, resource collection, and strategy for computer players in strategy games. Some of the concepts of BFS and DFS build into Minimax strategies and other types of "simple" approaches to searching decision spaces/states for optimal approaches to problem solving. This gets into the development of heuristics for approximating outcomes. All of this is fantastic baseline for understanding more complex AI and machine learning algorithms. While it's easy to jump into ML or AI at a higher level, without the baseline understanding of the search algorithms and probability landscapes that are underpinnings to advanced work in these fields, you'll probably never feel like you understand what is going on. You can find some fun tutorials here: https://www.redblobgames.com https://www.redblobgames.com The CS 188 "Intro to AI" class at Berkeley is excellent: http://ai.berkeley.edu/home.html http://ai.berkeley.edu/home.html It used to be on edx.org but I think a lawsuit about accessibility required them to remove it? Perhaps you can find it in the edX archives. Edit: looks like you can find the lecture videos and other resources on the Berkeley site: http://ai.berkeley.edu/lecture_videos.html http://ai.berkeley.edu/lecture_videos.html
- ultrasounder 9y agoBy far the best response. After this,one could always try the deeplearning.ai or fast.ai courses depending on whether they prefer top-down or bottoms-up approach. Or why not do them together?
- bhollan 9y agoApparently Kaggle just opened a training/education branch. https://www.kaggle.com/learn/overview https://www.kaggle.com/learn/overview EDIT: I also second the fast.ai suggestion(s) as well
- throwaway2016a 9y agoThis doesn't help answer your question (I don't think) by my observation... I have the same question and I got my degree 12 years ago. I remember my AI course in college consisted of implementing a neural net in Lisp and memorizing a ton of dense text. It is really easy to take a Tensor flow model someone already wrote and tweak the parameters to make it work for your use case. I think that code reuse and open source is the largest advancement in AI in the last 10 years. So a lot of companies can use AI in their products without even really knowing how it work. Now once you start training your own models the hardest part to me is the vocabulary. So many tutorials and classes say "use this algorithm" or "take this code and modify it"... I want to know why I chose that algorithm, what were the other choices, and how do I write that code if I don't have an instructor to do the boilerplate for me. It is very frustrating. Hopefully some of the answers here will answer some of those questions. As another note, a lot of the advanced AI uses Calculus. algebra is not enough. I don't know what college you went to or what accreditation it has but by third year you should at least have taken Calculus II... maybe even Differential Equations. If you haven't, don't worry, 99% of programming jobs won't use them. But parts of AI will.
- atg_abhishek 9y agoI'm surprised that no one has yet mentioned Andrew Ng's Machine Learning course on Coursera and to go a bit deeper, his deep learning specialization on Coursera as well. Along with the programming assignments it's a solid way to get your feet wet. And definitely second the suggestion of the fast.ai courses as well
- enraged_camel 9y agoI took this course. Andrew is a great teacher. However, I wish he worked on his public speaking a bit. He has certain speech patterns, like starting sentences with "it turns out..." and after a while it becomes extremely irritating, at least to me. Fantastic course though.
- throwawaymanbot 9y agowow... nitpick....
- enraged_camel 9y agoLol, apparently we aren’t allowed to criticize people HN likes.
- Okvivi 9y agoAs somebody that has started learning AI/ML and was looking at the exact question here three months ago - I found the Andrew Ng deeplearning.ai Coursera course an amazing starting point. It was high level enough, and got me to understand enough, to get me to a point where I could start trying to build a side-project, without exposing me to the deeper math behind Neural Nets. It was a great starting point without being overwhelming. Now I feel that I have the option to either go deeper if I need to, or go wider. I find Andrew Ng to be an amazing teacher - explains things simply, clearly, and in a way that I find super easy to understand.
- pj_mukh 9y agoOn that note, do any of these courses take a deep dive on the deeper mathematics of neural nets?
- bonkerfied23 9y agoPattern Recognition and Machine Learning by Christopher Bishop. Book: http://users.isr.ist.utl.pt/~wurmd/Livros/school/Bishop%20-%20Pattern%20Recognition%20And%20Machine%20Learning%20-%20Springer%20%202006.pdf http://users.isr.ist.utl.pt/~wurmd/Livros/school/Bishop%20-%... Notes: Its very very math heavy but if you really want to grasp the concepts and the idea around each topic, this is one of the way to go. Online Lectures: https://www.youtube.com/watch?v=mbyG85GZ0PI&list=PLD63A284B7615313A https://www.youtube.com/watch?v=mbyG85GZ0PI&list=PLD63A284B7... I like how he explains stuff and adds some context behind the math of each topic. Alternative: https://www.youtube.com/channel/UCWN3xxRkmTPmbKwht9FuE5A https://www.youtube.com/channel/UCWN3xxRkmTPmbKwht9FuE5A A pretty good youtube channel that follows up on modern machine learning and he has all of his video tutorial demos on GitHub. Hope this helps fellow Machine Learner :)
- soVeryTired 9y agoBishop's book is horrible. I've got a PhD in machine learning and yet it makes me feel stupid. I'd go with David Barber's book every time.
- deleted 9y ago[deleted]
- neel8986 9y agoThis is kind of a masters degree course i created for myself to get knowledge of Machine Learning from bottoms up First, you need a strong mathematical base. Otherwise, you can copy paste an algorithm or use an API but you will not get any idea of what is happening inside Following concepts are very essential 1) Linear Algebra (MIT https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/ https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra... ) 2) Probability (Harvard https://www.youtube.com/watch?v=KbB0FjPg0mw https://www.youtube.com/watch?v=KbB0FjPg0mw ) Get some basic grasp of machine learning. Get a good intuition of basic concepts 1) Andrew Ng coursera course (https://www.coursera.org/learn/machine-learning https://www.coursera.org/learn/machine-learning) 2) Tom Mitchell book (https://www.amazon.com/Machine-Learning-Tom-M-Mitchell/dp/0070428077 https://www.amazon.com/Machine-Learning-Tom-M-Mitchell/dp/00...) Both the above course and book are super easy to follow. You will get a good idea of basic concepts but they lack in depth. Now you should move to more intense books and courses You can get more in-depth knowledge of Machine learning from following sources 1)Nando machine learning course ( https://www.youtube.com/watch?v=w2OtwL5T1ow https://www.youtube.com/watch?v=w2OtwL5T1ow) 2)Bishops book (https://www.amazon.in/Pattern-Recognition-Learning-Information-Statistics/dp/0387310738 https://www.amazon.in/Pattern-Recognition-Learning-Informati...) Especially Bishops book is really deep and covers almost all basic concepts. Now for recent advances in Deep learning. I will suggest two brilliant courses from Stanford 1) Vision ( https://www.youtube.com/watch?v=NfnWJUyUJYU https://www.youtube.com/watch?v=NfnWJUyUJYU ) 2) NLP ( https://www.youtube.com/watch?v=OQQ-W_63UgQ https://www.youtube.com/watch?v=OQQ-W_63UgQ) The Vision course by Karparthy can be a very good introduction to Deep learning. Also, the mother book for deep learning ( http://www.deeplearningbook.org/ http://www.deeplearningbook.org/ )is good
- emurillo510 9y agohey neel8986, I know linear algebra is very important for large scale calculations. But how much calculus and statistics do you need for ML? Also, if you can touch what applications of calculus and statistics are used in ML that would be awesome :]. THANKS!
- neel8986 9y ago
- ack0 9y agoThis video got me started, it runs through building a simple neural net in C++ from scratch: https://vimeo.com/19569529 https://vimeo.com/19569529 After that I extended it to solve the hand written digits problem. Tweaking it to get past about 80% accuracy taught me a lot of intuition about how the learning rate/other parameters interact. After that going through Andrew Ng's machine learning course will fill in some of the underlying math.
- 256 9y agoI don't know much about AI but for ML specifically Elements of Statistical Learning is fantastic. I find its explanations a lot easier to understand than other resources. I recommend you skim through it to get a taste. Additionally if you prefer lectures ETHZ has recordings of their ML class[1]. The best way to learn the details is of course to read the original papers. This is especially true for following along with the latest developments in deep learning. [1] https://www.ethz.ch/content/vp/en/lectures/d-infk/2017/autumn/252-0535-00L.html https://www.ethz.ch/content/vp/en/lectures/d-infk/2017/autum...
- jphamtastic 9y agoFor someone who might want a higher-level primer, Introduction to Statistical Learning is also great. http://www-bcf.usc.edu/~gareth/ISL/ http://www-bcf.usc.edu/~gareth/ISL/
- v3gas 9y agoI'm working my way through Elements now. Do you by any chance know of any lectures specifically based on it? And solutions to the exercises there? I have found it hard to find (good) solutions.
- 256 9y agoI haven't looked for any lectures because I learn best from reading books. So, I don't know, sorry. I'm interested in a solution set too.
- koulvi 9y agoThe Machine Learning Course offered by Prof. Ravindran at Indian Institute of Technology (IIT- Madras) uses ESLR. The course is free to enroll and you will have weekly assignments. https://onlinecourses.nptel.ac.in/noc18_cs26/preview https://onlinecourses.nptel.ac.in/noc18_cs26/preview
- v3gas 9y agoThanks!!
- hacknrk 9y agoFor now, I'd recommend you start the two courses on: http://fast.ai/ http://fast.ai/ They will guide you through machine learning and deep learning basics without being overwhelming with math. Good luck!
- AJ007 9y agoI wouldn't dive in to a full machine learning course as the first step. 1. Watch short tutorials about TensorFlow on Youtube 2. Look for lectures about specific topics that sound interesting. 3. Read NIPS papers that sound interesting 4. Check out the Deep Learning textbook, but maybe don't read the whole thing ( http://www.deeplearningbook.org/ http://www.deeplearningbook.org/ ) 5. By this point you should have a very rough idea about the current and past states of machine learning. You didn't have to spend any money or put in any exhaustive mental effort. If it still sounds interesting and you are motivated you can try a full online course or buy some paid books.
- jongold 9y agoFast.ai is the only thing I recommend
- BucketSort 9y agoI'm very adamant that if you really want to be an AI researcher, it starts with the mathematics. Multi-variable calculus, linear algebra,discrete math, probability and statistics are key. The classic books and courses others have suggested are excellent starting points. I'll also say something here that isn't established, so I may take some heat. I believe there are two main paths in AI that will eventually converge to general AI: symbolic and sub-symbolic reasoning. If you go the path of symbolic reasoning, studying functional programming, theory of computation,type theory, natural language processing/compilers are in your future. If you go the path of sub-symbolic reasoning, you will be closer to optimization methods, neural networks, etc. It really depends on what you want to do. Ex: Computer vision is all about sub-symbolic reasoning, while natural language processing is heavily about symbolic reasoning. Of course advanced applications mix both! If you want to go after general AI, you gotta figure out how to tackle both forms of reasoning. In the end, if you are serious about being an AI researcher, you will have to be a great computer scientist and mathematician. This is why it seems so difficult to get into. "Do I focus on working on messing with libraries and algorithms or the mathematical theory? And if I do both, how!?" It's not easy, but just start and keep going. Others have provided great advice. One of my greatest joys in life has been coming to understand the marriage of computer science and mathematics under the banner of AI. It is really something exciting worth living for. [Never give up!](https://www.youtube.com/watch?v=KxGRhd_iWuE https://www.youtube.com/watch?v=KxGRhd_iWuE) Also, I recently gave a talk on getting into AI and my view on the state of things. It also has a resources section that may be of interest. Slides: https://docs.google.com/presentation/d/1pDZLkFTFjuZzM8lIKkuCqgkFHthCVu6vMgNQge92tSY/edit?usp=sharing https://docs.google.com/presentation/d/1pDZLkFTFjuZzM8lIKkuC...
- Byzantine_BG 9y agoOne day 40 years after I graduated I "got" linear algebra. The eigenvectors of the inverse of the covariance matrix... Squeeze and twist it into a hypersphere! Mahalabobis distance is generalized z-score! Oh!
- BucketSort 9y agoThat's the ticket. It's all about building that intuition so you can be creative with mathematics. Linear algebra in particular is an area that continues to teach me more over the years.
- deepnotderp 9y agoFor deep learning: Surprised no one's mentioned Nando de Freitas's YouTube lectures, great series! Hugo Larochelle's YouTube course is great as well!
- gm-conspiracy 9y agoDo you recommend using rented GPU instances, or building a some kind of Nvidia rig?
- cr0sh 9y agoI'd personally say it depends on your budget, what you want to do, and the amount of data you plan to process. It may also depend on how comfortable you are setting up your own rig, if you go that route. For instance, last year I completed Udacity's "Self-Driving Car Engineer Nanodegree" course. Large parts of the course needed us to train neural nets (tensorflow and similar) on data we either generated or downloaded. We were provided the option to use AWS instances for training (free credits), but I opted to use my local box. It took me about a day or so of playing around before I finally got everything working properly (CUDA, etc) with my NVidia 750ti GPU. This is a very low-end GPU, but it honestly performed quite well for the course. It could only handle a limited amount of data, and sometimes training cycles took a while for turnaround (depending on the task), but it ran the resulting models quite easily (while still handling the 3D rendering tasks of the vehicle simulator). For learning purposes, it will all depend - if you already have a machine with a decent GPU, CPU and RAM (say something equivalent to the 750 or better, 4 cores or more, and say 8 gig of RAM), it might make sense to try to do things locally - if you think your skills are up to the configuration challenges (I got my system working, but I ended up breaking Ubuntu's update system, because I'm on 14.04 LTS, and I had to hand-install many things to fix dependencies and such for Python, Tensorflow, C/C++, etc - in order to complete the course). However, if you are planning on processing a huge amount of data for a large model, but aren't planning on doing this constantly - then an AWS instance might be a better option, as a custom rig for this kind of thing I'd imagine would be a bear to spec out and configure - not to mention cost. I'm certainly not an expert on all of this, though...ymmv.
- excalibur 9y ago> I want to join into this area and scientificly understand how it everything works That's kind of funny, given that one of ML's biggest criticisms is that not even the field's foremost experts truly understand how it works.
- RosanaAnaDana 9y agoI'm probably the worst example of how to get into this field of work, but since I do actually work on developing and applying ML algorithms every day, I think my case might be relevant. Firstly, my background is not in mathematics or computer science what-so-ever; I'm a classically trained botanist who started came at the issue of programming, computer science, and ML from a perspective of "I've got questions I want to ask and techniques I want to apply that I'm currently under prepared to answer." Working as a technician for the USDA, I learned programming (R and python) primarily because I needed a better way to deal with large data sets than excel (which prior to 5 years ago was all I used). At some point I put my foot down and decided I would go no further until I learned to manage the data I was collecting programmatically. The data I was collecting were UAV imagery, field and spectral reference data, specifically regarding the distribution of invasive plant species in cropping systems. The central thrust of the project was to automatically detect and delineate weed-species in cropping systems from low altitude UAV collects. This eventually folded into doing a masters degree continuing to develop this project. That folded into additional projects applying ML methods to feature discrimination in a wide range of data types. Currently I work for a geo-spatial company, doing vegetative classification in a wide range of environments with some incredibly interesting data (sometimes). I think you've got the issue a bit cart-horse backwards. In a sense I see you as having a solution, but no problem to apply it too. The methods are ALL there, and there are plenty of other posts in this thread addressing where to learn the principals of ML. What this doesn't offer you, is a why of why you should care about a thing? My recommendation would be to find something of personal interest to you in which ML may play a role. With out a good reason to apply the techniques that everyone else here is outlining, I think it would be too challenging to keep the level of interest and energy required to realize how to apply these concepts. Watching lectures, reading articles, doing coursework is all very important, but it shouldn't be thought of as a replacement for having personally meaningful work to do. Meaningful work will do more to drive your interests than anything.
- barkteryx 9y agoThis reads as an amazing journey. Kudos for your pursuit of a better process. It seems to me that so many (online) courses jump to applying tf/pytorch to a predefined dataset, whereas most of the work is in preparing the data. I have a personal project I'd like to try out classifying images, and haven't had much luck finding resources on building my own training dataset. Can you recommend any resources on assembling and collating your own dataset?
- tinymollusk 9y agoIn October, I quit my job to live on savings and work on AI/ML. I am not interested in developing novel AI approaches; my objective is to learn the application of machine learning to solve narrow problems. In light of that, I believe the technology to have progressed to where one can learn how to use existing libraries to solve specific problems. Lots of businesses have specific problems, and will pay me to solve them. The Fast.AI course (part 1 v2) is the best way to get started, IMO. The fastai library wraps up a lot of boilerplate, and gives you a simple recipe w/ conceptual understandings to achieve state of the art results (top 20% on just about any kaggle competition) in just a couple months of intensive study.
- ImNotBeingADick 9y agoI've been doing Coursera and got done with Udacity but both are just too philosophical. (I'll probably cruse the deep learning class too.) Does FAST.AI get into the grit of actually doing or is it more philosophical?
- CobrastanJorji 9y agoFast.AI is 100% focused on getting into DOING stuff. Its guiding philosophy is that teaching the math first instead of teaching you how to actually do some machine learning is backwards. The lectures start with a dozen lines of code that learns how to discriminate between cats and dogs and then follows up on that by slowly removing layers of abstraction. It's very cool. That said, the lectures are pretty rough around the edges compared to something like a coursera class. And his goal is to get you to play around with stuff on your own using his stuff as a jumping off point. It works well for some people but not as much for others.
- tinymollusk 9y agoVery focused on getting shit done, while trying to help you build appropriate mental models to what's going on. Towards the end of the course, some more theory. Multiple times, the prof said things like "the theory says this shouldn't work, but it does, so we use it." (Thinking about his perspective on the practical reality surrounding the "curse of dimensionality" (i.e. that it's not a curse)
- d_burfoot 9y ago"Be fearful when others are greedy, and greedy when others are fearful" - Warren Buffett I don't want to try to dissuade you in particular, but I think more young people should apply this principle to the question of what field to enter. I've seen dozens of "How do I get into AI/ML?" posts in the last couple of years.
- darepublic 9y agoIf that were true young people shouldn't get into tech at all let alone AI since it's overhyped at the moment.
- tobib 9y agoI don't quite understand, can you elaborate what you mean by that?
- pongolyn 9y agoI started with Andrew Ng's ML courses, which take a bottom-up approach beginning with the math. After finishing the deeplearning.ai track, I started rounding out my skillset with some data science and R programming classes, so I could be more comfortable working with unfamiliar data. The fast.ai courses are a more top-down approach to ML, and there are plenty of good reasons for taking this approach. You'll start getting practice with libraries like Tensorflow right away. However, if you have a fairly strong math background and linear algebra doesn't give you nightmares, I highly recommend the Andrew Ng courses. A deep (ha!) understanding what's going on "under the hood" in ML will help your debugging, inform your strategy, and make your code better in the long run.
- bllguo 9y agoI'm starting the fast.ai courses as a recent stat grad looking to expand my knowledge. Heard many good testimonials. Besides that, I think Andrew Ng's Coursera offerings - intro to ML and the newer NN specialization - are great first steps. Personally I have a hard time learning from videos, so I refer to my copy of Pattern Recognition and Machine Learning by Bishop. If you want a linear algebra text, I enjoy Strang's Introduction to Linear Algebra
- noyaav 9y agoStart with python. Then learn scikit-learn
- blablabli 9y agoI'd say to "seriously" start anything you can take a first step by building something, whatever it is. Even if you just follow a tutorial it gets you wet enough to keep going I think.
- ekanna 9y agoYou can learn ML theory and practical examples here: http://gluon.mxnet.io/ http://gluon.mxnet.io/
- rwieruch 9y agoJust recently I have written a "Machine Learning for Web Developers in JavaScript" blog post [0]. If you or someone else is a web developer, it might be interesting. It outlines my approach of learning it and gives a couple of great resources for JavaScript enthusiasts. Otherwise, I will just post a couple of the materials I used for myself to learn about ML below. - [0] https://www.robinwieruch.de/machine-learning-javascript-web-developers/ https://www.robinwieruch.de/machine-learning-javascript-web-... Podcast: - http://ocdevel.com/podcasts/machine-learning http://ocdevel.com/podcasts/machine-learning Courses: - https://www.coursera.org/learn/machine-learning https://www.coursera.org/learn/machine-learning - https://eu.udacity.com/course/machine-learning-engineer-nanodegree--nd009 https://eu.udacity.com/course/machine-learning-engineer-nano... - https://www.coursera.org/specializations/deep-learning https://www.coursera.org/specializations/deep-learning - http://course.fast.ai/ http://course.fast.ai/ Books: - https://www.amazon.com/gp/product/B014X01SS0/ https://www.amazon.com/gp/product/B014X01SS0/ - http://www.deeplearningbook.org/ http://www.deeplearningbook.org/ - http://neuralnetworksanddeeplearning.com/ http://neuralnetworksanddeeplearning.com/ - https://www.safaribooksonline.com/library/view/deep-learning/9781491924570/ https://www.safaribooksonline.com/library/view/deep-learning... Math: - http://www.fast.ai/2017/07/17/num-lin-alg/ http://www.fast.ai/2017/07/17/num-lin-alg/ - https://www.khanacademy.org/math/linear-algebra https://www.khanacademy.org/math/linear-algebra - https://www.khanacademy.org/math/statistics-probability https://www.khanacademy.org/math/statistics-probability - https://www.khanacademy.org/math/calculus-home https://www.khanacademy.org/math/calculus-home JavaScript ML: - https://bri.im/ https://bri.im/ - https://github.com/javascript-machine-learning https://github.com/javascript-machine-learning
- O_H_E 9y agodatasciencemasters.org was reccumended by someone working inside the Tensorflow team at Google. It is a sophisticated collection of courses and books (Stanford curriculum...etc). You would find that as a superset of what you need, you can just scroll till you find what you need to learn. (They are kinda sorted from basics first)
- Lausbert 9y agoWith the shortest introduction, created by myself ;) http://lausbert.com/2018/01/14/the-shortest-introduction-to-machine-learning/ http://lausbert.com/2018/01/14/the-shortest-introduction-to-...
- makeset 9y ago> I'm a third-year Computer Science student Make sure you take, as soon as possible, all the AI & ML courses your department offers. If prerequisites are holding you back, try to negotiate or audit. (Some of my key insights date back to graduate-level AI classes they humored me to sit in on when I was a freshman.) MOOCs are great for people who don't have that option, but you have the opportunity to ask questions, get course credit for your work, bolster your GPA, show it on your transcript, network with classmates, etc.
- jrjames83 9y agoI would recommend working on as many Kaggle competitions as you can. Try your best to understand manipulating data quickly and efficiently (use Python). Using the correct algorithm is typically trivial and a solved problem for most typical business issues (classification of text, imagery or audio data). At first you'll have to look at other people's code and copy/paste/edit/learn/iterate. Also, don't underestimate the complexity of creating good training, validation and potentially test sets. 95% of your time will be spent massaging data. People say it so often, it may sound ridiculous, but I promise you, it's not. This skill is also readily transferrable to other domains. I would start with classifying text using sklearn and Facebook's Fasttext. Then try the dogs/cats image classification challenge and get familiar with Keras and its utilities. I created a few hours of content around recognizing Bill Gates or Jeff Bezos, then trying to recognize 2 types of dog breeds. I outline the challenges of creating "good" training and validation sets. https://www.youtube.com/watch?v=O3hffX-jC98&list=PLImyDqSBQbdl_dd5GTZjiUzPZ2-63h10j https://www.youtube.com/watch?v=O3hffX-jC98&list=PLImyDqSBQb... For every hour you spend looking at some equations, you missed an hour expanding your skill-set to manipulate and get data into a format which can be fed into well understood and maintained algorithms. Once you feel like you get produce results, go back and think about the underlying mechanics. My 2 cents from experience.
- jamez1 9y agoMake sure you load up on mathematics, in both pure and applied. Try to find work where you'll either be immersed in statistical models or have the freedom to experiment with them. Capital markets such as equities trading will probably be the best place to look for work experience.
- stealthcat 9y ago1. Get yourself grounded in theory Learning from Data by Yaser Abu-Mostafa, and its companion book. Very theoretically heavy but worth the trouble (this is Caltech course) Do all assignments in the course with Python/Numpy/Scikit-learn 2. Choose your niche You need to NARROW down your interest. You can start broad just to know enough basics, but gradually pinpoint to making/hacking stuff that is most fun for you. Test waters on computer vision, speech, NLP, and games/robotics (reinforcement learning), or other less popular fields. E.g. Start with computer vision -> Basic convnet image classification -> Encoder-Decoder architectures -> End-to-end ConvNet monocular RGB to depth image generator Read papers that have published code on github, this let you reproduce and understand how things work, so that after awhile you can hack your own models and stuff