開発者向け音声認識ソフトウェア [終了]
-
01-07-2019 - |
質問
ようやく医者が言いました、数か月間は手首を休める必要があります。私は .NET 開発者なので、これによってしばらくの間私の生計が途絶える可能性がありますが、私はそうする気はありません。そうは言っても、開発者にとって良いハンズフリーのオプションはあるのでしょうか?世の中の音声認識ソフトウェアを使って成功した人はいますか?
追記:腕は再び回復し、両手でプログラミングするのが問題にならない程度になりました。ドラゴン 当然のことながら、十分に機能しましたが、思ったよりも速くプログラミングできたキーボードとは異なり、速度が遅かったです。
解決
それはそこにあり、それは機能します...
世の中にはかなりの数の音声認識プログラムがありますが、 ドラゴン自然に話す 最も広く使用されているものの 1 つだと思います。私自身も使用しましたが、その品質の高さに感動しました。それは数年前のことですが、今では状況はさらに改善されていると思います。
...しかし、それは簡単ではありません...
驚くほどうまく機能しますが、それが簡単な解決策であるとは言えません。プログラムのトレーニングには時間がかかりますが、それでも間違いは発生します。タイピングに比べて痛いほど遅いので、「キーボードを掴むな、キーボードを掴むな、...」と自分に言い聞かせなければなりませんでした(その後はとにかくキーボードを掴みます)。私自身、少しつぶやく傾向がありますが、それによって状況があまり改善されませんでした ;-)。特に最初の数週間はイライラするかもしれません。あなたも得ることができます 音声関連の問題 もし、あんたが 声を張りすぎてしまう.
...特にプログラマー向けです。
全体として、それは確かに実行可能な解決策です 通常の文章/散文を書く人向け. 。プログラマは、まったく異なる領域にいますが、そこには実際の解決策はありません。今では状況が変わっているかもしれませんが、もし変わっていたら驚くでしょう。
どうしたの?ほとんどの SR ソフトウェアは、通常の言語を認識するように構築されています。プログラマは非常に不可解なものを書きますが、通常の言語とコードの間で変換を行うソフトウェアを見つけるのは、不可能ではないにしても困難です。たとえば、次のように指示しますか?
if (somevar == 'a')
{
print('You pressed a!');
}
平均的な SR プログラムのコマンドを使用する場合、これは非常に面倒です。「スペースが左括弧にある場合、等号、等号、アポストロフィはアポストロフィを綴ります...」。そして、私はそれについてさえ話していません ナビゲートする あなたのコード。プログラミング中にキーボードをどれだけ使用しているか、そしてその使用法が「通常の」ユーザーのキーボードの使用法とどれほど異なっているかに気付いたことがありますか?
それを最大限に活用する方法
これまでのところ、私は Dragon NaturallySpeaking (DNS) のみを扱ってきたため、その製品についてしか話すことができません。プログラマーのような人々を対象とした興味深いアドオンや Web サイトがいくつかあります。
- ボコラ は、DNS に独自のコマンドを簡単に追加できる非公式プラグインです。基本的に、それは不可欠だと思いました。他のプログラマーによって作成されたコマンド セットも見つけることができます。コードをナビゲートします。これは Python で書かれたソフトウェア パッケージに基づいているため、より高度で派手なパッケージもいくつかあります。ボコラもチェック リソースページ. 。(警告:私がそれを使用したとき、Vocola のインストールにいくつかの問題がありました。詳細については、以下のニュースグループをチェックしてください!)
- SpeechComputing.com は、興味深い議論がたくさんあるフォーラム/ニュースグループです。始めるには良い場所です。
閉会の挨拶
この問題に対する最善の解決策は、実際には次のように思われます。
- 実際のコーディングを回避する方法を見つけてください。
- 回復してみてください。この本をお勧めするのはちょっと気が進まないのですが、RSI/手根管やその他の慢性的な痛みの問題を抱えている人には驚くほど効果があるようです。 J.E.サルノ、マインドボディの処方箋. 。私は今それに取り組んでいますが、間違いなく読む価値があると思います。
他のヒント
Dragon NaturallySpeaking 10 Professional を使用して VB.net と TSQL をディクテーションします。VB.net は本質的に「話し言葉」言語に近いものですが、それが C# などで機能しない理由はわかりません。私は完全に空の語彙から始めて、自分のニーズに合わせて語彙を一から構築します (そのため、プロフェッショナル バージョンを使用しています)。
基本的な手順は次のとおりです (これは、すでにユーザーを作成してトレーニングしていることを前提としています)。
- 「Base General - Empty Dictation」に基づいて新しい語彙を作成します。
- 書類や電子メールをスキャンさせないでください。
- プログラミング言語に固有の発音を持つキーワードのリストを追加します (Dim、ByVal\by-val など)。
- コメントを除くすべてのコードを含む .txt ドキュメントを作成します。
- この文書から単語を抽出し、発音を追加します。
- 文書を使用して語彙の言語モデルをトレーニングします。
興味のある方は機会があれば詳しく書きます。
編集:
その方法は次のとおりです SQLコードを指示する. 。データベース開発者であれば、ここで作成した単語リストを他の語彙に含めることができます。
チェックアウト Python を使用して音声でコーディングする.
もう 1 つのアイデアは、プログラムをペアにする別の優れた開発者を見つけることです。それは私にとって本当にうまくいきました。必ずしも速度を落とさずに手を休めることができ、最終的にはより高品質のコードを生成することができ、少なくともコードをあまりレビューする必要がなくなります。
すべての Linux 関係者のために、いくつかのリンクを共有したいと思います。
から始めましょう サイモン - オープンソースの音声認識ソフトウェア:
- Simon listens - 研究と実習のための非営利団体
- サイモン:オープンソースの音声認識 - 関連ブログ
- HTK 音声認識ツールキット - 内部で使用されるエンジン
- オープンソースの大語彙 CSR エンジン Julius
- サイモンの機能については話題にならない
他にも:
- Gnome 音声コントロール
- https://wiki.ubuntu.com/SpeechRecognition
- http://en.wikipedia.org/wiki/Speech_recognition_in_Linux
- ボイスコード
そして
私はここで少し本題から外れていることを承知しており、音声認識ソフトウェアについては何も知りません。ただし、キーボードを Dvorak レイアウトに変更することを検討してみると役立つかもしれません。Dvorak レイアウトのほうが手首に優しいと聞いています。
私は数年前に Dragon を試してみましたが、単語やフレーズをごちゃ混ぜにした悪夢のようなものでした。お勧めできません。それがその時点で最善の方向に進んでいたと理解しているので、楽観視はしていません。
同じ被害者として、次のような推奨事項があります。
- できるだけOTを必要としない仕事を探す
- いろいろなキーボードを試してみてください。私の経験では、ラップトップでフルタイムで作業するのが最も効果的でした。
- 低中ストレスの重量挙げプログラムを開始します。
手首の問題に関しては、私は10年ほど前に両手でマウスを使うことを学びました。
驚くほど簡単で、緊張が大幅に緩和されます。現在、ラップトップを使用しているのですが、タッチパッドのボタンを押すと親指に負担がかかります。
気をつけて。こうした問題は、思っているよりもずっと長く続く可能性があります。
追記「エルゴノミクス」などのタグを追加すると、タイトルはそれに関するものであることがわかります。 現像 音声認識用。
音声によるプログラミングのゴールドスタンダードは、 ボイスコード. 。私の記憶が正しければ、C++ と Python をサポートしています。
上で述べたように、Dragon Naturally Speaker は最高の音声認識ソフトウェアですが、Microsoft Speech Recognition もそれに劣らず、Vista にバンドルされています。
Vocola は最近 MSR に移植され、.Net 統合機能を備えています。
いくつかのヒント
- ディクテーションの学習には時間がかかります。話せるからといって、音声認識ソフトウェアの使い方を知っているわけではありません
- SR とキーボード/マウスの組み合わせに習熟することは、完全なハンズフリー操作よりもはるかに簡単です。
- CodeRush または同等のものを使用して入力を減らします。
左手でマウスを使い始めました。これにより、少しだけ楽になっただけでなく、右手をより自由に使えるようになりました。コーディング中に大量の内容を書き忘れている場合、これは非常に役立ちます。スクロールと書き込みを同時に行うことができます...
問題が発生し始めたとき、手首の下にウォーターバッグを置きました。とても気に入りました。私が持っていたバッグは完璧で、長かったので、手首を休めることができるようにキーボードの前に置きました。いつか踏むまでは…
ドラゴンナチュラルスピーキング優先とボコラ。オートホットキーを使用して可能な限り自動化します。ただし、プログラムするのは簡単ではありません。私は試した;ほぼ不可能である。ジョン・サーノの「Healing Back Pain」をチェックしてください。それは私を良くしてくれました。一日中プログラミングに戻ってきました!
ここでまた少し話が逸れますが、keboard を 2 つの部分に分割し、その他の特別なキーボードが役立つことがわかりました。kinesis をチェックしてください。このようなハードウェアに関する情報を diigo で収集しました。
- http://www.diigo.com/user/wierzowiecki/keyboard%20ergonomics
- http://www.diigo.com/user/wierzowiecki/keyboard%20rsi .
直接リンクについてはどうですか:
- http://www.fentek-ind.com/ergo.htm - 違うもの
- http://www.kinesis-ergo.com/contoured.htm - Kinesis Advantage Contoured キーボード (プログラム可能!)
- http://www.kinesis-ergo.com/foot.htm 一部のフット スイッチはキーボードに接続できます (ウィンドウの切り替えなど)
- http://www.kinesis-ergo.com/freestyle.htm - これまでのところ、通常のキーボードを 2 つ使用するほうが 1 つよりも優れていることがわかったので、分割フリースタイルも同様に機能すると思います
- http://www.typematrix.com/ - 別の解決策
- http://www.maltron.com/ - 片手での入力よりも片方の手の方が負担がかかる場合があります
- http://www.keybowl.com/ - これも面白そうですね
- 他にも興味深い解決策がたくさんあると思います
もう一つ!練習のための休憩についても覚えておいてください。定期的なエクササイズ(たとえば、小さなエクササイズ - 30分ごとに異なる)は、本当に本当に良くなります!
- http://www.workrave.org/ - これにより休憩について思い出させられます ;)
スコット・ハンセルマン 音声認識を使用する かなり.
私も 1996 年にあなたと同じ理由で Dragon Dictate を使用しました。進みは遅かったですが、動かないよりはマシでした。4x8 のホワイト ボードにコードを埋めて、他の人に入力してもらうと、コードを書くのが簡単であることがわかりました。次に、DD を使用してデバッグしました。
そして、あなたがそれをしている間に、あなたは見るかもしれません デボラ・キルターの RSIに関する本。とても有益です。
リンクは見つかりませんでしたが (探しました)、キーが 5 つしかなく、片手で入力できるキーボードもあります。手首が片方だけ悪いのだと思います。
リンクを見つけたら、メッセージを送ります。