1.機械学習とデータサイエンスに有用なPythonパッケージ20(3/3)まとめ
・Plotlyは視覚化ツールでとっつきにくいがMatplolibに追いつくかもしれない
・Scrapy、Beautiful Soupはクローリングやスクレイピングに有用
・PySparkはApache SparkエンジンのPython実装で大規模データ処理に有用
2.分析に有用なPythonのパッケージ20選
以下、www.kdnuggets.comより「The 20 Python Packages You Need For Machine Learning and Data Science」の意訳です。元記事の投稿は2021年10月、Sandro Luckさんによる投稿です。
アイキャッチ画像のクレジットはImage by Gerhard G. from Pixabay
14. Plotly
Matplolibに代わる有望なツールはPlotlyです。客観的に見てより美しく、インタラクティブなデータ視覚化にははるかに適しています。Matplolibとの主な違いは、ブラウザベースであることと、使い始めるのが若干難しいことですが、基本的なことを理解すれば、本当に素晴らしいツールだと思います。
Jupyterとの強力な統合により、今後ますます標準化され、人々をMatplolibから遠ざけることになると思います。GitHubで10,000★評価を獲得し、徐々にMatplolibに追いついています。
Plotlyで実現可能なグラフ
15. NLTK
NLTKはNatural Language ToolKitの略で、あなたが文章の意味を理解しようとするときに最良の友となります。英単語の語尾の違いを一意にするステム処理(stemming)などの様々な文法変換のための広範なアルゴリズムや、ドットやストップワードなど、モデルで文章を処理する前に除去したい記号の驚くべきリストが含まれています。
また、データセット内の文章の「書き手」が犯した文法エラーを修正するために、文である可能性が高いものとそうでないものを検出する事もできます。概して、テキストを扱う人は試してみてください。このようなニッチなパッケージにしては、またしても10,000の★評価です。
16. Scrapy
データなしでデータサイエンスをしようとしたことがあるなら、それはかなり無意味なことだと気づいたと思います。幸いなことに、インターネットにはほとんどすべての情報が含まれています。しかし、それがCSVのようなきれいなフォーマットで保存されていないこともあり、まず外に出て行って集めなければなりません。そんなとき、数行のコードで世界中のWebサイトを簡単にクロールできるscrapyが役に立ちます。今度、誰もデータセットを集めてくれないようなアイデアが浮かんだら、ぜひこの41,000件の★評価を持つパッケージをチェックしてみてください。
17. Beautiful Soup
Scrapyと非常によく似た場面で使用されます。多くの場合、Web開発者達はデータをHTMLと呼ばれる劣ったデータ構造に格納します。その入れ子になった無分別なデータ構造を利用するために、Beautiful Soupが作られました。
タイトルやタグなど、HTMLのさまざまな側面を抽出するのに役立ち、通常の辞書型データのようにそれらを繰り返し処理することができます。Beautiful Soupは、オープンアクセス可能なAPIを提供していないWebサイト内のユーザーコメントに興味を持っていた際に関わったいくつかの小さなプロジェクトで私を助けました。
18. XGBoost
データセットのサイズがテラバイトサイズを超えると、よく提供される機械学習アルゴリズムの一般的な実装を使って処理するのは難しくなります。XGBoostは、計算が終わるまで何週間も待たなければならないような状況を救ってくれます。XGBoostは、高度に規模拡大可能で分散型の勾配ブーストライブラリであり、計算を可能な限り効率的に実行することができます。Python以外でもほとんどすべての一般的なデータサイエンス言語や状況で利用可能です。
19. PySpark
データエンジニアリングはすべてのデータサイエンスのワークフローの一部であり、何十億ものデータポイントを処理しようとしたことがあれば、従来のforループでは処理できないことがわかります。
PySparkは、人気の高いApache Sparkデータ処理エンジンのPython実装です。pandasに似ていますが、最初から分散コンピューティングを意識して作られています。データの処理速度が追いつかないと感じたら、きっとこれが必要になるでしょう。また、大規模並列機械学習にも力を入れていて、ビッグデータの利用にも対応しています。Githubには3万の★評価がついており、最も人気のあるデータ処理ツールの一つです。
SparkのWebサイトより
20. Urllib3
Urllib3 は Python 用のパワフルでユーザーフレンドリーな HTTP クライアントです。Python でインターネットを使って何かしようとしているなら、これかそれをベースにしたものは必須です。API クローラや様々な外部データソースへの接続も含まれています。GitHubの2,800の★評価は嘘をつきません。
結論
これらは、機械学習エンジニアおよびPythonプログラマーとしての私のキャリアの中で最も重要な20のパッケージです。あなたが問題の解決策を調べるとき、これらのパッケージはあなたの必要な時にあなたを助けると確信しています。他の人があなたの知識から利益を得ることができるように、あなたのお気に入りのパッケージにコメントすることを忘れないでください。
3.機械学習とデータサイエンスに有用なPythonパッケージ20(3/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
ScrapyのWebサイトより