網(wǎng)站性能檢測評分
注:本網(wǎng)站頁面html檢測工具掃描網(wǎng)站中存在的基本問題,僅供參考。
pythonstats
這可能是數(shù)據(jù)科學今年最好的20個Python庫 推廣視頻課程
來源 | AI科技大本營(公眾號ID:rgznai100)
Python在解決數(shù)據(jù)科學任務和挑戰(zhàn)方面繼續(xù)處于領先地位。去年,我們曾發(fā)表一篇博客文章 Top 15 Python Libraries for Data Science in 2017,概述了當時業(yè)已證明最有幫助的Python庫。今年,我們擴展了這個清單,增加了新的 Python 庫,并重新審視了去年已經(jīng)討論過的 Python 庫,重點關注了這一年來的更新。
我們的選擇實際上包含了 20 多個庫,因為其中一些庫是相互替代的,可以解決相同的問題。因此,我們將它們放在同一個分組。
▌核心庫和統(tǒng)計數(shù)據(jù)
1. NumPy (Commits: 17911, Contributors: 641)
官網(wǎng):http://numpy.org/
NumPy 是科學應用程序庫的主要軟件包之一,用于處理大型多維數(shù)組和矩陣,它大量的高級數(shù)學函數(shù)集合和實現(xiàn)方法使得這些對象執(zhí)行操作成為可能。
2. SciPy (Commits: 19150, Contributors: 608)
官網(wǎng):https://scipy.org/scipylib/
科學計算的另一個核心庫是 SciPy。它基于 NumPy,其功能也因此得到了擴展。SciPy 主數(shù)據(jù)結構又是一個多維數(shù)組,由 Numpy 實現(xiàn)。這個軟件包包含了幫助解決線性代數(shù)、概率論、積分計算和許多其他任務的工具。此外,SciPy 還封裝了許多新的 BLAS 和 LAPACK 函數(shù)。
3. Pandas (Commits: 17144, Contributors: 1165)
官網(wǎng):https://pandas.pydata.org/
Pandas 是一個 Python 庫,提供高級的數(shù)據(jù)結構和各種各樣的分析工具。這個軟件包的主要特點是能夠將相當復雜的數(shù)據(jù)操作轉換為一兩個命令。Pandas包含許多用于分組、過濾和組合數(shù)據(jù)的內(nèi)置方法,以及時間序列功能。
4. StatsModels (Commits: 10067, Contributors: 153)
官網(wǎng):http://statsmodels.org/devel/
Statsmodels 是一個 Python 模塊,它為統(tǒng)計數(shù)據(jù)分析提供了許多機會,例如統(tǒng)計模型估計、執(zhí)行統(tǒng)計測試等。在它的幫助下,你可以實現(xiàn)許多機器學習方法并探索不同的繪圖可能性。
Python 庫不斷發(fā)展,不斷豐富新的機遇。因此,今年出現(xiàn)了時間序列的改進和新的計數(shù)模型,即 GeneralizedPoisson、零膨脹模型(zero inflated models)和 NegativeBinomialP,以及新的多元方法:因子分析、多元方差分析以及方差分析中的重復測量。
▌可視化
5. Matplotlib (Commits: 25747, Contributors: 725)
官網(wǎng):https://matplotlib.org/index.html
Matplotlib 是一個用于創(chuàng)建二維圖和圖形的底層庫。藉由它的幫助,你可以構建各種不同的圖標,從直方圖和散點圖到費笛卡爾坐標圖。此外,有許多流行的繪圖庫被設計為與matplotlib結合使用。
6. Seaborn (Commits: 2044, Contributors: 83)
官網(wǎng):https://seaborn.pydata.org/
Seaborn 本質(zhì)上是一個基于 matplotlib 庫的高級 API。它包含更適合處理圖表的默認設置。此外,還有豐富的可視化庫,包括一些復雜類型,如時間序列、聯(lián)合分布圖(jointplots)和小提琴圖(violin diagrams)。
7. Plotly (Commits: 2906, Contributors: 48)
官網(wǎng):https://plot.ly/python/
Plotly 是一個流行的庫,它可以讓你輕松構建復雜的圖形。該軟件包適用于交互式 Web 應用程,可實現(xiàn)輪廓圖、三元圖和三維圖等視覺效果。
8. Bokeh (Commits: 16983, Contributors: 294)
官網(wǎng):https://bokeh.pydata.org/en/latest/
Bokeh 庫使用 JavaScript 小部件在瀏覽器中創(chuàng)建交互式和可縮放的可視化。該庫提供了多種圖表集合,樣式可能性(styling possibilities),鏈接圖、添加小部件和定義回調(diào)等形式的交互能力,以及許多更有用的特性。
9. Pydot (Commits: 169, Contributors: 12)
官網(wǎng):https://pypi.org/project/pydot/
Pydot 是一個用于生成復雜的定向圖和無向圖的庫。它是用純 Python 編寫的Graphviz 接口。在它的幫助下,可以顯示圖形的結構,這在構建神經(jīng)網(wǎng)絡和基于決策樹的算法時經(jīng)常用到。
▌機器學習
10. Scikit-learn (Commits: 22753, Contributors: 1084)
官網(wǎng):http://scikit-learn.org/stable/
這個基于 NumPy 和 SciPy 的 Python 模塊是處理數(shù)據(jù)的最佳庫之一。它為許多標準的機器學習和數(shù)據(jù)挖掘任務提供算法,如聚類、回歸、分類、降維和模型選擇。
利用 Data Science School 提高你的技能
Data Science School:http://datascience-school/
11. XGBoost / LightGBM / CatBoost (Commits: 3277 / 1083 / 1509, Contributors: 280 / 79 / 61)
官網(wǎng):
http://xgboost.readthedocs.io/en/latest/
http://lightgbm.readthedocs.io/en/latest/Python-Intro.html
https://github/catboost/catboost
梯度增強算法是最流行的機器學習算法之一,它是建立一個不斷改進的基本模型,即決策樹。因此,為了快速、方便地實現(xiàn)這個方法而設計了專門庫。就是說,我們認為 XGBoost、LightGBM 和 CatBoost 值得特別關注。它們都是解決常見問題的競爭者,并且使用方式幾乎相同。這些庫提供了高度優(yōu)化的、可擴展的、快速的梯度增強實現(xiàn),這使得它們在數(shù)據(jù)科學家和 Kaggle 競爭對手中非常流行,因為在這些算法的幫助下贏得了許多比賽。
12. Eli5 (Commits: 922, Contributors: 6)
官網(wǎng):https://eli5.readthedocs.io/en/latest/
通常情況下,機器學習模型預測的結果并不完全清楚,這正是 Eli5 幫助應對的挑戰(zhàn)。它是一個用于可視化和調(diào)試機器學習模型并逐步跟蹤算法工作的軟件包,為 scikit-learn、XGBoost、LightGBM、lightning 和 sklearn-crfsuite 庫提供支持,并為每個庫執(zhí)行不同的任務。
▌深度學習
13. TensorFlow (Commits: 33339, Contributors: 1469)
官網(wǎng):https://tensorflow.org/
TensorFlow 是一個流行的深度學習和機器學習框架,由 Google Brain 開發(fā)。它提供了使用具有多個數(shù)據(jù)集的人工神經(jīng)網(wǎng)絡的能力。在最流行的 TensorFlow應用中有目標識別、語音識別等。在常規(guī)的 TensorFlow 上也有不同的 leyer-helper,如 tflearn、tf-slim、skflow 等。
14. PyTorch (Commits: 11306, Contributors: 635)
官網(wǎng):https://pytorch.org/
PyTorch 是一個大型框架,它允許使用 GPU 加速執(zhí)行張量計算,創(chuàng)建動態(tài)計算圖并自動計算梯度。在此之上,PyTorch 為解決與神經(jīng)網(wǎng)絡相關的應用程序提供了豐富的 API。該庫基于 Torch,是用 C 實現(xiàn)的開源深度學習庫。
15. Keras (Commits: 4539, Contributors: 671)
官網(wǎng):https://keras.io/
Keras 是一個用于處理神經(jīng)網(wǎng)絡的高級庫,運行在 TensorFlow、Theano 之上,現(xiàn)在由于新版本的發(fā)布,還可以使用 CNTK 和 MxNet 作為后端。它簡化了許多特定的任務,并且大大減少了單調(diào)代碼的數(shù)量。然而,它可能不適合某些復雜的任務。
▌分布式深度學習
16. Dist-keras / elephas / spark-deep-learning (Commits: 1125 / 170 / 67, Contributors: 5 / 13 / 11)
官網(wǎng):
http://joerihermans/work/distributed-keras/
https://pypi.org/project/elephas/
https://databricks.github.io/spark-deep-learning/site/index.html
隨著越來越多的用例需要花費大量的精力和時間,深度學習問題變得越來越重要。然而,使用像 Apache Spark 這樣的分布式計算系統(tǒng),處理如此多的數(shù)據(jù)要容易得多,這再次擴展了深入學習的可能性。因此,dist-keras、elephas 和 spark-deep-learning 都在迅速流行和發(fā)展,而且很難挑出一個庫,因為它們都是為解決共同的任務而設計的。這些包允許你在 Apache Spark 的幫助下直接訓練基于 Keras 庫的神經(jīng)網(wǎng)絡。Spark-deep-learning 還提供了使用 Python 神經(jīng)網(wǎng)絡創(chuàng)建管道的工具。
▌自然語言處理
17. NLTK (Commits: 13041, Contributors: 236)
官網(wǎng):https://nltk.org/
NLTK 是一組庫,一個用于自然語言處理的完整平臺。在 NLTK 的幫助下,你可以以各種方式處理和分析文本,對文本進行標記和標記,提取信息等。NLTK 也用于原型設計和建立研究系統(tǒng)。
18. SpaCy (Commits: 8623, Contributors: 215)
官網(wǎng):https://spacy.io/
SpaCy 是一個具有優(yōu)秀示例、API 文檔和演示應用程序的自然語言處理庫。這個庫是用 Cython 語言編寫的,Cython 是 Python 的 C 擴展。它支持近 30 種語言,提供了簡單的深度學習集成,保證了健壯性和高準確率。SpaCy 的另一個重要特性是專為整個文檔處理設計的體系結構,無須將文檔分解成短語。
19. Gensim (Commits: 3603, Contributors: 273)
官網(wǎng):https://radimrehurek/gensim/
Gensim 是一個用于健壯語義分析、主題建模和向量空間建模的 Python 庫,構建在Numpy和Scipy之上。它提供了流行的NLP算法的實現(xiàn),如 word2vec。盡管 gensim 有自己的 models.wrappers.fasttext實現(xiàn),但 fasttext 庫也可以用來高效學習詞語表示。
▌數(shù)據(jù)采集
20. Scrapy (Commits: 6625, Contributors: 281)
官網(wǎng):https://scrapy.org/
Scrapy 是一個用來創(chuàng)建網(wǎng)絡爬蟲,掃描網(wǎng)頁和收集結構化數(shù)據(jù)的庫。此外,Scrapy 可以從 API 中提取數(shù)據(jù)。由于該庫的可擴展性和可移植性,使得它用起來非常方便。
▌結論
本文上述所列就是我們在 2018 年為數(shù)據(jù)科學領域中豐富的 Python 庫集合。與上一年相比,一些新的現(xiàn)代庫越來越受歡迎,而那些已經(jīng)成為經(jīng)典的數(shù)據(jù)科學任務的庫也在不斷改進。
下表顯示了 GitHub 活動的詳細統(tǒng)計數(shù)據(jù):
原文鏈接:https://activewizards/blog/top-20-python-libraries-for-data-science-in-2018/
——【完】——
- DataCastle -
干貨 | 請收下這份2018學習清單:150個最好的機器學習,NLP和Python教程 行業(yè)視頻課程
本文英文出處:Robbie Allen
翻譯/雷鋒網(wǎng)字幕組 吳楚
校對/ 雷鋒網(wǎng) 田晉陽
機器學習的發(fā)展可以追溯到1959年,有著豐富的歷史。這個領域也正在以前所未有的速度進化。在之前的一篇文章(https://unsupervisedmethods/why-artificial-intelligence-is-different-from-previous-technology-waves-764d7710df8b)中,我們討論過為什么通用人工智能領域即將要爆發(fā)。有興趣入坑ML的小伙伴不要拖延了,時不我待!
在今年秋季開始準備博士項目的時候,我已經(jīng)精選了一些有關機器學習和NLP的優(yōu)質(zhì)網(wǎng)絡資源。一般我會找一個有意思的教程或者視頻,再由此找到三四個,甚至更多的教程或者視頻。猛回頭,發(fā)現(xiàn)標收藏夾又多了20個資源待我學習(推薦提升效率工具Tab Bundler)。
找到超過25個有關ML的“小抄”后,我寫一篇博文(https://unsupervisedmethods/cheat-sheet-of-machine-learning-and-python-and-math-cheat-sheets-a4afe4e791b6),里面的資源都有超鏈接。
為了幫助也在經(jīng)歷類似探索過程的童鞋,我把至今發(fā)現(xiàn)的最好的教程匯總了一個列表。當然這不是網(wǎng)絡上有關ML的最全集合,而且其中有一部分內(nèi)容很普通。我的目標是要找到最好的有關機器學習子方向和NLP的教程。
我引用了能簡潔介紹概念的基礎內(nèi)容。我已經(jīng)回避包含一些大部頭書的章節(jié),和對理解概念沒有幫助的科研論文。那為什么不買一本書呢? 因為教程能更好地幫助你學一技之長或者打開新視野。
我把這博文分成四個部分,機器學習,NLP,Python,和數(shù)學基礎。在每一小節(jié)我會隨機引入一些問題。由于這方面學習材料太豐富了,本文并未涵括所有內(nèi)容。
機器學習
1、機器學習就是這么好玩!(medium/@ageitgey)
機器學習速成課程(Berkeley的ML):
Part I:https://ml.berkeley.edu/blog/2016/11/06/tutorial-1/
Part II:https://ml.berkeley.edu/blog/2016/12/24/tutorial-2/
Part III:https://ml.berkeley.edu/blog/2017/02/04/tutorial-3/
機器學習入門與應用:實例圖解(toptal)
https://toptal/machine-learning/machine-learning-theory-an-introductory-primer
機器學習的簡易指南 (monkeylearn)
https://monkeylearn/blog/a-gentle-guide-to-machine-learning/
如何選擇機器學習算法?(sas)
https://blogs.sas/content/subconsciousmusings/2017/04/12/machine-learning-algorithm-use/
2、Activation and Loss Functions
激活函數(shù)與損失函數(shù)
sigmoid 神經(jīng)元 (neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap1.html#sigmoid_neurons
激活函數(shù)在神經(jīng)網(wǎng)絡中有什么作用?(quora)
https://quora/What-is-the-role-of-the-activation-function-in-a-neural-network
神經(jīng)網(wǎng)絡的激活函數(shù)大全及其優(yōu)劣 (stats.stackexchange)
https://stats.stackexchange/questions/115258/comprehensive-list-of-activation-functions-in-neural-networks-with-pros-cons
激活函數(shù)及其分類比較(medium)
https://medium/towards-data-science/activation-functions-and-its-types-which-is-better-a9a5310cc8f
理解對數(shù)損失 (exegetic.biz)
http://exegetic.biz/blog/2015/12/making-sense-logarithmic-loss/
損失函數(shù)(Stanford CS231n)
http://cs231n.github.io/neural-networks-2/#losses
損失函數(shù)L1 與L2 比較(rishy.github.io)
http://rishy.github.io/ml/2015/07/28/l1-vs-l2-loss/
交叉熵損失函數(shù)(neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap3.html#the_cross-entropy_cost_function
3、偏差(Bias)
神經(jīng)網(wǎng)絡中的偏差的作用(stackoverflow)
https://stackoverflow/questions/2480650/role-of-bias-in-neural-networks/2499936#2499936
神經(jīng)網(wǎng)絡中的偏差節(jié)點(makeyourownneuralnetwork.blogspot)
http://makeyourownneuralnetwork.blogspot/2016/06/bias-nodes-in-neural-networks.html
什么是人工神經(jīng)網(wǎng)絡中的偏差 (quora)
https://quora/What-is-bias-in-artificial-neural-network
4、感知器(Perceptron)
感知器模型(neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap1.html#perceptrons
感知器(natureofcode)
http://natureofcode/book/chapter-10-neural-networks/#chapter10_figure3
一層的神經(jīng)網(wǎng)絡(感知器模型)(dcu.ie)
http://computing.dcu.ie/~humphrys/Notes/Neural/single.neural.html
從感知器模型到深度網(wǎng)絡(toptal)
https://toptal/machine-learning/an-introduction-to-deep-learning-from-perceptrons-to-deep-networks
5、回歸算法
線性回歸分析簡介(duke.edu)
http://people.duke.edu/~rnau/regintro.htm
線性回歸 (ufldl.stanford.edu)
http://ufldl.stanford.edu/tutorial/supervised/LinearRegression/
線性回歸 (readthedocs.io)
http://ml-cheatsheet.readthedocs.io/en/latest/linear_regression.html
邏輯斯特回歸 (readthedocs.io)
http://ml-cheatsheet.readthedocs.io/en/latest/logistic_regression.html
機器學習之簡單線性回歸教程(machinelearningmastery)
http://machinelearningmastery/simple-linear-regression-tutorial-for-machine-learning/
機器學習之邏輯斯特回歸教程(machinelearningmastery)
http://machinelearningmastery/logistic-regression-tutorial-for-machine-learning/
softmax 回歸(ufldl.stanford.edu)
http://ufldl.stanford.edu/tutorial/supervised/SoftmaxRegression/
6、梯度下降
基于梯度下降的學習 (neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap1.html#learning_with_gradient_descent
梯度下降(iamtrask.github.io)
http://iamtrask.github.io/2015/07/27/python-network-part2/
如何理解梯度下降算法?(kdnuggets)
http://kdnuggets/2017/04/simple-understand-gradient-descent-algorithm.html
梯度下降優(yōu)化算法概覽(sebastianruder)
http://sebastianruder/optimizing-gradient-descent/
優(yōu)化算法:隨機梯度下降算法 (Stanford CS231n)
http://cs231n.github.io/optimization-1/
7、生成學習
生成學習算法 (Stanford CS229)
http://cs229.stanford.edu/notes/cs229-notes2.pdf
貝葉斯分類算法之實例解析(monkeylearn)
https://monkeylearn/blog/practical-explanation-naive-bayes-classifier/
8、支持向量機
支持向量機(SVM)入門(monkeylearn)
https://monkeylearn/blog/introduction-to-support-vector-machines-svm/
支持向量機(Stanford CS229)
http://cs229.stanford.edu/notes/cs229-notes3.pdf
線性分類:支持向量機,Softmax (Stanford 231n)
http://cs231n.github.io/linear-classify/
9、后向傳播算法(Backpropagation)
后向傳播算法必知(medium/@karpathy)
https://medium/@karpathy/yes-you-should-understand-backprop-e2f06eab496b
來,給我圖解一下神經(jīng)網(wǎng)絡后向傳播算法?(github/rasbt)
https://github/rasbt/python-machine-learning-book/blob/master/faq/visual-backpropagation.md
后向傳播算法是如何運行的?(neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap2.html
沿時后向傳播算法與梯度消失(wildml)
http://wildml/2015/10/recurrent-neural-networks-tutorial-part-3-backpropagation-through-time-and-vanishing-gradients/
簡易入門沿時后向傳播算法(machinelearningmastery)
http://machinelearningmastery/gentle-introduction-backpropagation-time/
奔跑吧,后向傳播算法!(Stanford CS231n)
http://cs231n.github.io/optimization-2/
10、深度學習
果殼里的深度學習(nikhilbuduma)
http://nikhilbuduma/2014/12/29/deep-learning-in-a-nutshell/
深度學習教程 (Quoc V. Le)
http://ai.stanford.edu/~quocle/tutorial1.pdf
深度學習,什么鬼?(machinelearningmastery)
http://machinelearningmastery/what-is-deep-learning/
什么是人工智能,機器學習,深度學習之間的區(qū)別? (nvidia)
https://blogs.nvidia/blog/2016/07/29/whats-difference-artificial-intelligence-machine-learning-deep-learning-ai/
11、優(yōu)化算法與降維算法
數(shù)據(jù)降維的七招煉金術(knime.org)
https://knime.org/blog/seven-techniques-for-data-dimensionality-reduction
主成分分析(Stanford CS229)
http://cs229.stanford.edu/notes/cs229-notes10.pdf
Dropout: 改進神經(jīng)網(wǎng)絡的一個簡單方法(Hinton @ NIPS 2012)
http://videolectures/site/normal_dl/tag=741100/nips2012_hinton_networks_01.pdf
如何溜你們家的深度神經(jīng)網(wǎng)絡?(rishy.github.io)
http://rishy.github.io/ml/2017/01/05/how-to-train-your-dnn/
12、長短期記憶(LSTM)
老司機帶你簡易入門長短期神經(jīng)網(wǎng)絡(machinelearningmastery)
http://machinelearningmastery/gentle-introduction-long-short-term-memory-networks-experts/
理解LSTM網(wǎng)絡(colah.github.io)
http://colah.github.io/posts/2015-08-Understanding-LSTMs/
漫談LSTM模型(echen.me)
http://blog.echen.me/2017/05/30/exploring-lstms/
小學生看完這教程都可以用Python實現(xiàn)一個LSTM-RNN (iamtrask.github.io)
http://iamtrask.github.io/2015/11/15/anyone-can-code-lstm/
13、卷積神經(jīng)網(wǎng)絡(CNNs)
卷積網(wǎng)絡入門(neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap6.html#introducing_convolutional_networks
深度學習與卷積神經(jīng)網(wǎng)絡模型(medium/@ageitgey)
https://medium/@ageitgey/machine-learning-is-fun-part-3-deep-learning-and-convolutional-neural-networks-f40359318721
拆解卷積網(wǎng)絡模型(colah.github.io)
http://colah.github.io/posts/2014-07-Conv-Nets-Modular/
理解卷積網(wǎng)絡(colah.github.io)
http://colah.github.io/posts/2014-07-Understanding-Convolutions/
14、遞歸神經(jīng)網(wǎng)絡(RNNs)
遞歸神經(jīng)網(wǎng)絡教程 (wildml)
http://wildml/2015/09/recurrent-neural-networks-tutorial-part-1-introduction-to-rnns/
注意力模型與增強型遞歸神經(jīng)網(wǎng)絡(distill.pub)
http://distill.pub/2016/augmented-rnns/
這么不科學的遞歸神經(jīng)網(wǎng)絡模型(karpathy.github.io)
http://karpathy.github.io/2015/05/21/rnn-effectiveness/
深入遞歸神經(jīng)網(wǎng)絡模型(nikhilbuduma)
http://nikhilbuduma/2015/01/11/a-deep-pe-into-recurrent-neural-networks/
15、強化學習
給小白看的強化學習及其實現(xiàn)指南 (analyticsvidhya)
https://analyticsvidhya/blog/2017/01/introduction-to-reinforcement-learning-implementation/
強化學習教程(mst.edu)
https://web.mst.edu/~gosavia/tutorial.pdf
強化學習,你學了么?(wildml)
http://wildml/2016/10/learning-reinforcement-learning/
深度強化學習:開掛玩Pong (karpathy.github.io)
http://karpathy.github.io/2016/05/31/rl/
16、對抗式生成網(wǎng)絡模型(GANs)
什么是對抗式生成網(wǎng)絡模型?(nvidia)
https://blogs.nvidia/blog/2017/05/17/generative-adversarial-network/
用對抗式生成網(wǎng)絡創(chuàng)造8個像素的藝術(medium/@ageitgey)
https://medium/@ageitgey/abusing-generative-adversarial-networks-to-make-8-bit-pixel-art-e45d9b96cee7
對抗式生成網(wǎng)絡入門(TensorFlow)(aylien)
http://blog.aylien/introduction-generative-adversarial-networks-code-tensorflow/
《對抗式生成網(wǎng)絡》(小學一年級~上冊)(oreilly)
https://oreilly/learning/generative-adversarial-networks-for-beginners
17、多任務學習
深度神經(jīng)網(wǎng)絡中的多任務學習概述(sebastianruder)
http://sebastianruder/multi-task/index.html
NLP
1、NLP
《基于神經(jīng)網(wǎng)絡模型的自然語言處理》(小學一年級~上冊)(Yoav Goldberg)
http://u.cs.biu.ac.il/~yogo/nnlp.pdf
自然語言處理權威指南(monkeylearn)
https://monkeylearn/blog/the-definitive-guide-to-natural-language-processing/
自然語言處理入門(algorithmia)
https://blog.algorithmia/introduction-natural-language-processing-nlp/
自然語言處理教程 (vikparuchuri)
http://vikparuchuri/blog/natural-language-processing-tutorial/
Natural Language Processing (almost) from Scratch (arxiv.org)
初高中生課程:自然語言處理 (arxiv.org)
https://arxiv.org/pdf/1103.0398.pdf
2、深度學習和 NLP
基于深度學習的NLP應用(arxiv.org)
https://arxiv.org/pdf/1703.03091.pdf
基于深度學習的NLP(Richard Socher)
https://nlp.stanford.edu/courses/NAACL2013/NAACL2013-Socher-Manning-DeepLearning.pdf
理解卷積神經(jīng)網(wǎng)絡在NLP中的應用(wildml)
http://wildml/2015/11/understanding-convolutional-neural-networks-for-nlp/
深度學習,NLP,表示學習(colah.github.io)
http://colah.github.io/posts/2014-07-NLP-RNNs-Representations/
嵌入表示,編碼,注意力,預測 : 新一代深度學習因NLP的精妙而存在(explosion.ai)
https://explosion.ai/blog/deep-learning-formula-nlp
理解基于神經(jīng)網(wǎng)絡的自然語言處理(Torch實現(xiàn)) (nvidia)
https://devblogs.nvidia/parallelforall/understanding-natural-language-deep-neural-networks-using-torch/
深度學習在NLP中的應用(Pytorch實現(xiàn)) (pytorich.org)
http://pytorch.org/tutorials/beginner/deep_learning_nlp_tutorial.html
3、詞向量(Word Vectors)
詞袋法遇到感知器裝袋法(kaggle)
https://kaggle/c/word2vec-nlp-tutorial
學習單詞嵌入表示法(sebastianruder)
Part I:http://sebastianruder/word-embeddings-1/index.html
Part II:http://sebastianruder/word-embeddings-softmax/index.html
Part III:http://sebastianruder/secret-word2vec/index.html
單詞嵌入表示的神奇力量(acolyer.org)
https://blog.acolyer.org/2016/04/21/the-amazing-power-of-word-vectors/
解釋word2vec 的參數(shù)學習(arxiv.org)
https://arxiv.org/pdf/1411.2738.pdf
word2vec教...
使用python開扒自己的微信 公司視頻課程
上一篇文章大家都知道了python有了強大的第三方庫 今天我們就來介紹其中的一個微信庫 wxpy 使用他我們可以輕松的制造微信機器人 導出自己微信的數(shù)據(jù) 獲得自己微信的好友統(tǒng)計信息,得到好友的具體信息(如微信號,簽名,性別,省份等)通過這些數(shù)據(jù)制作詞云 讓我們一起來感受下站在巨人的肩膀上是什么感覺吧!
我們先來登陸微信
代碼
'''from wxpy import *
robot = Bot()'''
接下來獲取好友,群,公眾號信息
'''data = robot.chats
print(data)'''
獲取好友統(tǒng)計信息也是相當簡單 兩行代碼
'''information = robot.friends()
print(information.stats_text())'''
獲取關注的公眾號信息統(tǒng)計
'''wx = robot.mps()
print(wx.stats_text())'''
群聊
'''Groups = robot.groups()
for group in Groups:
print(group)'''
wxpy 還有其他諸多用處 大家可以自己多多研究 安裝方法也特別簡單 命令行pip3 install wxpy 至于聊天機器人 詞云 咱們下次在聊!
python數(shù)據(jù)分析之線性回歸,各種檢驗和解決方法! 企業(yè)視頻課程
線性回歸
(1)線性回歸的主要內(nèi)容:
有興趣可以玩一下這個游戲:是猜相關系數(shù)的,給你一些散點圖,猜相關系數(shù),很難猜對,說明看圖說明相關性不靠譜!
(2)線性回歸怎么做?數(shù)學公式
一個簡單線性回歸的例子:
ols:
擬合優(yōu)度:
(3) 假設檢驗
線性回歸這位老師用的是statsmodels做的。
這就是用線性回歸擬合出來的模型!
使用這個函數(shù)可以直接得到模型的一些結果,會得到這些表!
這個是預測的函數(shù):predict(x)。這是這個包的函數(shù)!
二、多元線性回歸
也可以用向量的方式。
參數(shù)是迭代計算的,此處不講了。
模型的檢驗
只用與 模型的選擇 調(diào)整的r方。避免的樣本量的影響,預防過擬合!
python中的實現(xiàn) 試用stats model 多個變量用+連一起!
模型的一些值
變量的篩選,除了常規(guī)的,就是使用相前,向后還有逐步,還有全子集的方法。
不多介紹,上篇也講過。
python需要自己寫來實現(xiàn),當然我不會,這里可以用spss去實現(xiàn)
這是python代碼
跳過。。。
回歸的假設。
線性
強影響點篩選,然后直接刪除
強烈建議用spss進行多元線性回歸建模。不過為了熟悉python明天打算用python更著去實現(xiàn)。
自己整理一下,多元線性回歸的檢驗方法:
整體顯著性檢驗:回歸模型出來時候,可以之間看整體的F檢驗的p值
擬合優(yōu)度檢驗:最簡單的就看R方和調(diào)整的R方
系數(shù)檢驗:T檢驗結果,可以直接看P值
自相關檢驗:dw檢驗用得最多
異方差檢驗:Goldfeld - Quandt 檢驗法,這個方法挺好的的。其實還有其他檢驗方法,解決辦法是建議取對數(shù)
共線性檢驗:vif值
不夠細,明日具體操作的時候會細點!
手把手 | 數(shù)據(jù)科學速成課:給Python新手的實操指南 新手視頻課程
大數(shù)據(jù)文摘作品
編譯:王夢澤、丁慧、笪潔瓊、Aileen
數(shù)據(jù)科學團隊在持續(xù)穩(wěn)定的發(fā)展壯大,這也意味著經(jīng)常會有新的數(shù)據(jù)科學家和實習生加入團隊。我們聘用的每個數(shù)據(jù)科學家都具有不同的技能,但他們都具備較強的分析背景和在真正的業(yè)務案例中運用此背景的能力。例如,團隊中大多數(shù)人都曾研究計量經(jīng)濟學,這為概率論及統(tǒng)計學提供了堅實的基礎。
典型的數(shù)據(jù)科學家需要處理大量的數(shù)據(jù),因此良好的編程技能是必不可少的。然而,我們的新數(shù)據(jù)科學家的背景往往是各不相同的。編程環(huán)境五花八門,因此新的數(shù)據(jù)科學家的編程語言背景涵蓋了R, MatLab, Java, Python, STATA, SPSS, SAS, SQL, Delphi, PHP to C# 和 C++。了解許多不同的編程語言在有些時候確實很有必要,然而我們更希望使用一種編程語言來完成大多數(shù)的項目,這樣我們可以在項目上更容易的進行合作。由于無人知曉一切,一種首選的編程語言讓我們有機會互相學習。
我們公司更傾向于使用Python。在開源社區(qū)的大力支持下,Python已經(jīng)成為了處理數(shù)據(jù)科學強有力的工具。Python容易使用的語法,強大的數(shù)據(jù)處理能力和極好的開源統(tǒng)計庫,例如Numpy, Pandas, Scikit-learn, Statsmodels等,使我們可以完成各種各樣的任務,范圍從探索性分析到構建可伸縮的大數(shù)據(jù)管道和機器學習算法。只有對那些較寬松的統(tǒng)計模型我們有時會將Python和R結合使用,其中Python執(zhí)行大量的數(shù)據(jù)處理工作和R進行統(tǒng)計建模。
我的理念是通過實踐來學習,因此為了幫助新數(shù)據(jù)科學家使用Python進行數(shù)據(jù)科學研究,我們創(chuàng)建了Python數(shù)據(jù)科學(速成)課(Python Data Science (Crash) Course)。這門課的目標是使我們的新員工(也包括其他部門的同事)以互動的方式和自己的節(jié)奏來學習解決實際的業(yè)務問題。與此同時,更有經(jīng)驗的數(shù)據(jù)科學家可以回答任何問題,但也不要小看從StackOverflow或者圖書館的文檔中尋找答案的的技能,我們也當然愿意向新數(shù)據(jù)科學家傳授這項技能!
在文章中,我們會按階段來介紹這個實踐課程。
階段一:學習Python的基礎知識
顯而易見,第一步是學習Python這個軟件,即學習Python語法及基本操作。幸運的是,如果你能處理好代碼縮進的話,Python語法就不沒那么難了。我在使用Java編程語言時無需考慮注意縮進問題,然而當我之后開始使用Python時在縮進上容易出錯。
因此,如何開始學習Python?由于我們更喜歡通過實踐來學習的方式,所以我們總是讓新員工從Codecademy Python課程開始。Codecademy提供了交互式的Python課程體驗,無需擔心安裝軟件會麻煩,可以在瀏覽器中直接學習使用Python。
Codecademy Python課程用時大約13個小時,完成之后,你應該能夠在Python中進行簡單的操作。
提示:數(shù)據(jù)科學家還可以在Codecademy上學習SQL,這門課程也十分重要。
階段二:在Anaconda環(huán)境下本地安裝Python
在結束了Codecademy課程后,我們顯然會想去開始編寫自己的代碼,然而因為我們不繼續(xù)在瀏覽器中運行Python,需要在我們本地電腦上安裝Python。
Python是開源的,并可通過python.org.免費下載。然而官方版本只包含了標準的Python庫,標準庫中包含文本文件、日期時間和基本算術運算之類的函數(shù)。Python標準庫不夠全面,無法進行多樣化的數(shù)據(jù)科學分析,但開源社區(qū)已經(jīng)創(chuàng)建出了很棒的庫來擴展Python的功能,使其能夠進行數(shù)據(jù)科學研究。
為了避免單獨下載安裝所有的庫,我建議使用Anaconda Python發(fā)行版。Anaconda實際上是與大量的庫結合在一起的Python,因此你不需要手動安裝它們。此外,Anaconda附帶了一個簡單的命令行工具,在必要時安裝新的或更新現(xiàn)有的庫。
提示:盡管默認情況下Anaconda幾乎涵蓋了所有很棒的庫,但還有一些沒有包含在內(nèi)。你可以通過conda install package_name or pip install package_name語句來安裝新的包。例如,我們經(jīng)常在項目中使用進度條庫 tqdm。因此,我們需要先執(zhí)行pip install tqdm語句來完成Anaconda的新安裝。
階段三:使用PyCharm進行簡單的編碼
安裝了Python之后,我們可以在本地電腦上運行Python代碼。打開編輯器寫下Python代碼,打開命令行并運行新創(chuàng)建的Python文件,路徑為python C:\Users\thom\new_file.py。
為了使事情變得簡單一些,我更喜歡在Pychanm環(huán)境中編寫Python代碼。PyCharm是一種所謂的集成開發(fā)環(huán)境,對開發(fā)人員編寫代碼時提供支持。它可以處理常規(guī)任務,例如通過提供一個簡單的運行腳本按鈕來運行程序,此外它還可以通過提供自動完成功能和實時錯誤檢查來提高效率。如果忘記了某處的空格或使用了未被定義的變量名稱,PyCharm會發(fā)出警告提示。想要使用版本控制系統(tǒng)例如Git來進行項目合作?PyCharm會幫助你。不管怎樣,使用Pycham可以在編寫Python程序時節(jié)省大量的時間,charm名副其實。
階段四:解決一個模擬的業(yè)務問題
定義研究的問題
假設現(xiàn)在經(jīng)理提出了一個他面對的業(yè)務問題,他希望能夠預測用戶在公司網(wǎng)站上進行首次點擊/參與(例如訂閱簡報)的概率。在給出了一些想法后,我們提出可以基于用戶的頁面瀏覽量來預測訂閱轉換概率,此外,你構建了以下假設:更多的頁面瀏覽量會導致用戶首次訂閱的概率增大。
為了檢驗假設是否成立,我們需要從網(wǎng)絡分析師處獲得兩個數(shù)據(jù)集:
Session數(shù)據(jù)集 包含所有用戶的所有頁面瀏覽量。
1. user_id: 用戶標識符
2. session_number: 會話數(shù)量(升序排列)
3. session_start_date: 會話的開始日期時間
4. unix_timestamp: 會話的開始unix時間標記
5. campaign_id: 將用戶帶到網(wǎng)站的活動的ID
6. domain: 用戶在會話中訪問的(子)域
7. entry: 會話的進入頁面
8. referral: 推薦網(wǎng)站,例如:google
9. pageviews: 會話期間的頁面訪問量
10. transactions: 會話期間的交易量
Engagement數(shù)據(jù)集 包含所有用戶的所有參與活動。
1. user_id:唯一的用戶標識符
2. site_id: 產(chǎn)生參與活動的網(wǎng)站ID
3. engagement_unix_timestamp: 發(fā)生參與活動的unix時間標記
4. engagement_type: 參與活動的類型,例如訂閱簡報
5. custom_properties: 參與活動的其他屬性
不幸的是,我們有兩個單獨的數(shù)據(jù)集,因為它們來自不同的系統(tǒng)。然而,兩個數(shù)據(jù)集可以通過唯一用戶標識符user_id來匹配。我已經(jīng)在GitHub上放置了我用來解決業(yè)務問題的最終代碼 ,然而我強烈建議你僅在自己解決了這個問題后再去查看代碼。此外,你還可以找到創(chuàng)建兩個虛構數(shù)據(jù)集的代碼。
代碼鏈接:
https://github/thomhopmans/themarketingtechnologist/tree/master/7_data_science_in_python
使用Pandas進行簡單的數(shù)據(jù)處理
無論我們應用任何統(tǒng)計模型解決問題,都需要預先清洗和處理數(shù)據(jù)。例如,我們需要為會話數(shù)據(jù)集中的每個用戶找到其首次活動的數(shù)據(jù)(如果有的話)。這就要求在user_id上加入兩個數(shù)據(jù)集,并刪除首次活動后的其他所有活動數(shù)據(jù)。
Codecademy Python課程已經(jīng)告訴你如何逐行閱讀文本文件。Python非常適合數(shù)據(jù)管理和預處理,但不適用于數(shù)據(jù)分析和建模。
Python的Pandas庫克服了這個問題。Pandas提供了(數(shù)值)表和時間序列的數(shù)據(jù)結構和操作。因此,Pandas讓Python數(shù)據(jù)科學工作變得更加簡單!
使用pd.read_csv()讀取數(shù)據(jù)集
我們的Python代碼中的第一步是加載Python中的兩個數(shù)據(jù)集。Pandas提供了一個簡單易用的函數(shù)來讀取.csv文件:read_csv()。本著學習的原則,我們建議您自己找出如何讀取這兩個數(shù)據(jù)集。最后,你應該建立兩個獨立的DataFrames,每個數(shù)據(jù)集都需要有一個。
小貼士:在這兩個文件中,我們都有不同的分隔符。此外,請務必查看read_csv()中的date_parser選項,將UNIX時間標記轉換為正常的日期時間格式。
過濾無用數(shù)據(jù)
任何(大)數(shù)據(jù)問題中的下一步是減少問題規(guī)模的大小。在我們的例子中,有很多與我們問題無關的列,例如會話的媒介/來源。因此,我們在Dataframes上應用索引和選擇只保留相關的列,比如user_id(必需加入這兩個DataFrames),每個會話和活動的日期(在此之前搜索首次活動和會話)以及頁面訪問量(假設驗證的必要條件)。
另外,我們會篩選出DataFrame中所有非首次的活動??梢酝ㄟ^查找每個user_id的最早日期來完成。具體怎樣做呢?使用GroupBy:split-apply-combine邏輯!
Pandas最強大的操作之一是合并,連接和序列化表格。它允許我們執(zhí)行任何從簡單的左連接和合并到復雜的外部連接。因此,可根據(jù)用戶的唯一標識符結合會話和首次活動的DataFrames。
刪除首次活動后的所有會話
在上一步中使用簡單的合并,我們?yōu)槊總€會話添加了首次活動的時間標記。通過比較會話時間標記與首次活動時間標記,你應該能夠過濾掉無用的數(shù)據(jù)并縮小問題的規(guī)模。
添加因變量y:參與/訂閱活動轉換
如上所述,我們希望預測頁面訪問量對轉換(即首次活動)概率的影響。因此,我們的因變量y是一個二進制變量,用它表示會話內(nèi)是否發(fā)生了轉換。由于我們做了上面的過濾(即在首次活動后刪除所有非首次活動和會話),所以這種轉換按照定義在每個用戶的最近一次會話中進行。同樣,使用GroupBy:split-apply-combine邏輯,我們可以創(chuàng)建一個包含觀察值的新列,如果它是用戶的最后一個會話,觀察值將為1,否則為0。
添加自變量X:訪問量的累計總和
我們的自變量是頁面訪問量。但是,我們不能簡單地將會話中的頁面訪問量計算在內(nèi),因為早期會話中的頁面訪問會影響轉換概率。因此,我們創(chuàng)建一個新的列,用來計算用戶頁面訪問量的累計總和。這才是我們的自變量X。
使用StatsModels擬合邏輯回歸
通過Pandas庫我們最終得到了一個包含單個離散X列和單個二進制Y列的小型DataFrame。并用(二元)邏輯回歸模型來估計基于一個或多個獨立變量的因變量的二元響應概率。StatsModels是Python的統(tǒng)計和計量經(jīng)濟學庫,提供了參數(shù)估計和統(tǒng)計測試工具。因此,它包含邏輯回歸函數(shù)也就不足為奇了。那么,如何通過StatsModels來擬合邏輯回歸模型呢?請自行百度...
技巧1:不要忘記給邏輯回歸添加一個常數(shù)。
技巧2:另一個非常棒的擬合統(tǒng)計模型(如邏輯回歸)庫是scikit-learn。
使用Matplotlib或Seaborn進行可視化
在擬合邏輯回歸模型之后,我們可以預測每個累計訪問量的轉換概率。但是,我們不能僅僅通過交付一些原始數(shù)據(jù)來將我們最新發(fā)現(xiàn)的結果傳達給管理層。因此,數(shù)據(jù)科學家的重要任務之一就是要清晰有效地展示他的成果。在大多數(shù)情況下,這意味著提供我們的可視化結果,因為眾所周知,一圖勝千言...
Python包含幾個非常棒的可視化庫,其中MatplotLib是最知名的。而Seaborn是建立在MatplotLib上的另一個很棒的庫。
MatplotLib的語法大概是以前使用過MatLab的用戶所熟知的。但是,我們傾向選擇Seaborn,是因為它提供更漂亮的圖表而且外觀很重要。
我們通過Seaborn得到了模型擬合的可視化結果,如下所示:
我們可以很好地利用這個可視化結果來證明我們的假設是否成立。
驗證假設
最后一步是就驗證我們提出的假設是否成立?;叵胍幌?,我們認為更多的網(wǎng)頁訪問量導致首次活動的可能性更高。
首先,我們從以前的可視化結果中可以看出,假設是成立的。不然,預測的概率也不會單調(diào)遞增。盡管如此,我們還是可以從擬合的模型總結中得出同樣的結論,如下所示。
Logit Regression Results ==============================================================================Dep. Variable: is_conversion No. Observations: 12420Model: Logit Df Residuals: 12418Method: MLE Df Model: 1Date: Tue, 27 Sep 2016 Pseudo R-squ.: 0.3207Time: 21:44:57 Log-Likelihood: -5057.6converged: True LL-Null: -7445.5 LLR p-value: 0.000==================================================================================== coef std err z P>|z| [95.0% Conf. Int.]------------------------------------------------------------------------------------const -3.8989 0.066 -59.459 0.000 -4.027 -3.770pageviews_cumsum 0.2069 0.004 52.749 0.000 0.199 0.215====================================================================================
我們看到,統(tǒng)計結果中,pagesviews_cumsum系數(shù)在顯著性水平為1%時顯示為正。因此,這足以表明我們的假設成立,加油!此外,您剛剛已經(jīng)完成了第一個Python數(shù)據(jù)科學分析工作!:)
是不是感覺很棒?快上手試試吧!
原文鏈接:
https://themarketingtech...
干貨 | 請收下這份2018學習清單:150個最好的機器學習,NLP和Python教程 推廣視頻課程
本文英文出處:Robbie Allen
翻譯/雷鋒網(wǎng)字幕組 吳楚
校對/ 雷鋒網(wǎng) 田晉陽
機器學習的發(fā)展可以追溯到1959年,有著豐富的歷史。這個領域也正在以前所未有的速度進化。在之前的一篇文章(https://unsupervisedmethods/why-artificial-intelligence-is-different-from-previous-technology-waves-764d7710df8b)中,我們討論過為什么通用人工智能領域即將要爆發(fā)。有興趣入坑ML的小伙伴不要拖延了,時不我待!
在今年秋季開始準備博士項目的時候,我已經(jīng)精選了一些有關機器學習和NLP的優(yōu)質(zhì)網(wǎng)絡資源。一般我會找一個有意思的教程或者視頻,再由此找到三四個,甚至更多的教程或者視頻。猛回頭,發(fā)現(xiàn)標收藏夾又多了20個資源待我學習(推薦提升效率工具Tab Bundler)。
找到超過25個有關ML的“小抄”后,我寫一篇博文(https://unsupervisedmethods/cheat-sheet-of-machine-learning-and-python-and-math-cheat-sheets-a4afe4e791b6),里面的資源都有超鏈接。
為了幫助也在經(jīng)歷類似探索過程的童鞋,我把至今發(fā)現(xiàn)的最好的教程匯總了一個列表。當然這不是網(wǎng)絡上有關ML的最全集合,而且其中有一部分內(nèi)容很普通。我的目標是要找到最好的有關機器學習子方向和NLP的教程。
我引用了能簡潔介紹概念的基礎內(nèi)容。我已經(jīng)回避包含一些大部頭書的章節(jié),和對理解概念沒有幫助的科研論文。那為什么不買一本書呢? 因為教程能更好地幫助你學一技之長或者打開新視野。
我把這博文分成四個部分,機器學習,NLP,Python,和數(shù)學基礎。在每一小節(jié)我會隨機引入一些問題。由于這方面學習材料太豐富了,本文并未涵括所有內(nèi)容。
機器學習
1、機器學習就是這么好玩!(medium/@ageitgey)
機器學習速成課程(Berkeley的ML):
Part I:https://ml.berkeley.edu/blog/2016/11/06/tutorial-1/
Part II:https://ml.berkeley.edu/blog/2016/12/24/tutorial-2/
Part III:https://ml.berkeley.edu/blog/2017/02/04/tutorial-3/
機器學習入門與應用:實例圖解(toptal)
https://toptal/machine-learning/machine-learning-theory-an-introductory-primer
機器學習的簡易指南 (monkeylearn)
https://monkeylearn/blog/a-gentle-guide-to-machine-learning/
如何選擇機器學習算法?(sas)
https://blogs.sas/content/subconsciousmusings/2017/04/12/machine-learning-algorithm-use/
2、Activation and Loss Functions
激活函數(shù)與損失函數(shù)
sigmoid 神經(jīng)元 (neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap1.html#sigmoid_neurons
激活函數(shù)在神經(jīng)網(wǎng)絡中有什么作用?(quora)
https://quora/What-is-the-role-of-the-activation-function-in-a-neural-network
神經(jīng)網(wǎng)絡的激活函數(shù)大全及其優(yōu)劣 (stats.stackexchange)
https://stats.stackexchange/questions/115258/comprehensive-list-of-activation-functions-in-neural-networks-with-pros-cons
激活函數(shù)及其分類比較(medium)
https://medium/towards-data-science/activation-functions-and-its-types-which-is-better-a9a5310cc8f
理解對數(shù)損失 (exegetic.biz)
http://exegetic.biz/blog/2015/12/making-sense-logarithmic-loss/
損失函數(shù)(Stanford CS231n)
http://cs231n.github.io/neural-networks-2/#losses
損失函數(shù)L1 與L2 比較(rishy.github.io)
http://rishy.github.io/ml/2015/07/28/l1-vs-l2-loss/
交叉熵損失函數(shù)(neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap3.html#the_cross-entropy_cost_function
3、偏差(Bias)
神經(jīng)網(wǎng)絡中的偏差的作用(stackoverflow)
https://stackoverflow/questions/2480650/role-of-bias-in-neural-networks/2499936#2499936
神經(jīng)網(wǎng)絡中的偏差節(jié)點(makeyourownneuralnetwork.blogspot)
http://makeyourownneuralnetwork.blogspot/2016/06/bias-nodes-in-neural-networks.html
什么是人工神經(jīng)網(wǎng)絡中的偏差 (quora)
https://quora/What-is-bias-in-artificial-neural-network
4、感知器(Perceptron)
感知器模型(neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap1.html#perceptrons
感知器(natureofcode)
http://natureofcode/book/chapter-10-neural-networks/#chapter10_figure3
一層的神經(jīng)網(wǎng)絡(感知器模型)(dcu.ie)
http://computing.dcu.ie/~humphrys/Notes/Neural/single.neural.html
從感知器模型到深度網(wǎng)絡(toptal)
https://toptal/machine-learning/an-introduction-to-deep-learning-from-perceptrons-to-deep-networks
5、回歸算法
線性回歸分析簡介(duke.edu)
http://people.duke.edu/~rnau/regintro.htm
線性回歸 (ufldl.stanford.edu)
http://ufldl.stanford.edu/tutorial/supervised/LinearRegression/
線性回歸 (readthedocs.io)
http://ml-cheatsheet.readthedocs.io/en/latest/linear_regression.html
邏輯斯特回歸 (readthedocs.io)
http://ml-cheatsheet.readthedocs.io/en/latest/logistic_regression.html
機器學習之簡單線性回歸教程(machinelearningmastery)
http://machinelearningmastery/simple-linear-regression-tutorial-for-machine-learning/
機器學習之邏輯斯特回歸教程(machinelearningmastery)
http://machinelearningmastery/logistic-regression-tutorial-for-machine-learning/
softmax 回歸(ufldl.stanford.edu)
http://ufldl.stanford.edu/tutorial/supervised/SoftmaxRegression/
6、梯度下降
基于梯度下降的學習 (neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap1.html#learning_with_gradient_descent
梯度下降(iamtrask.github.io)
http://iamtrask.github.io/2015/07/27/python-network-part2/
如何理解梯度下降算法?(kdnuggets)
http://kdnuggets/2017/04/simple-understand-gradient-descent-algorithm.html
梯度下降優(yōu)化算法概覽(sebastianruder)
http://sebastianruder/optimizing-gradient-descent/
優(yōu)化算法:隨機梯度下降算法 (Stanford CS231n)
http://cs231n.github.io/optimization-1/
7、生成學習
生成學習算法 (Stanford CS229)
http://cs229.stanford.edu/notes/cs229-notes2.pdf
貝葉斯分類算法之實例解析(monkeylearn)
https://monkeylearn/blog/practical-explanation-naive-bayes-classifier/
8、支持向量機
支持向量機(SVM)入門(monkeylearn)
https://monkeylearn/blog/introduction-to-support-vector-machines-svm/
支持向量機(Stanford CS229)
http://cs229.stanford.edu/notes/cs229-notes3.pdf
線性分類:支持向量機,Softmax (Stanford 231n)
http://cs231n.github.io/linear-classify/
9、后向傳播算法(Backpropagation)
后向傳播算法必知(medium/@karpathy)
https://medium/@karpathy/yes-you-should-understand-backprop-e2f06eab496b
來,給我圖解一下神經(jīng)網(wǎng)絡后向傳播算法?(github/rasbt)
https://github/rasbt/python-machine-learning-book/blob/master/faq/visual-backpropagation.md
后向傳播算法是如何運行的?(neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap2.html
沿時后向傳播算法與梯度消失(wildml)
http://wildml/2015/10/recurrent-neural-networks-tutorial-part-3-backpropagation-through-time-and-vanishing-gradients/
簡易入門沿時后向傳播算法(machinelearningmastery)
http://machinelearningmastery/gentle-introduction-backpropagation-time/
奔跑吧,后向傳播算法!(Stanford CS231n)
http://cs231n.github.io/optimization-2/
10、深度學習
果殼里的深度學習(nikhilbuduma)
http://nikhilbuduma/2014/12/29/deep-learning-in-a-nutshell/
深度學習教程 (Quoc V. Le)
http://ai.stanford.edu/~quocle/tutorial1.pdf
深度學習,什么鬼?(machinelearningmastery)
http://machinelearningmastery/what-is-deep-learning/
什么是人工智能,機器學習,深度學習之間的區(qū)別? (nvidia)
https://blogs.nvidia/blog/2016/07/29/whats-difference-artificial-intelligence-machine-learning-deep-learning-ai/
11、優(yōu)化算法與降維算法
數(shù)據(jù)降維的七招煉金術(knime.org)
https://knime.org/blog/seven-techniques-for-data-dimensionality-reduction
主成分分析(Stanford CS229)
http://cs229.stanford.edu/notes/cs229-notes10.pdf
Dropout: 改進神經(jīng)網(wǎng)絡的一個簡單方法(Hinton @ NIPS 2012)
http://videolectures/site/normal_dl/tag=741100/nips2012_hinton_networks_01.pdf
如何溜你們家的深度神經(jīng)網(wǎng)絡?(rishy.github.io)
http://rishy.github.io/ml/2017/01/05/how-to-train-your-dnn/
12、長短期記憶(LSTM)
老司機帶你簡易入門長短期神經(jīng)網(wǎng)絡(machinelearningmastery)
http://machinelearningmastery/gentle-introduction-long-short-term-memory-networks-experts/
理解LSTM網(wǎng)絡(colah.github.io)
http://colah.github.io/posts/2015-08-Understanding-LSTMs/
漫談LSTM模型(echen.me)
http://blog.echen.me/2017/05/30/exploring-lstms/
小學生看完這教程都可以用Python實現(xiàn)一個LSTM-RNN (iamtrask.github.io)
http://iamtrask.github.io/2015/11/15/anyone-can-code-lstm/
13、卷積神經(jīng)網(wǎng)絡(CNNs)
卷積網(wǎng)絡入門(neuralnetworksanddeeplearning)
http://neuralnetworksanddeeplearning/chap6.html#introducing_convolutional_networks
深度學習與卷積神經(jīng)網(wǎng)絡模型(medium/@ageitgey)
https://medium/@ageitgey/machine-learning-is-fun-part-3-deep-learning-and-convolutional-neural-networks-f40359318721
拆解卷積網(wǎng)絡模型(colah.github.io)
http://colah.github.io/posts/2014-07-Conv-Nets-Modular/
理解卷積網(wǎng)絡(colah.github.io)
http://colah.github.io/posts/2014-07-Understanding-Convolutions/
14、遞歸神經(jīng)網(wǎng)絡(RNNs)
遞歸神經(jīng)網(wǎng)絡教程 (wildml)
http://wildml/2015/09/recurrent-neural-networks-tutorial-part-1-introduction-to-rnns/
注意力模型與增強型遞歸神經(jīng)網(wǎng)絡(distill.pub)
http://distill.pub/2016/augmented-rnns/
這么不科學的遞歸神經(jīng)網(wǎng)絡模型(karpathy.github.io)
http://karpathy.github.io/2015/05/21/rnn-effectiveness/
深入遞歸神經(jīng)網(wǎng)絡模型(nikhilbuduma)
http://nikhilbuduma/2015/01/11/a-deep-pe-into-recurrent-neural-networks/
15、強化學習
給小白看的強化學習及其實現(xiàn)指南 (analyticsvidhya)
https://analyticsvidhya/blog/2017/01/introduction-to-reinforcement-learning-implementation/
強化學習教程(mst.edu)
https://web.mst.edu/~gosavia/tutorial.pdf
強化學習,你學了么?(wildml)
http://wildml/2016/10/learning-reinforcement-learning/
深度強化學習:開掛玩Pong (karpathy.github.io)
http://karpathy.github.io/2016/05/31/rl/
16、對抗式生成網(wǎng)絡模型(GANs)
什么是對抗式生成網(wǎng)絡模型?(nvidia)
https://blogs.nvidia/blog/2017/05/17/generative-adversarial-network/
用對抗式生成網(wǎng)絡創(chuàng)造8個像素的藝術(medium/@ageitgey)
https://medium/@ageitgey/abusing-generative-adversarial-networks-to-make-8-bit-pixel-art-e45d9b96cee7
對抗式生成網(wǎng)絡入門(TensorFlow)(aylien)
http://blog.aylien/introduction-generative-adversarial-networks-code-tensorflow/
《對抗式生成網(wǎng)絡》(小學一年級~上冊)(oreilly)
https://oreilly/learning/generative-adversarial-networks-for-beginners
17、多任務學習
深度神經(jīng)網(wǎng)絡中的多任務學習概述(sebastianruder)
http://sebastianruder/multi-task/index.html
NLP
1、NLP
《基于神經(jīng)網(wǎng)絡模型的自然語言處理》(小學一年級~上冊)(Yoav Goldberg)
http://u.cs.biu.ac.il/~yogo/nnlp.pdf
自然語言處理權威指南(monkeylearn)
https://monkeylearn/blog/the-definitive-guide-to-natural-language-processing/
自然語言處理入門(algorithmia)
https://blog.algorithmia/introduction-natural-language-processing-nlp/
自然語言處理教程 (vikparuchuri)
http://vikparuchuri/blog/natural-language-processing-tutorial/
Natural Language Processing (almost) from Scratch (arxiv.org)
初高中生課程:自然語言處理 (arxiv.org)
https://arxiv.org/pdf/1103.0398.pdf
2、深度學習和 NLP
基于深度學習的NLP應用(arxiv.org)
https://arxiv.org/pdf/1703.03091.pdf
基于深度學習的NLP(Richard Socher)
https://nlp.stanford.edu/courses/NAACL2013/NAACL2013-Socher-Manning-DeepLearning.pdf
理解卷積神經(jīng)網(wǎng)絡在NLP中的應用(wildml)
http://wildml/2015/11/understanding-convolutional-neural-networks-for-nlp/
深度學習,NLP,表示學習(colah.github.io)
http://colah.github.io/posts/2014-07-NLP-RNNs-Representations/
嵌入表示,編碼,注意力,預測 : 新一代深度學習因NLP的精妙而存在(explosion.ai)
https://explosion.ai/blog/deep-learning-formula-nlp
理解基于神經(jīng)網(wǎng)絡的自然語言處理(Torch實現(xiàn)) (nvidia)
https://devblogs.nvidia/parallelforall/understanding-natural-language-deep-neural-networks-using-torch/
深度學習在NLP中的應用(Pytorch實現(xiàn)) (pytorich.org)
http://pytorch.org/tutorials/beginner/deep_learning_nlp_tutorial.html
3、詞向量(Word Vectors)
詞袋法遇到感知器裝袋法(kaggle)
https://kaggle/c/word2vec-nlp-tutorial
學習單詞嵌入表示法(sebastianruder)
Part I:http://sebastianruder/word-embeddings-1/index.html
Part II:http://sebastianruder/word-embeddings-softmax/index.html
Part III:http://sebastianruder/secret-word2vec/index.html
單詞嵌入表示的神奇力量(acolyer.org)
https://blog.acolyer.org/2016/04/21/the-amazing-power-of-word-vectors/
解釋word2vec 的參數(shù)學習(arxiv.org)
https://arxiv.org/pdf/1411.2738.pdf
word2vec教...
python數(shù)據(jù)分析之線性回歸,各種檢驗和解決方法! 互聯(lián)網(wǎng)視頻課程
線性回歸
(1)線性回歸的主要內(nèi)容:
有興趣可以玩一下這個游戲:是猜相關系數(shù)的,給你一些散點圖,猜相關系數(shù),很難猜對,說明看圖說明相關性不靠譜!
(2)線性回歸怎么做?數(shù)學公式
一個簡單線性回歸的例子:
ols:
擬合優(yōu)度:
(3) 假設檢驗
線性回歸這位老師用的是statsmodels做的。
這就是用線性回歸擬合出來的模型!
使用這個函數(shù)可以直接得到模型的一些結果,會得到這些表!
這個是預測的函數(shù):predict(x)。這是這個包的函數(shù)!
二、多元線性回歸
也可以用向量的方式。
參數(shù)是迭代計算的,此處不講了。
模型的檢驗
只用與 模型的選擇 調(diào)整的r方。避免的樣本量的影響,預防過擬合!
python中的實現(xiàn) 試用stats model 多個變量用+連一起!
模型的一些值
變量的篩選,除了常規(guī)的,就是使用相前,向后還有逐步,還有全子集的方法。
不多介紹,上篇也講過。
python需要自己寫來實現(xiàn),當然我不會,這里可以用spss去實現(xiàn)
這是python代碼
跳過。。。
回歸的假設。
線性
強影響點篩選,然后直接刪除
強烈建議用spss進行多元線性回歸建模。不過為了熟悉python明天打算用python更著去實現(xiàn)。
自己整理一下,多元線性回歸的檢驗方法:
整體顯著性檢驗:回歸模型出來時候,可以之間看整體的F檢驗的p值
擬合優(yōu)度檢驗:最簡單的就看R方和調(diào)整的R方
系數(shù)檢驗:T檢驗結果,可以直接看P值
自相關檢驗:dw檢驗用得最多
異方差檢驗:Goldfeld - Quandt 檢驗法,這個方法挺好的的。其實還有其他檢驗方法,解決辦法是建議取對數(shù)
共線性檢驗:vif值
不夠細,明日具體操作的時候會細點!