【scikit-learn】Pythonで機械学習プログラミングをするためのライブラリとは?

Pythonで機械学習プログラミングをする、ということはわかるんだけど、いろいろなライブラリがあって、どれを使うのが良いかわからないよ。

scikit-learnがいいんじゃないかな

Pythonでまったり機械学習の勉強をしています。ディープラーニングかっこいいみたいな動機でディープラーニングを理解しようといくつかの動画を購入したりしたのですが、やはり機械学習という全体を見ていなかったので、挫折してきました 笑

今回、私が勉強を進めるにあたり、一つ決めたことがあります。

scikit-learnを使おう

と思いました。ということで、いくつかあるPythonの機械学習ライブラリでscikit-learnを使うメリットなどをつづります。

こんな人の役に立つかも

・これからPythonで機械学習を勉強したい人

・Pythonの機械学習ライブラリ、何を使ってよいか迷う人

・Pythonにはどんな機械学習ライブラリがあるのか知りたい人

目次

機械学習プログラミングは、scikit-learnで始めよう

機械学習をするためには、Pythonライブラリがいくつかあります。その中でどれを使っていったらよいかという点が初めての時には迷いどころになるかと思います。

私は、scikit-learnというライブラリをまず利用して勉強を進めようと考えています。

scikit-learnで始めようと考えた理由としては、次の通りです。

機械学習という分野全般のアルゴリズムが利用できる

機械学習には目的に応じて様々なアルゴリズムがあります。

ぱんだクリップ
AIプログラミングでできること、機械学習の種類を勉強 | ぱんだクリップ AIプログラミングができるようになるために今日も少し勉強したよ。 今日はどんなことを勉強したのかな? 前回は、人工知能とはどんなものかを記事にしました。より具体的に...

機械学習は、大きく、「教師あり学習」、「教師なし学習」、「強化学習」というカテゴリに分かれており、それぞれの目的に応じて使うアルゴリズムが異なってきます。

アルゴリズムには、シンプルな理解しやすいものから、ディープラーニングのように複雑なアルゴリズムまで様々です。

scikit-learnは、様々な機械学習のアルゴリズムを利用することができます。

シンプルなアルゴリズムで機械学習の概要をつかみたい

私が、機械学習というプログラミング分野があることを知ったのは、ニューラルネットワークやディープラーニングといった有名なアルゴリズムを聞いた時です。

しかし、このニューラルネットワークやディープラーニングというアルゴリズムはいくつかある機械学習プログラミングのアルゴリズムの中でも複雑なもので、最先端の技術よりなので、アルゴリズムの理解をするだけでも結構な学習となってしまいます。

機械学習プログラミングの学習はニューラルネットワークやディープラーニングといったアルゴリズムの勉強だけではない、ということです。

機械学習プログラミングをするためには、アルゴリズムの理解以外にも勉強するべきことがあったのです。たとえば、データの収集方法や、事前にデータの解析するなどです。

まずはシンプルなアルゴリズムから初めて、大枠を理解してからより詳細に複雑なニューラルネットワークなどのアルゴリズムを勉強していくという流れが良いと思いました。

私もいくつかディープラーニング入門の動画を購入したのですが、機械学習という分野全般を理解できていなかったので、なんとなく概要はわかっても、より詳細な学習は進みませんでした。

scikit-learn以外の他のライブラリ

「TensorFlow」というライブラリは、Googleが作成したニューラルネットワークのライブラリです。私は最初、このTensorFlowという名前でかっこいいと思い、これをどうやって使うんだ、という流れで機械学習プログラミングを知りました。もちろん、TensoeFlow入門みたいな動画などを購入していました。

また、「Chainer」というライブラリもあります。これは、ディープラーニング用のライブラリです。

このように、scikit-learn以外のライブラリは、特定の機械学習のアルゴリズムに特化したライブラリになっています。

機械学習の勉強を始めたばかりでは、さっそくディープラーニングなどの複雑なものを始めることには少しハードルがあるように感じます。

まずは、機械学習にどのようなアルゴリズムがあって、それぞれのアルゴリズムにどのようなメリットがあるのかなどを学んでいくことが重要だと感じました。

まとめ:機械学習はscikit-learnで始めよう

機械学習プログラミングの勉強を始めるには、言語をPython、また、Pythonのライブラリとしてscikit-learnを使うことがもっとも入門しやすいです。

また、scikit-learnがデフォルトで組み込まれているPythonの開発環境、Anacondaをインストールすることが、最も機械学習プログラミングを学んでいくハードルを下げることになると思います。

※追記:機械学習プログラミングのみを楽しみたい方はクラウドの「Google Colabo」が気軽にできてよいと思います。

ぱんだクリップ
Google Colaboratoryで楽にPythonプログラミングを始める | ぱんだクリップ Pythonプログラミングの学習にはGoogle Colaboratoryが楽で使いやすいよ。 Pythonの体験、機械学習プログラミングなどにはもってこいのプログラミング環境。 私は、最近、J...

Anaconda環境のインストールなどについては以下の記事で書かせていただきました。

ぱんだクリップ
Python開発環境を整えよう、人工知能プログラミングのための開発環境整備について | ぱんだクリップ 人工知能のプログラミングをするには、Pythonでプログラミングということはわかるんだけど、Pythonっていろいろな開発環境があるんですね。 おススメのAnaconda環境の紹介...

scikit-learnの公式サイト

まずは、機械学習プログラミングの入門として、一般的な「教師あり学習、アヤメの分類」を題材にてプログラミングを行いました。以下の記事が、アヤメの分類の最初の記事となります。

ぱんだクリップ
scikit-learnのアヤメのデータ、機械学習のプログラミングで重要なデータの観測 | ぱんだクリップ 機械学習プログラミングの勉強をはじめて、まずはアヤメのデータの分類をしようとしてます。アヤメのデータはscikit-learnにすでに含まれているんだね。 アヤメのデータは...
よかったらシェアしてね!
目次
閉じる