[Python Tips 0] Pythonの拡張モジュールを知る

人工知能や機械学習について情報を集めているとPythonというプログラミング言語と出会うことがしばしばあります。
Pythonは機械学習やデータサイエンスのための多くのライブラリが充実していることからAI開発と切っても切り離せなくなりつつあります。

Pythonを一から学ぶための記事は様々な学習サイト等で綺麗にまとめられています。
当ブログではそういったPython初学者のための記事ではなく、ライターが役に立つと思ったPythonコーディングTipsや、numpyなどのライブラリに関する知識を記事として公開していきます。

初回である今回は、機械学習やデータサイエンスのためのライブラリについて簡単に紹介しておきたいと思います。
今後のPython Tipsで触れるであろうライブラリについてある程度、こんなものがあるんだという程度に頭の片隅に入れていきましょう。

numpy, scipy

効率的な数値計算のためのライブラリです。型付きの多次元配列を定義することができます。
数学的・統計的な計算においての純粋なPythonの遅さをカバーします。

pandas

データ解析のためのライブラリです。データ操作のためのDataframeというオブジェクトを定義できます。
csvファイルやExcelファイル、SQLデータベースなど様々なフォーマットの読み書きが可能なほか、データの変形や結合も柔軟に行うことができます。
時系列データなどのデータの取り扱いも可能で様々な集計・解析を行うことができます。

matplotlib, seaborn

データの可視化ライブラリです。
折れ線グラフや棒グラフにはじまり、散布図やヒートマップ、箱ひげ図など様々な図表を描画することができます。

scikit-learn

機械学習ライブラリです。
分類・回帰・クラスタリングのための様々なアルゴリズムが存在しており、簡単に機械学習を試すことができます。
また、手書き数字データセットなどの機械学習初学者向けのデータセットも付属されています。

tensorflow, keras, Pytorch

深層学習フレームワークです。
モデルを作るのに重要な多くのレイヤーや活性化関数、損失関数、最適化アルゴリズムなどが用意されているほか、著名ないくつかの学習済みモデルを利用することができます。
深層学習フレームワークは学習速度、モデルの柔軟さや、デバッグのしやすさ、可読性などでそれぞれ一長一短で、この3つ以外にも幾つか存在します。


簡単にライブラリを紹介してましたが、必要に応じて少しずつ覚えていけば十分です。
では、次回のPython Tipsでお会いしましょう!