Which programming language should I choose for machine learning ?, Machine Programming Language
Which programming language should developers learn to get jobs like machine learning or data science?
This is a very important issue. We have discussed this issue in many forums. Today, I will give my own answers and explain the reasons, but first let's look at some data. After all, this is what machine learners and data scientists should do: Read data, not view opinions.
Let's look at some data. I will use trend search on Indeed.com to search for specific terms in actual job opportunities based on time. This indicates that employers are looking for talents with this skill. However, please note that this is not a public opinion survey on the effective use of skills. This indicator can better reflect the popularity of skills.
Let's not talk much about the data. I search for the keywords "Machine Learning" and "Data Science" I. The search options include programming languages Java, C, C ++, and JavaScript, as well as Python and R, because I know that it is very popular in machine learning and data science, and of course Scala, considering its relationship with Spark, and Julia, some developers think this is the next big thing in the programming world ". Run this query to obtain the following data:
Then, I used the keyword "Machine Learning" to search again and got similar data, as shown below:
So what do we get from the data?
First of all, we can see that it is not "a trick to eat ". In this case, various machine learning programming languages are very popular.
Second, all these programming languages are growing rapidly, reflecting the rapid increase in enterprises' attention and demand for machine learning and data science over the past few years.
Third, Python is obviously ahead of other programming languages, followed by Java, followed by R, followed by C ++. Python's leading advantages in Java are increasing, while Java's leading position in R is declining. I must admit that I was surprised to see that Java ranked second. I thought it was the R language.
Fourth, Scala's growth is impressive. It almost did not exist three years ago and is now at almost the same level as these mature programming languages. When we switch to the relative view of data on Indeed.com, this is easier to find.
Fifth, although Julia's popularity is not obvious, there must be an increasing trend. Will Julia become a popular programming language for machine learning and data science? We will tell you in the future.
If we ignore Scala and Julia so that we can focus on the growth of other programming languages, We can no doubt that Python and R are growing faster than common languages.
Considering the difference in growth rate, the popularity of R may soon exceed that of Java.
When we focus on deep learning, data is completely different:
At this time, Python is still the leader, but C ++ is now the second and then Java, while C is in the fourth and R is only in the 5th. The high-performance computing language is clearly emphasized here. Java is developing rapidly. It can quickly reach the second place, just like general machine learning. R is not very close to the top. I was surprised by the absence of Lua, although it is used in a major deep learning framework (orch), and Julia does not exist.
Which language is the most popular programming language? The answer should be clear. Python, Java, and R are the most popular skills when it comes to machine learning and data science. If you want to focus on deep learning instead of general machine learning, C ++ and C are worth considering to some extent. However, remember that this is only a way to look at the problem. If you want to find a job or want to learn machine learning and Data Science in your spare time, you may get different answers.
What is my personal answer? In addition to the support of many top-level machine learning frameworks, Python is suitable for me because I have a background in computer science. I also feel comfortable developing new algorithms, because most of my career is programming in this language. But this is me. People with different backgrounds may feel better at using another language. A statistician with limited programming skills will certainly prefer R. A powerful Java developer can use his favorite language, because there are a lot of open source code for Java APIs. Similar examples can be provided for any language on these charts.
Therefore, I suggest that you decide which programming language to choose based on your needs before you spend a lot of time learning a language.
Join the study exchange group 569772982 to learn and exchange.