随笔分类 - 机器学习
摘要:KD树是提高K近邻法计算效率的一种手段,类似二叉查找树。不过二叉查找树中的数据是一维的,而K近邻的训练样本往往是多维的。所以,在建树的过程中,需要进行特征维度的选择。合理的方式是,每轮递归选择方差最大的特征S作为区分标准,以S的中位数作为根节点。这样能保证寻找最近邻的快速性,构建出均衡的二叉树。 决
阅读全文
摘要:一、逻辑回归 二、判定边界 当将训练集的样本以其各个特征为坐标轴在图中进行绘制时,通常可以找到某一个 判定边界 去将样本点进行分类。例如: 线性判定边界: 非线性判定边界: 三、二分类和sigmoid函数 sigmoid函数图像如下: 四、损失函数 1. 定义 2. 极大似然估计 上面是一种求损失函
阅读全文
摘要:K近邻(K-nearst neighbors, KNN)是一种基本的机器学习算法,所谓,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。比如:判断一个人的人品,只需要观察与他来往最密切的几个人的人品好坏就可以得出,即“近朱者赤,近墨者黑”;KNN算法既可以应用于分类应用中,
阅读全文
摘要:网格搜索算法和K折交叉验证法是机器学习入门的时候遇到的重要的概念。 网格搜索算法是一种通过遍历给定的参数组合来优化模型表现的方法。 以决策树为例,当我们确定了要使用决策树算法的时候,为了能够更好地拟合和预测,我们需要调整它的参数。在决策树算法中,我们通常选择的参数是决策树的最大深度。 于是我们会给出
阅读全文
摘要:一. 交叉验证原理讲解 1. 设置验证集的原因 在机器学习建模过程中,将数据分为训练集和测试集。测试集合训练集是完全分开的两个数据集,完全不参与训练,只是用于模型最终确定后,来测试模型的效果。而训练集又要分出一部分数据用来验证模型的训练效果,即验证集。验证集在每次训练集训练结束后,对模型的效果进行初
阅读全文
摘要:对于二分类问题,precision,recall,auc,f1_score的计算原理都比较熟悉,但是多分类问题的计算还是有一点小小的区别,在使用sklearn.metrics的时候需要注意一下; 对于sklearn.metrics下的roc_auc_score, precision_score, r
阅读全文
摘要:GridSearchCV 简介: GridSearchCV,它存在的意义就是自动调参,只要把参数输进去,就能给出最优化的结果和参数。 但是这个方法适合于小数据集,一旦数据的量级上去了,很难得出结果。这个时候就是需要动脑筋了。数据量比较大的时候可以使用一个快速调优的方法——坐标下降。它其实是一种贪心算
阅读全文
摘要:面试的时候经常被问的一个问题是 AUC和F1 score有什么区别。笔者看了很多博文,感觉相当一部分在分析混淆矩阵和auc、f1的定义上花了太多笔墨,但对于两者的区别和联系,有种到了门前就差临门一脚的感觉。因此笔者去stack overflow上找了很多回答,感觉收获很多,在此简明扼要的写一下收获。
阅读全文
摘要:1. 简介 逻辑回归和Softmax回归是两个基础的分类模型,虽然听名字以为是回归模型,但实际我觉得他们也有一定的关系。逻辑回归,Softmax回归以及线性回归都是基于线性模型,它们固定的非线性的基函数(basis function) 的线性组合,形式如下: 2.逻辑回归谈谈逻辑回归,Softmax
阅读全文
摘要:现在要开始讲到分布了,当然首先要谈的肯定是二项分布,在此之前,让我们先认识一下我们的前辈。 瑞士数学家雅克·伯努利(Jacques Bernoulli,1654~1705)首次研究独立重复试验(每次成功率为p)。在他去世后的第8年(1713年),他侄子尼克拉斯出版了伯努利的著作《推测术》。在书中,伯
阅读全文
摘要:一、逻辑回归基本概念 1. 什么是逻辑回归 逻辑回归就是这样的一个过程:面对一个回归或者分类问题,建立代价函数,然后通过优化方法迭代求解出最优的模型参数,然后测试验证我们这个求解的模型的好坏。 Logistic回归虽然名字里带“回归”,但是它实际上是一种分类方法,主要用于两分类问题(即输出只有两种,
阅读全文
摘要:Pipeline可以将许多算法模型串联起来,比如将特征提取、归一化、分类组织在一起形成一个典型的机器学习问题工作流。主要带来两点好处: 直接调用fit和predict方法来对pipeline中的所有算法模型进行训练和预测。 可以结合grid search对参数进行选择。 在下面的例子中,我们使用决策
阅读全文
摘要:标准化(standardization): 数据标准化是将数据按比例缩放,使其落入到一个小的区间内,标准化后的数据可正可负,但是一般绝对值不会太大,一般是z-score标准化方法:减去期望后除以标准差。 特点: 对不同特征维度的伸缩变换的目的是使其不同度量之间的特征具有可比性,同时不改变原始数据的分
阅读全文
摘要:很多人认为标准化理解为归一化,然而是有区别的,下面告诉你不同之处: (一)归一化 特点 对不同特征维度的伸缩变换的目的是使各个特征维度对目标函数的影响权重是一致的,即使得那些扁平分布的数据伸缩变换成类圆形。这也就改变了原始数据的一个分布。 好处 1 提高迭代求解的收敛速度 2 提高迭代求解的精度 (
阅读全文
摘要:为什么要进行归一化? 机器学习模型被互联网行业广泛应用,一般做机器学习应用的时候大部分时间是花费在特征处理上,其中很关键的一步就是对特征数据进行归一化,为什么要归一化呢?维基百科给出的解释: 归一化后加快了梯度下降求最优解的速度; 如果机器学习模型使用梯度下降法求最优解时,归一化往往非常有必要,否则
阅读全文
摘要:梯度下降(最速下降法) 梯度下降法是一个最优化算法,通常也称为最速下降法。最速下降法是求解无约束优化问题最简单和最古老的方法之一,虽然现在已经不具有实用性,但是许多有效算法都是以它为基础进行改进和修正而得到的。最速下降法是用负梯度方向为搜索方向的,最速下降法越接近目标值,步长越小,前进越慢。可以用于
阅读全文
摘要:1.过拟合 当样本特征很多,样本数相对较少时,模型容易陷入过拟合。为了缓解过拟合问题,有两种方法: 方法一:减少特征数量(人工选择重要特征来保留,会丢弃部分信息)。 方法二:正则化(减少特征参数的数量级)。 2.正则化(Regularization) 正则化是结构风险(损失函数+正则化项)最小化策略
阅读全文
摘要:经典机器学习算法,他们最本质的区别是分类思想(预测y的表达式)不同,有的是基于概率模型,有的是动态规划,表象的区别就是最后的损失函数不同。 损失函数分为经验风险损失函数和结构风险损失函数,经验风险损失函数反映的是预测结果和实际结果之间的差别,结构风险损失函数则是经验风险损失函数加上正则项(L0、L1
阅读全文
摘要:首先理解范数的概念 L1、L2这种在机器学习方面叫做正则化,统计学领域的人喊她惩罚项,数学界会喊她范数。 范数(norm)是数学中的一种基本概念。在泛函分析中,它定义在赋范线性空间中,并满足一定的条件,即①非负性;②齐次性;③三角不等式。它常常被用来度量某个向量空间(或矩阵)中的每个向量的长度或大小
阅读全文
摘要:在使用机器学习算法过程中,针对不同的问题需要不用的模型评估标准,这里统一汇总。主要以两大类分类与回归分别阐述。 一、分类问题 1、混淆矩阵 混淆矩阵是监督学习中的一种可视化工具,主要用于比较分类结果和实例的真实信息。矩阵中的每一行代表实例的预测类别,每一列代表实例的真实类别。 真正(True Pos
阅读全文