虽然接触机器学习并没有太长时间,有的时候放下书本或者IDE让我想想我自己熟悉的几个基本的算法都剩下些什么我能记得住的,也许就是下面这些了。。
KNN:就是将各个维度并列,计算多维特征距离
决策树:就是以熵的大小为依据,采取逐步最优的方法,选择最能够分的开当前数据集的那个特征,递归不断进行分离数据集的操作。
PageRank :就是个收敛问题。记住那个分配矩阵,分配矩阵的横向表示接收资源的情况,而纵向表示每个节点分配资源的情况。 满足马尔科夫条件(强联通,没有终止点),那么这个迭代过程就能够最终收敛,达到马尔科夫平衡。
Logistic回归:就是使用sigmoid函数,将感知器计算的距离进行了一层映射。将可能负无穷到正无穷这个无线大的距离值,映射到0-1的空间内。这个带来的影响就是减小了远离边界点的那些样本对于边界确定的影响程度,反过来也就是放大了那些离分类边界较近的点的权重。
SVM:SVM要达到的目的和logistic回归的intuition是一样的,也是尽可能的放大靠近边界的那些点的作用 (也就是最优可能产生分类错误的那些点的影响),它管那些样本点叫支持向量,其实我觉得就是样本点罢了,不起个通俗些的名字。起个support vector的名字真是反人类。SVM的问题是一个凸二次规划问题,目标函数是支持向量机到分界线的距离的最大化,约束条件是分类正确y(wx+b)-1>=0, 通过凸俄二次规划问题转化为拉格朗日极大极小问题,然后再通过对偶算法解决。
Naive Bayesian: 就是利用贝叶斯公式。
PCA:降维方法,以方差大小作为信息量多少的判断标准,通过协方差矩阵提取特征向量和特征值,筛选出几个信息量较大的维度,且相互正交。然后只要这几个维度的信息来表示原来的数据。
线性回归:以最小平方法作为是否判断正确的标准。首先线性回归一定式线性的,要求的就是各个维度的权重组成的权重向量W,将权重作为未知值,将样本输入输出数据作为已知值,我们就可以得到costfunction,梯度下降法,有目的的尝试使得cost更小的权重向量,直到得到最佳的权重向量未知。