过拟合

通过客户流失预测案例感悟数据分析设计方法思考——数据驱动、AI驱动

让人想犯罪 __ 提交于 2021-02-04 12:44:51
国际著名的咨询公司Gartner在2013年总结出了一套数据分析的框架,数据分析的四个层次:描述性分析、诊断性分析、预测性分析、处方性分析。 Gartner于2020年中给出预测,到2024年底,75%的企业机构将从AI试点转为AI运营。同期,Gartner发布了数据与分析领域的十大技术趋势,首先映入眼帘的是:更智能、更高速、更负责的AI,也指出了仪表板的衰落,更青睐上层次和实用化的决策智能。 1. 前言 我们在设计数据分析产品和数据可视化的时候,依据是什么?怎样设计数据分析产品才能给用户更多的业务支撑?我们做趋势预测、精准识别目的是什么? 最近,我有些感悟分享与读者探讨、研究。 对于设计数据分析产品和数据可视化,我们首先想到的是需求,然后是业务机理。但是,在大数据、新一代人工智能高速发展的今天,对比Gartner给出数据分析咨询意见,我们不应拘泥于当前的业务场景,业务创新也可以通过新技术引领。 我们回到数据分析产品和数据可视化设计,除了需求和业务机理以外,我们不妨以金字塔思维模型来构建这样的场景。 一、目的 我们的目的是实现经济发展和利润,解决未来或当下的问题。比如新零售业务核心是围绕客户展开,解决客户发展和流速问题,是企业发展和利润的基石。 二、分析需求和识别待解决问题 分析需求是深入业务机理,重塑业务模型,以发展的眼光识别问题,解决问题。仍以新零售客户发展为例

给女朋友买了只口红,结果她跟我说分手?掌握了机器学习再买买买吧!

↘锁芯ラ 提交于 2021-02-04 02:39:40
过完年,压岁钱到位,迟来的年终奖到账,钱包鼓起来但新的节日也不断跟上,情人节、元宵节、妇女节…… 说到底,还不是要买买买? 淘宝上的店铺又多又杂乱,一旦买错了, 面临的就是“女 ” 朋友的“果真直男审美 ” 的diss,或者人财两空的局面 接下去,来看看用机器学习技术如何甄别优质店铺,让你买到就是赚到! 分三步走: 第一步:找到阿里给出的店铺评价历史信息,分为训练集数据和测试集数据; 第二步:利用训练集数据构建机器学习模型; 第三步:使用测试集数据进行准确率判断并优化。 如此便可以建立一个相对科学的靠谱店铺预测模型。 首先,从阿里云天池开一份包含2000家店铺的评分,等级,评论等信息和数年交易记录的数据: 通过这份数据, 我们可以构建一套模型,根据店铺的访问、购买信息等数据,来评测该店铺是否为优质店铺。 一部分数据将用来作为训练集,另一部分数据会用来测试已经训练好模型的精确度。但训练的时候并不是精确度越高越好,过拟合和欠拟合都不是好事情。 欠拟合指模型没有很好地捕捉到数据特征,不能够很好地拟合数据: 过拟合通俗一点地说就是模型把数据学习的太彻底,以至于把噪声数据的特征也学习到了,这样就会导致在后期测试的时候不能够很好地识别数据,即不能正确的分类,模型泛化能力太差: 随后,完成了清理整合等预处理工作,得到了一份适合建模使用的样本数据: *完整代码可以在文末获取。考虑这份数据比较粗糙

CNN卷积神经网络-tensorflow

生来就可爱ヽ(ⅴ<●) 提交于 2021-02-02 15:49:11
卷积神经网络的层级结构 1 数据输入层 |input layer 该层要做的处理主要是对原始图像数据进行预处理,包括: 去均值、归一化、 PCA| 白化 。 去均值: 把输入数据各个维度都中心化为 0 ,其目的就是把样本的中心拉回到坐标系原点上。 归一化:幅度归一化到同样的范围。 PCA| 白化 :用 PCA 降维;白化是对数据各个特征轴的幅度归一化。 去均值与归一化效果图:(把样本的中心拉回到坐标系原点上) 去相关与白化效果图:(对数据各个特征轴的幅度归一化) 2 卷积计算层 |Convolution layer 这一层就是卷积神经网络最重要的一个层次,也是 “卷积神经网络”的名字来源。 在这个个卷基层,有两个关键操作:局部关联 ,每个神经元看做一个滤波器( filter )和 窗口滑动( receptive field ) , filter 对局部数据计算。 先介绍卷积层遇到的几个名词: 深度 |depth 步长 |stride (窗口一次滑动的距离) 填充值 |zero-padding 填充值是什么呢? 以下图为例子,比如有这么一个 5*5的图片(一个格子一个像素),我们滑动窗口取2*2,步长取2,那么我们发现还剩下1个像素没法滑完,那怎么办呢? 那我们在原先的矩阵加了一层填充值,使得变成 6*6的矩阵,那么窗口就可以刚好把所有像素遍历完。这就是填充值的作用。 卷积的计算

决策树

人盡茶涼 提交于 2021-02-01 11:36:46
概要 决策树也是我们经常使用的样本归类算法。简单来说,它就是 if-else 的判断集合,本文就详细介绍其原理,还有例子实现。依然参考《机器学习实战》。 基本理论 决策树是通过一系列规则对数据进行分类的过程。 决策树利用了概率论的原理,不断地将数据切分成小数据集,直到所有目标变量完全相同,或者数据不能再切分为止。并且利用一种树形图作为分析工具。其基本原理是用决策点代表决策问题,用方案分枝代表可供选择的方案,用概率分枝代表方案可能出现的各种结果,经过对各种方案在各种结果条件下损益值的计算比较,为决策者提供决策依据。 决策树是一种贪心算法 ,要在给定时间内做出最佳选择,但并不关心能否达到最优。 ###决策树的实现 决策树的实现主要分为三个步骤: 特征选择:特征选择是指从训练数据中众多的特征中选择一个特征作为当前节点的分裂标准,如何选择特征有着很多不同量化评估标准标准,从而衍生出不同的决策树算法。 决策树生成: 根据选择的特征评估标准,从上至下递归地生成子节点,直到数据集不可分则停止。 剪枝:决策树容易过拟合,一般来需要剪枝,缩小树结构规模、缓解过拟合。剪枝技术有预剪枝和后剪枝两种。 划分数据集的最大原则是: 使无序的数据变的有序 。如果一个训练数据中有20个特征,那么选取哪个做划分依据?这就必须采用量化的方法来判断,量化划分方法有多重,其中一项就是“信息论度量信息分类”

训练集与测试集--拆分数据

徘徊边缘 提交于 2021-02-01 11:15:46
拆分训练集和测试集 图1 将单个数据集拆分为一个训练集和一个测试集 确保您的测试集满足以下两个条件: 规模足够大,可以参数具有统计意义的结果。 能代表整个数据集。换言之,挑选的测试集的特征应该与训练集的特征相同。 假设您的测试集满足上述两个条件,您的目标是创建一个能够很好地泛化到新数据的模型。我们的测试集充当新数据的代理。以下图为例。请注意,从训练数据中学习的模型非常简单。该模型的表现并不完美,出现了一些错误的预测。不过,该模型在测试数据上的表现与在训练数据上的表现一直。也就是说,这个简单的模型并没有过拟合训练数据。 图2 对照测试数据验证训练后的模型 请勿对测试数据进行训练 。如果您的评估指标获得了意外好的结果,则可能是您不小心对测试集数据进行了训练。例如,高准确率可能表明测试数据泄露到了训练集。 例如,假设一个模型要预测某封电子邮件是否是垃圾邮件,它使用主题行、邮件正文和发件人的电子邮件地址作为特征。我们按照 80-20 的拆分比例将数据拆分为训练集和测试集。在训练之后,该模型在训练集和测试集上均达到了 99% 的精确率。我们原本预计测试集上的精确率会低于此结果,因此再次查看数据后发现,测试集中的很多样本与训练集中的样本是重复的(由于疏忽,我们在拆分数据之前,没有将输入数据库中的相同垃圾邮件重复条目清理掉)。我们无意中对一些测试数据进行了训练

50经典面试题 | 附参考答案

亡梦爱人 提交于 2021-01-31 01:46:03
点击上方 “ AI算法与图像处理 ”,选择加"星标"或“置顶” 重磅干货,第一时间送达 来源:计算机视觉研究院专栏 作者:Edison_G 有兴趣的同学请学会面试答题!祝大家都可以拿到心仪的Offer! 1、请详细说说支持向量机(support vector machine,SVM)的原理 支持向量机,因其英文名为support vector machine,故一般简称SVM,通俗来讲,它是一种二类分类模型,其基本模型定义为特征空间上的间隔最大的线性分类器,其学习策略便是间隔最大化,最终可转化为一个凸二次规划问题的求解。 2、哪些机器学习算法不需要做归一化处理? 在实际应用中,需要归一化的模型: 1.基于距离计算的模型:KNN。 2.通过梯度下降法求解的模型:线性回归、逻辑回归、支持向量机、神经网络。 但树形模型不需要归一化,因为它们不关心变量的值,而是关心变量的分布和变量之间的条件概率,如决策树、随机森林(Random Forest)。 3、树形结构为什么不需要归一化? 因为数值缩放不影响分裂点位置,对树模型的结构不造成影响。 按照特征值进行排序的,排序的顺序不变,那么所属的分支以及分裂点就不会有不同。而且,树模型是不能进行梯度下降的,因为构建树模型(回归树)寻找最优点时是通过寻找最优分裂点完成的,因此树模型是阶跃的,阶跃点是不可导的,并且求导没意义,也就不需要归一化。 4、在k

使用多尺度空间注意力的语义分割方法

大憨熊 提交于 2021-01-30 09:37:33
点击上方“AI公园”,关注公众号,选择加“星标“或“置顶” 作者: Abhinav Sagar 编译:ronghuaiyang 导读 用于自动驾驶的新的state of the art的网络。 本文提出了一种新的神经网络,利用不同尺度的多尺度特征融合来实现精确高效的语义分割。 重点 我们在下采样部分使用了膨胀卷积层,在上采样部分使用了转置卷积层,并在concat层中对它们进行拼接。 alternate blocks之间有跳跃连接,这有助于减少过拟合。 我们对我们的网络训练和优化细节进行了深入的理论分析。 我们在Camvid数据集上使用每个类的平均精度和IOU作为评价指标来评估我们的网络。 我们的模型在语义分割上优于之前的state of the art网络,在超过100帧每秒的速度下,平均IOU值为74.12。 语义分割 语义分割需要对输入图像的每个像素预测一个类,而不是对整个输入图像进行分类。为了预测图像中每个像素的内容,分割不仅需要找到输入图像中的内容,还需要找到它的位置。语义分割在自动驾驶、视频监控、医学影像等方面都有应用。这是一个具有挑战性的问题,因为要在准确性和速度之间进行权衡。由于模型最终需要在现实环境中部署,因此精度和速度都应该很高。 数据集 在训练和评估中使用了CamVid数据集。数据集提供了ground truth标签,将每个像素与32个类中的一个相关联

炼丹的不二法门

天涯浪子 提交于 2021-01-26 07:54:19
1.数据增广 简单,行之有效地增加训练数据量,提高模型的泛化能力。 水平翻转(horizontally flipping) 位移 裁剪 颜色抖动(color jittering) 组合操作   例如同时做旋转和随机尺度变换,此外还可以把每个patch中所有像素在HSV颜色空间中的饱和度和明度提升0.25-4次幂方,乘以0.7-1.4之间的一个因子,再加一个-0.1-0.1之间的值。同样你可以在色调通道(H)对每张图片或patch  的所有像素增加一个-0.1~0.1之间的值。 2.预处理 零均值化和标准化   零均值化: X - = numpy.mean( X, axis = 0 )   数据有 过大的均值可能导致参数的梯度过大 ,如果有后续的处理,可能要求数据零均值,比如主成分分析 PCA。零均值化并没有消除像素之间的相对差异,人们对图像信息的摄取通常来自于像素之间的相对色差,而不是像素值的高  低。归一化是为了 让不同维度的数据具有相同的分布 。假如二维数据(X1,X2)两个维度都服从均值为零的正态分布,但是X1方差为100,X2方差为1。那么对(X1,X2)进行随机采样在二维坐标系中绘制的图像,应该是狭长的椭圆  形。 归一化后 加快了梯度下降求最优解的速度并有可能提高精度 。考虑数据特征提取的表达式:   S = w1*x1 + w2*x2 + b   梯度计算:   dS

Adversarial Training

 ̄綄美尐妖づ 提交于 2021-01-22 01:47:54
原于2018年1月在实验室组会上做的分享,今天分享给大家,希望对大家科研有所帮助。 今天给大家分享一下对抗训练(Adversarial Training,AT)。 为何要选择这个主题呢? 我们从上图的Attention的搜索热度可以看出,Attention在出现后,不断被人们所重视,基本上现在的顶会论文都离不开Attention。 同样,AT的搜索热度也持续高涨,因此,我们有理由相信AT也能像Attention一样,在学术界大放光彩。 原本的AT,最初是在样本中加入对抗扰动使神经网络失效,当时AT并不广为人知。 但是后来GAN(Generative Adversarial Networks )的出现,使AT受到了大量的关注,并且也被用于各种任务中。 下面,我们通过三篇论文来介绍一下AT能够应用于何种场景,以及能够取得何种效果。 首先,我们来介绍一下《Domain-Adversarial Training of Neutral Networks》 这篇论文的核心任务是领域适配(Domain Adaptation),也是我们常说的迁移学习。主要涉及两个领域,一个目标领域(target domain)和源领域(source domain),通常,源领域的资源、语料较多、比较适合特征建模,但是并不是任务需要的领域,仅仅是相关领域;但是目标领域虽然是任务需要的领域,但是由于资源、语料少

文献阅读_IJCAI_Improving Stock Movement Prediction with Adversarial Training

给你一囗甜甜゛ 提交于 2021-01-21 09:44:46
花了一个周读了一下这篇论文,是最近接受在IJCAI上的一篇关于股票涨跌预测的模型,驳斥了传统方法基于静态输入的局限性,原因是由于股票的价格会在市场内随着时间不短变化,基于价格的特征实际上是随机变量。方法是采用对抗训练,在训练过程中加入随机噪声模拟股票在实际中收外界干扰的过程,模型是采用常规的深度学习模型LSTM+attention.达到的效果是比其他方法的准确率提高了3.11%。 Improving Stock Movement Prediction with Adversarial Training    ABSTRACT: This paper contributes a new machine learning solution for stock movement prediction, which aims to predict whether the price of a stock will be up or down in the near future. The key novelty is that we propose to employ adversarial training to improve the generalization of a recurrent neural network model. The rationality of