Python

AnacondaでPython機械学習系ライブラリをインストール

  • このエントリーをはてなブックマークに追加
  • LINEで送る

皆さんこんにちは!

Python でAIの機械学習しようと思ってる人も多いと思います。

でも手っ取り早く機械学習しようと思うがどうしますか?

やっぱりWindowsですよね。

ここでは Windows で Python のディストリビューションである Anaconda をインストールするとデフォルトでついてくる機械学習系のライブラリについて説明します。

なお、Anaconda はWindows 以外のOS( Linux・MacOSX)にも対応しています。

[toc]



スポンサーリンク

Anacondaでデフォルトインストールされる機械学習系ライブラリ

Anaconda でデフォルトインストールされる機械学習系のライブラリをご紹介します。

scikit-learnパッケージ

機械学習のライブラリでーす。
読み方は「サイキット・ラーン」。

文字通り機械学習のメインライブラリです。
サポートベクターマシン・ランダムフォレスト・Gradient Boosting(英語版)・K近傍法・DBSCANなどを含む様々な分類・回帰・クラスタリングアルゴリズムを備えています。
数値計算ライブラリのNumPyとSciPyとやり取りするよう設計されています。

Pythonでインポートする時は省略系でsklearnと記述しますヨ。
⇒例:from sklearn import モジュール名[datasets等]

NumPyパッケージ

行列やベクトルを使った科学技術計算機能を提供するライブラリです。
読み方は「ナンパイまたはナムパ」。

初めて見た時は「ナムピー」と読んでました^^;
最後が「ピー」でなく「パイ」と読むのはPythonが「パイ」だからかな。

ベクトルや行列など、機械学習で必要となる形式のデータを簡単に扱うことができます。

ベクトル(vector)とは

大きさと向きを持つ量。また物事の向かう方向と勢い。

javaでもvectorクラスはよく出てきた。
便利な配列として使ってたな。ベクターって呼んでたけど、ベクトルだと今更きづいた^^;
ベクトル(3,4)だとXを3,Yを4と置き換えた0を起点とした向きのあるグラフにできるから、大きさと向きを持つ量と理解している。

SciPyパッケージ

Numpyと同様に科学技術計算機能を提供するライブラリ

読み方は「サイパイ」。(「サイピー」じゃないよ)
科学的ツールのライブラリで配列の高速な操作のためのすべてのライブラリを含んでます。
配列オブジェクトとその他の基本的な機能を備えたNumPyを基礎にしていますヨ。
行列やベクトルだけでなく統計・最適化・積分・線形代数・フーリエ変換・信号・イメージ処理・遺伝的アルゴリズム・ODE (常微分方程式) ソルバ・特殊関数 等の様々なモジュールを扱えます。

Pillowパッケージ

画像処理のライブラリでーす。
リサイズ(拡大・縮小)や回転、トリミング(部分切り出し)のような画像処理ができます。
Pythonでインポートする時は省略系でPILと記述しますヨ。
⇒例:from sklearn import モジュール名[Image等]



スポンサーリンク

Anacondaでデフォルトインストールされない機械学習系ライブラリ

デフォルトでインストールされていないけどインストールした方が良いライブラリです。

Tensorflow

Googleのディープラーニングライブラリ。
読み方は「テンソルフロー」。

データフローグラフを使用したライブラリで、複雑なネットワークを分かりやすく記述できます。
「Tensor(テンソル)」とは、線形の量を表す概念で、多次元データ構造を表すものです。
「TensorFlow」は、多次元データ構造を流れるように処理し、ディープラーニングを行います。

他言語に対応…C言語、C++、Python、Java、Go
対応64ビットOSにのみ対応しているので注意!

Keras

オープンソースのニューラルネットワークライブラリ

バックエンドにTensorFlowを利用するディープラーニングライブラリラッパーです。
⇒難しいこと書いてるけど「Kerasはtensorflow を使ってる」って事です^^

「シンプル」「モジュール式」「拡張性」の3つの特徴があるヨ
より高いレベルでより直感的な一連の抽象化を提供されているため、ニューラルネットワーク設計を容易に行えます。

Pandas

データ解析を支援するライブラリ
読み方は「パンダス」または「パンダ」

数表および時系列データを操作するためのデータ構造と演算を提供する。

データを2次元の表で管理するデータフレーム オブジェクト、多様なデータファイルの読み書き、データの分割や統合、データに対する演算や関数の適用、データのグラフ化など

Matplotlib

PythonとNumpyのためのグラフ描写ライブラリ。
読み方は「マットプロットリブ」

基本的な折れ線グラフからヒストグラムなど、様々なグラフを簡単に描写することが可能。
機械学習のほぼすべての工程において、Matplotlibを使ったデータの解析/可視化は役立つゾ。
覚えようー。

例えば、ベクトル(3,4)だとXを3,Yを4と置き換えたグラフにしてくれるヨ。

PySoundFile

音声ファイルを読み書きできるライブラリ

ファイルの読み取り/書き込みはlibsndfile(C言語)
C言語を呼び出すPythonの外部関数インターフェイスであるCFFIを介してアクセスされ ます。

余談ですが…
Anacondaで「conda install PySoundFile」だとエラーがでた。
「pip install PySoundFile」ならうまくいった。

なぜだかまだわかっていないがとりあえず備忘録まで

OpenCV

画像処理・画像解析および機械学習等の機能を持つライブラリ。
読み方は「オープンシーブイ」

処理速度は、PILよりOpenCV の方が早いので、大量の画像を扱う場合はOpenCVを利用した方が良さそう。



スポンサーリンク

最後に

いかがでしたでしょうか。

勉強した範囲で、機械学習に必要と思われるライブラリをご紹介しました。

その他にもライブラリはいっぱいあります。

今は勉強中なので都度更新したいなぁ…

SEおっさん
SEおっさん
ここまで読んでくれてありがとう!

「記事を読んでもわからないトコがある」「内容が変だよ」
という時は、お気軽にコメントください♪

「もっとSEおっさんに詳しく聞きたい。何かお願いしたい!」
という時は、ココナラまで。メッセージもお気軽に♪

LINEでのお問合わせも受付中!
LINE公式アカウント

メッセージをお待ちしています!

取得資格
  • 応用情報技術者
  • Oracle Master Gold
  • Java SE Gold
  • Java EE Webコンポーネントディベロッパ
  • Python エンジニア認定データ分析
  • 簿記2級


スポンサーリンク
  • このエントリーをはてなブックマークに追加
  • LINEで送る

コメントを残す

*