search
HomeCommon ProblemWhy did Google abandon Python?

Why did Google abandon Python?

May 16, 2019 pm 05:44 PM
python

Google’s open source Swift for TensorFlow is undoubtedly a special benefit for developers who are passionate about the Swift programming language. This also makes me admire the greatness of Chris Lattner, the father of Swift, even more.

Previously, Lattner led the development of Swift at Apple. It was not only fast and highly usable, but also extremely popular among the developer community. Subsequently, after a brief stay of six months at Tesla, Lattner chose Tesla in August 2017. Joined Google Brain, specializing in machine learning and artificial intelligence. At present, Swift for TensorFlow should be his first big move after joining Google.

Why did Google abandon Python?

#In addition, TensorFlow also introduces several important areas of the project in detail. Through the "Graph Program Extraction" algorithm, developers can use Eager Execution-style programming. models to implement code while retaining the high-performance advantages of TensorFlow computational graphs. Moreover, this project also allows developers to use Python API directly through Swift code.

Of course, TensorFlow officials also mentioned that the reason for choosing Swift as the main language is that "the implementation of reliable Graph Program Extraction algorithms has high requirements for the design of programming languages."

Generally speaking, since Tensorflow is open sourced, the API it provides has enough freedom to build neural networks, which to a large extent solves the worries for developers to build and implement functions. But on the other hand, , in view of the use of TensorFlow's basic model, Python is the most comfortable language for data scientists, and it is also a natural fit with TensorFlow. Even fast.ai founder and former Kaggle president Jeremy Howard commented on Twitter after seeing this project: "Can we finally put down Python?"

Recommended courses: Python Tutorial.

Previously, TensorFlow officials gave a special reminder: "It is too early to rewrite your deep learning model using Swift for TensorFlow."

So, how can we When do you really need to start investing in Swift?

Recently, Jameson Toole, co-founder and CEO of Fritz.ai, published an article titled "Why data scientists should start learning Swift", in which he Talked about Swift for Tensorflow and the future of machine learning development.

Don’t think of Swift as a simple wrapper for TensorFlow to make it easier to use on iOS devices, he said. It means much more than that. What this project will change is the default tool used by the entire machine learning and data science ecosystem.

Why do you say that?

He continued:

"In this context, we can see that two trends are slowly permeating: one is artificial intelligence through neural networks and deep learning. Renaissance; one is the shift to mobile-first applications running on billions of smartphones and IoT devices. Both technologies require high-performance computing power, in which case Python is particularly ill-suited.

On the one hand, deep learning is computationally expensive, requiring passing huge data sets through long chains of tensor operations. To perform these calculations quickly, software must combine thousands of lines and cores with specialized processors. Compilation. When the power consumption and heat of mobile devices are really concerned, these problems begin to intensify. Relatively speaking, exchanging less memory for a more efficient processor to optimize applications is a waste of time. Small challenge. Obviously, so far, Python is still not a good solution.

For data scientists and machine learning researchers, this is a big Problem. Because we no longer resort to letting the GPU bear heavy workloads, but most people are stuck in the quagmire of mobile application development. It seems unrealistic to spend time learning a new programming language, but the switching cost is real. Too high. For example, JavaScript projects like Node.js and cross-platform abstraction tools like React Native. Now, it is difficult for me to complete projects in a Python environment.

In an era dominated by machine learning and edge computing In the world, Python cannot become an end-to-end language, mainly because of the promotion of Swift for TensorFlow. Chris Lattner believes that Python, as a dynamic language, cannot take us further. In his words, engineers need a programming language that treats machine learning as a 'first-class citizen'. Of course, although he profoundly elaborated on why adopting new compilation analysis is closely related to changing the way to build projects using TensorFlow, he The most eye-catching thing is the understanding of the programming process.”

The above is the detailed content of Why did Google abandon Python?. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Powerful PHP integrated development environment

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)