

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 權重
<a name="grammar-weights"></a>

您可以將*權重*屬性新增至 元素。權重是正浮點值，代表語音辨識期間項目中片語提升的程度。如需詳細資訊，請參閱語音辨識文法規格版本 1 W3C 建議的[權重](https://www.w3.org/TR/speech-grammar/)。

權重必須大於 0 且小於或等於 10，且只能有一個小數位數。如果權重大於 0 且小於 1，則片語會負面提升。如果權重大於 1 且小於或等於 10，則片語會正面提升。權重 1 等於完全不給予權重，而且片語沒有提升。

為改善語音辨識效能的項目指派適當的權重是一項困難的任務。以下是您可以遵循指派權重的一些秘訣：
+ 從未指派項目權重的文法開始。
+ 判斷語音中哪些模式經常被錯誤識別。
+ 套用不同的權重值，直到您注意到語音辨識效能有所改善，而且沒有迴歸為止。

**範例 1**

例如，如果您有機場的文法，而且您發現*紐約*經常被誤識別為*紐瓦克*，您可以指派 5 的權重來積極提升紐約。

```
<rule> id="airport">
    <one-of>
        <item>
            Boston
            <tag>out="Boston"</tag>
        </item>
        <item weight="5">
            New York
            <tag>out="New York"</tag>
        </item>
        <item>
            Newark
            <tag>out="Newark"</tag>
        </item>
    </one-of>
</rule>
```

**範例 2**

例如，您有一個航空公司預訂代碼的文法，開頭是英文字母，後面接著三位數字。保留代碼很可能以 B 或 D 開頭，但您發現 B 經常被錯誤識別為 P，而 D 為 T。您可以正面提升 B 和 D。

```
<rule> id="alphabet">
    <one-of>
        <item>A<tag>out.letters+='A';</tag></item>
        <item weight="3.5">B<tag>out.letters+='B';</tag></item>
        <item>C<tag>out.letters+='C';</tag></item>
        <item weight="2.9">D<tag>out.letters+='D';</tag></item>
        <item>E<tag>out.letters+='E';</tag></item>
        <item>F<tag>out.letters+='F';</tag></item>
        <item>G<tag>out.letters+='G';</tag></item>
        <item>H<tag>out.letters+='H';</tag></item>
        <item>I<tag>out.letters+='I';</tag></item>
        <item>J<tag>out.letters+='J';</tag></item>
        <item>K<tag>out.letters+='K';</tag></item>
        <item>L<tag>out.letters+='L';</tag></item>
        <item>M<tag>out.letters+='M';</tag></item>
        <item>N<tag>out.letters+='N';</tag></item>
        <item>O<tag>out.letters+='O';</tag></item>
        <item>P<tag>out.letters+='P';</tag></item>
        <item>Q<tag>out.letters+='Q';</tag></item>
        <item>R<tag>out.letters+='R';</tag></item>
        <item>S<tag>out.letters+='S';</tag></item>
        <item>T<tag>out.letters+='T';</tag></item>
        <item>U<tag>out.letters+='U';</tag></item>
        <item>V<tag>out.letters+='V';</tag></item>
        <item>W<tag>out.letters+='W';</tag></item>
        <item>X<tag>out.letters+='X';</tag></item>
        <item>Y<tag>out.letters+='Y';</tag></item>
        <item>Z<tag>out.letters+='Z';</tag></item>
    </one-of>
</rule>
```