Act, Confirm, or Stop? Smarter behavior for AI assistants, wearables & robots — Amit Desai, Roku

Amit Desai· Roku20:24

Read the talk

Act, Confirm, or Stop? Choosing Assistant Behavior Under Uncertainty

Amit Desai explains how assistants can reduce the effort users spend recovering from errors by optimizing when to act, ask for confirmation, or stop—even when recognition accuracy stays unchanged.

From a talk by Amit Desai

At a glance

Ideas worth remembering

  • Interpretation accuracy and behavior under uncertainty are separate controls. The example keeps 790 of 1,000 hypotheses correct while improving which ones the assistant acts on.

  • Choose confidence thresholds by minimizing weighted outcome costs. Desai's illustrative recovery costs are 10 seconds for wrong playback, four for stopping, two for affirming a confirmation, and six for correcting it.

  • The example selects a 43 percent act-or-stop threshold rather than the intuitive 65 percent. With confirmation, the screen distinguishes CURRENT boundaries of 30 and 60 percent from OPTIMIZED boundaries of 41 and 49 percent. The optimum depends on the costs and confidence distributions.

  • The recorded screen resolves the numeric ambiguity: 1,464 is the current confirmation configuration's total cost; 1,260 is the optimized total. The recap displays a reduction from 1.274 to 1.260 OUCH points per turn with optimized confirmation, at unchanged accuracy. Segment 341's retained caption, “employed that then we would go to 1464.”, ambiguously associates the current cost with optimization; the visual evidence resolves the configuration, while the cause of the spoken/caption discrepancy remains uncertain.

  • Costs must reflect the interface and action. Television choices selected with a remote can reduce confirmation effort, while a wrong channel launch can disrupt the current state and increase recovery cost. Desai proposes carrying this principle into learned real-time decisions.

Voice errors become more consequential when assistants take actions

Selected presentation frame from Act, Confirm, or Stop? Smarter behavior for AI assistants, wearables & robots — Amit Desai, Roku at 166 seconds
Voice errors become more consequential when assistants take actions

After a brief greeting, Amit Desai introduces his experience building voice interfaces across Alexa, Roku, and his own startups. His perspective combines voice user interface design with technical approaches: understanding how people interact with a system matters alongside understanding how the system interprets speech. He sees that combination as especially relevant when new technology changes the human interface.

Voice offers a natural way to interact, but it remains error prone. Desai argues that the consequences of errors grow as assistants move from giving answers to taking physical or digital actions. A robot throwing a watch away with the trash illustrates the difference: the mistake is much more consequential than playing the wrong song. Improving the interpretation of a request therefore addresses only part of the user experience.

He separates two ways to improve satisfaction. The first is increasing technical accuracy. The second is changing the system's decision under uncertainty: what it does with a hypothesis that might be wrong. Desai treats this decision as a separate control that teams can improve without changing recognition accuracy. He introduces a simple smart speaker example to develop the method before considering other devices.

0:120:28
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

0:01 · section reference included

Hold accuracy at 79 percent

Selected presentation frame from Act, Confirm, or Stop? Smarter behavior for AI assistants, wearables & robots — Amit Desai, Roku at 278 seconds
Hold accuracy at 79 percent

The example speaker accepts music requests and immediately plays a song. Each interpretation is either correct or incorrect. Desai proposes collecting 1,000 spoken requests, observing their inputs and outputs, and labeling the results. In this illustrative dataset, 790 requests produce the correct song and 210 produce the wrong song, giving 79 percent accuracy.

A conventional improvement effort would try to reduce those 210 errors. In a cascaded voice system, errors can arise in wake word detection, automatic speech recognition, natural language understanding, intent classification, entity extraction, or voice activity detection. Work at any of those layers may improve end-to-end accuracy. Desai instead freezes the example at 79 percent and asks how much better the experience can become through decisions made after the system forms its interpretation.

3:273:37
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

3:27 · section reference included

Add a stop decision, then choose when to use it

Selected presentation frame from Act, Confirm, or Stop? Smarter behavior for AI assistants, wearables & robots — Amit Desai, Roku at 340 seconds
Add a stop decision, then choose when to use it

The original system always acts: a request leads directly to playback. Desai adds the option to reject the hypothesis and stop, asking the user to repeat instead of playing a potentially wrong song. This creates a quantitative design question. Having a stop behavior is easy to describe; deciding exactly when to invoke it requires a rule.

For the example, each of the 1,000 labeled hypotheses receives a confidence score between zero and one. Desai assumes that this score is reasonably calibrated and plots separate confidence distributions for correct and incorrect hypotheses. This is a deliberate simplification: a cascaded system may produce multiple confidence scores across its layers, rather than one score that summarizes the entire interpretation.

A threshold t divides the decisions: stop when confidence c is below t; otherwise play. Moving t changes which correct and incorrect hypotheses reach playback. Desai offers 65 percent as a plausible intuitive choice, then challenges that intuition. A confidence value that feels sufficiently reassuring does not yet say how much effort the resulting mistakes will impose on users.

5:155:17
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

5:15 · section reference included

Measure the effort of recovering from each outcome

Selected presentation frame from Act, Confirm, or Stop? Smarter behavior for AI assistants, wearables & robots — Amit Desai, Roku at 600 seconds
Measure the effort of recovering from each outcome

The threshold produces two kinds of undesirable outcome. Stopping delays the song the user wants, while acting on an incorrect hypothesis plays the wrong song. These outcomes are not equally costly. In Desai's example, a request intended for Prince produces a song by Chris Brown. The user must listen long enough to recognize the mistake, speak over the music to stop playback, and then request the desired song again. A rejection lets the user retry without first undoing playback.

Desai quantifies this difference with a heuristic: the additional seconds needed to return to success, meaning playback of the intended song. He assigns 10 seconds to a wrong song and four seconds to a stop, including repeating the request and the extra latency. These are illustrative assignments rather than established measurements. He leaves open how best to quantify relative badness, but makes the chosen proxy concrete enough to optimize.

Threshold selection now becomes cost minimization. For a candidate t, count the wrong hypotheses that are acted on and all hypotheses that are stopped. The total is C(t) = 10 × wrong acts(t) + 4 × stops(t). A correct immediate playback adds no recovery cost in this formulation. Raising the threshold can prevent wrong playback, but it also rejects more requests, including requests the system understood correctly. The weighted sum expresses that tradeoff. Desai calls the approach the Outcome User Cost Heuristic, or OUCH: the goal is to minimize the pain of the interaction.

7:267:33
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

7:26 · section reference included

Optimize the threshold instead of guessing

Selected presentation frame from Act, Confirm, or Stop? Smarter behavior for AI assistants, wearables & robots — Amit Desai, Roku at 636 seconds
Optimize the threshold instead of guessing

Desai presents an interactive graph of the 1,000 requests, showing how total cost changes with the threshold. With immediate playback for every request, the total cost is 2,100, or 2.1 OUCH points per turn. Introducing a stop threshold at the intuitive 65 percent reduces the total to 1,904, about 1.9 per turn. That choice helps, but it does not minimize the objective.

The demonstration identifies 43 percent as the cost-minimizing threshold for these data and assigned costs. Desai moves the control to that point and reports approximately 1.27 OUCH points per turn. He emphasizes that the system's interpretation accuracy has not changed. The improvement comes from deciding which hypotheses to execute and which to reject. The optimum belongs to this cost function and confidence distribution; it is an example of a decision method rather than a general confidence requirement for assistants.

10:2010:23
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

10:20 · section reference included

Give uncertain requests a confirmation region

Selected presentation frame from Act, Confirm, or Stop? Smarter behavior for AI assistants, wearables & robots — Amit Desai, Roku at 984 seconds
Give uncertain requests a confirmation region

Desai next adds confirmation. The speaker states its proposed song before playing, allowing the user to affirm or correct the interpretation. This creates three behaviors separated by two thresholds: stop at low confidence, confirm in the middle, and act at high confidence. The optimization must now choose both boundaries rather than one.

Confirmation also imposes effort, even when the proposed interpretation is correct. Listening and saying yes delays playback; rejecting the proposal and restating the request takes longer. Desai assigns two seconds to affirmation and six seconds to correction. Keeping the previous costs for wrong action and stopping, the objective becomes C(t1, t2) = 10 × wrong acts + 4 × stops + 2 × affirmations + 6 × corrections. Each count depends on where the two thresholds place the labeled requests.

The graph becomes a two-dimensional heat map of cost across threshold pairs. The recorded screen at 920 seconds explicitly separates CURRENT thresholds of 30 percent and 60 percent, with total cost 1,464, from OPTIMIZED thresholds of 41 percent and 49 percent, with total cost 1,260. At 928 seconds, the current configuration's displayed breakdown shows 601 acts: 596 right and five wrong, costing 50; 277 confirmations: 184 yes and 93 no, costing 926; and 122 stops, costing 488. Those displayed costs total 1,464 and belong to the current 30 percent/60 percent configuration. The original caption for segment 341 remains “employed that then we would go to 1464.” Following the captions naming the optimal boundaries, that wording ambiguously attaches 1,464 to the optimized result. The screen establishes which configuration each number describes, but without an audio check the discrepancy cannot be attributed specifically to transcription error or to the spoken statement.

Desai then considers increasing the wrong-action cost to 20 because recovery could be more irritating or take longer. That change moves the optimum. Both the relative costs of outcomes and the confidence distributions determine the preferred behavior; adding confirmation does not remove the need to evaluate those inputs.

The recap slide at 980 seconds displays average costs of 2.100 OUCH points per turn for always acting, 1.904 with the guessed stop threshold, 1.274 with optimized act-or-stop behavior, and 1.260 with optimized act-stop-confirm behavior. The original captions summarize this as “2.1 act and stop 1.9 then” and “1.27 then 1.26.” The slide supplies the more precise values and independently confirms a modest additional reduction from 1.274 to 1.260 when confirmation is optimized. The demonstrated current total of 1,464 and the optimized total of 1,260 therefore describe different threshold settings, rather than conflicting results for one setting. Accuracy remains unchanged throughout this simplified example.

12:1612:19
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

12:16 · section reference included

Adapt decisions to the interface and the action

Selected presentation frame from Act, Confirm, or Stop? Smarter behavior for AI assistants, wearables & robots — Amit Desai, Roku at 1079 seconds
Adapt decisions to the interface and the action

Desai distinguishes the simplified threshold exercise from his proposal for real systems. He expects a learned decision model operating in real time, rather than only one or two thresholds selected offline. The principle remains choosing behavior according to user outcome cost. He proposes that analogous decisions can apply across voice interfaces, although the devices and interactions introduce differences.

A television assistant makes those differences concrete. For a request to open a channel, confirmation can display multiple choices, including ABC News Live, instead of speaking one proposed interpretation and waiting for a verbal response. The user can select a choice with the remote control. Desai argues that this visual interaction can make confirmation less painful, changing its assigned cost and therefore the decision the system should prefer.

The wrong action can become more costly at the same time. Launching the wrong channel may kick the user out of the current state, creating more recovery work. A different modality therefore changes both the available confirmation behavior and the consequences of acting incorrectly. The method carries over by changing its variables and costs to reflect the actual interaction, rather than assuming the smart speaker's assignments apply unchanged.

Desai closes by returning to assistants that take physical and digital actions, including making phone calls and sending emails. He argues that relying on accuracy improvements alone becomes increasingly difficult as those actions raise the consequences of mistakes. Smarter conversational behavior under uncertainty provides another way to reach an acceptable experience. His final objective is to minimize OUCH—the pain users experience—because an interface that remains frustrating can become a bottleneck even while other parts of the technology improve. He ends by thanking the audience and offering to stay for questions.

16:3816:40
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

16:38 · section reference included

Read the complete timestamped transcript
  1. 0:01

    [music]

  2. 0:12

    Hi everyone. How's it going? Hey

  3. 0:15

    Patricia, how are you?

  4. 0:17

    >> Uh so last presentation of the day, so

  5. 0:20

    let's make it count. Um,

  6. 0:23

    all right. Let's, uh, let me start with

  7. 0:25

    a little bit of background on myself.

  8. 0:28

    And, um, my background, I'm a voice

  9. 0:33

    subject matter expert. I've been working

  10. 0:35

    in voice AI for a long time across

  11. 0:37

    different surfaces, devices, and um,

  12. 0:42

    both at Alexa, at at Roku, at my own

  13. 0:46

    startups, you know, in the app store.

  14. 0:49

    And my perspective is a little different

  15. 0:52

    from a lot of other voice AI

  16. 0:55

    practitioners. I think it's a

  17. 0:58

    combination of um a deep um voice user

  18. 1:02

    interface expertise and intu intuition

  19. 1:05

    mixed in with new technical approaches

  20. 1:09

    uh that I think can produce really

  21. 1:11

    magical experiences. So I think it's

  22. 1:12

    both sides and I think that's especially

  23. 1:15

    true in this new area that we're in with

  24. 1:17

    frontier tech where the human interface

  25. 1:20

    is basically being redefined. So let me

  26. 1:24

    start with uh I'll just blast through

  27. 1:26

    the first couple of slides then get to

  28. 1:28

    the premise. I think everybody knows

  29. 1:30

    that voice has incredible potential.

  30. 1:32

    There's the power of voice I think

  31. 1:35

    across everywhere. It's the most natural

  32. 1:37

    interface. Humans love talking. And uh

  33. 1:40

    the problem is the other half is the

  34. 1:43

    pain of voice. So it's the power and the

  35. 1:44

    pain. Voice is errorprone. And I think

  36. 1:49

    those errors are going to continue for a

  37. 1:52

    while. And I think the cost or

  38. 1:54

    consequence of those errors is going to

  39. 1:56

    grow, especially as we go fromational

  40. 1:59

    AI bots to embodied AI where rather than

  41. 2:03

    just giving answers that might be

  42. 2:05

    erroneous,

  43. 2:07

    we're going to have AI systems take

  44. 2:09

    physical actions or digital actions

  45. 2:12

    where, you know, if the robot throws

  46. 2:15

    your watch out with the trash, it's a

  47. 2:17

    lot worse than playing the wrong song.

  48. 2:19

    So I do think that a new approach is

  49. 2:23

    definitely needed and here's the TLDDR

  50. 2:26

    of the premise we're going to walk

  51. 2:28

    through today. Um there are two ways to

  52. 2:31

    improve customer or user satisfaction of

  53. 2:35

    a voice AI assistant and that is by

  54. 2:38

    increasing accuracy which people know

  55. 2:39

    about I mean technically accuracy and

  56. 2:43

    the other is a different knob that we

  57. 2:46

    have that we are not using adequately

  58. 2:48

    and I'll call that a system decision

  59. 2:51

    which we will define which is orthogonal

  60. 2:54

    which is different from accuracy and I

  61. 2:57

    believe This approach which I have used

  62. 3:01

    in several different environments and

  63. 3:04

    seen some success I think is a promising

  64. 3:07

    area that we should consider developing.

  65. 3:10

    Um let me walk through this with a

  66. 3:13

    simple smart speaker example and we'll

  67. 3:16

    go step by step with this approach but

  68. 3:19

    it is a scalable approach that I think

  69. 3:22

    uh can apply across different surfaces

  70. 3:24

    and devices. So let's get started. So

  71. 3:27

    suppose we all you know are making a

  72. 3:30

    smart speaker coincidentally called uh

  73. 3:33

    Alexa and Alexa is very simple. It just

  74. 3:37

    allows you to you know ask for music and

  75. 3:40

    it'll play a song and of course it will

  76. 3:43

    play either the song you wanted or a

  77. 3:45

    different song. So it'll be right or

  78. 3:47

    it'll be wrong. This isn't that

  79. 3:49

    different from what you've seen out

  80. 3:51

    there. Um now let's to first talk about

  81. 3:54

    accuracy. Accuracy. Let's say we define

  82. 3:57

    it as we you know take a thousand spoken

  83. 3:59

    requests. We observe the input and the

  84. 4:02

    output. We label it and we look at this.

  85. 4:05

    This is the map of a thousand points and

  86. 4:08

    79% of the time 790 dots here were

  87. 4:12

    actually the correct song. This is let's

  88. 4:14

    say human annotated 20% 21% wrong song.

  89. 4:19

    So that's the accuracy. Now, like I

  90. 4:22

    said, knob one is to spend a lot of time

  91. 4:25

    working on improving the accuracy, you

  92. 4:28

    know, um, percentage point by percentage

  93. 4:30

    point at any layer in the stack.

  94. 4:33

    There's, if it's a cascaded system, you

  95. 4:35

    know, there's a perhaps a wakeword layer

  96. 4:38

    and a speech ASR layer and a NLU layer

  97. 4:41

    which might have intent classification,

  98. 4:44

    entity extraction, a lot of different

  99. 4:45

    layers, VAD, etc. And any of those can

  100. 4:47

    contribute to errors. So we spent time

  101. 4:50

    we might be able to reduce that 210 to a

  102. 4:52

    smaller number that is I think a known

  103. 4:56

    area that we're tackling but I think

  104. 4:59

    knob 2 which is what I was talking about

  105. 5:01

    is what we'll go through here which is

  106. 5:03

    keeping the accuracy exactly the same.

  107. 5:06

    So 79% what could we do in conditions of

  108. 5:10

    uncertainty to improve user satisfaction

  109. 5:13

    apparent and I I think we can do a lot.

  110. 5:15

    So let's start first with the original

  111. 5:17

    system is just acting like I said user

  112. 5:20

    says something system plays a song it's

  113. 5:21

    either the right song or the wrong song

  114. 5:24

    immediately I think just common sense

  115. 5:26

    tells us that we could introduce at

  116. 5:28

    least one system behavior to stop or

  117. 5:30

    rather to reject the hypothesis and do

  118. 5:33

    nothing. So uh there is now one more

  119. 5:36

    option to decide the system may decide

  120. 5:38

    and say sorry I didn't get that or sorry

  121. 5:41

    could you repeat that? Uh the challenge

  122. 5:43

    of course is how how when do we decide

  123. 5:47

    to stop and I mean quantitatively. Um

  124. 5:51

    here's one approach to kind of

  125. 5:53

    visualizing this because if we don't

  126. 5:55

    we'll just take probably some swag like

  127. 5:57

    some guesstimate and I'll prove that if

  128. 5:59

    we just took a guesstimate we would end

  129. 6:02

    up with a worse situation than a more

  130. 6:04

    rigorous approach. So let's just assume

  131. 6:06

    I took those thousand data points and

  132. 6:08

    like I said they've been annotated and

  133. 6:10

    we assign a confidence score a single

  134. 6:13

    confidence score to the hypothesis that

  135. 6:16

    was generated by the system you know

  136. 6:18

    between zero and one and let's say it's

  137. 6:19

    reasonably calibrated. This is a

  138. 6:21

    simplification of if it's a cascaded

  139. 6:23

    system there are multiple layers and

  140. 6:24

    multiple you know confidence scores but

  141. 6:26

    let's just assume that for now. Whoops.

  142. 6:28

    So we're going to have 790 points 200

  143. 6:31

    that are correct 210 wrong. Each one has

  144. 6:34

    a confidence score and we're going to

  145. 6:36

    plot it, you know, plot the

  146. 6:37

    distributions. Uh on the x-axis, I've

  147. 6:40

    just converted from 0ero to one to

  148. 6:42

    percentages. And the question is how do

  149. 6:46

    we choose a threshold t such that

  150. 6:49

    whatever that percentage is um to the

  151. 6:52

    left of it meaning if when the system um

  152. 6:55

    forms a hypothesis if the confidence

  153. 6:58

    score c is less than that t stop and say

  154. 7:01

    sorry otherwise play question is how do

  155. 7:04

    we choose a t so far everything I'm

  156. 7:06

    saying is fairly common sensical but

  157. 7:08

    this is where um intuition will fail us

  158. 7:12

    we might say something like okay I don't

  159. 7:14

    know let's do 65%. It seems you know gut

  160. 7:17

    feeling like okay it's kind of confident

  161. 7:19

    that's probably when we should speak. Um

  162. 7:22

    now here's where we start coming out

  163. 7:24

    with some sophistication.

  164. 7:26

    Any tea we choose is producing bad

  165. 7:29

    outcomes. Bad in the in two fields. One

  166. 7:33

    is obviously on the left side anytime

  167. 7:35

    you stop it's bad. The user doesn't want

  168. 7:38

    it to stop. He wants to they want to

  169. 7:40

    hear their song. The other bad is if you

  170. 7:43

    do play a wrong song, of course that's

  171. 7:46

    bad as well. So these are two two kinds

  172. 7:48

    of bad outcomes. But here's the

  173. 7:51

    important part. Now I've like elaborated

  174. 7:53

    on the um tree diagram on the right hand

  175. 7:56

    side. The bad outcomes are not equally

  176. 8:00

    bad. They're not the same thing from a

  177. 8:02

    user perspective. And obviously let's

  178. 8:05

    let's think about it. If the wrong song

  179. 8:07

    plays, you said play kiss and it starts

  180. 8:11

    playing kiss by Chris Brown instead of

  181. 8:14

    the one by Prince. That's going to be um

  182. 8:18

    the highest user cost. Now I'm defining

  183. 8:21

    user cost from the user's perspective.

  184. 8:23

    First I have to like hear music and

  185. 8:25

    realize that is not Prince. Then I have

  186. 8:27

    to shout over my Alexa and um you know

  187. 8:31

    get it to stop and then I have to

  188. 8:33

    re-request. All of that is a lot of

  189. 8:35

    effort. that is definitely a worse

  190. 8:37

    outcome than the system stopping and

  191. 8:39

    saying sorry I didn't understand that

  192. 8:42

    however we should go further and try to

  193. 8:45

    quantify that relative badness and there

  194. 8:47

    many ways to do it and I think this is

  195. 8:49

    an area to be explored for now let's

  196. 8:51

    just consider this a heristic of if that

  197. 8:55

    outcome happens how many more seconds

  198. 8:58

    additional seconds will it take for the

  199. 8:59

    user to get back to success which is to

  200. 9:01

    play the song they wanted kiss by Prince

  201. 9:04

    and I'm I just put down some numbers

  202. 9:06

    here. Let's say in the case of a bad

  203. 9:08

    song, it's 10 seconds if you add up all

  204. 9:10

    the things I got to do. And if it's a I

  205. 9:14

    didn't understand you, it's 4 seconds

  206. 9:15

    because that's how long it would take

  207. 9:16

    you to respe and and the extra latency.

  208. 9:19

    And now here's where we can start

  209. 9:23

    utilizing that. If we go back to our

  210. 9:25

    distribution curve on trying to find out

  211. 9:27

    where is T. Now we've basically turned

  212. 9:31

    this into a problem of minimizing a cost

  213. 9:34

    function. It's a user cost function. It

  214. 9:36

    is the number of bad acts wherever that

  215. 9:38

    whatever the t causes times 10 because

  216. 9:40

    that was a unit cost we gave plus the

  217. 9:43

    number of stops times four because

  218. 9:45

    that's the the unit cost we gave. By the

  219. 9:48

    way, one thing I should have elaborated

  220. 9:51

    because I work in voice and we like

  221. 9:52

    language and we like puns. So this whole

  222. 9:55

    thing is called an outcome user cost

  223. 9:57

    heruristic. So that spells the word ouch

  224. 10:00

    and that is some expression of pain.

  225. 10:03

    Yes, we are you know language nerds. So

  226. 10:06

    these kinds of things amuse us. Um so

  227. 10:08

    now let's consider that is the cost

  228. 10:10

    function is to minimize the ouch. And

  229. 10:12

    now um that let's see if uh I'm going to

  230. 10:16

    bring up a tool. Let's see if this

  231. 10:18

    works.

  232. 10:20

    Where I have actually gotten or with one

  233. 10:23

    of my coding assistants gotten uh an

  234. 10:26

    interactive

  235. 10:29

    um graph where we have actually plotted

  236. 10:32

    those thousand points and as we vary the

  237. 10:36

    threshold t you can see that the total

  238. 10:40

    user cost here which is that function of

  239. 10:43

    you know x * y + a * b actually changes.

  240. 10:46

    So let's in the very beginning when we

  241. 10:49

    said the system was just playing

  242. 10:52

    the the cost across those thousand

  243. 10:54

    points was 2100 or divided by a,000 is

  244. 10:57

    2.1 ouch points per turn. Then we said

  245. 11:01

    okay let's insert a stop behavior and

  246. 11:04

    let's like wing it and say 65%. That's

  247. 11:07

    when I want the threshold. If we brought

  248. 11:10

    this up to 65 yeah that's better. Now

  249. 11:13

    it's 1904 or 1.9 per turn, but it's not

  250. 11:16

    optimal. As it turns out, if we do

  251. 11:19

    actually um ask for the AI to solve the

  252. 11:23

    uh the problem across this curve, it

  253. 11:25

    turns out 43%. So I'll drag it now to 43

  254. 11:30

    is in fact

  255. 11:34

    the optimal

  256. 11:36

    optimal point of t. This minimizes the

  257. 11:39

    cost function. You can see it's the

  258. 11:41

    lowest point on this graph down here to

  259. 11:43

    1

  260. 11:44

    27. So effectively we haven't changed

  261. 11:48

    the accuracy at all. The system is not

  262. 11:50

    any smarter in that sense. But with some

  263. 11:52

    clever system behavior, conversational

  264. 11:55

    behavior is what we'd call it and some

  265. 11:56

    optimization and a cost function called

  266. 11:59

    ouch. Um we have from the user's

  267. 12:02

    perspective produced a more satisfactory

  268. 12:06

    assistant. And this is not a trivial you

  269. 12:08

    know accomplishment. Okay. Now, let me

  270. 12:10

    go back to this. [clears throat] Let me

  271. 12:12

    see if I can get this. Oh, great. Okay,

  272. 12:16

    let's continue this. Let's continue this

  273. 12:19

    with by now adding one more behavior.

  274. 12:22

    Let's call it the confirm behavior. So,

  275. 12:23

    there was play obviously, then stop,

  276. 12:26

    confirm. Confirm is basically the system

  277. 12:28

    after you said something saying uh kiss

  278. 12:32

    play kiss by Prince or maybe play kiss

  279. 12:35

    by Chris Brown. And uh you know the user

  280. 12:38

    can either confirm like affirm it or

  281. 12:40

    they can correct it. It is a different

  282. 12:42

    kind of behavior and again this is kind

  283. 12:44

    of how humans behave. Um that's

  284. 12:46

    obviously the inspiration. Now if we go

  285. 12:49

    back to our problem of optimization,

  286. 12:52

    we have a third obviously um option

  287. 12:55

    which is to confirm. And so this would

  288. 12:58

    translate to two thresholds

  289. 13:00

    um two thresholds which are separating

  290. 13:03

    the distribution into three spaces of

  291. 13:07

    stop, confirm and uh act. And the

  292. 13:12

    question is now where are these T's? and

  293. 13:15

    we have now given up on guesstimating

  294. 13:16

    because we know it doesn't work. So

  295. 13:18

    we're going to be a lot smarter and go

  296. 13:21

    back to the concept of user outcome cost

  297. 13:25

    and then you know use it go look for

  298. 13:27

    some optimization in that graph. So

  299. 13:29

    let's uh define what are the what are

  300. 13:32

    all the possible bad outcomes that t1

  301. 13:34

    and t2 um make for. So good you can see

  302. 13:38

    my cursor. So uh of course any stops are

  303. 13:42

    still bad. Then in the middle are

  304. 13:45

    confirmations. Confirmations are bad

  305. 13:47

    because they slow the user down. There

  306. 13:49

    is a confirmation outcome called confirm

  307. 13:52

    yes where they just affirmed it by

  308. 13:54

    saying yeah or no where they had to

  309. 13:56

    correct it. And going back to our

  310. 13:59

    formula these outcomes are not equally

  311. 14:02

    bad. And in fact, nobody will, I think,

  312. 14:06

    argue here from a user's perspective.

  313. 14:08

    Affirming, just saying yes is obviously

  314. 14:11

    less painful than saying no and then

  315. 14:13

    having to restate whatever it is that

  316. 14:15

    you wanted in the first place. So now we

  317. 14:17

    I've assigned values of two or six. And

  318. 14:19

    again, I said it was a heristic. This

  319. 14:21

    would be roughly the amount of time it

  320. 14:23

    would take for the extra for the user to

  321. 14:25

    get to the song they want. Saying

  322. 14:27

    listening and then saying yes is like

  323. 14:28

    two seconds. Um and then now

  324. 14:34

    uh we restate the cost function for this

  325. 14:37

    you know added behavior as this number

  326. 14:40

    of you know bad type one times unit cost

  327. 14:43

    bad type plus bad type two times unit

  328. 14:45

    cost etc. And now we try to minimize

  329. 14:49

    this user cost function and minimize the

  330. 14:52

    ouch.

  331. 14:53

    Yes, I'm going to keep doing that pun.

  332. 14:56

    Um let's go back. So this is now the

  333. 15:00

    interactive graph but

  334. 15:03

    with

  335. 15:06

    um the cost values the unit costs here

  336. 15:08

    10264

  337. 15:10

    and uh you know we're just going to ask

  338. 15:13

    the AI to tell us here's the heat map

  339. 15:16

    because it's now two dimensions saying

  340. 15:18

    that the optimal values are 41 for the

  341. 15:22

    the T1 and 49 for the T2 and if we

  342. 15:27

    employed that then we would go to 1464.

  343. 15:31

    Uh, by the way, whatever numbers I put

  344. 15:33

    in here, like let's say I thought wrong

  345. 15:36

    act was 20. It's really irritating and

  346. 15:39

    painful and takes way longer to actually

  347. 15:42

    correct it when you hear a wrong song.

  348. 15:44

    That would change you know all these

  349. 15:45

    numbers uh and the optim optimal point.

  350. 15:48

    So again it is about how what is the

  351. 15:50

    relative badness of these outcomes also

  352. 15:52

    of course the distribution curves

  353. 15:54

    naturally. Uh let's go back here. Okay.

  354. 15:58

    So, um I'm gonna

  355. 16:02

    speed up a little bit. Uh let's go back

  356. 16:06

    here.

  357. 16:07

    Presentation mode. Okay. So, what have

  358. 16:11

    we shown that if we did the super naive

  359. 16:13

    approach, it's 2.1 act and stop 1.9 then

  360. 16:19

    1.27 then 1.26. We are able to bring

  361. 16:22

    this with every added layer of

  362. 16:25

    sophistication, adding more behaviors,

  363. 16:27

    being smart about outcome, uh, user cost

  364. 16:30

    and optimizing. Um, we have made a

  365. 16:33

    tremendous difference without changing

  366. 16:35

    the accuracy at all. Um, this was a

  367. 16:38

    super simplified example. In real

  368. 16:40

    systems, you're not going to have

  369. 16:42

    obviously some offline decision

  370. 16:44

    threshold or two. It's going to be a

  371. 16:46

    real time, you know, learned decision

  372. 16:48

    model. But the principle is the same.

  373. 16:50

    And I believe this is uh scalable across

  374. 16:54

    all voice AI surfaces. Obviously this is

  375. 16:56

    a smart speaker but if we go across any

  376. 17:01

    of these surfaces you will find the

  377. 17:02

    equivalence. If we um we will find the

  378. 17:07

    analogies with some differences but the

  379. 17:09

    spirit and the I think the the gain will

  380. 17:13

    be similar. So just for example in the

  381. 17:16

    TV AI assistant space if you employ it

  382. 17:20

    here it's going to you're going to have

  383. 17:22

    the same thing when users express

  384. 17:24

    intents like on TV it's you know open a

  385. 17:27

    channel that's one of the most common

  386. 17:29

    obviously um requests on a TV voice

  387. 17:32

    assistant same thing you're going to

  388. 17:34

    find you'll have exactly the same

  389. 17:35

    approach but the difference will be

  390. 17:38

    maybe in the the assignments of the user

  391. 17:42

    outcomes because the UI and the

  392. 17:43

    modalities are different when you have a

  393. 17:46

    TV you have a multimodal interface where

  394. 17:48

    choices can be shown. So instead of you

  395. 17:51

    know asking did you mean ABC you know uh

  396. 17:55

    news live by speech that you will the

  397. 17:59

    system would display choices and not

  398. 18:01

    just one it show ABC News live this that

  399. 18:03

    would be the confirm step and if it's

  400. 18:05

    visual and you can use your remote

  401. 18:07

    control to select something it's less

  402. 18:10

    pain so you would change some of these

  403. 18:12

    values or if in fact launching the

  404. 18:15

    channel would kick you out of your

  405. 18:16

    current state then it would go in the

  406. 18:18

    other direction than cost of you know a

  407. 18:21

    bad act would go much higher. So it's

  408. 18:24

    the same concept but in this new

  409. 18:26

    modalities

  410. 18:27

    um variables can change, values can

  411. 18:30

    change, arguments can change but the

  412. 18:32

    premise still holds and you can improve

  413. 18:35

    from the user's perspective because

  414. 18:37

    we're all about you know making humans

  415. 18:39

    happy. Um you can make them happier and

  416. 18:44

    this as I said in conclusion can be

  417. 18:46

    applied across all surfaces. I did say

  418. 18:49

    at the very beginning, just to recap for

  419. 18:52

    us, that voice is great when it works,

  420. 18:55

    bad when it doesn't. And as we get into

  421. 18:58

    embodied AI, where these AI assistants

  422. 19:01

    are taking actions, physical or even

  423. 19:04

    digital, like making a phone call or

  424. 19:06

    sending an email, it is getting more and

  425. 19:09

    more difficult just to rely on accuracy

  426. 19:12

    to improve user satisfaction. I believe

  427. 19:15

    there's a whole knob the second knob

  428. 19:17

    called smarter conversational behavior

  429. 19:19

    under uncertainty

  430. 19:21

    and um if we actually exploit that we

  431. 19:25

    can uh very much help these AI systems

  432. 19:30

    reach a acceptable user experience

  433. 19:34

    otherwise I think this will continue to

  434. 19:36

    be a bottleneck like a lot of things

  435. 19:38

    will get better but if the voice

  436. 19:40

    interface as experienced by user does

  437. 19:43

    not improve it is going to be a a a

  438. 19:46

    choke point. And um if you just remember

  439. 19:50

    one word or two words from this whole um

  440. 19:54

    presentation, it would be to minimize

  441. 19:57

    the ouch of the experience. Um so thank

  442. 20:00

    you. I'll stick around for questions if

  443. 20:03

    you guys got any. Thanks a lot.

  444. 20:06

    [applause]

  445. 20:21

    >> [music]