There's a lot of excitement about machine learning and its applications. The question is, what can you do with and where to apply the technique and how.
To learn more, I am interviewing Wenhe (Eric) Li, the creator of Pipcook.
Hi folks, this is Wenhe (Eric) Li, and I am currently an SDE at Alibaba Inc. My works involve combining front-end development, front-end developer, and artificial intelligence (AI). One of my tasks here is developing Pipcook, an open-sourced machine learning (ML), and deep learning (DL) framework designed for front-end developers.
Pipcook is a tool that helps you develop, train, and deploy an ML/DL model without much prior knowledge. The whole workflow is highly abstract without losing scalability.
It lets you use popular Python-based machine learning solutions, such as NumPy, scipy-learn, jieba, and TensorFlow, easily through its interface.
Since this framework is front-end and Node.js developer-oriented, and most DL/ML libraries have been written using Python, we created BOA to bridge the languages.
We introduce a concept of pipeline which contains
modelEva. Pipelines offer an abstraction over a typical DL/ML model lifecycle.
Pipcook developers, including the community, offer the most common implementation of these parts (we call them plugins). People who want to train their model can use an existing pipeline or combine plugins to make their pipeline just like playing with legos.
It's incredible as you can decide to put some IO-oriented jobs to Node.js and put more DL/ML training-related work under Python. Doing this allows you to get the most out of both.
Pipcook introduces pipeline and plugins to the DL/ML workflow. Doing this decouples the complexity of developing ML/DL models and makes the plugins highly shareable.
Since Pipcook is an experimental project, we can use state-of-the-art techniques and languages to develop our project. That means using Rust, WASM, WASI, WebGPU, and more.
So far, we've seen a clear tendency that AI comes into every corner of the world. And in the field of front-end, we still do not have an industrial level framework. Most DL/ML frameworks are still serving people who have related knowledge.
We just formally released our Pipcook a couple of months ago. This very first public release offers users an out-of-the-box feature of training a model for image classification, style transfer, and text analysis without much prior knowledge.
Therefore, for the current stage, we are working for the user experience and developer experience. We are trying to optimize the training efficiency and mitigate the learning curve of developing a plugin.
Apart from that, we are building an all-in-one toolkit, which includes viewing training log, inspecting, and visualizing model structure, and model pruning and compression.
In the future, ML/DL must have a stronger binding with the web in general. Distributed training, federal learning, and on-device inference will fourish in the web since all of them match the essence of the internet.
The web is essentially a community based on the idea of sharing, connecting, and open-source. Thus, try to connect, join, and work with the open-source community you are using or find interesting!
You could interview developers who have made their very first open-source contributions.
Thanks for the interview and this chance to share my journey along with Pipcook.
To learn more, see Pipcook site and Pipcook on Github.