
AIがブームになっており、機械学習というワードが頻繁にビジネスの世界で使われるようになっています。
機械学習の実装は、主にPythonというプログラミング言語によるものがほとんどです。
その理由の1つには、機械学習に必要なライブラリ群がPython向けに多く提供されているという実情もあるでしょう。
ここでは、初心者がどのようにPythonと機械学習を勉強していったのかを述べていきたいと思います。

Python以外にも時々C#やVBSなども使います。
大学4年生で初めてのプログラミングとしてPythonを始めたのですが
当時はプログラミングどころかExcelの使い方すら分かっていない状態でした。
今回はそんな状態だった自分が機械学習ができるまでどう勉強したかを述べていきたいと思います。
Pythonを学んだ3つのステップ
それでは、実際に私が行ったPythonの学習方法を3ステップに分けてお話ししましょう。
1.Anacondaのインストール

まずはAnacondaをインストールしましょう。
AnacondaをインストールするとPythonと必要なライブラリやJupyterNotebookなど必要不可欠な環境が整います。
初心者を対象にしたAnacondaのインストールに関する記事はインターネットにたくさんありますので一番わかりやすい記事をもとにインストールしてみてください。
ここで重要なことは比較的新しい記事にしましょう。
古記事のだとAnacondaのバージョンも古いものが多く、インストールする際に表示される画面が古いことがあり、無駄に戸惑ってしまうことになります。
2.実際にコードで実行

初心者を対象にしたホームページには
最初は定番のHellow World、簡単な足し算や掛け算、for文、関数の定義など様々なサンプルコードが書かれていると思います。
まずはそれらのコードを書いて実行してみましょう。
最初は簡単なコードでもエラーの連続だと思います。

私自身は最初よくInvalid Syntaxというエラーが多くあったのですが
これはカッコ()が片方抜けてたりなど簡単なミスで、自分はこんな簡単なミスをするのかと当時は悲しかったです。
3.ライブラリについて理解
ネット上にたくさん掲載されているPythonコードには、多くのライブラリが使用されています。
Pythonにはいろんなライブラリがあるので、これらを使えば簡単で効率的なプログラミングができるようになるので是非マスターしていきましょう。
特にPythonを使いこなすようになりたい人にとって重要なライブラリがNumpyとMatplotlibです。
Numpy
多次元配列の処理などを効率的に行うことができる数値計算を行うためのライブラリ
Matplotlib
データの可視化、棒グラフや散布図などデータの可視化をするためのライブラリ。
ライブラリについてはこちらの記事も参考になると思うので是非読んでみてください。
データ分析やるならPython!! おすすめの勉強法は?


機械学習を学んだ2つのステップ
それでは、実際に私が行った機械学習の学習方法を3ステップに分けてお話ししましょう。
1.機械学習についてPythonのサンプルコードが書いてある本を読む
まず機械学習の勉強を始めるには学習用の本を購入して勉強することをお勧めします。機械学習は教師あり学習、教師なし学習、強化学習と多岐にわたる分野のため、学習本で系統的に勉強することが機械学習の理解には必要不可欠だからです。
最初に勉強する本として私のオススメはサンプルコードが多く載っており、解説や図が多く掲載されているものをお勧めします。内容を理解しても実装出来ないと意味がないので、サンプルコードを実行しながら
機械学習の中身を理解し、Pythonも得意になっていきましょう。
2.機械学習用のライブラリのホームページで勉強
学習本に記載コードをしていると、多くの機械学習専用のライブラリを使用していることがわかると思います。
TensorFlow
Googleが開発しオープンソースで公開している、機械学習向けに開発されたライブラリ
主にディープラーニング系のものが多い。
scikit-learn
Pythonのオープンソース機械学習ライブラリ。サポートベクターマシン、ランダムフォレストなど様々な手法に対応している。
これらの公式ホームページでは様々な手法をデータと共にサンプルコードが書かれているので
とても勉強になります。
さいごに
Pythonを学ぶことと機械学習を学ぶことは、実際簡単なことではありません。
私自身、Pythonで機械学習が出来ると自信を持つのに
1年以上かかりました。
それでも昨日の自分が出来なかったこと・知らなかったことが
出来る・知っている状態になるのは非常に嬉しいです。
これを忘れずPythonを楽しく学びましょう。