Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Ailearning | 34,908 | a month ago | 8 | March 20, 2022 | 4 | other | Python | |||
AiLearning:数据分析+机器学习实战+线性代数+PyTorch+NLTK+TF2 | ||||||||||
Machine Learning For Beginner By Python3 | 225 | 3 years ago | 2 | mit | Python | |||||
为机器学习的入门者提供多种基于实例的sklearn、TensorFlow以及自编函数(AnFany)的ML算法程序。 | ||||||||||
Lihang_algorithms | 219 | 5 years ago | Python | |||||||
用python和sklearn两种方法实现李航《统计学习方法》中的算法 | ||||||||||
Tiny_ml | 137 | 3 years ago | Python | |||||||
numpy 实现的 周志华《机器学习》书中的算法及其他一些传统机器学习算法 | ||||||||||
Machine_learning | 107 | 17 days ago | other | Jupyter Notebook | ||||||
Some fundamental machine learning and data-analysis techniques are explained through realistic examples. | ||||||||||
Spammessage | 93 | 6 years ago | 4 | Python | ||||||
中文垃圾短信识别(手写分类器) | ||||||||||
Facial Expression Recognition Svm | 91 | 5 years ago | 3 | gpl-3.0 | Python | |||||
Training SVM classifier to recognize people expressions (emotions) on Fer2013 dataset | ||||||||||
Bayesmark | 84 | 1 | 2 years ago | 9 | September 10, 2020 | 10 | apache-2.0 | Python | ||
Benchmark framework to easily compare Bayesian optimization methods on real machine learning tasks | ||||||||||
Machinelearning | 29 | 6 days ago | 2 | Python | ||||||
机器学习教程,本教程包含基于numpy、sklearn与tensorflow机器学习,也会包含利用spark、flink加快模型训练等用法。本着能够较全的引导读者入门机器学习。 | ||||||||||
Breast Cancer Scikitlearn | 27 | 3 years ago | 2 | Jupyter Notebook | ||||||
simple tutorial on Machine Learning with Scikitlearn |
用python和sklearn实现李航老师的《统计学习方法》中所提到的算法
实验数据:MNIST数据集,这里用kaggle中处理好的数据
官方下载地址:http://yann.lecun.com/exdb/mnist/
kaggle中处理好的数据:https://www.kaggle.com/c/digit-recognizer/data
适用问题:二类分类
实验数据:由于是二分类器,所以将MINST数据集train.csv的label列进行了一些微调,label等于0的继续等于0,label大于0改为1。这样就将十分类的数据改为二分类的数据。获取地址train_binary.csv
代码:perceptron/perceptron.py
运行结果:
代码(用sklearn实现):perceptron/perceptron_sklearn.py
运行结果:
适用问题:多类分类
三个基本要素:k值的选择、距离度量及分类决策规则
代码:knn/knn.py
运行结果:
代码(用sklearn实现):knn/knn_sklearn.py
运行结果:
适用问题:多类分类
基于贝叶斯定理和特征条件独立假设
常用的三个模型有:
代码(基于多项式模型):naive_bayes/naive_bayes.py
运行结果:
代码(基于多项式模型,用sklearn实现):naive_bayes/naive_bayes_sklearn.py
运行结果:
适用问题:多类分类
三个步骤:特征选择、决策树的生成和决策树的剪枝
常见的决策树算法有:
ID3算法代码:decision_tree/ID3.py
运行结果:
C4.5算法代码:decision_tree/C45.py
运行结果:
CART算法代码(用sklearn实现):decision_tree/decision_tree_sklearn.py
运行结果:
适用问题:二类分类
可类比于感知机算法
实验数据:train_binary.csv
代码:logistic_regression/logistic_regression.py
运行结果:
适用问题:多类分类
实验数据:train.csv
代码(用sklearn实现):logistic_regression/logistic_regression_sklearn.py
运行结果:
适用问题:多类分类
下面用改进的迭代尺度法(IIS)学习最大熵模型,将特征函数定义为:
与其他分类器不同的是,最大熵模型中的f(x,y)中的x是单独的一个特征,不是一个n维特征向量,因此我们需要对每个维度特征加一个区分标签;如X=(x0,x1,x2,...)变为X=(0_x0,1_x1,2_x2,...)
代码:maxEnt/maxEnt.py
运行结果:
适用问题:二类分类
实验数据:二分类的数据 train_binary.csv
SVM有三种模型,由简至繁为
代码(用sklearn实现):svm/svm_sklearn.py
注:可用拆解法(如OvO,OvR)将svm扩展成适用于多分类问题(其他二分类问题亦可),sklearn中已经实现
运行结果:
提升方法就是组合一系列弱分类器构成一个强分类器,AdaBoost是其代表性算法
适用问题:二类分类,要处理多类分类需进行改进
代码(用sklearn实现):AdaBoost/AdaBoost_sklearn.py
实验数据为train.csv的运行结果:
实验数据为train_binary.csv的运行结果: