# tiny_ml **Repository Path**: wwdguu/tiny_ml ## Basic Information - **Project Name**: tiny_ml - **Description**: numpy 实现的 周志华《机器学习》书中的算法及其他一些传统机器学习算法 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 2 - **Created**: 2020-09-14 - **Last Updated**: 2025-10-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # tinyml 利用numpy实现的一些周志华《机器学习》(西瓜书)一书及 斯坦福cs229课程中的算法,宜配合西瓜书和cs229课件食用。并选择性实现了一些经典算法的简易版本, 如 按照陈天奇的slides实现的XGBRegressor。 ## 已经实现的算法 - **线性模型** - [LinearRegression](/tinyml/linear_model/LinearRegression.py) [线性回归闭式解推导](notes/linear_model/linear_reg_closed_form.pdf) - [LogisticRegression](/tinyml/linear_model/LogisticRegression.py) [逻辑回归相关推导](/notes/linear_model/logistic_regression.pdf) - [SGDRegressor](/tinyml/linear_model/SGDRegressor.py) - [LocallyWeightedLinearRegression](/tinyml/linear_model/LocallyWeightedLinearRegression.py) - **判别分析** - [LDA](/tinyml/discriminant_analysis/LDA.py) - [GDA](/tinyml/discriminant_analysis/GDA.py) - **决策回归树** - [DecisionTreeClassifier](/tinyml/tree/DecisionTreeClassifier.py) - [DecisionTreeRegressor](/tinyml/tree/DecisionTreeRegressor.py) - **支持向量机** - [SVC](/tinyml/svm/SVC.py) - **贝叶斯** - [NaiveBayesClassifier](/tinyml/bayes/NaiveBayesClassifier.py) - **聚类算法** - [KMeans](/tinyml/cluster/KMeans.py) - [LVQ](/tinyml/cluster/LVQ.py) - [GaussianMixture](/tinyml/cluster/GaussianMixture.py) - [DBSCAN](/tinyml/cluster/DBSCAN.py) - [AGNES](/tinyml/cluster/AGNES.py) - **降维算法** - [MDS](/tinyml/dimension_reduction/MDS.py) - [PCA](/tinyml/dimension_reduction/PCA.py) - [KernelPCA](/tinyml/dimension_reduction/KernelPCA.py) - [LLE](/tinyml/dimension_reduction/LLE.py) - [Isomap](/tinyml/dimension_reduction/Isomap.py) - **集成学习** - [AdaBoostClassifier](/tinyml/ensemble/AdaBoostClassifier.py) - [GradientBoostingRegressor](/tinyml/ensemble/GradientBoostingRegressor.py) - [RandomForestRegressor](/tinyml/ensemble/RandomForestRegressor.py) - [XGBRegressor](/tinyml/ensemble/XGBRegressor.py) - **特征选择** - [ReliefFeatureSelection](/tinyml/feature_selection/ReliefFeatureSelection.py) ## 和sklearn实现的比较 - **回归算法结果** [代码](/tinyml/compare/compare_regresssor.py)
Algorithm vs. RMSE sklearn-boston
tinyml sklearn
LinearRegression 27.196 27.196
SGDRegressor 27.246 27.231
DecisionTreeRegressor 21.887 21.761
RandomForestRegressor 21.142 21.142
GradientBoostRegressor 16.778 16.106
XGBRegressor 20.149 15.7
- **分类算法结果** [代码](/tinyml/compare/compare_classification.py)
Algorithm vs. RMSE sklearn-breast_cancer
tinyml sklearn
NaiveBayes 90.64% 90.64%
LogisticRegression 92.98% 92.98%
LDA 94.15% 92.40%
GDA 92.40% 93.57%
SVC 86.55% 92.98%
AdaboostClassifier 92.40% 92.40%
- **聚类算法比较** [代码](/tinyml/compare/compare_clustering.py) - KMeans
tinyml KMeans sklearn KMeans
- DBSCAN
tinyml DBSCAN sklearn DBSCAN
- GMM
tinyml GMM sklearn GMM
- AGNES
tinyml AGNES sklearn AGNES
- **降维算法比较** [代码](/tinyml/compare/compare_dimension_reduction.py) - PCA
tinyml PCA sklearn PCA
- KernalPCA
tinyml KernalPCA sklearn KernalPCA
- LLE
tinyml LLE sklearn LLE
- MDS
tinyml MDS sklearn MDS