Are Programming Languages Key to the Evolution of Machine Learning?
Python, the most popular language for machine learning projects, may not be "best" for moving ML and AI forward.
Facebook’s AI research director--an expert who has worked with neural networks since the 1980s--has said that deep learning may need a new language that's easier to learn and work with than Python, currently the most popular language among developers for machine learning projects.
“There are several projects at Google, Facebook and other places to kind of design such a compiled language that can be efficient for deep learning, but it’s not clear at all that the community will follow, because people just want to use Python,” Yann LeCun told VentureBeat.
There is a need to make artificial intelligence increasingly accessible to all, said Elif Tutuk, head of research at Qlik.
“We are at the stage where the data, compute and deep learning algorithms that are absolutely necessary to make AI a reality have all become abundant,” Tutuk said. “But just like the early days of computer technology, the use of state-of-the-art AI is locked out of the reach of millions of developers. At present, even the most popular deep learning frameworks all require a great level of expertise.”
There was a similar trend in the early days of developing computer software, she said, and programming languages like Fortran, C, and C++ were easier to use than assembly languages but were still largely inaccessible to most. It was the development of high-level programming languages like Java, Python, and PHP that made computer programming much more widely accessible, around the world.
“Without these high-level abstractions, the digital world as we know it today will not exist,” Tutuk said.
Popular vs. Best
Le Cun noted that it is not yet certain another programming language would be required or that Python’s days are numbered.
The basis for both Google’s TensorFlow and Facebook’s PyTorch frameworks, Python is two decades old and a language that people love using, said Jamie Cambell, founder of gobetvpn.com and an expert in cybersecurity.
“Companies are testing new processes, possibly new languages, and frameworks in preparation for decades ahead,” Campbell. “New languages won't be invented today and certainly not adopted in the near future.”
Despite being around for years, it’s only fairly recently that Python gained widespread popularity, said Erik Gfesser, principal architect at SPR Consulting.
“The reality is that hundreds of programming languages exist, but only a relatively small subset are commonly used in industry,” Gfesser said. “And when these commonly used languages are filtered for use on data analytics projects, only a handful remain.”
LeCun likely had a point in his discussion of compiled languages, Gfesser said, if he was referring to the relative performance of programming languages. But "best" is a relative term that depends on the goals of a particular programming language, he added, and even then best does not necessarily win out to become most popular.
Importance of Hardware
Further, Cambell said, in presenting his paper LeCun discussed not just the potential need for a new programming language, but also the growing importance of hardware on AI development, talking specifically about the need for hardware developed specifically for deep learning.
Down the road, Tutuk believes, the development of AI will trend as software development did.
“A great deal of innovations, both with programming languages and also with hardware developments, will enable anyone, from average coders to expert industry professionals in various fields to integrate artificial intelligence into every solution they build,” she said.
About the Author
You May Also Like