14:01:00 RRSAgent has joined #webmachinelearning 14:01:00 logging to https://www.w3.org/2022/06/02-webmachinelearning-irc 14:01:03 RRSAgent, make logs Public 14:01:04 please title this meeting ("meeting: ..."), anssik 14:01:07 Meeting: WebML WG Teleconference – 2 June 2022 14:01:13 Chair: Anssi 14:01:23 Agenda: https://github.com/webmachinelearning/meetings/blob/main/telcons/2022-06-02-wg-agenda.md 14:01:29 Scribe: Anssi 14:01:36 scribeNick: anssik 14:01:54 Present+ Anssi_Kostiainen 14:01:59 Present+ Humera_Noor 14:02:07 ningxin_hu has joined #webmachinelearning 14:02:07 Regrets+ Dominique_Hazael-Massieux 14:02:14 Present+ Rafael_Cintron 14:02:42 Present+ Chai_Chaoweeraprasit 14:02:51 Rama has joined #webmachinelearning 14:02:59 RafaelCintron has joined #webmachinelearning 14:03:04 Present+ 14:03:10 RRSAgent, draft minutes 14:03:10 I have made the request to generate https://www.w3.org/2022/06/02-webmachinelearning-minutes.html anssik 14:03:41 Present+ 14:04:11 RRSAgent, draft minutes 14:04:11 I have made the request to generate https://www.w3.org/2022/06/02-webmachinelearning-minutes.html anssik 14:04:20 Chai has joined #webmachinelearning 14:04:42 Topic: Announcements 14:05:02 Humera has joined #webmachinelearning 14:05:05 anssik: Model Loader API Dev Trial in Chrome OS M102 14:05:13 ... from WebML CG 14:05:27 ... credits to Honglin & team 14:05:41 ... See also documenting implementation status discussion 14:05:46 #223 14:05:47 https://github.com/webmachinelearning/webnn/issues/223 -> Issue 223 Documenting implementation status (anssiko) 14:06:17 jonathan has joined #webmachinelearning 14:06:19 "Now this API is ready for dev-trial in M102. 14:06:19 Please notice that the API is currently chromeOS only. 14:06:19 It is available after turning on two flags: 14:06:19 14:06:19 "#enable-experimental-web-platform-features" and "#enable-machine-learning-model-loader-web-platform-api" 14:06:35 A simple demo is https://false-shy-event.glitch.me/" 14:07:02 Present+ Jonathan_Bingham 14:07:29 Topic: CommandBuffer usage clarification 14:07:57 anssik: Discuss on how to address the WebGPU resource usage and sharing issues in preparation for the WebGPU WG review. 14:08:03 #264 14:08:03 https://github.com/webmachinelearning/webnn/issues/264 -> Issue 264 CommandBuffer usage clarification: internal, external, both? (bbernhar) 14:08:17 anssik: as a reminder, we are expected to reach out to WebGPU to review our design once settled or to seek guidance if we have multiple alternatives 14:08:36 gpuweb/gpuweb#2500 14:08:37 https://github.com/gpuweb/gpuweb/issues/2500 -> Issue 2500 Investigation: how WebNN / WebGPU interop could be happening (huningxin) 14:09:15 anssik: Bryan suggests in #264 that an open issue is around resource states that need to be correctly synchronized between WebNN and WebGPU or they will stomp over each other. 14:09:19 q? 14:09:29 q? 14:09:37 q+ 14:09:43 ack RafaelCintron 14:10:40 RafaelCintron: for this issue, we need to work with Bryan, I see his perspective, if the two impls are separate and away from each other, then need to agree if one system starts use WebGPU textures and the other does the same, they need to coordinate and this needs to happen on the impl level 14:10:57 ... all comes down to someone try it and see what issues come up 14:11:28 q+ 14:11:32 ack Chai 14:12:16 Chai: my opinion is that I don't think this affects the API, I think it is important to agree how the impl should behave in terms of the resource that flows between the two APIs 14:12:32 ... we could have a note section in the spec to describe interaction and resource sharing rules for implementers 14:12:53 ... there could be a description how the resource could be shared, not affecting the design of the API 14:13:18 ... resource produced by one API, then consumed by another, need to obey to the rules, but not affects the API per se 14:13:52 ... I agree with Bryan we need to get in touch and understand how the implementation would go about this, similarly to any interop situation, you can define the API to work together, but if the impl disagrees you can't 14:14:45 q? 14:15:04 anssik: are we ready to craft such a note for WebNN API to inform this interop? 14:15:15 Chai: not sure if there are other reps besides Bryan we could discuss with 14:15:27 ... we can have informal connection with WebGPU friends on this matter 14:15:28 jonathan_ has joined #webmachinelearning 14:16:27 anssik: any other WebGPU-WebNN issues besides #2500? 14:16:28 https://github.com/webmachinelearning/webnn/issues/2500 -> Issue 2500 [not found] 14:16:36 RafaelCintron: not that I'm aware of 14:17:35 i am good with current plan 14:17:54 Topic: WebGL interoperability requirements 14:18:17 anssik: Per discussion on our last call I started an RfC (or CfC) to drop WebGL interoperability requirements from the WebNN API spec 14:18:23 #268 14:18:24 https://github.com/webmachinelearning/webnn/issues/268 -> Issue 268 RfC: drop WebGL interoperability requirements (anssiko) cr 14:18:39 anssik: the proposal to drop received +1 from Ningxin on our call 14:18:46 ... also +1 from Chai in the issue 14:18:50 ... no objections 14:19:06 ... that issue discusses the rationale and concrete normative dependencies 14:19:20 ... given adequate time has passed, I'll resolve to drop those requirements 14:19:43 https://github.com/webmachinelearning/webnn/issues/263 -> Issue 263 [closed] Support asynchronous graph compilation (wchao1115) 14:20:03 RESOLUTION: Drop WebGL interoperability requirements from the WebNN API spec per #263 14:20:25 Topic: Privacy Review refresh 14:20:42 anssik: we have made strong progress with wide review thanks to your contributions 14:20:52 ... the remaining review to close on is privacy review refresh 14:21:08 ... "refresh" because we completed the initial privacy review in 2020/2021 14:21:56 Subtopic: Initial Privacy review recap 14:22:05 issue #119: [2020-11-05] Initial Self-Review Questionnaire response: Security and Privacy 14:22:05 https://github.com/webmachinelearning/webnn/issues/119 -> Issue 119 Self-Review Questionnaire: Security and Privacy (anssiko) privacy-tracker, security-tracker 14:22:30 PR #132: [2021-02-18] Add responses to the Self-Review Questionnaire: Security and Privacy 14:22:31 https://github.com/webmachinelearning/webnn/issues/132 -> Pull Request 132 [closed] Add responses to the Self-Review Questionnaire: Security and Privacy (anssiko) privacy-tracker, security-tracker 14:22:57 PR #170: [2021-05-27] Add initial Security and Privacy Considerations sections 14:22:58 https://github.com/webmachinelearning/webnn/issues/170 -> Pull Request 170 [closed] Add initial Security and Privacy Considerations sections (anssiko) privacy-tracker, security-tracker 14:23:20 Subtopic: Changes since initial privacy review 14:23:35 anssik: Review changes since initial privacy review 2021-05-27 for any privacy-impacting changes: 14:23:43 PR #259: [2022-05-21] Add privacy considerations for cached/persisted data 14:23:43 https://github.com/webmachinelearning/webnn/issues/259 -> Pull Request 259 [closed] Add privacy considerations for cached/persisted data (anssiko) privacy-tracker 14:24:17 -> HTML diff for changes since 2021-05-27 https://services.w3.org/htmldiff?doc1=https%3A%2F%2Fcdn.statically.io%2Fgh%2Fwebmachinelearning%2Fwebnn%2Fc7a47c0346ca0316258d290f33af3bd35b433b72%2Findex.bs&doc2=https%3A%2F%2Fwww.w3.org%2FTR%2Fwebnn%2F 14:24:52 -> All PRs merged since 2021-05-27 https://github.com/webmachinelearning/webnn/pulls?q=is%3Apr+merged%3A%3E%3D2021-05-27 14:25:16 anssik: It may be easier to review merged PRs for privacy impact 14:26:27 q? 14:26:41 Subtopic: Open privacy-tracker issues 14:26:54 issue #175: [2021-06-03] Related WebGPU/GL Security and Privacy Considerations 14:26:54 https://github.com/webmachinelearning/webnn/issues/175 -> Issue 175 Related WebGPU/GL Security and Privacy Considerations (anssiko) privacy-tracker, security-tracker 14:27:39 anssik: #175 is a great opportunity to folks interested in WebGPU to review its Privacy Considerations given our interop expectation 14:27:59 -> WebGPU Privacy Considerations https://gpuweb.github.io/gpuweb/#privacy-considerations 14:28:25 anssik: a path forward would be to cross-reference specific applicable WebGPU Privacy Considerations from the WebNN API spec 14:28:32 ... currently we say in WebNN Privacy Considerations: 14:28:37 "In general, implementers of this API are expected to be familiar with the WebGPU Privacy Considerations. 14:28:41 -> WebNN Privacy Considerations https://www.w3.org/TR/webnn/#privacy 14:29:26 q? 14:30:01 anssik: is there any WebGPU privacy focused person? 14:30:10 RafaelCintron: I think it is a group effort 14:31:14 ... a lot of written these is informed by past WebGL experience, e.g. timestamp changes in WebGL that were carried over 14:32:24 apologies, have to go to another meeting now 14:32:43 RafaelCintron: many consideration will be same as for WebGPU, e.g. validate all inputs 14:33:09 ... web developer cannot give bad data, or index out of bounds, use buffers that do not belong to them 14:33:34 ... timing attacks section, we don't have an API that can be used to time timings other than performance.now() 14:33:52 ... driver bugs asks us to have conformance tests, we have similar issues with WebNN 14:34:05 ... we don't have write your own shader worries 14:34:09 q? 14:35:00 q? 14:35:14 anssik: issue #169: [2021-05-13] Device selection with MLDevicePreference and MLPowerPreference 14:35:14 https://github.com/webmachinelearning/webnn/issues/169 -> Issue 169 Device selection with MLDevicePreference and MLPowerPreference (anssiko) privacy-tracker 14:35:54 anssik: in #169 we're discussing whether MLDevicePreference and MLPowerPreference are hints (implementation to decide) or normative (implementation fails if cannot satisfy) 14:36:14 q+ 14:36:22 ... if normative, has privacy implications as web content can learn some hardware capabilities 14:36:50 ... current level of abstraction for devices ("cpu", "gpu") and power ("default", "high-performance", "low-power") do not offer very unique information for fingerprinting 14:37:18 ... for Privacy Review refresh purposes it'd be good to say whether we consider MLDevicePreference and MLPowerPreference hints or normative? 14:37:19 q? 14:37:25 ack Chai 14:38:14 Chai: the content in this issue is a bit stale, no MLDevicePreference, now we have a MLDeviceType 14:38:28 -> MLDeviceType https://www.w3.org/TR/webnn/#enumdef-mldevicetype 14:39:10 anssik: MLDeviceType is now normative, will fail if the impl cannot satisfy? 14:39:13 Chai: right 14:39:27 ... the only hint is MLPowerPreference 14:40:10 q? 14:40:56 anssik: everyone happy with this design? 14:41:01 [agreement] 14:41:17 issue #85: [2020-08-27] Fingerprinting via matmul webmachinelearning/webnn#85 14:41:17 https://github.com/webmachinelearning/webnn/issues/85 -> Issue 85 Fingerprinting via matmul (kpu) privacy-tracker 14:41:17 https://github.com/webmachinelearning/webnn/issues/85 -> Issue 85 Fingerprinting via matmul (kpu) privacy-tracker 14:41:35 anssik: per this feedback, we added the following to Privacy Considerations: 14:41:40 "An execution time analysis may reveal indirectly the performance of the underlying platform's neural network hardware acceleration capabilities relative to another underlying platform." 14:42:06 anssik: since then, we received two pieces of feedback from Google Chrome privacy reviewers: 14:42:11 ... 1st comment: 14:42:17 anssik: "1) The section does a great job covering machine-specific performance considerations. Would it be possible to address the issue of "machine-specific artifacts" as addressed in the WebGPU document." 14:42:46 -> WebGPU Privacy Considerations: Machine-specific artifacts https://gpuweb.github.io/gpuweb/#privacy-machine-artifacts 14:43:51 Rafael: skimming this over, I think this also applies to WebNN, given compute units scheduling 14:44:17 From WebGPU Spec: "Performance differences are relatively intractable, but also relatively low-signal (as with JS execution performance)." 14:45:41 anssik: Machine-specific artifacts should be explicit surfaced in the WebNN spec Privacy Considerations? 14:45:47 RafaelCintron: agreed 14:46:47 RESOLUTION: Surface WebGPU-inspired machine-specific artifacts in the WebNN spec Privacy Considerations 14:47:07 "I see that the section points to the WebGPU Privacy Considerations section. Are there any additional considerations or orthogonal fingerprinting vectors for WebNN, such as when dedicated ML hardware accelerators are in use?" 14:47:57 anssik: I think the Device Selection design that we just settled on is a response to this 14:48:04 ... any other thoughts? 14:48:08 q+ 14:48:14 ack ningxin_hu 14:49:10 ningxin_hu: as well as MLDeviceType, there are ML accelerators, previous discussion around data types these ML accelerators support, e.g. they may only support float16 or int8 14:49:43 ... I remember we discussed the behaviour if the data type is not supported, how the API should react to that 14:50:34 ... possible fingerprinting vector, but now that ML accelerator support is not in the initial scope, not an immediate concern 14:51:42 https://github.com/webmachinelearning/webnn/issues/85 -> Issue 85 Fingerprinting via matmul (kpu) privacy-tracker 14:51:42 https://github.com/webmachinelearning/webnn/issues/175 -> Issue 175 Related WebGPU/GL Security and Privacy Considerations (anssiko) privacy-tracker, security-tracker 14:51:42 https://github.com/webmachinelearning/webnn/issues/169 -> Issue 169 Device selection with MLDevicePreference and MLPowerPreference (anssiko) privacy-tracker 14:52:37 RESOLUTION: Request Privacy Review refresh after the WebGPU (#175 and #85) and Device Selection (#169) privacy comments have been acknowledged in Privacy Considerations 14:52:47 issue #7: [2018-10-26] Cosine similarity between two facial features and cross origin tracking 14:52:48 https://github.com/webmachinelearning/webnn/issues/7 -> Issue 7 Cosine similarity between two facial features and cross origin tracking (cynthia) privacy-tracker 14:53:10 anssik: it seems like there are no technical measures to mitigate this 14:53:22 ... but this is considered as part of our Ethical Principles for Web Machine Learning effort that started after this issues was opened 14:53:26 -> Ethical Principles for Web Machine Learning https://github.com/webmachinelearning/ethical-webmachinelearning 14:53:39 ... I'm considering transferring this issue to that repo, any concerns? 14:55:18 sgtm 14:55:37 Topic: Open issues and pull requests 14:55:45 Subtopic: "Ethical Content Filtering" use case 14:56:05 anssik: I've asked Humera to share what concrete suggestions she would like to see in the WebNN API to support ML-based content filtering implementation 14:56:10 #253 14:56:11 https://github.com/webmachinelearning/webnn/issues/253 -> Pull Request 253 Add "Ethical Content Filtering" use case to WebNN specs (humeranoor) 14:56:18 RRSAgent, draft minutes 14:56:18 I have made the request to generate https://www.w3.org/2022/06/02-webmachinelearning-minutes.html anssik 14:56:43 Humera: idea is that when we look at WebNN use cases, we should have WebNN-based content filtering as one use case 14:56:56 ... many ethical and fair use content blocking mechanism rely on ML 14:57:06 ... the concept is that some things need to updated of included in the WebNN 14:57:13 ... concrete features 14:57:22 ... network level blocking, DOM-based inferencing 14:57:46 ... for network blocking some features are in place, but at risk of being deprecated 14:58:44 ... for DOM access, we need to look at the page on DOM level and make decisions on blocking some of its elements 14:59:00 https://github.com/webmachinelearning/webnn/pull/253#issuecomment-1127449172 14:59:16 q? 15:00:56 q? 15:01:27 -> webRequest https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/webRequest 15:02:06 q? 15:02:48 q? 15:03:10 RRSAgent, draft minutes 15:03:10 I have made the request to generate https://www.w3.org/2022/06/02-webmachinelearning-minutes.html anssik 17:19:21 <`join_subline> `join_subline has joined #webmachinelearning 17:22:33 Zakim has left #webmachinelearning