预测模型

选择可解释性高的机器学习模型,而不是决策风险高的黑匣子模型

三世轮回 提交于 2020-01-18 23:43:25
作者 | Adrian Colyer, Venture Partner, Accel 编译 | CDA数据分析师 本文是技术和哲学论点的混合,本文的两个主要结论:第一,我对可解释性高的机器学习模型和决策风险高的黑匣子模型之间区别的理解,以及为什么前者可能有问题;其次,它是创建真实可解释模型的技术的重要参考。 在医疗和刑事司法领域,越来越多的趋势将机器学习(ML)运用于对人类生活产生深远影响的高风险预测应用程序中……缺乏缺乏透明性和可预测性的预测模型可能会(已经造成)严重后果…… 1、定义术语 一个模型可能是一个黑匣子,其原因有两个:(a)该模型计算的功能过于复杂,以至于任何人都无法理解,或者(b)该模型实际上可能很简单,但是其细节是专有的不可检验。 在可解释的机器学习中,我们使用复杂的黑匣子模型(例如DNN)进行预测,并使用创建的第二个(事后)模型来解释第一个模型的工作。这里的一个经典示例是 LIME ,它探索复杂模型的局部区域用以发现决策边界。 一个可解释模型是用于预测的模型,可以自己直接检验和人类专家解释。 可解释性是特定于域的概念,因此不能有通用的定义。但是,通常可解释的机器学习模型 以模型形式受限,因此它对某人有用,或者服从领域的结构知识,例如单调性或来自领域知识的物理约束。 尽管缺乏很明确的定义,但是越来越多的文献提出了可能是可解释的算法。 似乎我们可以得出以下结论

什么是机器学习

走远了吗. 提交于 2020-01-18 20:28:32
原文链接: https://www.cnblogs.com/lsgsanxiao/p/6955502.html 机器学习入门好文,强烈推荐(转) 转自 飞鸟各投林 史上最强----机器学习经典总结---入门必读----心血总结-----回味无穷 让我们从机器学习谈起 导读:在本篇文章中,将对 机器学习 做个概要的介绍。本文的目的是能让即便完全不了解机器学习的人也能了解机器学习,并且上手相关的实践。当然,本文也面对一般读者,不会对阅读有相关的前提要求。 在进入正题前,我想读者心中可能会有一个疑惑:机器学习有什么重要性,以至于要阅读完这篇非常长的文章呢? 我并不直接回答这个问题前。相反,我想请大家看两张图,下图是图一: 图1 机器学习界的执牛耳者与互联网界的大鳄的联姻 这幅图上上的三人是当今机器学习界的执牛耳者。中间的是Geoffrey Hinton, 加拿大多伦多大学的教授,如今被聘为“Google大脑”的负责人。右边的是Yann LeCun, 纽约大学教授,如今是Facebook人工 智能 实验室的主任。而左边的大家都很熟悉,Andrew Ng,中文名吴恩达,斯坦福大学副教授,如今也是“百度大脑”的负责人与百度首席科学家。这三位都是目前业界炙手可热的大牛,被互联网界大鳄求贤若渴的聘请,足见他们的重要性。而他们的研究方向,则全部都是机器学习的子类-- 深度学习 。 下图是图二: 图2

task1-机器学习概述

别等时光非礼了梦想. 提交于 2020-01-18 02:16:32
机器学习综述 机器学习是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径. A computer program is said to learn from experience E with respect to some task T and performance measure P, if its performance on T, as measured by P, improves with experience E. 一个程序被认为能够从经验E中学习,解决任务T,达到性能度量值P,当且仅当,有了P的评判后,程序在处理T时的性能有所提升。下棋游戏中,经验e就是程序上万次的自我练习的经验而任务t就是下棋。性能度量值p就是与新的对手比赛时赢的比赛的概率。 一、机器学习分类 监督学习 supervised learning(每个样本都有对应的正确答案,如回归问题) 监督学习是指利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程,也称为监督训练或有教师学习。在监督学习的过程中会提供对错指示,通过不断地重复训练,使其找到给定的训练数据集中的某种模式或规律,当新的数据到来时

Deep Knowledge Tracing (深度知识追踪)

给你一囗甜甜゛ 提交于 2020-01-17 01:02:25
论文: Deep Knowledge Tracing    Addressing Two Problems in Deep Knowledge Tracing via Prediction-Consistent Regularization    How Deep is Knowledge Tracing? tensorflow代码实现: https://github.com/jiangxinyang227/dkt 1、概述   知识追踪是对学生的知识基于时间建模,以便我们能精确预测学生对于知识点的掌握程度,以及学生在下一次的表现。而且精确的知识追踪能让我们抓住学生当前的需求,并进行精准推题。然而人类的学习过程中受到人类自身知识和大脑两者的复杂的影响的,也导致知识追踪是非常困难的。   早期的知识追踪模型都是依赖于一阶马尔科夫模型,例如贝叶斯知识追踪(Bayesian Knowledge Tracing)。在本文中引入灵活的循环神经网络来处理知识追踪任务。   知识追踪任务可以概括为:给定一个学生在某一特定学习任务上的表现的观测序列 ${x_0, x_1, ......, x_t}$ ,预测他们在下一次的表现 $x_{t+1}$ 。下图描述了一个学生在学习八年级数学课室的知识追踪可视化展示。这个学生一开始答对了两个关于平方根的问题,然后答错了一道关于X-轴截距的题

机器学习之模型融合(详解Stacking,Blending)

╄→尐↘猪︶ㄣ 提交于 2020-01-16 21:10:07
模型融合 Ensemble Generation 常见模型融合的方法 boosting bagging Stacking blending 各种模型融合的区别 Bagging,Boosting二者之间的区别 Stacking,Blending二者之间的区别 Stacking与blending详解及代码 Stacking的两种思想 集成学习和多模型融合的区别 集成学习是指多个弱分类器(子模型)集成为强分类器,这种弱分类器是 同质 的分类器,比如GBDT,Adaboost,RF等。 根据弱分类器之间的关系,可以分为相关(第i个弱分类器依赖于第i-1个弱分类器)和独立(每个弱分类器相互独立)。相关的话,只能串行实现,主要是降低bias(偏差);独立的话,可以并行实现,主要是降低variance(方差) 多模型融合是多个分类器,这些分类器是 异构 的,各模型解决不同的局部问题, 多模型融合一般用来做信息补充和互补 。 Ensemble Generation 常见模型融合的方法 boosting 迭代训练某个基本模型:根据第i-1轮预测错误得到的情况来修改第i轮训练样本的权重,比较容易过拟合。 bagging 这是一种少数服从多数的思想,通过训练集中不同的子集训练不同的子模型,最后对每个子模型进行投票。 Stacking 层次融合的思想,第一层用多个基本模型

A Taxonomy of Deep Convolutional Neural Nets for Computer Vision

霸气de小男生 提交于 2020-01-14 20:01:03
A Taxonomy of Deep Convolutional Neural Nets for Computer Vision 基本信息 摘要 1. Introduction 2. Introduction to Convolutional Neural Networks 2.1. Building Blocks of CNNs 2.1.1. Why Convolutions? 2.1.2. Max-Pooling 2.1.3. Non-Linearity 2.2. Depth 2.3. Learning Algorithm 2.3.1. Gradient-Based Optimization 2.3.2. Dropout 2.4. Tricks to Increase Performance 2.5. Putting It All Together: AlexNet 2.6. Using Pre-Trained CNNs 2.6.1. Fine-Tuning 2.6.2. CNN Activations as Features 2.7. Improving AlexNet 3. CNN Flavors 3.1. Region-Based CNNs 3.2. Fully Convolutional Networks 3.3. Multi-Modal Networks 3.4.

区别 |时间序列vs线性回归

删除回忆录丶 提交于 2020-01-14 17:57:51
小结: (1)时间序列和回归分析的 核心区别 在于对 数据的假设 :回归分析假设每个样本数据点都是 独立 的;而时间序列则是利用数据之间的 相关性 进行预测。如:时间序列分析中一个基础模型就是AR(Auto-Regressive)模型,它利用过去的数据点来预测未来。 (2)虽然AR模型(自回归模型)和线性回归看上去有很大的相似性。但由于 缺失了独立性 ,利用线性回归求解的AR模型参数会是 有偏的 。但又由于这个 解是一致的 ,所以在实际运用中还是利用线性回归来 近似 AR模型。 (3) 忽视或假设数据的独立性很可能会造成模型的失效 。金融市场的预测的建模尤其需要注意这一点。   本文会先说明两者对数据的具体假设差异,再说明AR模型(Autoregressive model 自回模型)为什么虽然看上去像回归分析,但还是有差别,最后也提到一个常见的混淆两者后在金融方向可能出现的问题。 一、回归分析对数据的假设:独立性 在回归分析中,我们假设数据是 相互独立 的。这种独立性体现在两个方面:一方面,自变量(X)是固定的,已被观测到的值,另一方面,每个因变量(y)的误差项是独立同分布,对于线性回归模型来说,误差项是独立同分布的正态分布,并且满足均值为0,方差恒定。 这种数据的独立性的具体表现就是:在回归分析中, 数据顺序可以任意交换 。在建模的时候,你可以随机选取数据循序进行模型训练

公司人员离职情况分析及预测(工具:python)

情到浓时终转凉″ 提交于 2020-01-14 04:41:58
前言 目前社会上呈现出一种公司招不到人,大批失业人员的矛盾现象,且大部分公司的离职率居高不下,很多入职没多久就辞职,所花费的培训招聘等资源都浪费了。为了弄清楚公司员工离职原因,通过kaggle上某一家企业员工离职的真实数据来对离职率进行分析建模。 文章目录 前言 一、背景 Ⅰ 数据来源 Ⅱ 数据背景 Ⅲ 分析目的 二、数据探索性分析 Ⅰ 数据类型 Ⅱ 描述性统计 Ⅲ 数据预处理 a.缺失值处理 b.异常值处理 c.重复值处理 三、数据分析 Ⅰ 可视化分析 a.离职率 b.公司满意度 c.工作时长 d.考核标准 e.项目数 f.工作年限 g.工作岗位 h.薪资水平 i.工作事故 Ⅱ 预测分析 a.特征工程 b.逻辑回归模型 c.朴素贝叶斯模型 d.模型评估之ROC曲线 四、总结 一、背景 Ⅰ 数据来源 数据来源: 数据来源 , 数据下载链接 ,提取码:byfz Ⅱ 数据背景 数据背景: 该数据集是指某公司员工的离职数据, 其包含14999个样本以及10个特征, 这10个特征分别为: 员工对公司满意度, 最新考核评估, 项目数, 平均每月工作时长, 工作年限, 是否出现工作事故, 是否离职, 过去5年是否升职, 岗位, 薪资水平。 Ⅲ 分析目的 结合现有数据特征,需要分析解决的问题如下: 员工对公司满意度平均水平如何?员工的最新考核情况又是如何?员工所参加项目数是怎样

主流CTR预估模型的演化及对比

无人久伴 提交于 2020-01-14 02:26:30
https://zhuanlan.zhihu.com/p/35465875 学习和预测用户的反馈对于个性化推荐、信息检索和在线广告等领域都有着极其重要的作用。在这些领域,用户的反馈行为包括点击、收藏、购买等。本文以点击率(CTR)预估为例,介绍常用的CTR预估模型,试图找出它们之间的关联和演化规律。 数据特点 在电商领域,CTR预估模型的原始特征数据通常包括多个类别,比如[Weekday=Tuesday, Gender=Male, City=London, CategoryId=16],这些原始特征通常以独热编码(one-hot encoding)的方式转化为高维稀疏二值向量,多个域(类别)对应的编码向量链接在一起构成最终的特征向量。 高维、稀疏、多Field是输入给CTR预估模型的特征数据的典型特点。以下介绍的模型都假设特征数据满足上述规律,那些只适用于小规模数据量的模型就不介绍了。 Embedding表示 由于即将要介绍的大部分模型都或多或少使用了特征的embedding表示,这里做一个简单的介绍。 Embedding表示也叫做Distributed representation,起源于神经网络语言模型(NNLM)对语料库中的word的一种表示方法。相对于高维稀疏的one-hot编码表示,embedding-based的方法,学习一个低维稠密实数向量(low

FM算法解析及Python实现

女生的网名这么多〃 提交于 2020-01-14 02:13:18
1. GBDT + LR 是什么 本质上GBDT+LR是一种具有stacking思想的二分类器模型,所以可以用来解决二分类问题。这个方法出自于Facebook 2014年的论文 Practical Lessons from Predicting Clicks on Ads at Facebook 。 2. GBDT + LR 用在哪 GBDT+LR 使用最广泛的场景是CTR点击率预估,即预测当给用户推送的广告会不会被用户点击。 点击率预估模型涉及的训练样本一般是上亿级别,样本量大,模型常采用速度较快的LR。但LR是线性模型,学习能力有限,此时特征工程尤其重要。现有的特征工程实验,主要集中在寻找到有区分度的特征、特征组合,折腾一圈未必会带来效果提升。GBDT算法的特点正好可以用来发掘有区分度的特征、特征组合,减少特征工程中人力成本。 从知乎 https://zhuanlan.zhihu.com/p/29053940 上看到了一个关于CTR的流程,如下图所示: 如上图,主要包括两大部分:离线部分、在线部分,其中离线部分目标主要是训练出可用模型,而在线部分则考虑模型上线后,性能可能随时间而出现下降,弱出现这种情况,可选择使用Online-Learning来在线更新模型: 2.1 离线部分 数据收集:主要收集和业务相关的数据,通常会有专门的同事在app位置进行埋点,拿到业务数据 预处理