python与机器学习
文章平均质量分 53
tianguiyuyu
这个作者很懒,什么都没留下…
展开
-
深度残差网络
首先,深的网路是不会比浅的网络差,如果可以充分训练的话。作者:杨思达zzzz链接:https://www.zhihu.com/question/38499534/answer/147150281来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。用一句话解释就是,深度网络容易造成梯度在back propagation的过程中消失,导致训练效果很差,而深度残差网络在神经网络...转载 2018-06-16 16:10:08 · 937 阅读 · 0 评论 -
人工智能工程师学习路线
转载 2018-05-27 20:16:52 · 848 阅读 · 0 评论 -
机器学习算法汇总
1.人工智能之机器学习体系汇总【直接上干货】此处梳理出面向人工智能的机器学习方法体系,主要体现机器学习方法和逻辑关系,理清机器学习脉络,后续文章会针对机器学习系列讲解算法原理和实战。抱着一颗严谨学习之心,有不当之处欢迎斧正。监督学习 Supervised learning 人工神经网络 Artificial neural network 自动编码器 Autoencoder反向传播 Backprop...转载 2018-05-22 23:58:52 · 376 阅读 · 0 评论 -
基于代价函数的分类器决策控制
在有些实际的情况下,分错为正样本或者负样本的代价是不一样的,那么这个时候我们就可以针对损失函数做一些修改,使之更能处理实际中存在的问题...原创 2018-05-16 17:57:07 · 363 阅读 · 1 评论 -
处理非均衡问题的数据抽样方法
一种针对非均衡问题调节分类器的方法,就是对分类器的训练数据进行改造。这可以通过欠抽样(undersampling)或者过抽样(oversampling)来实现。过抽样意味着复制样例,而欠抽样意味着删除样例。不管采用哪种方式,数据都会从原始形式改造为新形式。抽样过程则可以通过随机方式或者某个预定方式来实现。通常也会存在某个罕见的类别需要我们来识别,比如在信用卡欺诈当中。如前所述,正例类别...原创 2018-05-16 17:50:56 · 481 阅读 · 0 评论 -
非均衡分类问题
非均衡分类问题是指在分类器训练时正例数目和反例数目不相等(相差很大)。该问题在错分正例和反例的代价不同时也存在。本文提供几种度量分类器性能的方法1 预测准确率 预测准确率指的是预测正确的样本占所有测试样本的比率2正确率与召回率 正确率指的是预测为正例且预测正确的样本占预测为正例的样本的比率召回率指的是预测为正例且预测正确的样本占真正正例的样本的比率3 ROC曲线 另一个用于度量...原创 2018-05-16 17:48:44 · 333 阅读 · 0 评论 -
AdaBoost 算法详解
boosting是一种与bagging很类似的技术。不论是在boosting还是bagging中,所使用的多个分类器的类型都是一致的。但是在前者当中,不同的分类器是通过串行训练而获得的,每个新分类器都根据已训练出的分类器的性能来进行训练。boosting是通过集中关注被已有分类器分错的那些数据来获得新的分类器。由于boosting分类的结果是基于所有分类器的加权求和结果,因此boosting和ba...原创 2018-05-16 17:28:31 · 586 阅读 · 0 评论 -
FP-growth算法
FP-growth算法是一种用于发现数据集中频繁模式的有效方法。FP-growth算法利用apriori原理,执行更快。Apriori算法产生候选项集,然后扫描数据集来检查它们是否频繁。由于只对数据集扫描两次,因此FP-growth算法执行的更快。在FP-growth算法中,数据集存储在一个称为FP树的结构中。FP树构建完成后,可以通过查找元素项的条件基及构建条件FP树来发现频繁项集...原创 2018-05-26 21:00:14 · 340 阅读 · 0 评论 -
机器学习中对于训练集中常见的缺省值的处理方法
由于调查、编码和录入误差,数据中可能存在一些无效值和缺失值,需要给予适当的处理。常用的处理方法有:估算,整例删除,变量删除和成对删除。估算(estimation)。最简单的办法就是用某个变量的样本均值、中位数或众数代替无效值和缺失值。这种办法简单,但没有充分考虑数据中已有的信息,误差可能较大。另一种办法就是根据调查对象对其他问题的答案,通过变量之间的相关分析或逻辑推论进行估计。例如,某一产品的拥有...原创 2018-06-02 16:48:49 · 3606 阅读 · 0 评论 -
特征提取,特征选择,降维
特征选择就是将机器学习算法不理解的原始数据抽取特征出来,这些特征可以描述原始的数据,使得这些特征可以被机器学习算法所理解,这些特征也就作为机器学习算法的输入。而降维就是一个特征选择的过程,特征数过多,使得处理过于复杂,这时候就需要选取最具代表性的一些特征,这就是降维的过程。...原创 2018-05-15 23:16:54 · 7620 阅读 · 1 评论 -
bagging和dropout
bagging中文意思是集成学习,通过在一个样本中随机选择一些样本构成训练数据集,训练出一个弱学习器,所谓的弱学习器就是分类的准确率稍微大于50%。重复N次,就可以得到N个弱学习器,最后通过这N个学习器进行投票,采取少数服从多数的原则,最后即可实现分类的功能。dropout就是抑制一个网络中的部分神经元,在相同的数据集上训练时,每次抑制不同的部分,就相当于有了多个弱学习器,这一点和bagging原...原创 2018-05-15 23:08:56 · 2082 阅读 · 0 评论 -
最大似然估计
最大似然估计就是找出与样本分布最接近的概率分布模型。原创 2018-05-20 11:44:45 · 134 阅读 · 0 评论 -
PCA(主成分分析)数学推导
证明对称阵的不同特征值对应的特征向量是相互正交的,如下:原创 2018-05-20 10:28:44 · 899 阅读 · 0 评论 -
Apriori算法进行关联分析
最后附上代码:#加载数据集def loadDataSet(): return [[1, 3, 4], [2, 3, 5], [1, 2, 3, 5], [2, 5]]#构建候选集C1def createC1(dataSet): C1 = [] for transaction in dataSet: for item in transaction: ...原创 2018-05-18 22:37:21 · 2824 阅读 · 0 评论 -
简述深度学习预训练和正则化
1Deep Neural Network总的来说,根据神经网络模型的层数、神经元个数、模型复杂度不同,大致可分为两类:Shallow Neural Networks和Deep Neural Networks。上节课介绍的神经网络模型层数较少,属于Shallow Neural Networks,而本节课将着重介绍Deep Neural Networks。首先,比较一下二者之间的优缺点有哪些:值得一提...转载 2018-05-24 09:31:52 · 3403 阅读 · 0 评论 -
正则化的理解
regularizer 看字面意思都能意会到本意了吧。我被坑的才叫久,因为我是很晚才看到这个词的英文的,中文译成正则项简直是坑人,所以之前都是从它的作用上倒过来理解的,直到某次无意间看到了英文才顿悟了这个东西的存在的意图。译成“规则项”难道不比“正则项”好么,译成“正则项”简直就是在术语化在门槛化,让领域外的人难以get到它的本意。啰嗦完了,答你。规则化就是...向你的模型加入某些规则,加入先验,...转载 2018-05-24 10:15:12 · 2425 阅读 · 0 评论 -
LRN局部相应归一化
本笔记记录学习 LRN(Local Response Normalization),若有错误,欢迎批评指正,学习交流。1.侧抑制(lateral inhibition)2.计算公式Hinton在2012年的Alexnet网络中给出其具体的计算公式如下:公式看上去比较复杂,但理解起来非常简单。i表示第i个核在位置(x,y)运用激活函数ReLU后的输出,n是同一位置上临近的kernal map的数目,...原创 2018-06-16 12:12:27 · 953 阅读 · 0 评论 -
dropout的用法
dropout的作用是增加网络的泛化能力,可以用在卷积层和全连接层。但是在卷积层一般不用dropout, dropout是用来防止过拟合的过多参数才会容易过拟合, 所以卷积层没必要, 但是是可以用的,要小心翼翼...原创 2018-06-16 11:35:30 · 7939 阅读 · 0 评论 -
k折交叉验证
一般情况将K折交叉验证用于模型调优,找到使得模型泛化性能最优的超参值。,找到后,在全部训练集上重新训练模型,并使用独立测试集对模型性能做出最终评价。 K折交叉验证使用了无重复抽样技术的好处:每次迭代过程中每个样本点只有一次被划入训练集或测试集的机会。K折交叉验证图:如果训练数据集相对较小,则增大k值。增大k值,在每次迭代过程中将会有更多的数据用于模型训练,能够得到最小偏差,同时算法时间延长。且训练...原创 2018-06-14 19:21:04 · 94838 阅读 · 8 评论 -
归一化,标准化,正则化的概念和区别
归一化(Normalization) 1.把数据变为(0,1)之间的小数。主要是为了方便数据处理,因为将数据映射到0~1范围之内,可以使处理过程更加便捷、快速。 2.把有量纲表达式变换为无量纲表达式,成为纯量。经过归一化处理的数据,处于同一数量级,可以消除指标之间的量纲和量纲单位的影响,提高不同数据指标之间的可比性。 主要算法: 1.线性转换...转载 2018-06-14 16:27:31 · 13133 阅读 · 0 评论 -
python-解决pip安装速度慢的问题
对于Python开发用户来讲,PIP安装软件包是家常便饭。但国外的源下载速度实在太慢,浪费时间。而且经常出现下载后安装出错问题。所以把PIP安装源替换成国内镜像,可以大幅提升下载速度,还可以提高安装成功率。国内源:新版ubuntu要求使用https源,要注意。清华:https://pypi.tuna.tsinghua.edu.cn/simple阿里云:http://mirrors.aliyun.c...转载 2018-06-14 10:29:11 · 18712 阅读 · 7 评论 -
L1 / L2 正规化 (Regularization)
过拟合 我们知道, 过拟合就是所谓的模型对可见的数据过度自信, 非常完美的拟合上了这些数据, 如果具备过拟合的能力, 那么这个方程就可能是一个比较复杂的非线性方程 , 正是因为这里的 x^3 和 x^2 使得这条虚线能够被弯来弯去, 所以整个模型就会特别努力地去学习作用在 x^3 和 x^2 上的 c d 参数. 但是我们期望模型要学到的却是 这条蓝色的曲线. 因为它能更有效地概括数据.而且只需要...转载 2018-05-24 17:50:06 · 3215 阅读 · 1 评论 -
k折交叉验证
转自: https://blog.csdn.net/holybin/article/details/27185659交叉验证(Cross Validation),有的时候也称作循环估计(Rotation Estimation),是一种统计学上将数据样本切割成较小子集的实用方法,该理论是由Seymour Geisser提出的。在模式识别(Pattern Recognition)和机器学习(Machi...转载 2018-05-24 17:19:46 · 2138 阅读 · 0 评论 -
online learning的介绍
什么是Online Learning准确地说,Online Learning并不是一种模型,而是一种模型的训练方法,Online Learning能够根据线上反馈数据,实时快速地进行模型调整,使得模型及时反映线上的变化,提高线上预测的准确率。Online Learning的流程包括:将模型的预测结果展现给用户,然后收集用户的反馈数据,再用来训练模型,形成闭环的系统。如下图所示:Online Lea...原创 2018-06-05 17:00:53 · 8851 阅读 · 0 评论 -
normalization (标准化或者正则化)
通常用于 特征标准化的途径有两种, 一种叫做 min max normalization, 他会将所有特征数据按比例缩放到0-1的这个取值区间. 有时也可以是-1到1的区间. 还有一种叫做 standard deviation normalization, 他会将所有特征数据缩放成 平均值为0, 方差为1. 使用这些标准化手段. 我们不仅可以快速推进机器学习的学习速度, 还可以避免机器学习 学得特...原创 2018-05-24 16:13:01 · 1248 阅读 · 0 评论 -
处理不均衡的数据(imbalanced data)
什么是不均衡数据 不均衡数据的形式很简单. 这里有苹果和梨, 当你发现你手中的数据对你说, 几乎全世界的人都只吃梨, 如果随便抓一个路人甲, 让你猜他吃苹果还是梨, 正常人都会猜测梨.不均衡的数据预测起来很简单. 永远都猜多的那一方面准没错. 特别是红色多的那一方占了90%. 只需要每一次预测的时候都猜红色, 预测准确率就已经达到了相当高的90%了. 没错, 机器也懂这个小伎俩. 所以机器学到最后...转载 2018-05-24 15:56:17 · 5028 阅读 · 0 评论 -
生成对抗网络(GAN Generative Adversarial Nets )简介
常见神经网络形式 神经网络分很多种, 有普通的前向传播神经网络 , 有分析图片的 CNN 卷积神经网络 , 有分析序列化数据, 比如语音的 RNN 循环神经网络 , 这些神经网络都是用来输入数据, 得到想要的结果, 我们看中的是这些神经网络能很好的将数据与结果通过某种关系联系起来.生成网络 但是还有另外一种形式的神经网络, 他不是用来把数据对应上结果的, 而是用来”凭空”捏造结果, 这就是我们要说...转载 2018-05-24 15:41:00 · 566 阅读 · 0 评论 -
GDBT详解
GBDT(Gradient Boosting Decision Tree) 又叫 MART(Multiple Additive Regression Tree),是一种迭代的决策树算法,该算法由多棵决策树组成,所有树的结论累加起来做最终答案。它在被提出之初就和SVM一起被认为是泛化能力(generalization)较强的算法。近些年更因为被用于搜索排序的机器学习模型而引起大家关注。 后记:发现G...转载 2018-06-12 00:10:09 · 5094 阅读 · 0 评论 -
autoencoder 的压缩与解压
压缩与解压 ¶有一个神经网络, 它在做的事情是 接收一张图片, 然后 给它打码, 最后 再从打码后的图片中还原. 太抽象啦? 行, 我们再具体点.假设刚刚那个神经网络是这样, 对应上刚刚的图片, 可以看出图片其实是经过了压缩,再解压的这一道工序. 当压缩的时候, 原有的图片质量被缩减, 解压时用信息量小却包含了所有关键信息的文件恢复出原本的图片. 为什么要这样做呢?原来有时神经网络要接受大量的输入...转载 2018-05-24 15:13:28 · 1013 阅读 · 2 评论 -
过拟合和欠拟合
1 什么是过拟合通俗的来讲,过拟合就是对训练集学的太好了。当在训练集上成功率增加而在测试集上成功率减少,那么就认为出现了过拟合。一般来说,出现过拟合是训练样本过少而需要训练的参数过多解决过拟合的办法: 增加训练样本,L1或者L2正则化,dropout2 什么是欠拟合就是学习的不够好,一般出现在训练样本过大而需要训练的参数过少解决欠拟合的办法: 将网络参数整多一些。完整版如下:1. 欠拟合: ...原创 2018-05-04 23:14:49 · 3877 阅读 · 0 评论 -
tensorboard可视化(二)
#tensorboard可视化一般是先将整个模型保存在文件中,然后根据需要进行绘图,具体可以查看代码from __future__ import print_functionimport tensorflow as tfimport numpy as npdef add_layer(inputs, in_size, out_size, n_layer, activation_fu...原创 2018-05-04 18:08:28 · 222 阅读 · 0 评论 -
k均值聚类算法
聚类是一种无监督学习方法,无监督学习方法没有训练过程。所谓无监督学习是指事先并不知道要寻找的内容,即没有目标变量。聚类将数据点归到多个族中,其中相似数据点处于同一族,而不相似数据点处在不同族。聚类可以使用多种不同的方法来计算相似度。 一种广泛使用的聚类算法是K-均值算法,其中k是用户指定的要创建的簇的数目。 K-均值聚类算法以k个随机质心开始。算法会计算每个点到质心的距离。每个点会被...原创 2018-05-17 10:09:24 · 543 阅读 · 0 评论 -
logistic回归和softmax回归
1. 简介逻辑回归和Softmax回归是两个基础的分类模型,虽然听名字以为是回归模型,但实际我觉得他们也有一定的关系。逻辑回归,Softmax回归以及线性回归都是基于线性模型,它们固定的非线性的基函数(basis function) 的线性组合,形式如下:2.逻辑回归谈谈逻辑回归,Softmax回归,前者主要处理二分类问题,而后者处理多分类问题,但事实上Softmax回归就是逻辑回归的一般形式。 ...转载 2018-03-30 23:31:28 · 462 阅读 · 0 评论 -
windows下用pycharm进行tensorflow开发
先总结自己遇到的坑:(回头想想其实安装很简单)第一大坑:anaconda必须安装4.2版本,不能安装4.3 版本;满满的血泪史 因为我们需要安装自带的python必须是3.5,才可以调用TensorFlow 但是anaconda4.3自带是python3.6 ,无法调用TensorFlow 第二坑: google那群人已经将安装进一步简化,千万不要像过去安装还用conda 命令,很容易把安装的位置...转载 2018-03-30 22:50:29 · 6219 阅读 · 0 评论 -
集成学习boosting和bagging
集成学习通过将多个学习器进行结合,常可获得比单一学习器显著优越的泛化性能。这对“弱学习器”尤为明显,因此集成学习的很多理论研究都是针对弱学习器进行的,而基学习器有时也被直接称为弱学习器。弱学习器指泛化性能略优于随机猜测的学习器,例如在二分类问题上,精度略高于50%的分类器。个体学习器应该“好而不同”,即个体学习器性能不能太坏,且个体学习器之间要存在差异性。根据个体学习器的生成方式,目前的集成学习方...原创 2018-03-23 18:48:04 · 414 阅读 · 0 评论 -
机器学习算法GBDT总结上
机器学习算法GBDT的面试要点总结-上篇1.简介 网址: https://www.cnblogs.com/ModifyRong/p/7744987.html gbdt全称梯度下降树,在传统机器学习算法里面是对真实分布拟合的最好的几种算法之一,在前几年深度学习还没有大行其道之前,gbdt在各种竞赛是大放异彩。原因大概有几个,一是效果确实挺不错。二是即可以用于分类也可以用于回归。三是可以筛选...转载 2018-03-23 16:14:01 · 1031 阅读 · 0 评论 -
梯度下降法与随机梯度下降法的python代码实现
1 # -*- coding: cp936 -*- 2 import numpy as np 3 from scipy import stats 4 import matplotlib.pyplot as plt 5 6 7 # 构造训练数据 8 x = np.arange(0., 10., 0.2) 9 m = len(x) ...转载 2018-03-23 10:45:11 · 1599 阅读 · 3 评论 -
多元线性回归模型中的常数项
作者:flyerye链接:https://www.zhihu.com/question/22450977/answer/250476871来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。回答这个问题,我们先从定义出发,然后再结合个实际例子去理解。从定义来看,多元线性回归方程定义如下:这里的 a 为常数项, 为随机误差项,且服从标准正态分布( ),或者我们把它称作白...转载 2018-03-19 17:15:21 · 40232 阅读 · 0 评论 -
梯度下降法的详解
转载自: https://www.cnblogs.com/pinard/p/5970503.html在求解机器学习算法的模型参数,即无约束优化问题时,梯度下降(Gradient Descent)是最常采用的方法之一,另一种常用的方法是最小二乘法。这里就对梯度下降法做一个完整的总结。1. 梯度 在微积分里面,对多元函数的参数求∂偏导数,把求得的各个参数的偏导数以向量的形式写出来,就是梯度。比...转载 2018-03-19 16:29:48 · 1150 阅读 · 0 评论 -
SVM支持向量机
支持向量就是离分隔面最近的点,我们的工作就是最大化支持向量到分隔面的距离。其数学公式为:# 上述表达也就是[1]:# # 不知为何这是我见过的最喜欢的写法(比心)知乎链接为: https://www.zhihu.com/question/21094489转载 2018-01-17 23:03:12 · 113 阅读 · 0 评论