ニューラルネットワークを使用する
人工知能は従来のプログラミングとは 大きく異なり、 明示的な命令を書き出す代わりに、 機械学習を行わせることができます。 機械学習アルゴリズムは、データから さまざまなパターンを抽出します。 大切なのは機械に膨大なデータを 与えることです。 たとえば、コンピュータチェスの プログラミングは大変な工程です。 すべての動きをプログラムすることは できません。 機械学習なら、パターンを教えるだけで、 あとは機械が勝手に動きを学習します。 ニューラルネットワークは、機械が パターンを抽出するための堅牢な方法です。 人間の脳の場合、何十億もの ニューロンで構成されています。 これらのニューロンが結びつき、 ネットワークを形成することで、 学習したりパターンを分類したりします。 人間はパターンを簡単に識別できるので、 機械でも簡単だと思うかもしれませんが、 人間には簡単で当たり前のことが、 最先端のコンピューターシステムを もってしても非常に難しくなることが あります。 ニューラルネットワークでは人間が 簡単にできることに着目し、それを 最新のコンピューターのスペックを活かして スケールアップさせます。 そうすることで、数千枚の画像を一瞬で 分類したり、別の言語に翻訳したり、 音声をテキストファイルに 書き起こしたりできます。 ニューラルネットワークは機械学習の 一種なので、非常に大きなデータセットが 必要です。 教師あり学習では、小さな学習セットを 用意してパターンを学習させてから、 そのパターンをテストデータに対して 実行します。 別の方法として、教師なし学習で、 ラベルなしデータからパターンを 発見させることもできます。 人間が思いつかないようなクラスターを 発見するかもしれません。 これは、データセットが大きい場合に 有効な方法です。 強化学習を利用することもできます。 強化学習では、機械がゲームや アルゴリズムを実行してみて、 ポジティブな結果を出したアルゴリズムを 学習し、強化します。 人間が行っている作業を スケールアップすることは、組織にとって 大きな可能性を意味します。 たとえば、カスタマーサービスの電話を 適切な部署に転送する、 大量のレントゲン写真を機械に解析させる、 顧客の要望を正しく理解する、 ビジネスチャンスを発見するといったことが 実現します。 画像の分類に関して、 最新のニューラルネットワークには 人間の能力を超える性能があります。 数年後には、言語の翻訳や 音声の文字起こしに関して、人間の能力を 超える機械が登場するかもしれません。 いくつか留意しておきたい点もあります。 1つ目は、機械学習と同様、大量の高品質な データに依存しているという点です。 新しいパターンはデータから 抽出されるので、 データを提供しなければ、 ニューラルネットワークは学習できません。 2つ目に、ニューラルネットワークでは 経験則に基づくアプローチを 使用するという点です。 つまり、小さな実験を行って、 ネットワークを微調整していきます。 最新のニューラルネットワークでは、 設定を変更できる部分が多くあります。 これらは、ネットワークの ハイパーパラメータと呼ばれています。 数字を変えたり、さまざまな アルゴリズムを試したりできるほか、 統計的手法もあります。 設定を変更して、どう改善されるか 読めないこともあるでしょう。 しかし、それがニューラルネットワークの 実験であり、挑戦なのです。
エクササイズファイルを使って実践してみましょう。
インストラクターがコースで使用しているファイルはダウンロードできます。見て、聞いて、練習することで、理解度を深めることができます。