W3C home > Mailing lists > Public > public-speech-api@w3.org > September 2012

Re: stabilityThreshold attribute

From: Satish S <satish@google.com>
Date: Mon, 3 Sep 2012 15:33:42 +0100
Message-ID: <CAHZf7RkrCoW4LtZGmG+0HfpC43+qycdoYdyEgsXD4jcwpPE8fA@mail.gmail.com>
To: Glen Shires <gshires@google.com>
Cc: public-speech-api@w3.org
Makes sense. I missed the part where the default value was 1.0 i.e. only
final results are sent to the web app by default. That makes sense and I
agree it is difficult to add this in future in a performant fashion.


On Mon, Sep 3, 2012 at 5:29 AM, Glen Shires <gshires@google.com> wrote:

> I suspect that many JavaScript authors will only use final results, and
> not make use of interim results. This keeps their code simple, also they
> wouldn't need to set stabilityThreshold because the default is to NOT
> include interim results.
> Authors that choose to write the extra code to handle interim results
> would also set stabilityThreshold to a value (other than the default).
> Adding stabilityThreshold after v1 would be messy/inefficient because that
> would mean that interim results are always sent in v1.  Thus, to avoid
> changing the default behavior, if stabilityThreshold was added after v1,
> then the default would have to be 0.0 instead of 1.0.  Thus, the default
> would be to always use the most bandwidth and compute, rather than the
> least.  I suspect that JavaScript authors that only use final results and
> keep their code simple, may not bother to set stabilityThreshold
> (especially because they need to version check to see if the feature is
> available). Thus, this simple case will typically waste bandwidth and
> compute, even if we add this feature after v1.  Therefore, I believe we
> should put this in the spec for v1.
> This proposal is flexible enough that a UA/speech-recognizer could
> implement fine-grain stability. Conversely, a UA may use a trivial
> implementation and be conformant, where all interim results are assigned
> the same stability value (perhaps 0.5 for example), and stabilityThreshold
> controls only whether no interim results, or all interim results are
> returned.
> /Glen Shires
> On Sun, Sep 2, 2012 at 2:27 PM, Satish S <satish@google.com> wrote:
>> I mentioned something similar for confidenceThreshold as well - this is
>> really an optimisation for the speech service that most web developers
>> would choose to ignore. Can this be added if there is a real need reported
>> by developers after v1?
>> Cheers
>> Satish
>> On Sat, Sep 1, 2012 at 3:51 PM, Glen Shires <gshires@google.com> wrote:
>>> If there's no disagreement, I'll add this to the spec on Tuesday...
>>> On Thu, Aug 30, 2012 at 10:55 AM, Glen Shires <gshires@google.com>wrote:
>>>> For JavaScript authors that do not make use of interim results, or only
>>>> want to show fewer and more stable interim results, the following
>>>> stabilityThreshold would allow the author to request this, which reduces
>>>> the bandwidth usage and the events fired (and thus also reduces compute and
>>>> power).  In addition, the stability attribute returned with interim results
>>>> would allow authors to process results according to their estimated
>>>> stability. For example, an author might choose to display final results in
>>>> black, fairly stable results in dark grey, and not very stable results in
>>>> light grey.
>>>> I propose the following:
>>>> Add to IDL for SpeechRecognitionResult
>>>>     readonly attribute float stability;
>>>> Add to 5.1.6 Speech Recognition Result definitions
>>>> stability
>>>>   The stability represents a numeric estimate between 0.0 and 1.0 of
>>>> how likely the recognition system is to change this interim result. A
>>>> higher number indicates the result is less likely to change.  This
>>>> attribute is not defined when the "final" attribute is true.
>>>> Add to IDL for SpeechRecognition (the top level)
>>>>     attribute float stabilityThreshold;
>>>> Add to 5.1.1 Speech Recognition Attributes definitions:
>>>>  stabilityThreshold
>>>>   This attribute controls how many interim results are returned. When
>>>> set to the value of 1.0, no interim results (only final results) will be
>>>> returned.  When set to 0.0, all interim results will be returned. Valid
>>>> values are in the range of 0.0 to 1.0 inclusive. The default value is 1.0.
>>>> /Glen Shires
Received on Monday, 3 September 2012 14:34:12 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:02:28 UTC