机器学习
机器学习相关博客
白水baishui
天光乍破
展开
-
留一法交叉验证 Leave-One-Out Cross Validation
交叉验证法,就是把一个大的数据集分为 kkk 个小数据集,其中 k−1k-1k−1 个作为训练集,剩下的 111 个作为测试集,在训练和测试的时候依次选择训练集和它对应的测试集。这种方法也被叫做 kkk 折交叉验证法(k-fold cross validation)。最终的结果是这 k 次验证的均值。此外,还有一种交叉验证方法就是 留一法(Leave-One-Out,简称LOO),顾名思义,就是使 kkk 等于数据集中数据的个数,每次只使用一个作为测试集,剩下的全部作为训练集,这种方法得出的结果与训练整个原创 2021-12-20 23:52:03 · 19959 阅读 · 3 评论 -
matlab 神经网络工具箱 nntraintool 详解
概览Neural Network该部分展示了神经网络的结构,从结构图中可以看出该网络有三个隐含层,神经元个数分别为9个、8个、7个Algorithms该部分展示了该网络所使用的训练算法,可以看出Data Division:该网络采用随机划分的方法将数据集划分为training set、validation set、test setTraining:该网络采用Levenberg–Mar...原创 2019-08-02 21:15:56 · 19784 阅读 · 8 评论 -
提升树与梯度提升树 Boosting Tree & Gradient Boosting Decision Tree(GBDT)
提升树(Boosting Tree) 以决策树为基函数的提升方法称为提升树。提升树对分类问题,提升树是二叉分类树,对回归问题提升树是二叉回归树。提升树方法实际采用的是加法模型(即基函数的线性组合)与前向分步算法,因此提升树模型可以表示为决策树的加法模型:ŷ i=fK(x)=∑k=1KT(x;θk)=∑k=1Kfk(x;θk)y^i=fK(x)=∑k=1KT(x;θk)=∑k=1K...原创 2018-07-14 13:03:44 · 1042 阅读 · 0 评论 -
随机森林 Random Forest
随机森林是由决策树通过Bagging策略训练而成的,即:Bagging+DecisionTree=RandomForestBagging+DecisionTree=RandomForestBagging + Decision Tree = RandomForest随机森林的算法执行过程: 设有训练数据集S={(x1,y1),(x2,y2),...,(xN,yN)}S={(x1,y1),(x2...原创 2018-07-14 09:56:52 · 584 阅读 · 0 评论 -
AdaBoost算法
对于使用提升(Boosting)方法,需要解决两个问题:如何改变每一轮训练数据的权重或者概率分布;如何将各个弱分类器(弱学习器)组合成一个强分类器(强学习器)。AdaBoost算法的做法是:提高那些前一轮被弱分类器错误分类样本的权重,降低那些被正确分类样本的权重;对于弱分类器的组合,AdaBoost采取的是加权多数表决的方法。具体做法是:加大分类误差率小的弱分类器的权重,使其...原创 2018-07-13 15:26:03 · 407 阅读 · 1 评论 -
集成学习算法策略 Boosting和Bagging
集成学习是机器学习中的一个重要分支。它主要包含两种策略:Boosting和Bagging。Boosting和Bagging都是基于多个弱学习器(弱分类器)(例如:一颗欠拟合的决策树)的基础之上的,且要满足,每一个弱学习器的分类准确性都要强于随机分类(即准确率大于50%) 策略 Boosting方法 Bagging方法 训练方式 主要通过改变训练样本的权重(...原创 2018-07-12 18:54:19 · 2197 阅读 · 0 评论 -
决策树 Decision Tree
熵与信息增益 决策树模型本质上就是一个 IF-Then 规则的集合 决策树学习的第一步就是“特征选择” 特征选择分两个步骤进行:选择对训练数据具有最大分类能力的特征进行树的叶子节点的分类;选择该特征最合适的分裂点进行分裂。熵(Entropy),是表示随机变量不确定性的度量。 假设XXX是一个具有有限个值的离散型随机变量,服从如下的概率分布:P(X=xi)=pi,i=1,2...原创 2018-07-12 09:39:10 · 1165 阅读 · 0 评论 -
逻辑回归 Logistic Regression
逻辑回归也被称为对数几率回归,是一种分类算法,用条件概率分布的形式表示P(Y|X)P(Y|X)P(Y|X),这里随机变量XXX取值为nnn维实数向量。例如x=(x1,x2,…,xn)x=(x1,x2,…,xn)x=(x_1,x_2,…,x_n),YYY取值为000或111。逻辑回归模型 逻辑回归的模型定义如下:P(Y=1|x)=exp(w·x+b)1+exp(w·x+b)P(Y=1|x)...原创 2018-07-10 08:38:26 · 440 阅读 · 0 评论 -
梯度下降法 Gradient Descent
梯度下降法求解最小值过程概述: 在一个可微的光滑曲面上随机选取一个点,然后通过不断的迭代计算,使这个点移动的每一步都向着梯度方向(即下降最快的方向),最终到达局部极小值点,之后通过多次随机取点进行同样的计算,即可找出最小值点。 那么我们为什么不直接求解最小值点,而是通过迭代的方法一步一步来求解呢?实际上机器学习所要求的非线性方程一般很难求得数值解,而且在实际应用中也没有必要求得精确的数...原创 2018-07-07 11:12:59 · 657 阅读 · 0 评论 -
有监督学习算法的评价指标——精确率、准确率和召回率
首先明白四个概念:TP (True Positive):被正确预测的正样本数FP (False Positive):被错误预测的正样本数TN (True Negative):被正确预测的负样本数FN (False Negative):被错误预测的负样本数正样本是指属于某一类别的样本,反样本是指不属于某一类别的样本 比如说在做字母A的图像识别,字母A的样本就属于正样本,不是字母A...原创 2018-07-01 13:40:50 · 3263 阅读 · 0 评论 -
优化损失函数中的经验风险与结构风险
经验风险最小化:在求解模型时,优化目标仅仅包含对样本的估计的损失函数最小化,但对于使损失函数最小化过程中导致的模型复杂度提高没有进行控制。minf∈F1N∑i=1NL(yi,f(xi))minf∈F1N∑i=1NL(yi,f(xi)){min}_{f\in F}\frac{1}{N}\sum_{i=1}^{N}L(y_i,f(x_i))经验风险最小化的缺点:学习出来的模型容易过拟...原创 2018-06-27 23:12:50 · 831 阅读 · 0 评论 -
有监督学习的模型求解
假设有样本集合T={(x1,y1),(x2,y2),(x3,y3),...,(xN,yN)}T={(x1,y1),(x2,y2),(x3,y3),...,(xN,yN)}T=\{(x_1,y_1),(x_2,y_2),(x_3,y_3),...,(x_N,y_N)\} 其中单个样本xi=(x(1),x(2),...,x(i),...,x(n))Txi=(x(1),x(2),...,x(i),....原创 2018-06-27 21:10:17 · 906 阅读 · 0 评论 -
建立逻辑回归(LogisticRegression)二分类器
git:逻辑回归二分类器已知数据集 testSet.txt 中数据格式如下: 设第一列特征为x1,第二列特征为x2,第三列标签为z每一个特征都乘上一个回归系数w,则有z=w0x0+w1x1+w2x2(x0=1)" role="presentation" style="text-align: center; position: relative;">z=w0x0+w1x1+w2x2(x原创 2018-02-06 19:57:32 · 4877 阅读 · 0 评论 -
决策树中的香农熵(Shannon Entropy)
香农熵又称信息熵,反映了一条信息的信息量大小和它的不确定性之间的关系,是信息量的度量,单位为 bit。对于某件事情 不确定性越大,熵越大,确定该事所需的信息量也越大; 不确定性越小,熵越小,确定该事所需的信息量也越小。假设有一事件X" role="presentation" style="position: relative;">XXX,X" role="presentation" s原创 2018-02-03 15:53:00 · 6919 阅读 · 0 评论 -
线性回归算法的数学推导与tensorflow演示
假设有两个特征项X1和X2X_1 和 X_2,和参数θ0、θ1、θ2\theta_0、\theta_1、\theta_2,它们满足Y=θ0+θ1X1+θ2X2Y = \theta_0 + \theta_1X_1 + \theta_2X_2其中θ0\theta_0为偏置项,用于更好的描述数据。YY表示一个由X和θX 和 \theta拟合的平面hθ(X)h_\theta(X),这个拟合平面与X、θ原创 2018-01-23 00:11:02 · 2037 阅读 · 0 评论 -
决策树中熵、条件熵、信息增益及信息增益比的python实现
有关熵、条件熵、信息增益及信息增益比的概念可以在网上搜索或者在博客:决策树 Decision Tree上查看假设我们有一份CSV文件(以部分为例):car.csv其中我们把"是否续保"列视为标签,其余列视为特征计算其熵、条件熵、信息增益及信息增益比:import numpy as npimport pandas as pdimport mathclass InformationGai...原创 2019-04-21 09:05:06 · 2649 阅读 · 1 评论 -
BP神经网络(Back Propagation Neural Network)算法原理推导与Python实现详解
该神经网络被设置为三层:一层输入层、一层隐藏层、一层输出层样本集: 特征一 特征二 标签 0 0 0 0 1 1 1 0 1 1 1 0可以看出,这就是一个异或样本集,使用这个样本集可以展现出神经网络与感知机在处理非线性可分问题上的差别。import mathimport random# ...原创 2018-08-15 23:51:35 · 3836 阅读 · 6 评论 -
sklearn中决策树回归器DecisionTreeRegressor的实际应用及可视化
假设有CSV文件(部分):suzhou.csv要对其进行回归分析并输出图像:import numpy as npfrom sklearn.tree import DecisionTreeRegressorimport matplotlib.pyplot as pltdata = np.genfromtxt("/suzhou.csv",delimiter=",",dtype=int,s...原创 2019-04-21 09:30:02 · 5563 阅读 · 0 评论 -
sklearn中随机森林分类器RandomForestClassifier的实际应用
假设我们有一份CSV文件(以部分为例):car_rf.csv要用随机森林对其进行分类,其中最后一列视为标签,其余列视为特征# coding = utf-8import pandas as pdfrom sklearn.ensemble import RandomForestClassifierfrom IPython.display import Imagefrom sklearn ...原创 2019-04-21 09:16:37 · 3898 阅读 · 0 评论 -
Ubuntu在Pycharm中安装sklearn失败解决方案
记录一下,首先需要安装numpy和scipy两个包,再安装sklearn包即可原创 2019-04-14 13:20:52 · 2139 阅读 · 0 评论