質問: 機械学習、ディープラーニング、ニューラルネットワークの関係がいまいちはっきりしません。 私が調べた結果の、機械学習、ディープラーニングのおおまかな解釈ですが、 機械学習:全体のデータのうちから人が設定した入力情報をアウトプットする情報に変えるときの計算方法をコンピュータが学習し改善していく ディープラーニング:全体の入力データのうちどこのデータをどう見ればいいかということすらコンピュータが学習し(機械学習はこれを人間が設定する)、そこから計算方法も学習し、データをアウトプットする ここで、ニューラルネットワークは、脳の神経回路を模倣して、人間が設定した入力情報を処理するときの、それぞれのノード(?)の値の出力の仕方を学習していくというような感じで、これは機械学習と変わらないような気もしたのですが、様々なサイトで、ニューラルネットワークはディープラーニングのうちの一つといっていたので(ディープラーニングとニューラルネットワークは別物といっているサイトもありましたが)、私の解釈が間違っているのだと思いますが、解釈の間違いをご指摘いただけたらと思います。 また、下の動画のようなテトリスの人工知能は、ディープラーニングなのか機械学習なのかも教えてください。 https://youtu.be/D7rjGRoiCeM
回答: あらかじめ断っておきますが、この回答には技術的な内容が含まれておりません。 ディープラーニングとニューラルネットワークをあえて違うものと定義するのなら、狭義のニューラルネットワークは広義のニューラルネットワークのうち、層の深さが浅いものを指します。 ディープラーニングは層の深い広義のニューラルネットワークとなります。 ただ、そこまではっきりとした定義はないとも感じています。 深いというのも言葉を使う人の意識によりますので。 機械学習は計算方法を学んでいるわけではありません。 計算方法は人間が選択した手法によって決まっています。 機械学習での学習というのは、採用された数理モデルに含まれる任意性のあるパラメータを適用したいデータ群に対して最適化することです。 最近ではautomlといったちょっと高級な手法も開発されていますが、結局探索のパラメータ空間をどこに定めているのかの違いです。 思うところ、機械が学習するというのは一般には、人間が学習して、そこから得られたモデルを決めるためのルールを機械にやらせている、というものです。 機械学習とニューラルネットワークをうまく理解するために必要なキーワードは、構造化データと非構造化データかと思います。 テトリスについては、人間が操作していなくてかつそれなりの目的意識があるのなら、私は機械学習と言えると個人的に考えます。 ディープラーニングの手法を使っているのならディープラーニングでもあるのでしょう。 そこで問題意識が出てしまうわけですが、どこまで賢そうに機械だけで振る舞えたら機械学習と言えるのでしょうか。 ここから先は哲学的な話になりそうです。