python都會涉及到哪些流行框架,取決于你的技術工種是什么。
比如python流行的web框架有:Django、TurboGears、web2py、Flask、Bottle等;
python流行的爬蟲框架有:Scrapy、PySpider、Crawley、Portia、Newspaper、BeautifulSoup、Grab、Cola、Python-goose、mechanize等;
常見機器學習庫
1)Scikits_Learn:
Scikits-learn,又稱為sk-learn,是一個基于Numpy與SciPy的Python庫。Sk-learn被認為是用于處理復雜數據的最優秀的機器學習庫之一。它包含了大量用于實現傳統機器學習和數據挖掘任務的算法,比如數據降維、分類、回歸、聚類、以及模型選擇等。
隨著時間的發展,sk-learn不斷演進。其中包括它加入了交叉驗證功能,提供了使用多個衡量指標的能力。許多的訓練方法都得到了一定的改進,如邏輯回歸、近鄰算法(KNN)等。
2)LightGBM:
GradientBoosting是最好和最受歡迎的機器學習庫之一,它通過使用重新定義的基本模型和決策樹來幫助開發人員構建新算法。因此,有專門的庫被設計用于快速有效地實現該方法。這些庫包括LightGBM,XGBoost,和CatBoost。這些庫互為競爭對手,同樣使用了幾乎相同的思路來解決一個共同問題。這些庫都提供了高度可擴展,優化和快速的梯度增強實現,使其在機器學習開發人員中很受歡迎。因為大多數機器學習開發人員通過使用這些算法贏得了機器學習競賽。
6、常見深度學習庫
1)tensorflow:
Tensorflow把神經網絡運算抽象成運算圖(Graph),一個運算圖中包含了大量的張量(Tensor)運算(而張量實際上就是N維數據的集合)。神經網絡運算的本質是通過張量運算來擬合輸入張量與輸出張量之間的映射關系。
并行運算是Tensorflow的主要優勢之一。也就是說你可以通過代碼設置來分配你的CPU、GPU計算資源來實現并行化的圖運算。
Tensorflow使用了類似XLA(AcceleratedLinearAlgebra/加速線性代數)等技術對運算過程進行過優化,以保證其能夠靈活地調用計算資源的同時保持高效的運算速度。
Tensorflow框架中所有的工具庫都是用C或者C++來編寫,但它提供了用Python來編寫的接口封裝。事實上,你用Python編寫的神經網絡模型最終會調用基于C和C++編寫的Tensorflow內核來執行運算。
2)Keras:
Keras本質上是對Tensorflow、Theano等基礎框架作進一步的封裝,以提供統一的API來簡化神經網絡的構建與訓練。如果你打算以Tensorflow作為后端基礎框架,則必須遵循以下架構圖:
keras提供了非常簡明的機制來表達神經網絡結構,也提供了許多工具用于神經網絡模型的編譯、數據的處理、以及網絡結構的可視化等等。
再有,Keras提供了許多預處理的數據集,比如MNIST,和預訓練的模型,比如VGG、Inception、ResNet等等。
3)Theano:
Theano的工作原理與Tensorflow相似,但要比Tensorflow低效。因此它不適用于生產環境。
4)PyTorch:
PyTorch是最大的深度學習庫,允許開發人員通過加速GPU執行張量計算,創建動態計算圖,并自動計算梯度。除此之外,PyTorch還提供豐富的API,用于解決與神經網絡相關的應用問題。