May 2022-Neighborhood Mixup Experience Replay: Local Convex Interpolation for Improved Sample Efficiency in Continuous Control Tasks

摘要:经验回放在提高深度强化学习智能体的样本效率方面起着至关重要的作用。经验回放的最新进展建议使用Mixup-2018,通过合成样本生成进一步提高样本效率。
在这种技术的基础上,提出了邻域混合经验回放(NMER),一种基于几何的回放缓冲区,用状态-动作空间中最近邻的转换进行插值。NMER仅通过混合转换与邻近状态-动作特征来保持转换流形的局部线性近似。在NMER下,给定transition的状态-动作邻居集是动态的和情节无关的,通过情节间插值鼓励更大的策略泛化性。将所提出方法与最近的非策略深度强化学习算法相结合,在连续控制环境下进行评估。NMER比基线重放缓冲区平均提高了94% (TD3)和29% (SAC)的样本效率,使智能体能够有效地重组以前的经验并从有限的数据中学习

1. Introduction

  本文旨在将MF-DRL(model-free)中对真实环境交互的学习优势与MB-DRL(model-based)的样本效率优势结合起来。本文提出邻域混合经验重放(NMER),一种模块化的重放缓冲区,通过对从重放缓冲区中邻域过渡的凸线性组合中采样的经验进行训练,提高了off-policy、MF-DRL智能体的样本效率。

我们的贡献总结如下:

  • 邻域混合经验重放(NMER):一种geometrically-grounded的重放缓冲,通过训练这些代理在邻近transition的线性组合上,提高了off-policy的MF-DRL代理的样本效率。
  • 局部混合(Local Mixup): NMER的一种推广,该算法考虑了任意特征空间中邻域点之间的混合,用距离度量来定义邻近度。
  • 在连续控制中提高样本效率:评估研究表明,NMER大大提高了跨几种连续控制环境的off-policy、MF-DRL算法的样本效率

2. Related work

  经验回放、数据增强和插值方法已应用于强化学习和其他机器学习领域。NMER建立在这些技术的基础上,以提高样品效率

3. Preliminaries

  邻域混淆经验重放(NMER)建立在非策略DRL的经验重放的基础上,Mixup和最近邻启发式(nearest neighbor heuristics),以鼓励近似流形插值。

Off-policy DRL for continuous control tasks

  off-policy DRL已经成功地应用于连续控制任务,通过使用actor-critic方法,如软行为者批评(SAC),深度确定性策略梯度(DDPG)和双延迟DDPG (TD3)

Experience replay

  它可以在很大程度上与智能体的训练算法解耦——当智能体寻求在给定观察到的训练样本的情况下学习最优的策略和值函数时,无论提供给它的样本是什么,经验回放缓冲区的任务是提供具有最大“可学习性”的智能体样本,以改进这些策略和值函数。

Mixup

  Mixup是一种新的随机数据增强技术,通过在现有样本的凸线性组合上训练监督学习器,提高其泛化能力。

MixUp:使用两个现有的样本x1, x2∈rd来插值一个新的样本xinterpolated, Mixup按照以下方式进行插值:

On-manifold interpolation

  为了衡量插值经验回放方法中的插值精度,考虑了插值转换相对于映射状态和动作到奖励和下一个状态的转换流形的"上流形"程度。

使用Mixup的on and off-transition流形插值示例。流形或近似流形插值是连续控制任务中成功训练DRL智能体的关键。

4. Neighborhood Mixup Experience Replay (NMER)

  NMER使用智能体现有的近端经验的凸线性组合来训练off-policy MF-DRL智能体,有效地创建以重放缓冲区的每个transition为中心的局部线性模型。通过仅插值相邻的transition,其中邻近性由回放缓冲区的状态-动作空间中的标准化欧氏距离衡量,NMER插值具有相似状态和动作输入,但潜在不同奖励和下一个状态输出的转换。在考虑这些最近邻时,NMER通过允许邻近transition之间的inter-episode插值来正则化其训练的off-policy MF-DRL智能体。此外,在转换流形中存在随机性的情况下,NMER可以通过为几乎相同的(状态,动作)输入插值不同的(奖励,下一个状态)结果,防止这些智能体过拟合特定的(奖励,下一个状态)结果。

NMER由两个步骤组成:

  • 更新步骤:当一个新的环境交互被添加到回放缓冲区时,重新标准化回放缓冲区中存储的转换的状态和动作,并使用Z-score标准化的欧氏距离更新最近邻数据结构,连接回放缓冲区的状态-动作特征。因此,在输入状态和动作空间上进行相似性搜索;NMER也可以允许其他距离函数和相似性表示。

  • 采样步骤:首先,从replay buffer中均匀采样一批“sample transitions”。接下来,查询采样批次中每个transitions的最近邻居。接下来,对于训练批次中的每组邻居,从这组邻居中均匀采样一个邻居transition,并应用Mixup对所选的每对样本和邻居(分别为xsample,i和xneighbor,i)进行线性插值:

与标准体验回放相比,NMER引入了最小的计算开销,只需要矢量化标准化、最近邻查询和本地Mixup操作。这将NMER定位为高维连续控制任务的可行经验回放缓冲区。

使用NMER,在采样transition与其相邻transition之间进行凸插值,提高了off-policy, MF-DRL代理应用于连续控制任务的泛化性和鲁棒性。

Algorithm 1:

对于每一步:
均匀采样到一个transition ss,标准化状态和动作、标准化局部邻居
从局部邻居set中采样一个transition sn
提取ss和sn的特征xs、xn,进行mixup生成xi插值,添加到B训练集

通过线性插值实现Agent正则化:

  NMER通过调用状态-动作对的线性组合会导致相应的奖励-下一个状态对的相同线性组合的先验知识,提高了off-policy、MF-DRL智能体的策略和值函数近似器的泛化能力。这种先验提高了在近似满足线性假设的任务中的泛化能力。
  由于连续控制任务中的智能体空间是连续的,因此需要进行插值连续的,线性的transition组合仍然可以产生靠近underlying transition流形T的插值样本。如果transition流形T是凸的,则NMER保证流形内插,因为该技术生成严格的凸过渡组合。在这种情况下,合成生成的流形转换与使用底层环境动力学在同一点生成的转换是无法区分的。然而,对于许多应用,特别是高维的、现实世界的连续控制任务,底层的转换流形通常是非凸的。

邻域混淆作为鼓励流形上插值的启发式方法:

  连续控制环境中的非凸性和非线性为基于邻域的插值机制提供了动力,该机制通过仅考虑同一"邻域"中transition之间的插值来解决transition流形的非凸性问题,即具有相似状态-动作对的tranaition。如果transition流形是局部欧氏的,线性插值两个过渡是一个合适的,近似在流形上的机制,用于在空间近端transition之间进行插值。

本文转载于网络 如有侵权请联系删除

相关文章

  • 23种常用设计模式的UML类图

    大家好,又见面了,我是你们的朋友全栈君。23种常用设计模式的UML类图本文UML类图参考《HeadFirst设计模式》(源码)与《设计模式:可复用面向对象软件的基础》(源码)两书中介绍的设计模式与UML图。整理常用设计模式的类图,一方面是为了练习UML,另一方面可以重新思考设计模式。当然,整理完成后可以作为一份手册供今后翻阅。绘图工具:VisualStudio2015一、创建型FactoryMethod(工厂方法) 定义:定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。 类图: AbstractFactory(抽象工厂) 定义:提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。 类图: Builder(生成器模式) 定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 类图: Prototype(原型模式) 定义:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 类图: Singleton(单件模式) 定义:确保一个类只有一个实例,并提供全局访问点。 类图: 代码: public

  • 手机里实现图片文字识别的实用方法[通俗易懂]

    大家好,又见面了,我是你们的朋友全栈君。突然接到老板给的一个任务——把一篇文章排版出来,你会怎样做?是一个字一个字手动手动输入呢?还是语音识别呢?当然,这两种方法都可行,但是不够简单方便。手动输入太慢,语音识别又有点麻烦,如果普通话不好,识别很可能会出错。那什么方法,实现图片文字识别最简单,最方便,还很精确呢?今天就来和大家分享一下,手机里的逆天黑科技,实现图片文字识别,只需5秒钟!方法一:打开QQ,左上角【扫一扫】——手机相册选择图片——确定 方法二:1.打开微信,菜单栏选择【发现】——【小程序】——搜索迅捷【文字识别】 2.进入迅捷文字识别小程序主页,依次点击【照片/拍照】——【选择图片】——【原图,完成】3.等待5秒钟识别完成,我们可以对识别出来的内容进行,英汉翻译,复制到备忘录,发送给好友等操作! 方法三:其实迅捷文字识别,不仅有小程序版还有APP版。实用起来也和方便!打开进入APP,点击下方菜单栏【图片识别】——【立即使用】——选择图片【完成】等待识别完成。2.识别完成以后,你可以对识别出的内容进行复制,翻译,校对等操作以上就是今天分享的图片文字识别的方法。发布者:全栈程序员

  • 如何使用Cariddi扫描域名相关的各种敏感信息

    关于CariddiCariddi是一款功能强大的信息收集与扫描工具,我们只需给它提供一个域名列表,Cariddi就能够帮助我们爬取URL地址,扫描终端节点,并搜索敏感数据、API密钥、文件后缀和令牌等信息。工具安装首先,我们需要在本地设备上安装并配置好Go环境。Linux安装首先,广大研究人员可以使用下列命令将该项目源码克隆至本地:gitclonehttps://github.com/edoardottt/cariddi.git cdcariddi goget复制运行下列命令即可安装Cariddi:makelinux复制运行下列命令即可卸载Cariddi:makeunlinux复制或者,我们也可以直接运行下列一行命令:gitclonehttps://github.com/edoardottt/cariddi.git;cdcariddi;goget;makelinux复制Windows安装(可执行程序只能在cariddi目录下运行)首先,广大研究人员可以使用下列命令将该项目源码克隆至本地:gitclonehttps://github.com/edoardottt/cariddi.gi

  • 【计算机基础】程序的局部性简介

    什么是局部性?局部性分类局部性有什么作用?局部性举例数据引用的局部性取指令的局部性结论完整代码什么是局部性?  程序倾向于使用它们最近使用的地址接近或相等的数据和指令。局部性分类  局部性主要分为时间局部性和空间局部性。时间局部性:最近使用过的数据和指令在不久的将来可能再次被使用。具体如下图所示。时间局部性空间局部性:某个地址或者某个地址附近的数据和指令可能在不久的将来再次被引用。具体如下图所示。空间局部性局部性有什么作用?  在现代计算机的软硬件中,处处体现着局部性原理。在硬件上,计算机通过引入称为高速缓存来保存最近被使用的指令和数据。在软件上,操作系统用主存来缓存磁盘文件系统中最近被使用的磁盘块。在应用程序的设计中,Web浏览器将最近被引用的文档放在本地磁盘上,利用的就是时间局部性。作为程序员应该理解局部性原理,一般来说,有良好局部性的程序比局部性差的程序运行得更快。局部性举例数据引用的局部性  看下下面两个函数。都是计算数组a的和。唯一的区别在于行列的访问先后顺序不同。那么这两个程序运行起来会有什么差别呢?我们测试下。/** *@Description:行优先方式求二维数组a的和

  • 视频综合管理平台EasyNVS添加https证书配置步骤介绍

    之前我们介绍过EasyNVR硬件设备如何开启使用https,大家也可以了解一下。关于EasyNVR的管理平台EasyNVS,也是支持开启https的。本文就介绍一下EasyNVS视频管理平台添加https证书配置的步骤。1、首先需要先添加两个上传证书的接口:/** *@api{post}/api/v1/uploadfullchain上传fullchain.pem证书 *@apiGroupchannel *@apiUsesimpleSuccess */ func(h*APIHandler)Uploadfullchain(c*gin.Context){ support:=".pem,.key,.crt,.cer" file,err:=c.FormFile("file") iferr!=nil{ err=fmt.Errorf("获取上传文件错误,%v",err) c.AbortWithStatusJSON(400,err.Error()) return } ext:=filepath.Ext(file.Filename) reg:=

  • 微信小程序文字循环滚动

    <viewclass="marquee"> <viewclass="main"style="transform:translateX({{move}}px);"> 种一颗树最好的时间是十年前,其次是现在 </view> </view>复制.marquee{ position:relative; width:100%; height:50rpx; line-height:50rpx; white-space:nowrap; overflow:hidden; font-size:24rpx; color:#fff; background:lightcoral; } .main{ position:absolute; }复制Page({ data:{ marWidth:0, mainWidth:0, move:0, timer:"", }, onLoad:function(){ this.initMarquee() }, initMarquee(){

  • RN布局

    RN布局背景今年以来,公司新来的总监力推ReactNative,目标是做大前端,H5选用React,客户端用ReactNative,所以我要再“复习”一下网页布局。顺便把内容记录到自己的博客中,用宝儿姐的话来说:“机智的一bi”。<!--more-->内容Flex布局:Flex是FlexibleBox的缩写。设为Flex布局之后,子元素的float、clear、和verti-align属性将失效。容器属性:经常设置在容器上的属性有:复制复制flexDirection//主轴的排列方向复制flexWrap//沿主轴排不下的时候,如何换行复制justifyContent//项目在主轴上的排列方式复制alignItems//项目在交叉轴上的排列方式复制alignContent//多根轴线的对齐方式。如果只有一根轴线,该属性不起作用复制alignSelf//允许单个项目有与其他项目不一样的对齐方式,可覆盖alignItems属性复制复制每个属性的可设置的值如下:flexDirection:'column'|'column-reverse'|&

  • KVM For Winxp SP3

    KVM For Winxp SP31@@@@install all kvm packages and development package@@@myvmlinuz kernelversionis 2.6.32-220.x86_64[root@station78 ~]# yum list "*kvm*"Installed Packagesqemu-kvm.x86_64                    2:0.12.1.2-2.209.el6               @source6.2qemu-kvm-tools.x86_64              2:0.12.1.2-2.209.el6               @source6.2[root@station78 ~]# yum grouplist | grep Virtual   Virtualization   Virtualization Client   Virtualization Platform   Virtualization Tools[root@station78 ~]# yu

  • Win10下搭建Python3.7.1 selenium3 Chrome开发环境

    环境版本说明Python3.7.1Selenium3Chrome版本78.0.3904.108(正式版本)(64位)使用pip3安装seleniumpip3installselenium复制当前安装的最新版本:selenium-3.141.0下载webdriver驱动selenium如果想要执行chrome浏览器的话,是需要安装驱动chromedriver的,而下载chromedriver可以从两个地方去下载,点击访问如下:点击访问官网点位访问国内淘宝镜像地址那么其实一般都是访问国内的镜像地址,如下:可以看到提供下载的版本挺多的,按照chrome版本号GoogleChrome78.0.3904.108搜索一下,如下:点击最新的版本号进去,可以看到下载的系统版本,如下:安装webdriver驱动将下载下来的驱动放在项目的目录下,其实放在哪里都可以,只要指定路径执行即可。将驱动拷贝到python371的Scripts目录下,如下:编写测试执行的代码fromseleniumimportwebdriver importos importtime defmain(): #如果没有将chrom

  • 用户日活月活怎么统计 - Redis HyperLogLog 详解

    HyperLogLog是一种概率数据结构,用来估算数据的基数。数据集可以是网站访客的IP地址,E-mail邮箱或者用户ID。 基数就是指一个集合中不同值的数目,比如a,b,c,d的基数就是4,a,b,c,d,a的基数还是4。虽然a出现两次,只会被计算一次。使用Redis统计集合的基数一般有三种方法,分别是使用Redis的HashMap,BitMap和HyperLogLog。前两个数据结构在集合的数量级增长时,所消耗的内存会大大增加,但是HyperLogLog则不会。Redis的HyperLogLog通过牺牲准确率来减少内存空间的消耗,只需要12K内存,在标准误差0.81%的前提下,能够统计2^64个数据。所以HyperLogLog是否适合在比如统计日活月活此类的对精度要不不高的场景。这是一个很惊人的结果,以如此小的内存来记录如此大数量级的数据基数。下面我们就带大家来深入了解一下HyperLogLog的使用,基础原理,源码实现和具体的试验数据分析。HyperLogLog在Redis中的使用Redis提供了PFADD、PFCOUNT和PFMERGE三个命令来供用户使用HyperLogLog

  • 工具推荐|2019年UI设计师必备工具清单

    版权声明:本文为博主原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/jongde1/article/details/102739038UI设计师一直是IT行业最热门职位之一,因其薪资待遇较高,学习门槛较低而广受欢迎。在百度指数搜索“UI设计”来看,从2012年开始,UI设计的搜索呈明显上升趋势,尤其是在2016年左右出现“井喷式”增长。另外,从知名网站“职友集”中我们可以看到,UI设计师在像“北上广”这样的一线城市中,月薪轻松过万。虽然现在UI设计师没以前那么火,但是每年仍然有大量新手设计师涌入这个行业。工欲善其事必先利其器,出来上战场,没几件像样的兵器肯定是不行的。在这里,小编给大家收集并整理了UI设计师在工作流程中常用的也是必备的一些工具,希望能给新手设计师一些参考。一、项目前期准备:流程图工具-Visio在正式进行UI界面设计之前,UI设计师需要对产品整体的流程进行思考。此阶段可以使用流程图软件Visio或XMind对需求的流程进行认真梳理,相信这会给你后期的沟通减少很多不必要的麻烦。二、原型设计工

  • 分布式ID生成方案总结

    ID是数据的唯一标识,传统的做法是利用UUID和数据库的自增ID,在互联网企业中,大部分公司使用的都是Mysql,并且因为需要事务支持,所以通常会使用Innodb存储引擎,UUID太长以及无序,所以并不适合在Innodb中来作为主键,自增ID比较合适,但是随着公司的业务发展,数据量将越来越大,需要对数据进行分表,而分表后,每个表中的数据都会按自己的节奏进行自增,很有可能出现ID冲突。这时就需要一个单独的机制来负责生成唯一ID,生成出来的ID也可以叫做分布式ID,或全局ID。下面来分析各个生成分布式ID的机制。 这篇文章并不会分析的特别详细,主要是做一些总结,以后再出一些详细某个方案的文章。数据库自增ID第一种方案仍然还是基于数据库的自增ID,需要单独使用一个数据库实例,在这个实例中新建一个单独的表:表结构如下:CREATEDATABASE`SEQID`; CREATETABLESEQID.SEQUENCE_ID( idbigint(20)unsignedNOTNULLauto_increment, stubchar(10)NOTNULLdefault'', PRI

  • VSCode配置python调试环境

    1.下载python解释器 2.在VSCode市场中安装Python插件tasks.json{ //Seehttps://go.microsoft.com/fwlink/?LinkId=733558 //forthedocumentationaboutthetasks.jsonformat "version":"2.0.0", "tasks":[ { "taskName":"echo", "type":"shell", "command":"C:\\Python34\\python",//Python可执行文件路径 "args":["${file}"] } ] }复制4.在用户设置里加两条settings.json"python.pythonPath":"C:\\Python34\\python",//路径 "pytho

  • virtual DOM和diff算法(一)

    哈喽,大家好,今天是周一。周末回老家了,每次回老家后的第一个工作日都感觉很陌生,各位宝宝(づ。◕‿‿◕。)づ,有多久没回老家了?不管在哪里,记得好好照顾自己,好好爱自己!speakischeapvirtualDOM因react的流行而被人们重视,在没有virtualDOM的时候,我们都是操作dom节点来进行页面的渲染和修改的,相比于频繁操作dom,virtualDOM很好的将dom进行了一层映射,将原本需要在真实dom进行的创建节点、删除节点、添加节点等一系列复杂的dom操作完全放到virtualDOM中进行。所以说virtualDOM实际是存储了dom的重要信息的js。vitualDOMvirtualDOM因react而流行,所以下面以react为例子,我们来看看virtualDOM。在一篇外文中看到一个很好的解释,翻译如下:WhenaReactUIisrendered,itisfirstrenderedintoavirtualDOM,whichisnotanactualDOMobjectgraph,butalight-weight,pureJavaScriptdatastructu

  • 「css基础」如何理解Display的属性:None,Block,Inline,Inline-Block

    开篇本篇文章,笔者将介绍display的基本属性,主要涉及以下内容:display:nonevsvisibility:hiddendisplay:blockdisplay:inlinedisplay:inline-block(文末送最新CSS3英文电子书)本篇文章阅读时间预计2分钟。01display:nonevsvisibility:hidden如下段代码所示,我们有三个红、蓝、绿的方块:css部分#box-1{ width:100px; height:100px; background:red; } #box-2{ width:100px; height:100px; background:blue; } #box-3{ width:100px; height:100px; background:green; } div{ display:inline-block; } body{ background:#efefef; }复制html部分<divid="box-1"></div> <divid="box-2"&

  • 用机器学习更快了解用户(翻译)

    “英文博文的部分翻译。英文原文链接:https://erikbern.com/2017/12/12/learning-from-users-faster-using-machine-learning.html”几周前我产生了一个非常有意思的想法。通过假设一个例子来解释就是:你正在经营一个电子商务网站,你想优化购买的数量。并且假设,我们希望通过A/B测试或者基本的数据切片分割方法,来尽可能多的从用户本身得到相应经验,预测用户的转化情况,但有一个一直存在的问题就是有太多的不确定性因素。 我们怎样才能加速从用户身上学习经验的过程?特别是,是否有办法以某种方式结合其他数据进行预测?我觉得这是一个非常普遍的问题,所以我写出这个问题并附上一些不错的想法。简单模型做了许多理论性学习,我希望可以在实践中尝试一下。我的想法是:通过大量外部数据,建立一个模型,判断是否某用户会购买一个产品。我们使用我们的机器学习模型,而不是使用实际的目标测度(人们购买此商品的比例)。因此,我们向模型中输入多种变量,然后来预测目标(用户是否购买此产品)。我尝试了几种不同模型,其中最有效的是你能想到的一个非常基础的模型:线性回

  • facebook 解封

    还可以给管理员发邮件,info@facebook.com,appeals@facebook.com,disabled@facebook.com。同时附上账号和自己的信息,表示账号是自己正常使用的。 

  • C#超简单自定义事件

    我知道你为啥点进来,所以不要犹豫了,立刻马上果断创建控制台项目,直接复制下面精干短小而又强大的代码运行:  usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; usingSystem.Threading.Tasks; namespaceTestEvent { classMyEvent//声明事件 { publiceventEventHandler<EventArgs>OnInput;//定义一个委托类型的事件 publicvoidWaitInput() { while(true) { if(Console.ReadLine()=="x") OnInput(this,newEventArgs());//触发事件 } } } classProgram { staticvoidMain(string[]args) { MyEventEvt=newMyEvent();//实例化 Evt.OnInput+=On_Input;//绑定事件到方法 Evt.WaitI

  • redux sample with slim redux source code

    code sample没有package.json文件,也就没有任何外部依赖,直接使用slim redux source code。 slimresux只有90多行。 nodejs对es6的import export还不支持,这里使用了stackoverflow上一位网友的办法,js文件后缀改成mjs, 用 node --experimental-modulesindex.mjs code sample下载   引用: https://gist.github.com/gaearon/ffd88b0e4f00b22c3159#comments https://stackoverflow.com/questions/45854169/how-can-i-use-an-es6-import-in-node/50641589#50641589

  • Bootstap

    Bootstrap框架   Bootstrap框架   Bootstrap介绍 Bootstrap是Twitter开源的基于HTML、CSS、JavaScript的前端框架。 它是为实现快速开发Web应用程序而设计的一套前端工具包。 它支持响应式布局,并且在V3版本之后坚持移动设备优先。 为什么要使用Bootstrap? 在Bootstrap出现之前: 命名:重复、复杂、无意义(想个名字费劲) 样式:重复、冗余、不规范、不和谐 页面:错乱、不规范、不和谐 在使用Bootstrap之后:各种命名都统一并且规范化。页面风格统一,画面和谐。 Bootstrap下载 官方地址:https://getbootstrap.com 中文地址:http://www.bootcss.com/ 我们使用V3版本的Bootstrap,我们下载的是用于生产环境的Bootstrap。 Bootstrap环境搭建 目录结构: bootstrap-3.3.7-dist/ ├──css//CSS文件 │├──bootstrap-theme.css//Bootstrap主题样式文件 │├──

  • 统计学(第六版)1到4单元——学习总结

    先做《统计学学习指导书》 总结经验:统计学第六版可以分为三部分。第一部分是1到3章介绍了统计学两个分类之类描述统计数据,而5678章讲述了推断统计,其余张节介绍了数据统计的综合应用的一些方法,如单双因素法,等。。。到时候详述   关于1-4节主要讲述的内容:首先介绍了什么是统计学,统计学主要分为两部分描述统计和推断统计,介绍了数据的类型分类数据、顺序数据、数值数据、界面数据,时序数据,观测数据,实验数据等;此外介绍了一下相关量,变量,总体,样本,参数,统计量等与统计学息息相关的名词 然后讲述了统计学总要的数据如何搜集,首先要抽样确定样本单元,具体的抽样有概率抽样和非概率抽样两类,通过简单抽样,分层抽样等一系列抽样方式后,进行数据搜集。数据搜集也有许多不同的方式,注意数据搜集过程的误差合理控制非抽样误差,和抽样误差提高搜集数据的精确度 数据搜集到了需要进行数据的处理加工,先进行预处理找出不符和要求的数据,然后对数据进行筛选排序,做个透视图看看数据的整体状况。然后对数据进行品质分析作图,实现数据的可视化处理。对不同类型的数据使用不同的数据视图进行表示,分类数据,顺序数据,数值数据

相关推荐

推荐阅读