
machine learning
文章平均质量分 92
keep_forward
谢谢大家关注
展开
-
集成学习
占坑原创 2018-05-22 22:59:07 · 326 阅读 · 0 评论 -
线性模型(一)之前言
线性模型是研究变量之间关系的一种模型,在线性模型中,未知参数仅以线性形式出现。这是在百度百科上查到的关于线性模型的定义。依据该定义,在本系列博客中的模型,可能不一定全是线性模型,但却和线性模型有着密切关系。另外,本系列博客仅代表个人愚见,可能存在部分误解,还望海涵。按照我个人的理解,线性模型是指模型是参数的线性组合,而非输入的线性组合(比如,在多项式拟合中,输入xxx,会有多次项形...原创 2018-05-22 23:11:18 · 354 阅读 · 0 评论 -
线性模型(二)之多项式拟合
多项式拟合(polynominal curve fitting)是一种线性模型,模型和拟合参数的关系是线性的。多项式拟合的输入是一维的,即x=xx=x\textbf{x} = x,这是多项式拟合和线性回归问题的主要区别之一。 多项式拟合的目标是构造输入xxx的MMM阶多项式函数,使得该多项式能够近似表示输入xxx和输出yyy的关系,虽然实际上xxx和yyy的关系并不一定是多项式,但使用足...原创 2018-05-23 22:53:50 · 22503 阅读 · 1 评论 -
线性模型(三)之线性回归
在前一篇博客线性模型(二)之多项式拟合中介绍了一维数据的多项式拟合问题。理解多项式拟合后,再来看线性回归,会发现,如出一辙。线性回归和多项式拟合的主要区别在于: 线性回归的输入是多维的 线性回归模型不仅是参数的线性函数,也是输入xx\mathbf{x}的线性函数,即不会像多项式拟合中会有x2,x3x2,x3x^2,x^3等高次幂出现。 线性回归的基本形式如下:...原创 2018-06-02 12:32:21 · 766 阅读 · 0 评论 -
线性模型(四)之感知机
在该系列博客《线性模型》的前两章介绍了介绍了线性模型用于回归任务,即多项式拟合和线性回归。那么能否方便地将线性模型也用到分类任务上呢? 按照我自己的理解,将线性回归用于分类,最简单的思想就是构建线性回归模型f(x)=wTx+bf(x)=wTx+bf(\mathbf{x}) = \mathbf{w}^T\mathbf{x} + b,然后做如下的判断:...原创 2018-06-02 13:24:53 · 392 阅读 · 0 评论 -
线性模型(五)之逻辑斯蒂回归
逻辑斯蒂回归(logistic regression,LR)名字中包含“回归”二字,乍一听,还以为是一种回归算法,实则不然,逻辑斯蒂回归是不折不扣的分类算法。 感知机算法是最直接的将线性回归用于分类的算法,其直接在线性回归的模型上加上了符号函数,变成了二分类模型。类似,逻辑斯蒂回归算法的思想也是将线性回归模型加以改造,进而用于分类。 个人理解,逻辑斯蒂回归改造线性回归模型的思路是将...原创 2018-06-09 20:40:01 · 1510 阅读 · 0 评论 -
线性模型(六)之SVM
支持向量机(support vector machine,SVM)是一种使用特别广泛分类算法,分类效果也是非常不错的,SVM算法也有很严谨的数学理论推导。 SVM算法也是基于线性回归模型来做分类的。SVM算法的思路是将线性方程wTx+bwTx+b\mathbf{w}^T\mathbf{x} +b 作为分类超平面,该超平面会将所有样本点分隔开,位于超平面一侧的样本归为正例,而另一侧的则归为...原创 2018-06-09 21:09:04 · 482 阅读 · 0 评论 -
线性模型(七)之人工神经网络(ANN)
前面介绍了三种用于分类的模型,感知机、逻辑斯蒂回归和支持向量机。如果只就二分类任务而言,其实它们都可以认为是在寻找一个超平面wTx+bwTx+b\mathbf{w}^T\mathbf{x} + b将正负样本划分开。只不过寻找超平面的思路/想法不一致。但它们的目标都是要确定ww\mathbf{w}和bbb。在二分类中,ww\mathbf{w}是一个向量,bbb是一个标量,如果把ww\mathbf...原创 2018-06-09 22:02:35 · 701 阅读 · 0 评论 -
机器学习中的方差、偏差和噪声
机器学习算法一般都会有训练和测试的过程,而且算法在不同训练集(训练集来自同一个分布)上学得的模型,测试的结果也很可能不同。 一般来说,算法的方差衡量了训练集的变动导致的模型性能的变化,即多次训练的模型之间的性能差异性。偏差则是度量算法的期望输出与真实标记的区别,表达了学习算法对数据的拟合能力。而噪声则表示数据的真实标记与数据在数据集上标记的区别,表明算法在当前任务上能达到的测试误差的下界...原创 2018-07-14 22:39:25 · 2316 阅读 · 0 评论 -
决策树和随机森林
先占坑,后面慢慢填原创 2018-05-22 22:58:37 · 961 阅读 · 0 评论 -
机器学习中的模型评估与度量
在机器学习中除了需要了解各种算法知识(如SVM、神经网络等),也需要了解是如何通过什么方式评估和度量模型的,从而选择最佳的模型。1. 准备训练/测试集评估如何评估一个模型的性能,当然是用数据来评估呢?那么用哪些数据评估模型呢?既把数据用作训练,同时又把这部分数据用作测试当然是不合理的,这会导致过高的估计模型的性能。测试数据要尽可能地与训练数据互斥。因此就需要将总量有限的数据划分为训练...原创 2018-05-20 18:06:14 · 2667 阅读 · 0 评论 -
KNN算法和KD树
KNN算法和KD树KNN算法的思路非常简单,对于新的样本,找出距其最近的k个样本,再根据这k个样本的类别,通过多数投票的方式预测新样本的类别。k近邻算法没有学习或训练过程。但k近邻算法仍有很多值得关注的地方,比如超参数k值的选择、距离的度量方式、决策规则以及快速检索k近邻的算法(kd树等)。KNN算法的三要素KNN算法的流程非常简单,确定一个KNN算法,明确下来三个基本要素即可。即...原创 2018-05-13 14:05:32 · 1067 阅读 · 0 评论 -
python中confusion matrix visualization, 混淆矩阵可视化
一般情况下,为了看得更加清楚,需要把混淆矩阵可视化,用图画出来。对于类别数较少的可以用seaborn中的热力图方式展示。如下:import seaborn as snimport pandas as pdconfusion_matrix = [[13,1,1,0,2,0], [3,9,6,0,1,0], [0,0,16,2,0,0], [0,0,0,13,0,0], ...原创 2018-04-09 19:30:13 · 8019 阅读 · 0 评论 -
分类时为什么都选择one hot编码
这里可以做一个思考啊,分类时,一般都会选择把类别用one hot进行编码,比如共有5个类,那么就有5个编码[1 0 0 0 0][0 1 0 0 0][0 0 1 1 1][0 0 0 1 0][0 0 0 0 1]这是为什么呢?为什么不直接用1,2,3,4,5来表示5个类别呢?个人觉得,一个很重要的原因在于计算loss时的问题。loss一般用距离来表示,如果用1~5来表示,那么1和2的距离时1,...原创 2018-04-16 16:40:52 · 8102 阅读 · 1 评论 -
提前预测类问题的思路
存在较多的问题,需要先做预测,再做检测,比如我之前碰到的光模块故障预测,再比如铜线质量评估等等问题这些问题基本上都可以分为两个问题:预测和检测,也有较多的解决思路。1、先做预测再做检测,即先对某些属性利用时间序列的算法(AR、LSTM)做预测,再用分类算法做检测(比如二分类,故障和非故障)这个方法的检测部分,按理说是比较好做的,但时序预测部分,需要进行多阶预测,而故障的模式一般会突变,预测难度较大...原创 2018-04-16 16:41:34 · 1206 阅读 · 1 评论 -
P-R曲线深入理解
P-R曲线就是精确率precision vs 召回率recall 曲线,以recall作为横坐标轴,precision作为纵坐标轴。首先解释一下精确率和召回率。解释精确率和召回率之前,先来看下混淆矩阵,负 正负TNFP正FNTP把正例正确分类为正例,表示为TP(true positive),把正例错误分类为负例,表示为FN(false negative),把负例正确分类为负例...原创 2018-04-19 19:48:09 · 108416 阅读 · 31 评论 -
参考博客
回归的评价指标 http://blog.youkuaiyun.com/u013704227/article/details/77604500NP问题解释 http://www.matrix67.com/blog/archives/105梯度下降:https://www.cnblogs.com/pinard/p/5970503.html梯度下降:http://ruder.io/optimizing-gradie...原创 2018-04-22 21:10:51 · 529 阅读 · 0 评论 -
聚类算法之Kmeans
Kmeans是聚类算法中比较简单的算法,也用的非常多。这里进行简单的解释,主要目的在于给自己记录,以备以后查看。K均值聚类的主要思想是为了使得各个类的点离聚类中心都尽可能近。K均值聚类的算法可以描述为:输入:数据集D={x1,x2,..,xn}D={x1,x2,..,xn}D=\{x_1,x_2, .., x_n\} 聚类簇个数:k算法:从数据集...原创 2018-05-06 17:30:58 · 277 阅读 · 0 评论 -
聚类算法之谱聚类
再解释下谱聚类原创 2018-05-06 17:31:41 · 387 阅读 · 0 评论 -
L1正则为什么更容易获得稀疏解
L1和L2正则常被用来解决过拟合问题。而L1正则也常被用来进行特征选择,主要原因在于L1正则化会使得较多的参数为0,从而产生稀疏解,将0对应的特征遗弃,进而用来选择特征。 但为什么L1正则会产生稀疏解呢?这里利用公式进行解释。 假设只有一个参数为www,损失函数为L(w)L(w)L(w),分别加上L1正则项和L2正则项后有:JL1(w)=L(w)+λ|w|JL1(w)=L(w)+λ...原创 2018-07-29 22:47:51 · 21710 阅读 · 17 评论