機械学習とデータサイエンスに有用なPythonパッケージ20(1/3)

入門/解説

1.機械学習とデータサイエンスに有用なPythonパッケージ20(1/3)まとめ

・機械学習/データサイエンス関連タスクをPythonで行う際のお勧めパッケージ20選
・機械学習エンジニアおよびPythonプログラマのキャリアの中で役立つと思ったパッケージ
・完全なリストではないがあらゆる事例に対応できるいくつかのツールを確実に提供

2.データサイエンス作業時に知っておきたいパッケージ20選

以下、www.kdnuggets.comより「The 20 Python Packages You Need For Machine Learning and Data Science」の意訳です。元記事の投稿は2021年10月、Sandro Luckさんによる投稿です。

こういったPythonお勧めパッケージ一覧系の記事は書いた人が専門とする分野の影響を受ける傾向がありますが、おそらく元記事を書いた人は画像系がメインの方なのだろうなと思います。知っているパッケージも多いかもしれませんが、Python-dateutilなど幾つか私も知らないものがあり、TIMEZONEの計算に便利だな、と思いました。

アイキャッチ画像のクレジットはImage by Gerhard G. from Pixabay

以下ではすべてのデータサイエンス、データエンジニアリング、機械学習プロジェクトで知っておくべき20のPythonパッケージを見ていきます。これらは、機械学習エンジニアおよびPythonプログラマーとしてのキャリアの中で最も役立つと思ったパッケージです。

このようなリストは決して完全なものではありませんが、あらゆる事例に対応できるいくつかのツールを確実に提供します。

私があなたのお気に入りパッケージを見逃していた場合に備えて、必ず他の人のオススメも確認してコメントでお知らせください。

1.Open CV

オープンソースのコンピュータービジョンライブラリであるOpen-CVは、画像やビデオを処理する際にあなたの親友となります。

顔検出や物体検出などの一般的な画像の問題に対して非常に効率的なソリューションを提供します。または、以下に示すように、エッジ検出は、画像内のさまざまな外枠線を検出するプロセスです。データサイエンスで画像を扱うことを計画している場合、このライブラリは必須です。Open CVはGithubに56,000の多数の★評価を集め、画像データの操作を数倍速く簡単にしました。


OpenCVのスクリーンショット

2.Matplotlib

データの視覚化は、データの専門家が専門でない人と会話する際の主な手法です。考えてみれば、様々なスマホアプリでさえ、舞台裏で行われている様々なデータの相互作用を視覚化しているにすぎません。

Matplolibは、Pythonで画像視覚化処理を行う際の基本です。エッジ検出アルゴリズムの結果を視覚化する事からデータ内の分布の確認まで、貴方はMatplolibを頻繁に使う事になるでしょう。GitHubの14,000の★評価を持ち、貢献を開始するのに最適なライブラリです。例えば、seabornとmatplotlibを使用して、最近、以下のアニメーションの折れ線グラフを作成しました。


プログラミング言語の人気を時系列で示すMatplolibで作成したGIF画像

3. pip

私達がPythonパッケージについて話していることを考えると、少し時間を取ってパッケージの主人であるpipについて話す必要があります。それがないと、他のどのパッケージもインストールできません。その唯一の目的は、Python Package IndexまたはGitHubなどの場所からパッケージをインストールすることです。ただし、これを使用して独自のカスタムビルドパッケージをインストールすることもできます。7,400の★評価は、Pythonコミュニティにとってどれほど重要かを反映していません。

4. Numpy

Pythonは、Numpyなしでは最も人気のあるプログラミング言語ではありません。これは、すべてのデータサイエンスおよび機械学習パッケージの基盤であり、Pythonを使用したすべての数学の集約型計算に不可欠なパッケージです。

大学で学んだ厄介な線形代数と派手な数学はすべて、基本的にNumpyによって非常に効率的な方法で処理されます。その構文スタイルは、多くの重要なデータライブラリで見ることができます。GitHubの18,100の★評価により、Pythonエコシステムの基盤がいかに重要であるかを垣間見ることができます。

5. Pandas

主にNumpyを使って構築されており、Pythonで実行できるすべてのデータサイエンスの中心です。

「import pandas as pd」は、私が朝に入力するコードの最初の行であり、Excelよりもはるかに優れています。

その宣言されたゴール地点は、あらゆる言語で利用できる最も強力なオープンソースデータツールになることであり、半分以上踏破されていると思います。多くの場合、最速のツールではありませんが、Dask、swifter、koalasなど、ビッグデータプロジェクトにも役立つように構文と使いやすさを基に構築された、高速化するための多くのサブツールがあります。 GitHubの30,900の★評価は、意欲的なデータウィザードの真の出発点である事を意味しています。

6. Python-dateutil

Pythonで日付を操作したことがある場合は、dateutilを使用せずに日付を操作するのは面倒です。

現在の日付、翌月、または日付間の距離(秒単位)を指定して計算できます。そして最も重要なことは、タイムゾーンの問題を処理することです。これは、ライブラリなしで実行しようとした場合、非常に苦痛になる可能性があります。GitHubの1,600の★評価は、タイムゾーンを操作するという苛立たしいプロセスを経験する必要のある人がそれほど多くないことを示しています。

7. Scikit-Learn

機械学習があなたの情熱の対象であるならば、Scikit-Learnプロジェクトがあなたをカバーしてくれます。

開始するのに最適な場所であり、予測に使用する可能性のあるアルゴリズムを探すための最初の場所でもあります。また、グリッド検索などの便利な評価方法やトレーニングヘルパーも多数用意されています。データから取得しようとしている予測が何であれ、sklearn(別名で宣言されることが多い表現)は、より効率的にそれを行うのに役立ちます。GitHubの47,000の★評価は、Pythonが機械学習者の言語として選ばれている理由を示しています。


Scikit-learnのスクリーンショット

3.機械学習とデータサイエンスに有用なPythonパッケージ20(1/3)関連リンク

1)www.kdnuggets.com
The 20 Python Packages You Need For Machine Learning and Data Science

2)github.com
opencv / opencv
matplotlib / matplotlib
pypa / pip
numpy / numpy
pandas-dev / pandas
dateutil / dateutil
scikit-learn / scikit-learn
scipy / scipy
tqdm / tqdm
tensorflow / tensorflow
keras-team / keras
pytorch / pytorch
statsmodels / statsmodels
plotly / plotly.py
nltk / nltk
scrapy / scrapy
apache / spark
urllib3 / urllib3

3)www.crummy.com
Beautiful Soup

4)xgboost.readthedocs.io
XGBoost Documentation — xgboost 1.6.0-dev documentation

タイトルとURLをコピーしました