I think the #1 trap to avoid is that of the “perpetual student”. That is-always taking classes/reading but not actually doing anything with it.
The Fast.AI courses are fantastic. I took them both this summer then went straight into project mode. I just happened to release this today- a state of the art image colorization model:
https://github.com/jantic/DeOldify
Not to brag too much but it’s awesome. I learned a hell of a lot in the process too- maybe just as much as I did with the courses!
tl;dr: Definitely put the emphasis on doing projects, even if you feel ill-equipped (you will).
If you want to be employable right out of university: firstly, be very fluent in Structured Query Language (SQL); next, be efficient in Data Wrangling; lastly, get familiar with Exploratory Data Analysis (EDA) techniques.
Do personal projects to demonstrate these skills.
Lose the swift programming course, it’s not really relevant to you, and you already have a lot to cover in a tight space of time.
Good luck with your studies. As others have already said in this thread getting a researcher position will be super hard. There aren’t all that many positions available, and there’s so much hype around ML that they’re all super over-subscribed. You might be right that you don’t need a PhD, but a PhD and research experience are useful and you will be up against those that have them. You should consider getting some industry experience as a data scientist or data engineer (which might be a bit easier to get hired as) to complement your self study if you’ve decided academia is not for you.
You’ve got a lot of reading to do already, but I found the book So Good They Can’t Ignore You a helpful read when faced with a tough career choice. It’s not super long, and has some interesting ideas (mostly based on anecdotal evidence but useful nonetheless).
Site: https://realless.glitch.me/
Code: https://glitch.com/edit/#!/realless
This site is using TensorFlow.js Face Landmarks Detection model to detect blinking. Feel free to ask any questions on how it works. ☾ *✧.
It was from a talk he gave a few months back that I attended. I do not think there is video or slides made public from it, though it seems Zendesk DS team has been giving similar talks all over.
EDIT: googled some and there seems to be a video on o'reilly but behind a paywall: https://www.safaribooksonline.com/library/view/strata-data-conference/9781491985373/video317340.html
The context is that they were classifying documents in customers' knowledge base and while the Logistic Regression worked well, it was trained per-customer and required a LOT of data per customer to get going.
They pursued NN for NLP so they could learn across customers and a new customer's very first document could be classified by the algo -- so the NN has a serious business value advantages over the logistic regression, which is why they stuck with it. But it took them a while to get the new setup going.
To the already excellent list I would like to add Zotero: https://www.zotero.org/
It's a free reference manager. I have been using it for a while and it is quite useful to manage references.
Hey everyone, this is Quincy with freeCodeCamp. Some people emailed me asking whether this is an official freeCodeCamp course. The answer is: Yes – this is 100% official.
We have never done a multi-week live-streamed course like this before. But Aakash has proven himself to be a capable and thoughtful teacher. Check out his free 10-hour PyTorch course and you'll see what I mean: https://www.freecodecamp.org/news/pytorch-full-course/
In conclusion, I am really pumped to see what Aakash does with this course, and to see how you all like it. Happy coding.
Learning how CNNs work is the place to start. If you like PyTorch. If you like Tensorflow. The rest is really just fancy image processing.
I got accepted into the PyTorch Scholarship Challenge from Facebook-Udacity. The course starts next Friday, and I’m having a mixed feeling of nervousness and excitement!
My goal for next week is to review some numpy and algorithm, data structure stuff to ensure a good start in the scholarship challenge!
Yes, it is. I improved its algorithm to create my healthiness classes and assign them as labels for each product in my data set. Then, I trained my model to predict healthiness classes of products without any healthiness indicator.
https://play.google.com/store/apps/details?id=com.SEFDStuff.RunForrest This is also a Machine Learning based game, the guy who made this runs a youtube channel and teaches machine learning, it's quite cool.
I can vouch that this is a great book.
Book : https://www.safaribooksonline.com/library/view/introduction-to-machine/9781449369880/
Git repo with jupyter notebooks : https://github.com/amueller/introduction_to_ml_with_python
Most libraries have the installation instructions on their websites or somewhere on the internet. As with compatibility with the M1 Mac, I think a lot of libraries are yet to be usable on the newer Macs. I found this StackOverflow post that has more information.
On a side note, I actually like using anaconda as my Python distribution which makes it easy to install packages like numpy, pandas etc and also organise virtual environments. However, you will have to see if it works with your Mac but I think the SO post mentioned using miniconda to install ML packages so I think it might work.
I'd like to suggest learning Pytorch.
It has a Numpy like structure and is way way easier to learn than Tensorflow.
Although I have to warn that Pytorch is not similar to Keras.
For that you might need Fast.ai or Pytorch Lightning.
But overall as you have a will to do raw coding I say give pytorch a try.
I started Pytorch with this course.
If you are a developer that recently got interested in deep learning, the answer is yes. The course is this one (it is free) and I would say that it is even a bit outdated. If you are interested in doing very simple image applications you could attempt to only watch until CNNs. However, I strongly recommend watching it fully, as the other topics are very helpful for NLP and even computer vision. I think the course does not include the transformer architecture, which originally came from NLP, but it is now revolutionizing even the computer vision field. Luckily the HuggingFace team released a course that is almost hands-on with transformers using their library (which is also called transformers). There are also some YouTube videos that cover the transformer architecture, sometimes even better than full online courses.
Our AI program does a very good job of covering the fundamentals/foundations and the theory behind Deep Learning (as well as the other topics you've identified earlier in the program). This is definitely an area in which what you are learning know will build up into the foundations of Deep Learning.
If you're looking for a more applied approach to Deep Learning, where you are developing a lot of projects and using Deep Learning to solve a lot of various problems, our Deep Learning Foundations Nanodegree programs takes this approach.
Many of our students end up taking both the AI and the Deep Learning Foundations Nanodegree programs. This way, they get the fundamentals as well as a lot of applied practice.
Full Disclosure: I work at Udacity as the Director of Content Development.
And did you try checking this very subreddit's wiki?
Here is a simple example https://brilliant.org/wiki/multivariate-regression/.
The same principle holds for other regression techniques.
There many other modelling tools and approaches that can handle multiple responses. Just search for multivariate + desired method.
Assuming you have room for a budget and need an actual tech-working solution ASAP, i.e., you're not trying to reinvent the wheel, have you considered looking at SaaS solutions such as Algolia?
You probably can also find other chatbot APIs and you can basically use that to find the input you need to feed into Algolia's API.
There are also open-source tools such as Elasticsearch but if you need this solution ASAP, I wouldn't try to implement all the NLP search algorithms myself
If you're a university student (or even a former one, like me), check to see if your academic email gives you access to O'Reilly Safari. I'm reading the whole second edition online now for free.
Note that equations don't seem to display correctly for me in either Chrome or Edge, but they do show up correctly in Firefox.
Here is an introduction to the language: A Simple Introduction to the Julia Programming Language
And here is one for ML: Why Julia is Slowly Replacing Python in Machine Learning and Data Science
I actually think Julia has better syntax than Python for a ML engineer. Play around with it.
You can get some pretty good results going with DCGAN which is a pretty popular image generation GAN architecture. https://pytorch.org/tutorials/beginner/dcgan_faces_tutorial.html This is a link to the pytorch guide and implementation. You could perhaps try a denoising problem with it by getting some image dataset, putting artificial noise into the dataset, and see if you can reconstruct a better image? This was one of my first projects and got some neat results. Even better if you try to reimplement all the pytorch code just so you know what it all does.
I can't really speak to deeplearning.ai, but I think you should go with Stanford's cs231n course. I'm sure the more recent iterations are great as well, but I really like the 2016 version with Karpathy as a lecturer. Just incredibly clear and has a knack for conveying the intuition behind why things work and insights into how practitioners think.
Given that you want to learn pytorch, the assignments will be really invaluable. There are some assignments towards the end that you can do in pytorch, but the real benefit is that most of the code you'll be writing is stitching together numpy operations to create different types of deep nets, which translates incredibly well to doing the same thing with torch tensors. For getting started with pytorch, I really like this tutorial by Jeremy Howard that builds up familiarity with the different higher-level abstractions in the framework and what they are doing.
Download Python 3 from Anaconda and start with their suite of tools (Jupyter notebooks, Spyder, etc). Then as you get more comfortable you can expand to other ides or text editors
Edit: Here’s the link to anaconda
Is writing a rest api that takes a simple input like a file path and returns length of it hard? A model api at least for an initial usage can be quite simple so mostly a question of do you know how to write a rest api. I'd recommend flask/fastapi. Flask is more common while fastapi is simpler especially if you have no desire for a website/app. If you like the cloud you could also use something like aws lambda/cloud functions. They are a very good fit for this situation. This book is a bit overkill, but if you want a deep dive into how to deploy models in production it's a good read, https://www.amazon.com/dp/165206463X. Chapter 2 is flask approach while chapter is the aws lambda/gcp cloud functions approach.
​
There are a lot of more advanced things related to model apis but if you have a queries per second of a couple (which is a ton per day) and only 1/2 models than a very basic api is fine.
For NLP in Python, read: Practical Natural Language Processing: A Comprehensive Guide to Building Real-World NLP Systems
For Python, check out the freeCodeCamp Python videos on youtube
For ML in Python read: Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow
I think being average has its merits.
Knowing I have no raw talent to fall back on makes it clearer there's no way around hard work. On the other hand, understanding that I can never catch up to somebody with raw talent who also works hard means I need to get creative to close the gap, optimizing how I study with specialized courses and tools.
Since there's no image to keep up, I'm not really afraid of sounding stupid when asking lots of basic questions, sharing my ideas, or seeking mentorship in general. I also don't consider re-reading introductory material a waste of time, which has helped in solidifying the fundamental understanding of key subjects.
Studying in a lesser-known university, I didn't even bother with publishing in top conferences. Instead, I opted to experiment with ways I could stand out: choosing a non-standard undergrad major (stats), participating in lots of competitions on a variety of subjects, giving talks, teaching courses, contributing to -- and creating my own -- open-source projects, writing blog posts, and so on. I didn't really excel in any of them but I still had something to show in a diverse range of skill-sets.
Finally, there's just pure luck. I was lucky to have a supporting partner; lucky with patient teaching assistants, supervisors, and mentors; lucky to pursue a subject that aligned with what the lab was interested in; lucky with various people taking a chance on me career-wise; etc.
TL;DR: a combination of hard work and dumb luck.
remember: you can spin up what you need on AWS when necessary, plus you should probably know how to do this anyway.
I suggest working through some of the tensorflow tutorials, I used the bitfusion ami with ubuntu which comes preinstalled with gpu support etc, though you might have to configure some things I'm sure. If you're studying cs and already know a little bit about jupyter notebooks this is a good route
for the laptop, go for good ram
most of your machine learning related tasks will likely not require gpus on your home computer
Yeah. I am not affiliated with DataCamp and generally don't want to advertise non-free content, but DataCamp is a pretty good one to get up to speed with Python for ML & data science applications. However, I also recommend learning Python from a computer science perspective. I.e., alongside learning some math and programming, I highly recommend learning also computer science basics, which is immensely helpful in machine learning. A good (I think still free) course is the CS101 Intro to CS with Python course on Udacity (https://www.udacity.com/course/intro-to-computer-science--cs101)
I'm seeing many more moderate to advanced courses on udacity/udemy/coursera actually.
e.g. https://www.udacity.com/course/reinforcement-learning--ud600
Also, while you might not find a full course online, there are many videos of single lectures geared toward researchers/grad students.
This free Udacity course https://www.udacity.com/course/intro-to-machine-learning--ud120 uses scikit-learn. It goes straight on to practice a few of the most common ML models, and some common data processing functions too.
In more detail:
Are you modelling this as Reinforcement Learning? In a way, RL frameworks inherently expect that the network output will influence its own input.
Not sure if this is helpful at all, but your problem reminded me of this article
If you like windows interface and workflow like I did when I had to switch to linux due to ML, I would suggest you to go for a distro with KDE as your desktop as it's interface is similar to windows and chances of you sticking with linux will increase. That was the case for me at least. I would suggest KDE Neon.
Personally, I have fell in love with Scrapy framework. While there is a slight learning curve when starting off, if your project involves scraping more than a couple of webpages, Scrapy is definitely worth learning.
Once you learn the basics, you can just focus on the core logistics of getting the stuff you need instead of wasting time on making your scraper robust. Scrapy already has built-in features for handling various situations such as redirection and 404 error, which save you a lot of time for your real project.
Oh yea I had a lot of trouble finding any resources that talk about cnn backpropagation in an understandable way, most would skip over that part and just refer to using libraries, or they would get into the deep math using way too many superscripts and subscripts on inconsistent labeling, and never actually show how to apply that math anywhere.
Here's the paper that I found, that was the most consistent and understandable, as it keeps everything with the same terms, and goes through everything, so I was able to find parts I understood (getting the loss and doing backprop with the sigmoid layers), and using that understand the other parts, (the convolutional layers).
Hi,
So I tried the code on Google Colab, using both CPU and GPU runtimes.
It was twice as fast on GPU than on CPU. So it's definitely using the GPU capabilities.
But I'm guessing it might have been a powered down GPU.
I'm not an expert on this, but I would assume that you should try other platforms.
Floydhub gives you 20 hours of free CPU time, and if you enter your card details, also gives you 2 hours of free GPU time. You can cancel before your GPU time is up and you get billed. Since you already have your code ready, you can run it there and see how fast it goes. I believe they also have a Python library, so that you can write the code on your local machine and let them do the processing, you can look up their docs for this.
If you think paying a small price for a few minutes of powerful GPU time is worth it for the work you do, you can try Paperspace (https://www.paperspace.com/pricing), they have pay-per-second billing, and a service called Gradient which looks like Jupyter/Colab, and should make it easy for you to paste your code there and run it.
Haha actually nothing! I already do this for remote access to computers at work!
If you are running an android OS on Tablet or Phone you can use a great program called NoMachine. They offer the basic personal use for free.
You need to be comfortable side loading to your phone, but it's really no big deal.
Go to this link for more info: https://www.nomachine.com/download/download&id=77
Final recommendation would be to purchase stylus for use on a phone since it can be hard to mouse properly with a finger.
PS - I have not tried, but I bet you could get a Bluetooth keyboard connected to your phone too.
FYI OP, if you don't know how to use, check the example here:
https://pytorch.org/docs/stable/autograd.html#anomaly-detection
What it will do is show where in the forward calculation the error comes from.
Baselines and other RL libraries tend to be implemented with torch or tensorflow so you won’t necessarily have a lot of touching points with their inner workings.
I recommend starting with this tutorial: https://pytorch.org/tutorials/intermediate/mario_rl_tutorial.html
It goes into real detail on every (well-observed) step you listed above.
In classic ML-industry fashion, quantization is an overblown term referring to precision reduction. PyTorch docs actually have a decent TLDR of the theory and practice of quantization.
You have used the wrong functionname to define the length of the dataset, you are using __length__
while you should use __len__
as per the pytorch docs.
It honestly depends on what you're struggling with. If it's the actual ML then it might be better to focus on learning that. If it's something library specific I think it's better to step through the code and figure it out that way. PyTorch has some pretty good documentation, just look up everything that seems odd.
PyTorch code is typically broken up into 3 or so pieces. Managing the data, defining the network and running/using the network. Data management is typically what changes the most from project to project.
I would consider what you linked to be a more advanced example of using PyTorch. If this seems difficult it might be better to check out their training a classifier example.
layer = nn.Linear(41* 2048, 2048)
then
layer(input_tensor.reshape(-1, 41 * 2048))
or something similar
What I would do is first take some online courses to learn the basic math, strategy, and terminology. There's plenty of those "Learn machine learning in 6 months" videos on Youtube that layout the roadmap for beginners. If you want to be respected in academic circles, you had better know basic stuff like common terminology, basic coding, data mining methods, how to read statistical results, etc.
Second, check out meetup.com for local interest groups. I recently did this and found a community of Python coders, machine learning enthusiasts, blockchain developers, and a bunch more. It's all free, and there's no better way to learn than from others who know more. It's also a great way to get your name out there in the community.
Third, I would concentrate on certs and developing projects to post on github. Certifications won't make a huge difference, but getting one that is moderately difficult would be better than have no credentials at all imo. Developing projects is probably the best way to show your competency.
EDIT: To expand on the certifications, I meant to write that you should look for certs related to machine learning. I know you can get certified in things like Python, project management, IBM Watson, Azure, AWS, etc.
I've got the first edition of this (now in second edition) and find it good. It's designed as a textbook, so there are loads of questions and a lot of it is pretty theoretical.
https://www.amazon.com/Fundamentals-Machine-Learning-Predictive-Analytics/dp/0262044692
Fundamentals of Machine Learning for Predictive Data Analytics, second edition: Algorithms, Worked Examples, and Case Studies 2nd Edition
by John D. Kelleher, Brian Mac Namee, Aoife D'Arcy
Maybe that's along the lines of your request?
I don't know if that course is really good, anyhow here are a couple of links
github colab and amazon link for the book
https://github.com/fastai/fastbook
https://www.amazon.com/Deep-Learning-Coders-fastai-PyTorch/dp/1492045527
Yes, the book is aimed at Data scientists, data analysts, and software developers who are new to machine learning and want to use it in their applications will find this book useful. This book is also for business users looking to automate business tasks with machine learning. Working knowledge of the Python programming language and beginner-level understanding of machine learning are necessary to get started.
Table of content :
Machine Learning and the Idea of Automation Deep dive into TPOT Exploring Regression with TPOT Exploring Classification with TPOT Parallel training with TPOT and Dask Getting Started with Deep Learning: Crash Course in Neural Networks Neural Network Classifier with TPOT TPOT Model Deployment Using the Deployed TPOT Model in Production
More about the book can be found on the Amazon book page attached.
Thanks,
I use Pyro5 for this. It creates an in memory instance of a python class as a daemon which you can load your model up in and access class methods (such as predict) via a proxy. You can do this on Linux or windows. If your computer science skills are lacking this may be a difficult route. Creating python daemons in Linux is not an easy task. Python Cookbook does give a recipe for it though.
https://pyro5.readthedocs.io/en/latest/
https://www.amazon.com/Python-Cookbook-Third-David-Beazley/dp/1449340377
I've been skimming this book and it's pretty good (Amazon but not affiliate link)
The problem with one resource is there are an infinite number of configurations. A timeseries CI/CD pipeline on AWS is going to be almost completely different from an streaming image classification application on Azure.
Then there's the backend of things on the company's side. Tons of different databases and coding conventions.
I use Python as well. There is a port to PyMC3
This is what I used when working through the book.
There’s Bayesian Analysis with Python. I own this as well but have only read the first couple chapters.
I went through Statistical Rethinking first and it has so much valuable info that I don’t feel I need to work through another Bayesian book for a while.
Statistical Rethinking by Richard McElreath
There is a lot of gold in this book and basically starts at first principles for Bayesian analysis. I refer back to it regularly.
Indeed, you can preorder it from Amazon here
​
I've currently reading it, if you have subscriptions to safaribooksonline the 2nd version is already available in draft mode, and find that it contains just enough theory + hands on to keep things interesting.
​
The second chapter dive straight into an End to end so that you get the overview picture right away instead of spending too much time on any particular area.
If you're worried about not doing projects and participating in Kaggle competitions, why not do those things? They're pretty low risk and high reward. If you're feeling shaky on the theory, read papers and reference textbooks, take notes, and implement things that interest you. For deep learning stuff there are some good resources here: https://github.com/ChristosChristofidis/awesome-deep-learning. For more traditional methods you can't go wrong with Chris Bishop's book (try googling it for a cheaper alternative to Amazon ;): https://www.amazon.com/Pattern-Recognition-Learning-Information-Statistics/dp/0387310738. Side projects can really help here, and the key is to use references, but don't just copy-paste. Think of something you'd like to apply machine learning to with a reasonable scope. Search google scholar/arxiv for papers that do this or something similar, read them, and learn the techniques. For reading research papers in an area where you're not extremely knowledgeable, use the references in the text or google things you don't know and make sure you understand so you could teach someone else. If you're interested in the topic and exhausted the references, go up the tree and use google scholar to find papers that list the one you're reading as a reference - you usually find interesting applications or improvements on the technique. You can also often find open source training data in the appendices of papers. Kaggle also has a ton of datasets, including obviously the ones they provide for competitions.
"Neural sandbox beta" doesnt crash as much as "pocket neural network" https://play.google.com/store/apps/details?id=com.gobtech.nsbeta Android
"Pocket neural network" https://play.google.com/store/apps/details?id=com.viveret.pocketn2
I've been working on implementing a Capsule Network ( using MNIST) and I was able to pull out the trained decoder and throw it in an Android app.
source: https://github.com/JsFlo/CapsNet app: https://play.google.com/store/apps/details?id=fhc.tfsandbox.capsnettweak
New to ML and to really using Python for more than small scripts so I'm sorry for butchering and mixing coding styles.
Well, there's Transformers: A visual history by Jim Sorensen that's absolutely fantastic, it goes into the complete detailed history of the Transformers and is a pretty comprehensive reference to everything related to Transformers.
If that's not what you're looking for, I also really enjoyed Transformers, Vol. 6: War's End which chronicles the war for Cybertron. I have to be honest though that it will make more sense if you first read volumes 1 through 4 as well as Fate of Cybertron. Hope this helps!
Hi 👋,
The prerequisites are having some good skills at Python and having notions in Deep Learning. But no prerequisites in Deep RL
If it's not the case yet you can check these free resources:
Intro course in Python: https://www.udacity.com/course/introduction-to-python--ud1110
And this one in Deep Learning: https://www.udacity.com/course/deep-learning-pytorch--ud188
I will! Discounted it's 150€ which is doable for a 2 month course.
I am interested in the structure of this course because is not the typical programming course, but I want to see if there is something similar on edX and/or Coursera https://www.udacity.com/course/ai-for-business-leaders--nd054
I found the Udacity course on Computer Vision to be a good intro to computer vision. It's not difficult math, but it does introduce all operations from a theoretical perspective first.
Udacity has a good free one.
https://www.udacity.com/course/deep-learning-pytorch--ud188
​
Their full nanodegree is also based on pytorch and is pretty good.
Basically my advice for new programmers or new ML folks is RTFM :) That is, make sure you read any relevant documentation and don't just blindly throw data into a method or a function. Even if you think you remember from school how `$operation works I guarantee you that the implementation of that function in LibraryX has "gotchas" or oddities that will trip someone up unless you read through the documentation before using the library in practice.
In this case reading / understanding what the documentation says for the Albumentations resize
operation and the torchvision.transforms.resize
operation is the bread and butter of what you're running into. When I start using a new library I keep a tab open with a link to the official documentation and refer to that page often when coding up simple / toy examples to learn how a library works.
This text has 4.8 / 5 stars from 55 reviews on Amazon:
OpenCV-specific text; I doubt you'll find a book on PIL or Pillow though (but I could be wrong). Keep in mind that there's a newer edition of this book coming out soon, so you may want to purchase that edition so that you're not reading about / learning 'stale' syntax of the OpenCV library:
I heard of this book relating to MLOps by chip huyen She is a lecturer for the Stanford course CS 329S: Machine Learning Systems Design.
https://www.amazon.com/Designing-Machine-Learning-Systems-Production-Ready/dp/1098107969
Ps: but yeah learning the cloud providers recommendations and offerings for MLOPS may be a more straight forward way. For the first step anyway.
Probabilistic Machine Learning by Kevin Murphy. I will say this book was theory heavy but I found it absolutely amazing if you are willing to work through it.
As a full-time independent machine learning tutor/mentor, I've been looking for a good text book to teach beginning students from as well.
I recently came across Stephen Marsland's undergraduate level book "Machine Learning: An Algorithmic Perspective". I haven't read all of it, but what I have read I quite like:
I find this book helpful.
If you want to dive deeper, follow the recommendations for further readings.
Follow the textbook hands on ML with sklearn
https://www.amazon.ca/Hands-Machine-Learning-Scikit-Learn-TensorFlow/dp/1491962291
Follow the projects in the textbook, don’t just start randomly learning a library
Tensorflow and sklearn are very different things for different purposes
Most Data Scientists/ML Engineers are software developers. You will create code for transforming data, modeling it, visualizing it, etc and in a professional environment this (should, often will) go through code review, testing and all the other things that other software developers do.
(This)[http://aima.cs.berkeley.edu/] textbook was generally considered the AI textbook up until recently where it seems people are focusing more heavily on just deep learning/Gradient boosting, and a handful of other algorithms (which are incredibly useful ofc). And I think it's telling that most college courses that use/used this book were under CS departments (at least from the few I've seen). As are many other deep learning/AI courses.
If you want a deep understanding of computers from the ground up, I recommend (this book)[https://www.amazon.com/Elements-Computing-Systems-Building-Principles/dp/0262640686] as a good starting place.
My default rec is always [Gerón's Hands-on ML](https://www.amazon.com/gp/product/B07XGF2G87), but it might be a bit much if you're just getting started and aren't already comfortable with Python.
Gerón does a great job of walking through some actual ML projects while giving some sage advice. That being said, you're not going to be equipped to develop starategies for rolling out ML projects just by reading this book.
You might be better off looking around for workshops where people are breaking down prior use cases in the field which you want to apply ML. Then you'll start building a list of keywords/concepts that you have to learn. Sure there's overlap, but what works best for forecasting in supply chains is going to be very different from information retrieval in large corpora of text, which going to look different from generative art, and then all of those are going to look enormously different from ML applications in finance/accounting.
I’m only two chapters in, so take my opinion for what it’s worth, but this book is great: Algorithms for Optimization (The MIT Press)
Thank you everyone for the help! It was really helpful.
I built a simple public notion page where I jotted down every book you guys recommended to read. I also added the table of content under every book as a toggle list so that I can see which book contains which topic. here the link.
I think I am going to start reading the 100 page ML book just to get a grasp on the topics I will be dealing with. Next, I was planning on reading "Introduction to statistical learning" together with "MML - math for machine learning " for math references and maybe if I can handle it, the " Python Machine Learning book " for coding references.
Thanks again to everyone who took their time to help me, I really appreciated it.
I recommend the book Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow by Aurélien Géron. It's in my "must-have" list of ML books. It has exercises and little projects you can follow in every chapter. It's very hands-on and by the end of the book, you'll have projects you can showcase on your resume/github.
I also heard good things about fast.ai from multiple people, but haven't tried it for myself. It's next on my list. Maybe watch the first few lectures and see if you like them.
>I spent 8 months of daily work working through a textbook, but any time you spend on foundational stats will be time very well spent.
Huge respect for the grind! I also trying to improve my math skills. Any book recommendations for the maths and stats of ML? I heard good things about the book Mathematics for ML.
You can't go wrong with the book Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow by Aurélien Géron. It's in my "must-have" list of ML books.
Yes. Here's the link to it. Sorry I forgot he released a new book recently. Also, I've heard a lot of good things about Hands-on Machine Learning with Scikit-Learn, Keras etc by Aurélien Géron but never had a chance to look into it.
For learning python basic data amp and code academy are fine. For ai you need to take Andrew ng's machine learning and AI courses on Coursera. They are all free and his class shows the code and math behind various algorithms.
I also would suggest signing up for Udacity to take some free classes if you'd like a higher level explanation, they are also free. Udacity also offers paid subscriptions, and in the past I've created some accounts to do the week or month trial to sign up for a program and spend every night watching the lectures and do the program projects.
While learning about ML a good book is from orielly Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems https://www.amazon.com/dp/1492032646/ref=cm_sw_r_apan_glt_i_MX60RAA716SQZPE90QZJ
Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow: Concepts, Tools, and Techniques to Build Intelligent Systems https://www.amazon.com/dp/1492032646/ref=cm_sw_r_awdo_navT_a_NNXTVYE6KKA8QQSA076C
A lot of Qs there I will say for 4 - check out the first three chapters of pro git - https://git-scm.com/book/en/v2 . This will help you understand and also give you all the basic commands you will ever use.
I am talking about this one https://www.udacity.com/course/deep-learning-nanodegree--nd101
The syllabus is NeuralNets >> CNN >> RNN + LSTM >> GAN (CycleGAN)
Try Udacity's Intro to Machine Learning course. Not the Nanodegree. https://www.udacity.com/course/intro-to-machine-learning--ud120 It will equip you with the basics and you can work on projects. Try fast.ai for Deep Learning. That is seriously awesome! All the best.
You can start with Udacity's Intro to Machine Learning (free), or Coursera's Machine Learning (free) if you don't mind doing exercises in MATLAB/Octave.
I took their free intro to machine learning course: https://www.udacity.com/course/intro-to-machine-learning--ud120
I thought it was really helpful for learning the basics and very hands on. Im not sure I even finished it, but it got me caught up enough that I could move on to more advanced things on my own. It covered mostly sklearn in python. If you are new and want to learn how to implement ML algorithms right away I would definitely recommend it!
Why would you need or want a ML model to create noise - just use the building blocks that the framework uses to generate pseudorandom numbers:
Looking at your two code snippets, it looks like your init function is the same, causing the network to expect a different set of inputs than what you're providing. You can use Pytorch's inbuilt RNN modules as shown [https://pytorch.org/docs/stable/generated/torch.nn.RNN.html](here)
type TORCH.CUDA.IS_AVAILABLE
and see your current device torch.cuda.current_device()
Here you can change your device: https://pytorch.org/docs/stable/generated/torch.cuda.set_device.html#torch.cuda.set_device
Also, you change your runtime to a bigger instance for faster training in the option menu of google colab at the top.
If you work alone and are just starting out the simplicity of jupyter is nice but as soon as you start to collaborate in teams the versioning of jupyter notebooks starts to become a pain (a Jupyter notebook is saved in a JSON text file). I'd recomment you to take a look at code cells using magic with normal .py files (https://code.visualstudio.com/docs/python/jupyter-support-py). This way you can still work with cells, although not as pretty, and merge conflicts etc. are much easier to handle.
This one is a textbook and some of it ain’t for the faint of heart but it’s a goodie.
Foundations of Applied Mathematics, Volume 2: Algorithms, Approximation, Optimization https://www.amazon.com/dp/1611976057/ref=cm_sw_r_cp_api_glt_i_F14Y069E0R8XP7Q6D6KQ
Kevin P. Murphy's book 'Machine Learning: a probabilistic perspective' was a key reference text when I studied it at uni. I found it very helpful.
https://www.amazon.co.uk/dp/0262018020/ref=cm_sw_r_apan_glt_i_EB34R1WD1M7PAPTCJEDB
If you read my comment I gave you two books I recommend:
https://www.amazon.com/Introduction-Statistical-Learning-Applications-Statistics/dp/1461471370
https://www.amazon.com/Hands-Machine-Learning-Scikit-Learn-TensorFlow/dp/1492032646
Hey everyone! Thank you for sending over feedbacks and encouragements to my DM, really appreciate it!
Also, we have decided to launch on ProductHunt https://www.producthunt.com/posts/datature-portal ! If this is something you'd like to support, feel free to head on down to our PH post today 🙌
Semantic Scholar lets you search for papers across a date range, and sort by citation count. You can also create a "Research Feed" by selecting a few papers you are interested in and you'll get periodic emails letting you know about other relevant papers.
Thanks for your reply. I don't expect to get job ready with in 12 weeks. I'm just really intresseted in the topic and think that a certificate like this could be a nice addition on the resume of a fresh graduate with noch work experience.
Did you get back half of your tuition? Because they claim: "Graduate in 12 months, get a 50% tuition refund"
Also what level of math is needed in the nanodegree?
One approach to balancing data is upsampling the minority class(es) with data-augmentation. There is a range of popular data augmentation techniques, and many of them are well described in TensorFlow/Pytorch documentation now:
https://pytorch.org/audio/stable/tutorials/audio\_data\_augmentation\_tutorial.html
https://www.tensorflow.org/io/tutorials/audio
Use the Unfold function from PyTorch, it does the [3,H,W] to [n,3,h,w] you're looking for. After that, it's just a batch-like inference with you're classifer followed by a reshape.
For pytorch, I believe the basic thing you need is conceptual understanding of tensors and models (I've mostly used models from the nn library). pytorch itself has a quick introduction on it's website , which can be a good place to start (they also have a book's pdf on it, which is a book on deep learning but still helpful for reference). Once you have gone through it, and decided on your project, most of your time would be looking up the documentation/stack overflow to find immense pool of functionalities provided for tensors, distributions and models.
This one looks promising for me: https://www.freecodecamp.org/news/how-to-build-your-first-neural-network-to-predict-house-prices-with-keras-f8db83049159/
If interested, there is also a project tutorial, including code files, STL files, and instructions:
https://www.hackster.io/kutluhan-aktar/irrigation-level-assessment-by-thermal-imaging-w-tensorflow-c60b2c
It seems like it doesn't cover orthogonal projection or SVD analysis - two topics I think are important to understand. I think it's good but you might need to supplement it with something else.
If you're open to reading a book, I recommend https://www.amazon.com/Linear-Algebra-Learning-Gilbert-Strang/dp/0692196382 (it's by God himself, Gilbert Strang). It doesn't go too in-depth into the topics, but it provides useful information about everything you need to know for machine learning.