Kinect SDKを使用しているため、混乱が生じると思います。ここでの回答の一部は、関連するSDK(.netのSystem.SpeechおよびさまざまなMicrosoftサーバー製品とServer Speech Platformで配布されるMicrosoft.Speech)に関するものです。 。他の回答のコメントから、Kinect SDKはMicrosoft.Speech名前空間を使用しているようで、アプリはKinectSDKに付属のMicrosoft.Speech.dllを参照する必要があります。
いくつかのことを明確にするのを助けるためだけに(私は願っています):
System.Speechはコア.netAPIであり、それを実装するレコグナイザーはWindows 7に含まれています。これはクライアントまたはデスクトップレコグナイザーであり、特定のユーザー向けにトレーニングでき、ディクテーション文法が含まれています。
Microsoft.Speechは.netAPIであり、似ていますが、少し異なります。Microsoft.Speechを実装する認識機能は、 UCMAやMicrosoft ServerSpeechPlatformなどのさまざまなサーバー製品の一部です。
ご指摘のとおり、Microsoft.SpeechはKinectレコグナイザーに使用されるAPIでもあります。これは、コメントSpeech C#How To(Kinect)で言及されているMSDNリンクPhilippSchmidに文書化されています。私はKinectを使用していませんが、認識機能はスピーカーのトレーニングを必要としないため、これは理にかなっています。
これらのリソースは、Kinectより前の日付であるため、少し古くなっていますが、役立つ場合があります。
Microsoft.SpeechとSystem.Speechは似ていますが、異なります。System.Speech.RecognitionとMicrosoft.Speech.Recognitionの違いは何ですか?を参照してください。
.NETスピーチを開始するために、数年前にhttp://msdn.microsoft.com/en-us/magazine/cc163663.aspxで公開された非常に優れた記事があります。これはおそらく私がこれまでに見つけた中で最高の紹介記事です。それは少し時代遅れですが、非常に大げさです。(AppendResultKeyValueメソッドはベータ版の後に削除されました。)この記事ではSystem.Speech名前空間を示していますが、そのほとんどはMicrosoft.Speechに直接マップできます。