-
Notifications
You must be signed in to change notification settings - Fork 12
Description
Building ML experiences using the web platform-provided built-in low-level APIs and capabilities (WebGL, WebGPU, Wasm, WebNN) require domain-specific knowledge. JS libraries and frameworks have emerged to fill in the gap providing more approachable programming interfaces that not only increase developer productivity but also unlock ML in new areas such as education, learning, and accessibility.
TensorFlow.js and ML5.js represent two such higher-level abstractions. ML5.js provides the highest-level abstraction built around popular models for image, sound and text. ML5.js sits atop TensorFlow.js that in turn abstracts out low-level web-platform APIs to provide constructs ML practitioners are familiar with.
TensorFlow.js was discussed in the talk by @jasonmayes and talk by @annxingyuan. ML5.js was introduced in the talk by @yining1023.
Web platform has been incubating a few APIs that surface high-level abstractions, namely Accelerated Shape Detection in Images and Web Speech API (discussed by @kdavis-mozilla in his talk). These APIs are agnostic with respect to low-level implementation details and have been stuck in the incubation phase in part due to lack of interoperability and privacy issues.
Questions:
- Are we in agreement that advancing with standardization of low-level capabilities e.g. WebNN API is the pragmatic first step? Should we in addition consider standardizing higher-level abstractions in parallel e.g. Model Loader API, possibly others inspired by learnings from JS libraries and frameworks?
- What are the implications to user's privacy of focusing on the low-level capabilities first? See also the Extensible Web Manifesto.