Windows音声認識(WSR)は、MicrosoftがWindows Vista向けに開発した音声認識機能で、音声コマンドを使ってデスクトップのユーザーインターフェイスを操作したり、電子文書や電子メールにテキストを入力したり、 Webサイトをナビゲートしたり、キーボードショートカットを実行したり、マウスカーソルを操作したりできます。また、追加または補助的なタスクを実行するためのカスタムマクロもサポートしています。
WSRはローカルで処理される音声認識プラットフォームです。精度、音声入力、認識においてクラウドコンピューティングに依存せず、文脈、文法、音声サンプル、トレーニングセッション、語彙に基づいて適応します。ユーザーは、音声入力に含める単語や表現、認識精度を高めるための発音を録音できる個人用辞書を利用できます。カスタム言語モデルもサポートされています。
Windows Vistaでは、音声認識機能がWindowsの一部として開発されました。それまで音声認識はWindows Media Playerなどのアプリケーション専用でした。Windows 7、Windows 8、Windows 8.1、Windows RT、Windows 10、Windows 11にも搭載されています。
Microsoft は WSR より何年も前から音声認識と音声合成の研究に取り組んでいました。1993 年、Microsoft はカーネギーメロン大学からXuedong Huang 氏を雇い、音声開発の取り組みを主導させました。同社の研究は、 1994 年に導入されたSpeech API (SAPI)の開発につながりました。 [ 1 ]音声認識は、以前の Microsoft 製品でも使用されていました。Office XPとOffice 2003では、 Internet ExplorerとMicrosoft Officeアプリケーション間で音声認識機能が提供されました。 [ 2 ]また、Windows 98、Windows Me、Windows NT 4.0、およびWindows 2000でも限定的な音声機能が有効になっていました。[ 3 ] Windows XP Tablet PC Edition 2002 にはTablet PC Input Panel で音声認識機能が含まれており、[ 4 ] [ 5 ] Microsoft Plus! for Windows XP ではWindows Media Player の音声コマンドが有効になっていました。[ 6 ]しかし、これらはすべて音声認識を別のコンポーネントとしてインストールする必要がありました。Windows Vista より前の Windows には、統合された音声認識や高度な音声認識は含まれていませんでした。[ 5 ] Office 2007以降のバージョンは、音声認識サービスにWSRを使用しています。[ 7 ]
WinHEC 2002で、マイクロソフトは、Windows Vista (コードネーム「Longhorn」) には音声認識の進歩やマイクアレイのサポートなどの機能が含まれることを発表し[ 8 ]、これは「自然な (連続的な) 音声認識と (離散的な) コマンドと制御のための一貫した品質のオーディオ インフラストラクチャを提供する」取り組みの一環であるとしました[ 9 ]。ビル ゲイツはPDC 2003で、マイクロソフトは「音声機能をシステムに組み込む。これは、リアルタイムでの認識と合成の両方において、『Longhorn』で大きな進歩となる」と述べました[ 10 ] [ 11 ] 。また、 Windows Vista の開発中のプレリリース ビルドには、トレーニング機能を備えた音声エンジンが含まれていました[ 12 ] 。PDC 2003 の開発者向けプレゼンテーションでは、Windows Vista にはマイクのフィードバックと制御のためのユーザー インターフェイス、およびユーザー構成とトレーニング機能も含まれると述べられました。[ 13 ]マイクロソフトは、プレリリース版ソフトウェア開発キットで「音声対応メニューやボタンなどの一般的な音声シナリオはシステム全体で有効になる」と述べ、音声認識がどの程度統合されるかを明確にした。[ 14 ]
WinHEC 2004 の期間中、マイクロソフトはモバイル PC での生産性向上戦略の一環として WSR を組み入れました。[ 15 ] [ 16 ]マイクロソフトはその後、 WinHEC 2005 でアクセシビリティ、新しいモビリティ シナリオ、追加言語のサポート、音声ユーザー エクスペリエンスの改善を強調しました。Windows XP に含まれていた音声サポートはタブレット PC 入力パネルに統合されており、コマンド モードと音声入力モードを切り替える必要がありましたが、Windows Vista ではデスクトップに音声入力専用のインターフェイスが導入され、別々の音声モードが統合されました。[ 17 ]以前は、音声入力後にコマンドを話したり、その逆を行ったりするには、まずこれらの 2 つのモードを切り替える必要がありました。[ 18 ] Windows Vista Beta 1 には統合音声認識が含まれていました。[ 19 ]マイクロソフトは、従業員に WSR のソフトウェアの不具合を分析してフィードバックを提供するよう促すため、テスターに Xbox 360のプレミアム モデルを獲得する機会を提供しました。[ 20 ]
2006 年 7 月 27 日、Windows Vista の製造開始(RTM)前に Microsoft が行ったデモンストレーション中に、WSR に関連する注目すべきインシデントが発生しました。音声入力を何度か試みた結果、連続して出力エラーが発生し、意図しない出力「Dear aunt, let's set so double the killer delete select all」となりました。[ 21 ] [ 22 ]アプリケーション管理とナビゲーションの別のデモンストレーションは成功したにもかかわらず、このインシデントは聴衆のアナリストやジャーナリストの間で大きな嘲笑の的となりました。 [ 23 ] [ 24 ] Microsoft は、これらの問題は音声ゲインのグリッチが原因で認識器がコマンドや音声入力を歪めていたためだと明らかにしました。このグリッチはWindows Vista のリリース前に修正されました。[ 25 ]
2007 年初頭の報告によると、WSR は、攻撃者が特定の音声コマンドをターゲットのスピーカーから再生することで、音声認識を使用して悪意のある操作を行う脆弱性があることが示されました。 [ 26 ] [ 27 ]これは、Windows Vista の一般提供開始後に発見された最初の脆弱性でした。[ 28 ] Microsoft は、このような攻撃は理論的には可能であるものの、いくつかの緩和要因と前提条件によってその有効性が制限されるか、完全に防止されると述べています。ターゲットでは、認識機能がアクティブで、そのようなコマンドを適切に解釈するように構成されている必要があります。マイクとスピーカーの両方が有効で、十分な音量レベルである必要があります。また、攻撃には、コンピュータが目に見える操作を実行し、ユーザーが気づかないうちに可聴フィードバックを生成する必要があります。ユーザー アカウント制御によって、特権操作の発生も禁止されます。[ 29 ]

WSR はMicrosoft UI Automationを使用するように更新され、そのエンジンはWASAPIオーディオ スタックを使用するようになり、パフォーマンスが大幅に向上し、エコー キャンセレーションのサポートが可能になりました。電子メールやドキュメント内のテキストを分析および収集してユーザーの用語を文脈化できるドキュメント ハーベスターのパフォーマンスが向上し、認識器の起動後だけでなく、バックグラウンドで定期的に実行されるようになりました。スリープ モードのパフォーマンスも向上し、セキュリティ上の問題に対処するため、ユーザーが「聞くのをやめる」と話すと、認識器は中断されるのではなく、デフォルトでオフになります。Windows 7 では、将来の認識器バージョンを改善するために、音声トレーニング データを Microsoft に送信するオプションも導入されています。[ 30 ]
新しい音声入力スクラッチパッドインターフェイスは、テキストサービスフレームワークと互換性のないアプリケーションに挿入するために、ユーザーがテキストを音声入力または入力できる一時的なドキュメントとして機能します。[ 30 ] Windows Vista では、以前はこのようなアプリケーション向けに「どこでも音声入力を有効にするオプション」が提供されていました。[ 31 ]
WSR を使用すると、 Windows 8、Windows 8.1、および Windows RT のMetroユーザー インターフェイスを、チャーム バーを開くコマンド(「Windows キー C を押す」)、Metro スタイルのアプリでコマンドを音声入力または表示するコマンド(「Windows キー Z を押す」)、アプリでタスクを実行するコマンド (例: MSN 天気で「摂氏に変更」 )、およびスタート画面に一覧表示されるインストール済みアプリをすべて表示するコマンド(「アプリ」) で制御できます。[ 32 ] [ 33 ]
Windows 10 April 2018 Update (バージョン 1803 ) 以降、WSR は設定アプリに搭載されています。この変更はInsider Preview Build 17083で初めて登場しました。 [ 34 ] April 2018 Update では、WSR をアクティブ化するための新しいキーボードショートカット+ +も導入されています。[ 35 ]⊞ WinCtrlS
Windows 11 バージョン 22H2 では、WSR に加えて、2 番目の Microsoft アプリである Voice Access が追加されました。[ 36 ] [ 37 ] 2023 年 12 月、Microsoft は、WSR は Voice Access に置き換えられ、将来の Windows のビルドまたはリリースで削除される可能性があると発表しました。[ 38 ]
WSR を使用すると、音声コマンドでアプリケーションや Windowsデスクトップのユーザー インターフェイスを制御できます。[ 39 ]ユーザーは、ドキュメント、電子メール、フォーム内のテキストを音声入力したり、オペレーティングシステムのユーザー インターフェイスを制御したり、キーボード ショートカットを実行したり、マウス ポインタを移動したりできます。[ 40 ] Windows Vista の統合アプリケーションの大部分を制御できます。[ 39 ]サードパーティ アプリケーションは、音声入力のために Text Services Framework をサポートする必要があります。[ 1 ]英語 (米国)、英語 (英国)、フランス語、ドイツ語、日本語、中国語 (北京語)、スペイン語がサポート言語です。[ 41 ]
初めて起動すると、WSR はマイク設定ウィザードとオプションの対話型ステップバイステップチュートリアルを表示し、ユーザーは認識器を自分の声の特徴に合わせて調整しながら基本的なコマンドを学習できます。[ 39 ]チュートリアルの完了には約 10 分かかると推定されています。[ 42 ]認識器の精度は、定期的に使用することで向上し、コンテキスト、文法、パターン、語彙に適応します。[ 41 ] [ 43 ]法律や医療などの特定の職業分野のユーザーの特定のコンテキスト、音声学、用語のためのカスタム言語モデルもサポートされています。[ 44 ] Windows Searchを使用すると、[ 45 ]認識器はオプションで文書、電子メール、手書きのタブレット PC入力のテキストを収集して用語を文脈化および曖昧さを解消し、精度を向上させることもできます。情報は Microsoft に送信されることはありません。[ 43 ]
WSRはローカルで処理される音声認識プラットフォームであり、精度、音声入力、認識のためにクラウドコンピューティングに依存していません。[ 46 ]ユーザーに関する情報を保存する音声プロファイルはローカルに保持されます。[ 43 ]プロファイルのバックアップと転送は、 Windows Easy Transferを使用して実行できます。[ 47 ]

WSRインターフェースは、指示、コマンドに関する情報(例えば、コマンドが認識器に認識されなかった場合など)、および認識器の状態を表示するステータス領域と、音量レベルに関する視覚的なフィードバックを表示するボイスメーターで構成されています。ステータス領域は、WSRの現在の状態を以下の3つのモードで表します。それぞれのモードの意味は以下のとおりです。
音声認識リスニングモードボタンの色は、そのさまざまな動作モードを示します。リスニング中は青、スリープ中は青灰色、オフ中は灰色、ユーザーがコンテキストを切り替えたとき(デスクトップからタスクバーへなど)や音声コマンドが誤って解釈されたときは黄色になります。ステータス領域には、Windows 音声認識マクロの一部として、カスタムのユーザー情報を表示することもできます。[ 48 ] [ 49 ]

代替パネルの曖昧性解消インターフェイスには、ユーザーが話した単語に関連すると解釈された項目が表示されます。ユーザーがアプリケーションに挿入したい単語またはフレーズが結果にリストされている場合、ユーザーは結果内の対応する番号の単語またはフレーズを話し、「OK」と話して選択を確定し、アプリケーションに挿入できます。[ 50 ]代替パネルは、アプリケーションを起動したり、複数の項目を参照するコマンドを話したりする場合にも表示されます(たとえば、「インターネット エクスプローラを起動」と話すと、Web ブラウザーと、アドオンが無効になっている別のバージョンの両方が表示される場合があります)。WindowsレジストリのExactMatchOverPartialMatchエントリを使用すると、結果に複数のインスタンスが含まれている場合に、コマンドを正確な名前の項目に制限できます。[ 51 ]
以下に一般的な WSR コマンドを示します。斜体で示されている単語は、目的の項目に置き換えることができる単語です (例: 「scroll direction 」の「direction」は「 down 」に置き換えることができます)。[ 40 ]「start typing」コマンドを使用すると、WSR はすべての音声入力コマンドをキーボード ショートカットとして解釈します。[ 50 ]

MouseGrid を使用すると、画面上の 9 つの領域に数字を重ねて表示することで、マウス ポインターを制御できます。ユーザーがフォーカスしたい領域の番号を言うと、これらの領域は目的のインターフェイス要素に到達するまで徐々に狭まります。ユーザーは、「領域番号をクリック」などのコマンドを発行できます。これにより、マウス ポインターが目的の領域に移動してからクリックされます。「領域番号をマーク」では、領域内のアイテム (コンピューター アイコンなど) を選択でき、前のクリックコマンドでクリックできます。ユーザーは複数の領域を同時に操作することもできます。[ 40 ]
識別可能なコマンドが表示されないアプリケーションやインターフェース要素も、Show Numbersコマンドを使用してシステムにそれらの上に数字を重ねて表示させることで制御できます。アクティブになると、重ねて表示された数字を声に出して言うことでその項目が選択され、ユーザーはそれを開いたり、他の操作を実行したりできます。[ 40 ] Show Numbers は、ユーザーが容易に識別できない項目と対話できるように設計されました。[ 53 ]

WSR は、アプリケーションや Windows でテキストの音声入力を可能にします。音声入力の間違いが発生した場合は、「正しい単語」または「訂正」と話すことで修正できます。代替パネルが表示され、修正候補が表示されます。これらの候補は、候補の番号に対応する番号を話してから「OK」と話すことで選択できます。目的の項目が候補にない場合は、ユーザーがそれを話すことで表示される可能性があります。または、ユーザーは「スペルを教えて」または「自分でスペルを教えて」と話すことで、目的の単語を文字ごとに発音できます。スペルを言う際には、ユーザーは個人のアルファベットまたはNATO フォネティック アルファベット(例: 「November の N のように」) を使用できます。[ 44 ]
文中の複数の単語を同時に修正することができます(たとえば、ユーザーが「dictating」と発言しても、認識システムがこの単語を「the thing」と解釈した場合、ユーザーは「correct the thing」と発言することで両方の単語を一度に修正できます)。英語では、デフォルトで10万語以上が認識されます。[ 44 ]
個人辞書を使用すると、ユーザーは特定の単語や表現を音声入力に含めるか除外するかを選択できます。[ 44 ]ユーザーが辞書に大文字で始まる単語を追加する場合、常に大文字にするか、単語が話される文脈に応じて大文字にするかを指定できます。ユーザーは、辞書に追加した単語の発音を録音して認識精度を高めることもできます。Windowsの手書き認識機能用にタブレット PC でスタイラスを使用して書かれた単語も保存されます。辞書に保存された情報は、ユーザーの音声プロファイルの一部として含まれます。[ 43 ]ユーザーは、「音声辞書を表示」コマンドを話すことで音声辞書を開くことができます。

WSR は、Microsoft が提供する補助アプリケーションを介してカスタム マクロをサポートし、追加の自然言語コマンドを可能にします。[ 54 ] [ 55 ]この機能の例として、Microsoft がリリースした電子メール マクロでは、ユーザーが「件名について連絡先にメールを送信」と話すと、 Microsoft Outlookが開き、指定された連絡先と件名が自動的に挿入された新しいメッセージが作成されます。[ 56 ] Microsoft はまた、音声辞書、[ 57 ] Windows Media Player、[ 58 ] Microsoft PowerPoint、[ 59 ]音声合成、[ 60 ]複数のマイクを切り替える、[ 61 ]音量レベルなどのオーディオ デバイス構成のさまざまな側面をカスタマイズする、[ 62 ]および「天気予報は何ですか?」 、「今何時ですか?」 、 「日付は何ですか?」などの一般的な自然言語クエリ用のサンプル マクロもリリースしています。[ 63 ] [ 60 ]これらのユーザーからの問い合わせに対する応答は、マシンにインストールされているアクティブなMicrosoft テキスト読み上げ音声でユーザーに読み上げられます。
ユーザーと開発者は、テキストの書き起こしと置換、アプリケーションの実行(コマンドライン引数のサポート付き)、キーボードショートカット、既存の音声コマンドのエミュレーション、またはこれらの組み合わせに基づいて独自のマクロを作成できます。XML、JScript、およびVBScriptがサポートされています。[ 50 ]マクロは特定のアプリケーションに限定できます[ 64 ]。マクロのルールはプログラムで定義できます。[ 56 ] マクロをロードするには、アクティブユーザーのドキュメントディレクトリ内のSpeech Macrosフォルダーに保存する必要があります。保存されたコマンドが第三者によって変更またはロードされないように、ユーザー証明書が利用可能な場合は、すべてのマクロがデフォルトでデジタル署名されます。証明書が利用できない場合は、管理者が作成できます。[ 65 ]構成可能なセキュリティレベルにより、署名されていないマクロのロードを禁止したり、作成後にユーザーにマクロに署名するように促したり、署名されていないマクロをロードしたりできます。[ 64 ]
2017年現在WSRは、Windows Vistaで導入されたバージョンのMicrosoft Speech Recognizer 8.0を使用しています。PC WorldのシニアエディターであるMark Hachman氏によると、トレーニングなしでの音声認識の精度は93.6%で、競合ソフトウェアほど正確ではないことがわかりました。Microsoftによると、トレーニング後の精度は99%です。Hachman氏は、Microsoftがこの機能について公に議論しないのは、Windows Vistaの開発中の2006年の事件が原因で、Cortanaが導入される前は、Windows内で文書を音声入力できることを知っているユーザーはほとんどいなかったためだと述べています。[ 42 ]