- Developer,Advocate!
- Geertjan Wielenga
- 1259字
- 2021-06-11 12:59:29
How AI is developing
Laurence Moroney: For us, at Google, we're working on TensorFlow 2 and we're getting ready to release that. We have a number of events where we're going to be talking about that. Next week, we have a TensorFlow Developer Summit, where we'll be talking about some of the newest and greatest things.
The week after that, Google is hosting something called Cloud Next. I'll be speaking at that in San Francisco. The month after that, there's Google I/O. I'm doing talks about AI, machine learning, and deep learning.
My personal passion, and what I'm trying to drive within Google, is bringing AI out of the research and academic space to become a tool that any developer can use. I want AI to be the same as Java, widgets, or anything else that just became another tool in a developer's toolbox.
"I've been working with some of the biggest names in AI on developer-oriented training."
—Laurence Moroney
To that end, some of the advances that you'll be seeing in 2019 include making the APIs much more straightforward for the typical developer to use. I've been working with some of the biggest names in AI on developer-oriented training.
In addition, we're focusing on different runtimes. For example, it's all very well for you to be able to understand how to train a state-of-the-art model (for example, something like image recognition), but how do you get it into people's hands? The two biggest trends in development, of course, are mobile and web. I've been working with a tech called TensorFlow Lite, where the idea is that that's a runtime that will work on mobile devices like Android and iOS, as well as embedded systems.
You can start building your models on your development workstation and then deploy those models to a Lite runtime that works on embedded systems or mobile devices.
This also works when it's disconnected. You can do smart things using deep learned models too. For example, on an edge device, you can have a camera that might recognize a door opening or a door closing without round trips to the server.
Lastly, we've been working on something called TensorFlow.js, which is a JavaScript library that not only will allow you to run inference and models in the browser but will also allow you to train models in the browser. You can train a model to recognize you looking up, down, left, and right. Then you can control a Pac-Man game with that. That's one of my favorite demos that I like to show and that involves doing all of the training to recognize those images for computer vision directly in the browser, as well as executing that model in the browser.
Geertjan Wielenga: What is it, do you think, that makes AI and machine learning such hot topics today?
Laurence Moroney: I think it's the potential. Everybody wants a piece of that pie. That opportunity makes things exciting. From a developer's perspective, if I don't think about the dollars, I'm always excited by new things that open up new scenarios that weren't previously possible.
I'm old enough to remember that you used to build software that you'd burn onto a CD. Somebody would have to go to a shop and buy that CD and install it and hope that it had matching drivers. Then, the web came along and it opened up whole new possibilities for applications. The same thing happened when mobile devices came along. Now, you have this thing in your pocket that has web connectivity and a whole bunch of sensors. Would Uber have been possible if it wasn't for mobile devices? Would Instagram have been possible?
That's one of the things with AI that I always like to talk about from a developer perspective: there are problems that it's very difficult for you to solve as a developer writing traditional code. Think about activity recognition. If you're building a device like a fitness device, how do you detect if a person is walking? How do you detect if they're running or biking?
You might have a signal from the device for speed. You could say that if the speed is less than four, the user is probably walking. If it's greater than four and less than 12, then they're probably running. If it's greater than 12, they're probably biking. But that's a really naive algorithm and it really doesn't work. If you want to detect golfing, for example, those rules get thrown out of the window.
With AI and machine learning, the paradigm is shifted. I can gather data from a device when somebody is walking and be able to say that's what walking looks like or what running or biking looks like. A computer can be very good at spotting the patterns that distinguish these activities from each other. When it spots those patterns, it's actually coming up with the rules for walking, running, and biking, instead of me as a programmer trying to figure out the rules. Now, a whole new set of scenarios has opened up and become tools in my toolbox that weren't previously available. As an innovator, I think, "There's this problem that I want to solve. I couldn't solve it before, but maybe I can solve it now."
Geertjan Wielenga: What is available now to make those developments possible?
Laurence Moroney: In some ways, a lot of the techniques have been around since the '50s. This includes things like neural networks, the math behind neural networks, and gradient descents. I think there are two key differences now. The first difference is the availability of data. To go back to my earlier example, you can get data for what walking looks like, and so on.
The second difference is compute power. The rise of things like graphics processing units (GPUs) has made the ability to train systems fast feasible. You could potentially, in the '50s, have written something like a neural network that could have done training, but to train it to do the simplest possible scenario might have taken months or years. Now that this takes hours or even minutes, we've reached that critical point where training becomes feasible to do.
Geertjan Wielenga: One interesting aspect about your work is that you're not actually a TensorFlow developer advocate in the sense of being a tech advocate: it's more a conceptual thing and TensorFlow is a way to implement that. Would you agree that you are able to be a thought leader in the machine learning/AI area because of your developer advocacy work with TensorFlow?
Laurence Moroney: Yes, exactly; it becomes like a circular relationship. It obviously depends on the audience, but mostly when I speak with an audience, many of them are only familiar in passing with the concepts of AI, machine learning, and deep learning. I will explain how Google thinks about these things.
The industry is quite immature still. I read a statistic the other day that there are somewhere between 25 and 30 million software developers in the world but only 300,000 AI practitioners. Most of the time, I'm talking to the 24.7 million developers who are not AI practitioners.
Can you name any other tech that's been the subject of science fiction books since the dawn of science fiction in a negative way? Many people say that the very first science fiction novel was Frankenstein by Mary Shelley. When you think about it, that's AI. Dr. Frankenstein created this artificial life, which then ended up going wrong.
- Java語言程序設計
- LaTeX Cookbook
- Java Web開發學習手冊
- 玩轉Scratch少兒趣味編程
- Vue.js 2 and Bootstrap 4 Web Development
- 看透JavaScript:原理、方法與實踐
- Learn Scala Programming
- Yocto for Raspberry Pi
- Mastering JavaScript Design Patterns(Second Edition)
- 現代C++編程實戰:132個核心技巧示例(原書第2版)
- Python 3.7從入門到精通(視頻教學版)
- Python Deep Learning
- 邊玩邊學Scratch3.0少兒趣味編程
- Hadoop Blueprints
- Learning Dynamics NAV Patterns