一:基础知识
1,数学基础:高等数学、线性代数、概率论
2,python工具包实战:Numpy、Pandas、 Matplotlib、Seaborn
二:机器学习
1,机器学习基础
1.1,简单的数据集训练、结果预测;(就是把原有的xy输入,得到一个合适的参数,再输入x得到的y值与实际结果相差较小,含有这样合适参数的代码就是一个结果预测模型)
1.2,py机器学习工具包SKlearn的学习(常用于数据预处理,模型建立),SKlearn适合做所有传统的机器学习(不可以用于神经网络,神经网络有更高级的工具)
1.2.1,使用SKlean训练模型时,要将数据集分成两份份(一般按8:2分),一份是用于训练生成模型,最后一小份用来测试模型的误差。在训练生成模型的数据中在分出一份作为验证集,用交叉验证的方法生成模型。
交叉验证生成模型,
混淆矩阵,
1.3:机器学习式的回归方程预测:
1.3.1:用SKlearn实现机器学习算法:
使用SKlearn工具包预测的结果和使用参数公式计算出结果是一致的。(2.782和4.310是预测方程的权重参数和偏执参数与手动计算结果一致,所以生产的预测方程一致,SKlean的回归实现方法实际方法就是用参数计算方程实现的)
1.3.2:通过梯度下降进行学习方式的预测:
(1),对数据进行预处理进行标准化,减少数据的浮动问题。用(数据-均值)/标准差的公式进行数据处理。目的是让数据相差较大和相差较小的取值范围相同(如年龄20,30,40岁和对应的工资1k,8k,5w)
(2),批量梯度下降中的计算公式:
xj和sita j是一一对应关系,如果用for循环遍历每个特征就太麻烦了,所以将右边使用的方程转化为矩阵方式进行计算。
(3),随机梯度下降:
学习率逐渐衰减,就是逐渐精细化。比如另epoch=50就是对所有样本进行50次迭代,每一次迭代逐渐减少学习率。
(4),minnbatch方法梯度下降:
(5),梯度下降、随机梯度下降、minbatch三种方法对比
1.4,多项式回归
2,机器学习应用
2.1,应用一:朴素贝叶斯算法(应用级算法)
2.2,应用二:决策树(应用级算法)
https://blog.csdn.net/suic009/article/details/125577319
https://blog.csdn.net/suic009/article/details/126397432
三:深度学习
1、深度学习框架PyTorch与TensorFlow
2、深度学习算法入门
3、深度学习应用实战
四:OpenCV
图像清晰化——>图像特征提取——>图像理解
1,图像分类
2,目标检测
3,图像分割
4,计算机视觉实战
1,Canny边缘检测算法
用梯度变化计算图像边缘
2,图像金字塔
图像放缩
(1)放大:用0进行填充
(2)缩小:偶数列、行删除
3,harris图像角点检测
角点:边界、拐角、平面
(1)泰勒展开进行Ix,Iy梯度变化计算
(2)求矩阵特征值
(3)比较特征值大小
(4)NMS非极大值抑制(求出真正的角点)
4,sift图像特征检测
(1)对图片用图像金字塔变换
(2)对每层变换过的图片都进行高斯滤波变换
(3)对同层高斯滤波进行差分,进而得到有价值的点(不同模糊程度进行相减)
(4)对有价值的离散点进行处理:
- 泰勒展开进行拟合操作
- Hessian矩阵消除边界
(5)计算特征点的方向结果
五:NLP
1,机器翻译、文本摘要、文本分类与校对
2,信息抽取、语音合成、语音识别
3,NLP项目实战