W3C

– DRAFT –
WebML WG Teleconference – 14 Oct 2021

14 October 2021

Attendees

Present
Anssi_Kostiainen, Chai_Chaoweeraprasit, Ganesan_Ramalingam, Jonathan_Bingham, Ningxin_Hu, Ping_Yu, Rachel_Yaget, Rafael_Cintron
Regrets
dom
Chair
Anssi
Scribe
Anssi, anssik

Meeting minutes

WebNN API recent new feature requests

Autograd / JAX proposal for future work

issue #218

anssik: JAX is a research-focused framework based on composable function transformations
… "JAX is Autograd and XLA, brought together for high-performance machine learning research"
… it combines an updated version of Autograd (standalone Autograd is no longer developed) and XLA
… Autograd is an automatic differentiation engine that takes a computational graph, and calculates input gradients
… XLA aka "Accelerated Linear Algebra" is the underlying domain-specific compiler that given a graph, compiles it into a sequence of computation kernels
… this enables model-specific optimization by fusing multiple computation kernels into one

Proposals repo for future work

anssik: I think a path forward could be to document this proposed future work in our proposals repo

Rama: I have to understand the goal, Autograd makes only sense in training, so in current WG scope it is out of scope

Chai: if we ask what is the future of training on the web, the trend is probably federated learning distributing training across multiple machines over the internet
… each with different datasets
… some ideas that the web is probably the best way realize this
… I can see that at some point, when machine learning on the browser becomes more mainstream, federated learning could make sense
… DML started with supporting inference, now we also provide backends for TF and other training frameworks
… I can see that in a few years think could be considered

<Jonathan> right, JAX

Jonathan: I'm happy to connect with Nikhil and Daniel

Ping: I have been working to get JAX models run for inference on top of TF.js
… most ops are compatible with TF, 10 ops are more generic
… and not available in TF and need to be reimplemented
… Daniel and Nikhil, Ningxin did early exploration composability
… we should perhaps think JAX-inspired design again, since its getting more popular
… also looking at federated learning
… at this moment training uses forward and backwards pass in JAX
… TF has its own type to compute gradient backwards, it is different
… given where WebNN is going it is possible to support grad ops or function

TPAC planning

anssik: I'd like to use the rest of the call to review our WebML WG Virtual Meeting sessions

WebML WG Virtual Meetings at TPAC 2021

anssik: to make the TPAC discussions productive, please do not hesitate to self-nominate yourself as a contributor to any sessions of interest and share relevant resources for background reading
… see "Contributors" in the meeting agenda for current volunteers
… but to facilitate discussion on the topic, we'd like to use our TPAC meeting time to have a bit more open discussion on higher-level topics than we usual do on our bi-weekly calls that focus on making progress with WebNN API spec and discuss its details
… I'll go through our session one by one to solicit your feedback

<Chai> i did get the invites

Rationale/criteria for adding new ops to the WebNN API

anssik: "Discuss what makes for a good criteria to ensure the WebNN API evolves and its scope is driven by right priorities, identify and distill key learnings from related work."
… in our current work mode, we evolve WebNN API and manage its scope based on use cases informed by customer (primarily ML JS frameworks) needs, validated by running code experiments (including polyfillable samples) and cross-platform implementation experience e.g. webnn-native

Chai: is this more of a discussion session?

anssik: open discussion

Chai: I'm not closely working with ONNX, but can share perspective on big and small ops
… if someone working closely on ONNX community would be good, maybe Rama might know?

Chai: in the past I had my opinion from the point of view of implementation of ONNX, experience I use when we work on adding WebNN ops
… I can help in any way useful
… for ONNX expert, we should go back and find that person

<Jonathan> Google has added lots of ops to TF, TFlite and its other projects, and has plenty of experience and learnings from adding things we shouldn't have ;-)

Rachel: I want to suggest a general discussion on computational intelligence

anssik: please add a comment to the agenda https://github.com/webmachinelearning/meetings/issues/18

anssik: can you check if someone from Google would like to join this session?

Jonathan: we'll check with Ping

Versioning and web compatibility

anssik: for this talk, we're expecting W3C TAG to share insights on the general web platform story
… the simple version of the story is that the web technologies are not versioned explicitly but rely on feature detection mechanisms to enable sort of defensive programming
… the ML domain had specific versioning requirements

ONNX Versioning

anssik: e.g. using ONNX as an example, there are three classes of versioned entities: Intermediate Representation version, operator version (for ONNX graphs), and model version

anssik: we'd benefit from someone to sharing learnings from the native ML-land with respect to what works for versioning

anssik: any reactions?

Privacy and security discussion

anssik: "Revisit privacy discussion and related work happening in the WebGPU WG, discuss fingerprinting guidance from PING and evaluate its mitigations."
… PING and WebGPU editors and chair invited
… I encourage folks to review the references ahead the meeting, good meterial:

Fingerprinting Guidance

WebGPU Security and Privacy Considerations

anssik: we also have made a commitment all out specs contain a section detailing all known security and privacy implications for implementers
… we're off to a good start here, and I think WebGPU has done great work documenting these considerations

WebNN Security and Privacy Considerations

WebNN open privacy issues

anssik: any other folks we should invite to this discussion on security and privacy?

ML JS framework performance, focus areas for WebNN

anssik: "Review ML JS framework performance data across backends, discuss learnings from backend implementation efforts."
… I know Ningxin & co are working on performance data, we hope to have it available in time for our meeting.
… I'd like to make sure we'd have folks for key ML JS frameworks folks around.

ningxin_hu: I can share what progress we've made so far
… we have webnn-native with DML on Windows and OpenVINO on Linux, have a prototype of TFLite Web WebNN delegate
… also ONNXRuntime Web execution provider for WebNN
… we have prototypes for those frameworks, also as shared before we have GSoC project OpenCV.js with WebNN backend
… we plan to collect data across Windows and Linux what webnn-native supports, we don't yet have browser integration so use Node.js binding to run Electron apps with WebNN
… good to invite people to review the data, we compare WebNN with Wasm, WebGL, maybe people from those groups are interested?

anssik: we can reach out to Wasm folks

Ping: also good to have Wasm and WebGPU folks in this session
… need to note the perf data is without browser integration, security implications might slow things down

ningxin_hu: working with ONNX Runtime Web to collect perf numbers, my ask is can we have ONNX Runtime Web folks these to have a good discussion and identify gaps we need to fill for the integration

Chai: we can invite Emma for this discussion

anssik: Emma Ning

Integrating an open-source cross-platform implementation of the Web Neural Network API into a web engine

anssik: Ningxin, any opens to address for this TPAC sessions?

ningxin_hu: please extend the invitation to
… we're using Dawn infra for IPC multi-process in Chromium
… we're working on design doc and will share the material before the meeting
… Corentin from WebGPU was interested and plans to join
… Edge is another important browser, maybe Rafael has interest to join?

<RafaelCintron> I will definitely be there, as well as for all the other sessions.

ningxin_hu: regarding implementation, security is an important topic for browser implementation and hardenings have performance impact
… it is important to understand how sandboxing influences the implementation

How should WebNN API deal with fusion

anssik: This session is looking for interested contributors, we'll drop this if no volunteers.

anssik: any interest for this topic?
… maybe we'll drop this

Conformance testing of WebNN API

anssik: "Discuss the progress in conformance testing of the WebNN API, web-platform-tests migration."
… @BruceDai has work in progress to convert the tests to w-p-t format
… I found our workshop session on conformance insightful, is there value in revisiting that discussion at TPAC? Any new information?

Chai: this is important topic
… due to hardware diversity
… if we want WebNN to work across hardware architectures, interoperability is important
… I have seen Bruce's PR, great work using w-p-t
… I put my comments in there, because I was a bit worried how w-p-t support is in place today
… when it comes to ensuring hw conformance, we may need to change it, to make it slightly better
… my comments in the PR, with some examples of methodology we use
… what we've seen in the past, we may run in the risk of not having the right behavior, or misleading results
… we probably need some additional work here for WebNN

Ethical issues in using Machine Learning on the Web

anssik: The Working Group is committed to develop a Working Group Note documenting ethical issues associated with using Machine Learning on the Web.
… I put together a first stab that could become a W3C Note

Ethical Web Machine Learning

anssik: I'm not an expert in ethics, so welcome someone with a passion on this topic to help out
… with Dom we've reached out to some people, but need your help make those connections within your companies
… based on what I learned reviewing the meta-studies, it seems almost every company has an initiative in the space of ethical principles given the importance of these issues

Rachel: I'm very interested in this, will come back with suggested speakers

Minutes manually created (not a transcript), formatted by scribe.perl version 136 (Thu May 27 13:50:24 2021 UTC).

Diagnostics

Succeeded: s/@BruceDai//

Succeeded: s/This session is looking for interested contributors, we'll drop this if no volunteers./anssik: This session is looking for interested contributors, we'll drop this if no volunteers./

Maybe present: anssik, Chai, Jonathan, Ping, Rachel, Rama