1、注:源码放置文末
1.1 环境配置要求:
https://blog.youkuaiyun.com/qq_42279468/article/details/124987801
2、展示效果:
https://www.bilibili.com/video/BV1bh4y1n7bw/
3、代码
该项目主要包括KNN地震数据分类;K近邻验证码识别;SVM数据多分类;随机森林图片分类四个项目。
3.1 KNN数据分类
该算法主要通过KNN实现地震数据分类
3.2 K近邻验证码识别
本项目通过python实现验证码识别,包括数据集制作,模型训练,测试等。
pip install -i https://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com opencv-python==3.4.3.18
1、是cut.py切割成单个字符【已完成可跳过】
2、label.py将字符图片标上标签,其实就是手动标注的,也可以自己手动标注【已完成可跳过】
3、train.py用来训练模型,查看准确度
4、test.py用来查看效果,测试
3.3 多分类支持向量机SVM
多分类SVM介绍:
该算法主要通过多分类和二分类SVM实现字符数字识别
• SVM3.py 该文件实现了一个SVM多分类器,其实现原理是:对于样本中的每两个类别之间都训练一个SVM二分类器。对于k个类别, 共可训练出k(k-1)/2个SVM二分类器。在预测时,将测试样例分别输入到k(k-1)/2分类器中。 假设(i,j)表示划分类别i和类别j的SVM分类器 对于每个分类器(i,j): 若分类结果为+1,则count[i] +=1 若分类结果为-1,则count[j] +=1 最后分类结果取相应类别计数最大的那个类别作为最终分类结果
• SVM2.py 该文件实现了一个SVM二分类器,和多分类其不同的是只有一个分类器
3.4 随机森林图像分类
该算法主要通过随机森林实现图像分类。
4 源码下载
https://gitcode.net/qq_42279468/machine-learning.git