Submitted by NoSleep19 t3_10vxd5z in MachineLearning
[removed]
Submitted by NoSleep19 t3_10vxd5z in MachineLearning
[removed]
Focus on math...
And stats
But but what about programming language :( no seriously I bought an o’reilly subscription, and I want to read books on a specific topic in programming while i m in train, bus , before bed, I can’t do maths all time! I searching more of a strategy which programming language will benefit me first, should I become advanced at one before I move to next or juggle both?
You probably want both, if you want robotics or biomedical. Most experiments and model training will usually remain in Python, but inference and final product may use a large amount of existing C++ code, where running the model is just one small piece, and nobody wants to ship python just for inference, if they can help it.
Some shops also use Rust for inference/integration, but good luck finding these blessed jobs.
TI Basic is the language of the future.
Followed closely by Pascal.
And Sanskrit, Latin, Ancient Mayan.
Focus on the basics. Math, algos, structures. The exact language is just a way to express these basics. Now, if you want to start coding right away, python is more common in ML atm.
[deleted]
It depends what you want to do. Deep Learning is pretty much to be Python, but 3D Reconstruction is almost exclusively C++.
If you want to do robotics, do you want to do Deep Learning for robotics, or do you want to do 3DR? Same question for medical imagine.
Also is what you want to work on run in a cloud service like GCP, or is it run on device? If it’s run on device there’s like 100% change it’s C++.
My plan is to know both.
If you learn C++ to a decent degree Python is relatively trivial to pick up. If you learn Python to a decent degree there's still going to be a bit of a learning curve when you learn C++.
It most likely depends on where you want to go. Python definitely has the higher usefulness for data science and machine learning in the narrower sense. But if you want to go deeper into high performance computing or work really close to the periphery, then you will benefit much more from C++. I learned C++ first and later Python in my studies. Looking at some of my colleagues, that doesn't seem to have been the worst way to go. Of course, others are also right when they advise you not to put too much weight on the choice of a programming language. It's just that Data Science is very diverse in its manifestations these days. And in some jobs it is very much in demand that you are a passable programmer and not just able to plug Excel macros together. So it does have a certain relevance which tools you can handle.
Focus on python. It's going to be a MUCH easier barrier to entry. If you see a specific niche you'd like to focus on with C++ then sure - learn that. But I would not recommend starting with C++. I did start there 20+ years ago and wish there was an easier way in back then. My main gripe is there's 100 standard ways to do things in C++ whereas python code tends to be fairly uniform across enterprises / projects / etc.
If you want to be an ML scientist and build actual models then you just need a lot of math and just enough programming skills for prototyping, go with any language and if you can code what you want then that is great. One thing to note is I have in my experience seen people only with a grad education and research experience in this field and some of them don't code they just write down algos and let developers implement that, so you might want to consider that.
If you want to be MLOps or data engineer that doesn't require much math or an advance degree, then start with books specific for those fields since these roles have slightly different stack.
One rule of thumb, if you are just dipping your toes in, is to start with a language that has great and free resources available, for ML (learning and prototyping) that happens to be python, but you need C++ if you actually want to deploy your model for a decent size industrial project.
I’ve been working in ML for 8 years and I’ve never seen or heard of a scientist being hired without at least one coding interview. Never seen someone just “write down an algorithm” and hand it off to an engineer. I would really like to hear where you saw this because it’s no where near my experience at big tech companies.
Take it from someone who learned C++ first, start with python. You are actually very unlikely to get an interview in C++. The industry standard is Python. Know your algorithms and data structure well enough to do the intermediate level questions on hackerrank and you’ll be in good shape
my boss during my internship at FB (now meta) came from academia and was a professor at one of the well-known uni, literally didn't write a single line of code during my 3 months there, all I/we (most of the team) got were scribbled notes written during our weekly meetings on what to implement...
Thx for advice, after careful research I agree with you.
Interesting! I guess if you’re a well know academic you can get away with that, but the rest of us need to know how to code
C++ is optional. It has its benefits but isn’t strictly necessary. The bulk of ML is calling functions from libraries which do the hard part for you. The part of python you really need to know is how to use the existing libraries. That is the bare minimum to do ML
I started with pascal, basic, and to a lesser extent asm when I was child in the 80. Asm was really helpful to understand at a low level how a computer actually works. Then I started learning c++ as a teen. Now it doesn't take long at all to pick up a new language. I agree with other posters to focus on the math. But learning c++ and then python would be my suggestion. That being said, you will be forced to use python while taking your class and doing self study. Might as well just learn both.
just one question, how much python do I need to know to be considered good? does that mean every popular feature + design patterns? vice versa in C++?
I wouldn't worry so much about how much you need to know to be good. Sometimes you need to know something enough to get a job done which is how I think of Python. Reality is python is a general purpose language, it's useful in about a million different ways and it's really not a difficult language. Everyone should have python in their toolbox. So just start using python. Use it for fun little projects that aren't necessarily school work. C++ is probably going to be the more difficult of the two. C++ is what you'll want to do when you are writing anything that needs to be really fast.
I'd take the classes in C++ and teach myself python through fun projects
Someone who is a skilled with C++ is an asset and often a useful and desirable part of a research or implementation team.
F-Lexx t1_j7jz4xj wrote
> [D] Should I focus on python or C++?
Yes.