機械学習と統計学って何か違うのでしょうか|【Python・R・エクセル統計学・統計解析】
機械学習と統計学って何か違うのでしょうか
機械学習と統計学って何か違うのでしょうか
現在この問いの答えは、人によって結構違います。
個人的に思うに、
●統計学:データを説明(Explanation)するための手法
●機械学習:データを予測(Prediction)するための手法
統計学は、今あるデータそのものの状態を表現するための数学的手法であり、簡単なものでは、平均とか標準偏差とかのデータ処理を指します。
一方、機械学習はデータを学習し、そこから未知のデータに対して予測することに重きを置く手法、とのことです。
以上が、機械学習と統計学の違いに関する結論でした。
機械学習やAIつて言うと研究費がたくさんもらえるけど、統計学って表現するど研究賞があんまりもらえない。
そこが一番の違いということもあるかもしれません。
ちなみにAIの結末は、「最近は、なんでもかんでもAIと言われているのでよくわからん」という結論でした。
「そもそも機械学習ってなんなのか?」「そもそもAIつてなんなのか?」といった問いについては、専門家の間でも領域の違いによって微妙に回答が違ってくるようなので、ここでは明言を避けたいと思います。
ただ、統計学のアルゴリズムは機械学習に比べれば平易です。
言い換えれば、機械学習のアルゴリズムを一から作るのはとても大変です。
しかし現在、機械学習のアルゴリズムを一から作る必要はあまりありません。
その理由は、すでに歴代のデータサイエンティストたちが積み上げてきた知見やノウハウが詰め込まれた機械学習用プラットフォーム(プログラミング言語)が存在するからです。
我々は、まずはこのプラットフォームを使えばよいのです。
そして、そのプラットフォームを使うのは、プログラミングが得意ではない方にとっても非常に簡単で、しかも無料(フリーソフトウェア)です。
1つ目に有名な機械学習プラットフォームは『Python』です。
『パイソン』と読みます。
文法を極力単純化してコードの可読性を高め、読みやすく/書きやすくし、プログラマの作業性とコードの信頼性を高めることを重視してデザインされた汎用の高水準言語です。
機械学習アルゴリズムが実装されたライブラリが非常に豊富なため、非常に簡単に機械学習を使うことができます。
例えば、有名なディープラーニング(深層学習)を使いたい場合も、数行〜十数行のコードを書けばすぐに動きます。
バージョンで互換性がない場合がある(Python2のコードがPython3で動かない場合がある)のが、玉に瑕ですが、最近はそのあたりも解消されつつあるので問題ないでしょう。
今から始めるのであれば新しいバージョン(現在はPython3)を選びましょう。
2つ目の機械学習プラットフォームはRです。
『アール』と読みます。
こちらもPythonと同じオープンソースのフリーソフトウェアです。
文法もPythonと非常に似ており、ライブラリが非常に豊富なため、様々な機械学習を数行のコーディングだけで簡単に使うことができます。
両者を使っている筆者としては、「Rはより関数的で、Pythonはよりオブジェクト指向な感じがする」や「統計以外のタスクはPythonのコードの方がオフサイドルール(インデント)のせいで単純に見える」といった微妙な違いがあるものの、特にこだわりのない人にとっては大きな違いはないと思います。
そのため、これから機械学習を始める初学者の方がどちらかを選ぶ際には、自分の職場(もしくは大学の研究室)を見渡して、ユーザーが多い方を選択すればよいと思います。教えてもらえますし。
両者共通のメリットとしては、RやPythonの使い方(インストール方法、基本動作、コード例など)が書かれているWebサイトがたくさんある点です。
RやPythonについてよくまとまっているWebサイトは無数にあるため、正直ここでRやPythonについて記述する必要はあまりなかったと思います。
Webで検索するためにRやPythonという言葉さえ知ってくれればそれで十分です。
RやPythonは無料でありインターネット経由で環境をダウンロードできるため、パソコン(WindowsでもLinuxでもOK)とネット環境さえあれば、検索しながら今すぐにでも始めることができます。非常に簡単です。
一方、RとPythonの両抒に共通するデメリットとしては、機械学習から出てくる結果は、使い方に大きく依存するため、機械学習の知識なしに機械学習を使うことは非常に危険です。
具体的な機械学習の使い方(どの機械学習を使ってどのようにデータ解析するか)がイメージできたら、一度、使用する予定の機械学習アルゴリズムの数式をしっかり解くことを強くお勧めします。
関連記事