W3C

– DRAFT –
WebML WG Teleconference – 16 June 2022

16 June 2022

Attendees

Present
Anssi_Kostiainen, Dom, ningxin_hu, Rafael_Cintron
Regrets
-
Chair
Anssi
Scribe
Anssi, anssik, dom

Meeting minutes

ghurlbot, this is webmachinelearning/webnn

<ghurlbot> anssik, OK

Privacy review refresh

Previous meeting agenda

anssik: Last time we made a resolution to Request Privacy Review refresh after the WebGPU (#175 and #85) and Device Selection (#169) privacy comments have been acknowledged in Privacy Considerations

<ghurlbot> Issue 175 Related WebGPU/GL Security and Privacy Considerations (anssiko) privacy-tracker, security-tracker

<ghurlbot> Issue 85 Fingerprinting via machine-specific artifacts (kpu) privacy-tracker

<ghurlbot> Issue 169 Device selection with MLDevicePreference and MLPowerPreference (anssiko) privacy-tracker

Resolution

anssik: issue #85 #175 and #169 are proposed to be addressed by PR #271

<ghurlbot> Pull Request 271 Privacy Considerations refresh (anssiko)

anssik: ... PTAL Ningxin, Chai, Rafael, others interested in privacy aspects
… questions, comments?

rafael: are you asking for review of #271?

anssik: yes - that PR aims to address by the mentioned issues
… we want at least to acknowledge known privacy issues in the privacy consideration sections
… in some cases we can specific normative mitigations
… here it's mostly informative text

Ethical considerations

ghurlbot, this is webmachinelearning/ethical-webmachinelearning

<ghurlbot> anssik, OK

anssik: would like to discuss the plan of publishing the First Public Working Group Note of the ethical considerations document

anssik: most recently we merged ethics workshop feedback PR #20

<ghurlbot> Pull Request 20 [closed] Incorporate feedback from the Ethical ML workshops (anssiko)

Ethical Principles for Web Machine Learning (Editor's Draft)

anssik: recently we've merged #20 based on the input from the ethical ML workshops

W3C Note

anssik: the proposal is to publish the editors draft as a W3C Note

... "A Group Note (NOTE) is published to provide a stable reference for a useful document that is not intended to be a formal standard."
… "Some Notes are developed through successive Draft Notes before publication as a full Notes, while others are published directly as a Note. There are few formal requirements to publish a document as a Note or Draft Note, and they have no standing as a recommendation of W3C but are simply documents preserved for historical reference."

anssik: it would be an informative reference in the WebNN API
… I think it is appropriate to publish a first note now, and publish updated via the automatic updates from the editors draft

dom: maybe we should do a CfC on the list?

anssik: let's do that

proposed RESOLUTION: Start a CfC to publish Ethical Principles for Web Machine Learning as a Draft Note and set up the document for automatic publication

RESOLUTION: Start a CfC to publish Ethical Principles for Web Machine Learning as a Draft Note and set up the document for automatic publication

Revisit WebNN API Candidate Recommendation scope

ghurlbot, this is webmachinelearning/webnn

<ghurlbot> anssik, OK

Current CR issues

anssik: new "cr" issue #272, discussed later today

<ghurlbot> Issue 272 Support asynchronous context creation (huningxin) cr

anssik: Review proposed approach to open use cases, proposed actions, please let us know if you have concerns:
… label post-CR or close #207

<ghurlbot> Pull Request 207 Update "Performance Adaptation" use case (spshin3)

dom: #207 should probably become an issue where the design could be further fleshed out, documenting what it'd take to support this
… or if this won't be a good fit for the WebNN API, we should document that in the PR and close it

anssik: my feeling is that it's clearly not for our v1 CR; maybe for future work
… but Chai has been arguing this is not implementable in the first place
… I'll mention this discussion in the PR

#253

<ghurlbot> Pull Request 253 Add "Ethical Content Filtering" use case to WebNN specs (humeranoor)

anssik: I've suggested a few possible next steps

dom: I guess on the high level since we're seeing some interest in use cases, maybe we should decouple use cases from WebNN API

dom: suggestion, take all WebNN use cases and bring them to a new doc that has use cases that WebNN API as of today satisfy and also future use cases for ML acceleration in the browser

ningxin_hu: this feels like a good use case but out of scope for WebNN

ningxin_hu: I personally feel this is a good use case but out of scope of WebNN API
… within the CG, we have the proposals repo which is another place where this could be redirected for incubation
… within the CG we have the proposals repo so could use that for incubating this idea

<ningxin_hu> https://github.com/webmachinelearning/proposals/issues

<dom> +1 to using the proposals repo in the CG

Current CR issues

anssik: Integration with real-time video processing

ningxin_hu: if we focus on full-GPU processing, we can interop with GPU APIs, WebGPU is then our target and thanks to Chai's PR we have CommandEncoder for WebGPU, only remaining work is coordination with WebGPU WG for interoperability

#226

<ghurlbot> Issue 226 Integration with real-time video processing (dontcallmedom) cr

dom: I consider #226 a WebNN issue, I don't expect WebRTC WG to have an opinion whether we can close this issue
… I feel confident we can close this issue when we have integration story between the involved Web APIs clarified

ningxin_hu: to me, the major part is WebGPU and WebCodec interop and requirements
… currently we don't have WebGPU interop as a "cr" GH issue

anssik: WebGPU interop is tracked as part of wide review

ningxin_hu: WebGPU group marked its https://github.com/gpuweb/gpuweb/issues/2500 issue "post-V1"

<ghurlbot> Issue 2500 [not found]

dom: how critical we think interop with WebGPU and WebCodec is, my perhaps biased perspective is it is critical
… if we bring performant acceleration but introduce memory copies then some value is lost
… I think wide review from WebGPU is not quaranteed, may be are you using our API properly, maybe not looking at the integration arch

anssik: so it sounds like we should open specific issues for interop with webcodecs and webgpu
… mark them as cr dependencies
… and remove that label from #226

<ghurlbot> Issue 226 Integration with real-time video processing (dontcallmedom) cr

<ningxin_hu> works for me

<ningxin_hu> confirm

RESOLUTION: In response to real-time video processing #226, Ningxin to open new issues for WebGPU and WebCodec WebNN interop issues and remove "cr" label from #226 once done

#210

<ghurlbot> Issue 210 Add method steps to operations (anssiko) cr

#128

<ghurlbot> Issue 128 WebNN should support int8 quantized models (wchao1115) cr

<RafaelCintron> +1 to being in scope.

CommandBuffer usage clarification

#264

<ghurlbot> Issue 264 CommandBuffer usage clarification: internal, external, both? (bbernhar)

2022/06/02 minutes

anssik: our proposed path was to have a note section in the spec to describe interaction and resource sharing rules for implementers
… if this is still our best understanding, I'd like to update the issue with this or create a PR with the changes and ask Bryan's review

RafaelCintron: haven't had time to chat with Bryan yet and Chai is on vacation

Proposed new features

Support asynchronous context creation

#272

<ghurlbot> Issue 272 Support asynchronous context creation (huningxin) cr

ningxin_hu: this is related to #229 and #230

<ghurlbot> Issue 230 [closed] Should WebNN support async APIs? (huningxin) cr

<ghurlbot> Issue 229 [closed] Should restrict the sync APIs to only exist in Workers? (huningxin) cr

related discussion in Chromium CL review:

<ghurlbot> Issue 16 [not found]

ningxin_hu: The proposal is to introduce an async version of createContext and restrict the sync version to be only used by worker thread.
… The model loader API has an async version of createContext. It would be better to have a consistent naming for sync and async methods between the two WebML APIs.

anssik: WebGPU uses async post-fix

dom: I checked there's only 2 examples of sync postfix
… across all Web APIs
… so consistency story is async postfix
… given sync version is a facility for "non-JS developers", used for bringing non-JS codebases via worker to the web
… this suggests making async default and use sync postfix

<RafaelCintron> +1

<dom> instances of sync postfix: FileReaderSync(), CSSStyleSheet.replaceSync(text)

RafaelCintron: I agree we should make this method async

<ningxin_hu> +1

<ningxin_hu> i'll craft a PR for review

Support coordinate transformation modes for Resample2d

#270

<ghurlbot> Issue 270 Support coordinate transformation modes for Resample2d (Honry)

anssik: Wanming requests: "Can we support these coordinate transformation modes in WebNN? At least for asymmetric, half_pixel_centers and align_corners. Or maybe we could refer to DML by defining InputPixelOffsets and outputPixelOffsets options in Resample2d to implement various coordinate transformation modes."
… please comment on GH

Define the data type of the padding, strides and dilations

#269

<ghurlbot> Issue 269 Define the data type of the padding, strides and dilations of MLConv2dOptions as sequence<unsigned long> (miaobin)

anssik: Bin explains: "The data type of padding, strides and dilations of MLConv2dOptions are defined as sequence<long> now. When we implement the backends of WebNN, we found that the data type of these arguments were defined differently by each backend. In fact, there is no need to use negative value for these three arguments, unlike axis in MLSplitOptions. So should we use sequence<unsigned long> to define these three

arguments?"

Web Platform Design Principles > Use numeric types appropriately
… please provide your feedback in this issue

TPAC 2022

W3C TPAC 2022

anssik: 12–16 September 2022, hybrid meeting
… In-person hub:
… Sheraton Vancouver Wall Centre
… Vancouver British Columbia, Canada

About TPAC

anssik: "This event brings together W3C technical groups, the Advisory Board, the Technical Architecture Group and the Advisory Committee for exciting, coordinated work. The benefit of assembling the community for thought-provoking discussions is invaluable."
… "This year, the meeting will be hybrid with the main in-person hub in Vancouver, Canada, and remote event attendees."

Tentative schedule

anssik: Tentive WebML WG/CG schedule:
… Tue 13 Sep 2022 15:00-18:00 Vancouver / 22:00-01:00 UTC / 6:00-9:00 Shanghai (Wed 14 Sep)
… Tentative ML Ethics workshop sessions: Mon 12 & Thu 15 Sep 2022 afternoon(?) Vancouver time
… Media & WebRTC WG joint meeting participation possible, an opportunity to discuss WebNN and WebRTC & Media joint work

<ningxin_hu> thanks for the PRC friendly slot

anssik: such as integration with real-time video processing #226

<ghurlbot> Issue 226 Integration with real-time video processing (dontcallmedom) cr

anssik: Detailed agenda for all the groups available soon
… questions about TPAC?

Summary of resolutions

  1. Start a CfC to publish Ethical Principles for Web Machine Learning as a Draft Note and set up the document for automatic publication
  2. In response to real-time video processing #226, Ningxin to open new issues for WebGPU and WebCodec WebNN interop issues and remove "cr" label from #226 once done
Minutes manually created (not a transcript), formatted by scribe.perl version 185 (Thu Dec 2 18:51:55 2021 UTC).

Diagnostics

Succeeded: s/se /we /

Succeeded: s|#2500|https://github.com/gpuweb/gpuweb/issues/2500

Succeeded: s/eplace/replace/

Maybe present: anssik, rafael, RafaelCintron