(附鏈接)干貨 | numpy實(shí)現(xiàn)全部機(jī)器學(xué)習(xí)算法
點(diǎn)擊左上方藍(lán)字關(guān)注我們

地址:https://github.com/ddbourgin/numpy-ml

手?jǐn)]算法的目的在于能夠更好的學(xué)習(xí)和深入理解算法,而不是要替代已有的框架,畢竟成熟的框架在效率和精準(zhǔn)度上都已經(jīng)得到驗(yàn)證。
我們來看下已經(jīng)實(shí)現(xiàn)的算法:
EM 訓(xùn)練
維特比解碼
似然計(jì)算
通過 Baum-Welch/forward-backward 算法進(jìn)行 MLE 參數(shù)估計(jì)
用變分 EM 進(jìn)行 MLE 參數(shù)估計(jì)的標(biāo)準(zhǔn)模型
用 MCMC 進(jìn)行 MAP 參數(shù)估計(jì)的平滑模型
4.1 層/層級(jí)運(yùn)算
Add
Flatten
Multiply
Softmax
全連接/Dense
稀疏進(jìn)化連接
LSTM
Elman 風(fēng)格的 RNN
最大+平均池化
點(diǎn)積注意力
受限玻爾茲曼機(jī) (w. CD-n training)
2D 轉(zhuǎn)置卷積 (w. padding 和 stride)
2D 卷積 (w. padding、dilation 和 stride)
1D 卷積 (w. padding、dilation、stride 和 causality)
4.2 模塊
雙向 LSTM
ResNet 風(fēng)格的殘差塊(恒等變換和卷積)
WaveNet 風(fēng)格的殘差塊(帶有擴(kuò)張因果卷積)
Transformer 風(fēng)格的多頭縮放點(diǎn)積注意力
4.3 正則化項(xiàng)
Dropout
歸一化
批歸一化(時(shí)間上和空間上)
層歸一化(時(shí)間上和空間上)
4.4 優(yōu)化器
SGD w/ 動(dòng)量
AdaGrad
RMSProp
Adam
4.5 學(xué)習(xí)率調(diào)度器
常數(shù)
指數(shù)
Noam/Transformer
Dlib 調(diào)度器
4.6 權(quán)重初始化器
Glorot/Xavier uniform 和 normal
He/Kaiming uniform 和 normal
標(biāo)準(zhǔn)和截?cái)嗾龖B(tài)分布初始化
4.7 損失
交叉熵
平方差
Bernoulli VAE 損失
帶有梯度懲罰的 Wasserstein 損失
4.8 激活函數(shù)
ReLU
Tanh
Affine
Sigmoid
Leaky ReLU
4.9 模型
Bernoulli 變分自編碼器
帶有梯度懲罰的 Wasserstein GAN
4.10 神經(jīng)網(wǎng)絡(luò)工具
col2im (MATLAB 端口)
im2col (MATLAB 端口)
conv1D
conv2D
deconv2D
minibatch
決策樹 (CART)
[Bagging] 隨機(jī)森林
[Boosting] 梯度提升決策樹
嶺回歸
Logistic 回歸
最小二乘法
貝葉斯線性回歸 w/共軛先驗(yàn)
最大似然得分
Additive/Lidstone 平滑
簡單 Good-Turing 平滑
使用交叉熵方法的智能體
首次訪問 on-policy 蒙特卡羅智能體
加權(quán)增量重要采樣蒙特卡羅智能體
Expected SARSA 智能體
TD-0 Q-learning 智能體
Dyna-Q / Dyna-Q+ 優(yōu)先掃描
Nadaraya-Watson 核回歸
k 最近鄰分類與回歸
離散傅立葉變換 (1D 信號(hào))
雙線性插值 (2D 信號(hào))
最近鄰插值 (1D 和 2D 信號(hào))
自相關(guān) (1D 信號(hào))
信號(hào)窗口
文本分詞
特征哈希
特征標(biāo)準(zhǔn)化
One-hot 編碼/解碼
Huffman 編碼/解碼
詞頻逆文檔頻率編碼
相似度核
距離度量
優(yōu)先級(jí)隊(duì)列
Ball tree 數(shù)據(jù)結(jié)構(gòu)
END
