上二年级的大儿子一直在喝无乳糖牛奶,最近让他尝试喝正常牛奶,看看反应如何。三天过后,儿子说,好像没反应,我可不可以说我不对乳糖敏感了。
我说,呃,这个问题不简单啊。你知道吗,这在统计学上叫推断。
儿子很好学,居然叫我解释什么叫推断。
 
好吧,那我就来卖弄一下。
 
老早之前,听机器学习的一个podcast,是总结前一年机器学习领域发生什么事情,最后一段P主说: 我们已经总结了这一年,那我们来预测(predict)一下明年吧,不过我觉得说predict不是那么准确,应该是做一下inference比较对。
 
Hmm,我们做机器学习的一般来说,说来说去就是做预测,inference是个什么鬼。
 
推断inference是统计学上的概念。简单的理解,就是从少量的样本的统计结果,得出对总体的结论。
 
比如说有美国总统大选,有调查公司就会对一部分人进行问卷调查,问他们会选谁,然后从根据这个结果,推断出这届总统会是谁。统计学是基于概率论的,当给出结果的时候,会给出confident interval,就是可信度。这个推断做得好不好和样本的选取关系非常大,一句话样本必须有代表性。
 
听上去,和机器学习貌似很像,都差不多是预测个东西嘛。其实还是不一样的,什么才叫预测呢。举一个例子,就看出区别了。
 
比如说我们现在也知道一些样本,知道他们的年龄,性别,工作,收入,居住区域,会选谁。然后,我们从总体(population)中随便找出一个人,并且知道他的年龄,性别,工作,收入,居住区域,我们想知道他会选谁,现在做的就是预测predict。
 
预测,机器学习的定义就是,根据给定的样本,训练模型,用来预测未知的样本。
 
当然机器学习和统计学并不是分开的两学科。很多机器学习的模型是基于统计学的。比如说非常popular的贝叶斯统计模型。对于被观察事件,根据先验知识,建立分布模型,根据观察到的样本得到后验分布模型,然后再用来预测未知样本的概率分布,作出概率最大的预测,并给出可信度。和机器学习中的或回归或分类模型一起,可谓条条大路通罗马。但其实也有有交叉的,比如说最大熵算法其实是建立在以概率论为基础的信息论上的。
 
统计学是非常有意思的数学。 

推断(inference)和预测(prediction)的更多相关文章

  1. MATLAB时间序列预测Prediction of time series with NAR neural network

    具体请参考:http://lab.fs.uni-lj.si/lasin/wp/IMIT_files/neural/nn05_narnet/ 神经网络预测时间序列数据,有三种模型, 这里是给出的是第二种 ...

  2. inference和learning

    一开始对于机器学习,主要是有监督学习,我的看法是: 假定一个算法模型,然后它有一些超参数,通过喂多组数据,每次喂数据后计算一下这些超参数.最后,数据喂完了,参数取值也就得到了.这组参数取值+这个算法, ...

  3. 『计算机视觉』Mask-RCNN_推断网络终篇:使用detect方法进行推断

    一.detect和build 前面多节中我们花了大量笔墨介绍build方法的inference分支,这节我们看看它是如何被调用的. 在dimo.ipynb中,涉及model的操作我们简单进行一下汇总, ...

  4. cnn handwrite使用原生的TensorFlow进行预测

    100个汉字,放在data目录下.直接将下述文件和data存在同一个目录下运行即可. 关键参数: run_mode = "train" 训练模型用,修改为validation 表示 ...

  5. Effective HPA:预测未来的弹性伸缩产品

    作者 胡启明,腾讯云专家工程师,专注 Kubernetes.降本增效等云原生领域,Crane 核心开发工程师,现负责成本优化开源项目 Crane 开源治理和弹性能力落地工作. 余宇飞,腾讯云专家工程师 ...

  6. 机器学习入门02 - 深入了解 (Descending into ML)

    原文链接:https://developers.google.com/machine-learning/crash-course/descending-into-ml/ 线性回归是一种找到最适合一组点 ...

  7. 条件GAN论文简单解读

        条件GAN(Conditional Generative Adversarial Nets),原文地址为CGAN. Abstract     生成对抗网络(GAN)是最近提出的训练生成模型(g ...

  8. ISLR学习笔记

    目录 C1 Introduction to Statistical Learning 1.1Statistical Learning介绍: 1.1.1 估计 \(f\) 的目的:prediction和 ...

  9. Pattern Recognition And Machine Learning读书会前言

    读书会成立属于偶然,一次群里无聊到极点,有人说Pattern Recognition And Machine Learning这本书不错,加之有好友之前推荐过,便发了封群邮件组织这个读书会,采用轮流讲 ...

随机推荐

  1. Error: no such table: device;的问题的解决,去掉表名device后面的分号;

    sqlite> .mode csvsqlite> .import device.txt device;Error: no such table: device;sqlite> .im ...

  2. Aliyun Linux2安装Docker

    安装教程 使用手册

  3. 完了!TCP出了大事!

    前情回顾:<非中间人就不能劫持TCP了吗?> 不速之客 夜黑风高,乌云蔽月. 两位不速之客,身着黑衣,一高一矮,潜入Linux帝国. 这一潜就是一个多月,直到他们收到了一条消息······ ...

  4. MIME-TYPE 列表

    Suffixes applicable Media type and subtype(s) .3dm x-world/x-3dmf .3dmf x-world/x-3dmf .a applicatio ...

  5. Java对象(创建过程、内存布局、访问方法)

    (Java 普通对象.不包括数组.Class 对象等.) ​ 对象创建过程 类加载 遇到 new 指令时,获取对应的符号引用,并检查该符号引用代表的类是否已被初始化.如果没有就进行类加载. 分配内存 ...

  6. 数据量大了一定要分表,分库分表组件Sharding-JDBC入门与项目实战

    最近项目中不少表的数据量越来越大,并且导致了一些数据库的性能问题.因此想借助一些分库分表的中间件,实现自动化分库分表实现.调研下来,发现Sharding-JDBC目前成熟度最高并且应用最广的Java分 ...

  7. Idea快捷生成serialVersionUID

    Java对象实现了Serializable接口,是需要创建serialVersionUID,避免此对象在序列化.反序列化时出现问题.但idea默认没有生成serialVersionUID的设置,需要手 ...

  8. 笨办法学习Python3练习代码1-10

    ex1.py print("hello world!",end = " ")#不换行 print("hello again") print( ...

  9. Linux恢复删除后数据文件

    简介 在使用Linux系统时,有时候会不小心误删除数据,由于Linux系统也没有与Windows系统下回收站类似的功能,一般会认为该文件将无法找回. 本文主要以CentOS7操作系统为例,介绍如何使用 ...

  10. java.lang.NoSuchMethodError:javax.validation.BootstrapConfiguration.getClockProviderClassName

    Spring Boot 2随附了hibernate-validator 6(org.hibernate.validator:hibernate-validator:6.0.16.Final依赖于val ...