Pythonで機械学習
今日は、Python × 機械学習
に取り組みたい、と思った時の始め方の一例を紹介します。
- Pythonだけでも学ぶことが多そう
- 機械学習は難しそう
など、色々な印象があると思いますが、1歩1歩学んでいくことで、Pythonで機械学習
を実現できます。
ここでは、Pythonや機械学習の知識についてはゼロベース、で紹介します。
前提知識がない、という人も、安心して見てください。
- 意外と取り組めそう
- 気になる部分だけでも取り組んでみるか
など、何か発見があるかもしれません。
Pythonの基本を知る
まずは、Pythonの基本を学ぶところからスタートします。
などのプログラミング学習サイトで、Pythonのコースに1度取り組むことがまず選択肢です。
他には、
- freeCodeCampのLearning Python: From Zero to Hero
という英語の記事は参考になります。
書籍で学習したいという場合は、
- 『Python 1年生 体験してわかる!会話でまなべる!プログラミングのしくみ』 森巧尚 著
- 『スッキリわかるPython入門 スッキリわかるシリーズ』国本大悟 / 須藤秋良 著
がお勧めです。
学習サイト、書籍、どういった形式で学んでも良いのですが、
- 自分が取り組みやすい方法
- 1回の学習でOK
というところがポイントだと思います。
全ての、構文や概念について、100%理解することを目標とするのではなく、ここでは、まずPythonの全体像を理解することが大切です。
機械学習を学ぶ
次に、機械学習についても簡単に全体を理解します。
- Courseraの機械学習コース
が分かりやすく、お勧めです。
英語のコースですが、動画には字幕を付けることができ、授業資料も分かりやすいので、まずこのコースを1周するというのは選択肢になります。
書籍であれば、
- [第3版]『Python機械学習プログラミング 達人データサイエンティストによる理論と実践』by Sebastian Raschka 著、Vahid Mirjalili 著
がお勧めです。ただ、この書籍は、Pythonで機械学習を実際に試すことが想定されているので、この書籍を用いて学習する場合は、次の「Pythonで機械学習」のフェーズと、「機械学習を学ぶ」というここでのフェーズが合わさる形になります。
ここでのフェーズでも、
- 機械学習の全体像を知るイメージで学習を進める
- 詳細まで全て理解する必要はない
という点がポイントです。機械学習は広い分野なので、詳細まで全て把握しようとすると、次のフェーズになかなか進めなくなります。
まずは、とりあえず、機械学習について知る、ということがここでの目的です。
Pythonで機械学習
ここで、今までの2つのフェーズをかけ合わせて、実際にPythonで機械学習に挑戦します。
先に紹介した『Python機械学習プログラミング 達人データサイエンティストによる理論と実践』といった書籍の他に
- scikit-learnの公式サイト
が、とても参考になります。
scikit-learnは、Pythonの機械学習用ライブラリです。
scikit-learnの公式サイトには、
- 色々な機械学習モデルのサンプルコード
- ユーザーガイド
などがあり、実際にPythonで機械学習しようと思った時に、プログラミングコードを参考にできます。
応用編
以上の流れで、Pythonで機械学習の一通りの流れを知ることができます。
ここからは、いくつかの応用例が考えられます。
何か作ってみる
まずは、Pythonで機械学習、を利用して何かアプリケーションを作ってみるということです。
例えば、
- 画像認識のWebアプリを作る
- カメラで物体検知できるアプリを作る
などです。
もともとHTML / CSS、JavaScriptなどの知識やスキルを持っている場合は、それと組み合わせて進めていくことができます。
それらの知識が無い場合には、
- 色々なライブラリやフレームワークを使用して、なるべくPythonで多くの部分を作る
- アプリを作りながら、不足している知識を身に着け、スキルを付けていく
という方法で大丈夫です。
ここまで、Pythonで機械学習を試してくると、自分で作ってみたいものが出てくるケースも多いと思います。
それを実際に作ってみることで、Pythonと機械学習の知見がより深まります。
コンペティションに参加
機械学習やデータ分析のためのコンペティションに参加するという方法もあります。
が世界的に知られた機械学習のコンペティションです。
Kaggleには、実際のコンペティションへの参加だけでなく、他に色々な学習リソースがあります。
他の参加者の機械学習モデルから学ぶこともできます。
Kaggleをはじめとする機械学習コンペティションに参加することで、さらにPythonと機械学習のスキルを伸ばすことができると思います。
ツールはたくさんある
今日紹介したように、Pythonで機械学習に取り組む、という場合、様々な教材があります。
最初は、難しそうに見えても、1つずつ取り組んでいけば、全てのフェーズを完了することができます。
- Pythonを学ぼうと思っていたけど、何から始めていいかわからなかった
- 機械学習に、興味があったが、どこから手を付ければいいかわからなかった
などの場合には、
Python × 機械学習
は有効な選択肢だと思います。
気になった人は、ぜひ試してみてください。
コメント