1.矩阵相乘
- np.dot(matrix_A,matrix_B)
- matrix_A@matrix_B 就是普通的矩阵乘法,A列数=B行数
- matrix_A * matrix_B 表示的是两个矩阵的对应的元素相乘
2.查看数据的描述性统计
- pandas情况下对数据帧的查看,dataframe
- dataframe.describe()查看数据的描述性统计–尝试用在自己的数据集的理解中去。
3.python中的.any()函数
用来查看一个可以迭代的对象中的数值是否全为空;如果这个可迭代的对象中的元素全部未false或者全部为空,则返回false,否则返回True
4.opencv中对图像处理的函数
灰度图像的显示可以用plt.imshow这个函数,每一个像素点的取值范围是0-255,0表示黑色,255表示白色
5.线性可分与线性不可分的数据
如果训练数据可以用一条直线或者说是一个超平面对训练数据进行分割,那么就说数据是线性可分的;如果只能由一个曲线对训练数据区分,那么就是线性不可分的,svm可以处理线性不可分问题。
6.数据的特征
- 一般来说,方差较小的数据包含的信息量较少。dataframe.corr().abs()表示的是创建相关矩阵。
- 对相关矩阵取上三角矩阵,对矩阵取三角分解的目的是为了简化矩阵的运算;三角分解有LU分解和QR分解,在求解最小二乘法的时候,使用QR分解可以方便求解矩阵的解。
- 在机器学习中,当特征之间的相似度很高的时候,就会存在冗余,考虑把冗余的特征删除,这时候就要计算不同的特征之间的相关度,把相关度高的特征挑选出来,然后把去掉相关度高的特征。
7.评价指标
- 精确率:在预测为正类的样本中有多少是真正的正类
- 召回率:在所有正类样本中有多少被正确的挑选出来,也就是说,有多少被正确的预测出来
- 准确率:顾名思义,就是预测对的百分比是多少,但是在样本类别很不平衡的训练集中,这个指标是十分不可靠的,比如训练集中,0.5%是负类,99.5%样本是正类,那么模型随便猜测一下,都是99%的概率猜测对,这个时候准确率就不好使了。所以需要一些其它的指标进行衡量。
- F1:是精确率与召回率之间的一种平衡,对悲观的预测结果与乐观的预测结果之间的一种衡量。
8.混淆矩阵:
混淆矩阵是一个方阵,它可以展示每一个类别被误分类为哪一个别的类别,一个好的分类器,混淆矩阵应该只有对角线上的元素有值。混淆矩阵可以直观的展示误分类的分类模式是怎么样的。
9.关于神经网络的一些总结
- 在训练数据中刚加入一些噪声以后,神经网络的性能往往会得到一些提升。原因是添加的噪声可以让神经网络对真实世界中的噪声更加鲁棒,防止神经网络的过拟合现象。
- 损失函数:衡量预测值与真实值之间的符合程度。
- 优化器:表示采用何种方式进行参数更新,比如SGD,Adam等,告诉神经网络如何调整参数的一种方法。
- compile:告诉神经网络如何学习。