0

高等数学—元素和极限

Posted by Alan on March 18, 2018 in 大数据, 学习笔记 |

实数的定义 高数->连续 线性代数->离散 概率统计 R 实数 Z 整数 Q 有理数 \( q \over p\)\( 且 q,p \in Z \) 分划: 全集为K \( A \bigcup B = K \) \( A \bigcap B = \emptyset \) 戴德金分划: 将全集Q分为A,B两个集合

Tags:

0

数据驱动营销-混沌研习性吴明辉6月10日分享PPT

Posted by Alan on June 10, 2017 in 大数据, 学习笔记 |

Tags: ,

0

数据挖掘的方法论之CRISP-DM

Posted by Alan on August 19, 2016 in 大数据 |

在1996年,当时数据挖掘市场是年轻而不成熟的,但是这个市场显示了爆炸式的增长。三个在这方面经验丰富的公司DaimlerChrysler、SPSS、NCR发起建立一个社团,目的建立数据挖掘方法和过程的标准。在获得了EC(European Commission)的资助后,他们开始实现他们的目标。为了征集业界广泛的意见共享知识,他们创建了CRISP-DM Special Interest Group(简称为SIG)。 大概在1999年,SIG(CRISP-DM Special Interest Group)组织开发并提炼出CRISP-DM(Cross-Industry Standard Process for Data Mining),同时在Mercedes-Benz和OHRA(保险领域)企业进行了大规模数据挖掘项目的实际试用。SIG还将CRISP-DM和商业数据挖掘工具集成起来。SIG组织目前在伦敦、纽约、布鲁塞尔已经发展到200多个成员。 当前CRISP-DM提供了一个数据挖掘生命周期的全面评述。他包括项目的相应周期,他们的各自任务和这些任务的关系。在这个描述层,识别出所有关系是不可能的。所有数据挖掘任务之间关系的存在是依赖用户的目的、背景和兴趣,最重要的还有数据。SIG 组织已经发布了CRISP-DM Version 1.0 Process Guide and User Manual的电子版,这个可以免费使用。 Figure: Phases of the CRISP-DM Process Model 一个数据挖掘项目的生命周期包含六个阶段。这六个阶段的顺序是不固定的,我们经常需要前后调整这些阶段。这依赖每个阶段或是阶段中特定任务的产出物是否是下一个阶段必须的输入。上图中箭头指出了最重要的和依赖度高的阶段关系。 上图的外圈象征数据挖掘自身的循环本质――在一个解决方案发布之后一个数据挖掘的过程才可以继续。在这个过程中得到的知识可以触发新的,经常是更聚焦的商业问题。后续的过程可以从前一个过程得到益处。 业务理解 (Business Understanding) 最初的阶段集中在理解项目目标和从业务的角度理解需求,同时将这个知识转化为数据挖掘问题的定义和完成目标的初步计划。 数据理解 (Data Understanding) 数据理解阶段从初始的数据收集开始,通过一些活动的处理,目的是熟悉数据,识别数据的质量问题,首次发现数据的内部属性,或是探测引起兴趣的子集去形成隐含信息的假设。 数据准备 (Data Preparation) 数据准备阶段包括从未处理数据中构造最终数据集的所有活动。这些数据将是模型工具的输入值。这个阶段的任务有个能执行多次,没有任何规定的顺序。任务包括表、记录和属性的选择,以及为模型工具转换和清洗数据。 建模(Modeling) 在这个阶段,可以选择和应用不同的模型技术,模型参数被调整到最佳的数值。一般,有些技术可以解决一类相同的数据挖掘问题。有些技术在数据形成上有特殊要求,因此需要经常跳回到数据准备阶段。 评估(Evaluation) 到项目的这个阶段,你已经从数据分析的角度建立了一个高质量显示的模型。在开始最后部署模型之前,重要的事情是彻底地评估模型,检查构造模型的步骤,确保模型可以完成业务目标。这个阶段的关键目的是确定是否有重要业务问题没有被充分的考虑。在这个阶段结束后,一个数据挖掘结果使用的决定必须达成。 部署 (Deployment) 通常,模型的创建不是项目的结束。模型的作用是从数据中找到知识,获得的知识需要便于用户使用的方式重新组织和展现。根据需求,这个阶段可以产生简单的报告,或是实现一个比较复杂的、可重复的数据挖掘过程。在很多案例中,这个阶段是由客户而不是数据分析人员承担部署的工作。 原文链接:http://kb.cnblogs.com/page/76804/

Tags: ,

0

使用Python进行数据分析I 环境准备

Posted by Alan on July 31, 2016 in Coding, 大数据 |

下载Python包并安装:https://www.continuum.io/downloads Alan采用Mac OSX进行操作,这里下载最新版Python 3.5 在Terminal中输入python即可进入python命令行界面通过输出Hello, world!来进行验证,后面我们将需要NumPy, Pandas, Matplotlib, iPython和Seaborn安装包,通过import来查看,no news is good news, 只要不报错就说明已正确安装 这里可以看到Seaborn并未正确安装,通过exit()或快捷键Ctrl+D可退出Python命令行,然后执行pip install seaborn来进行安装   常见问题 1.socket.timeout: The read operation timed out报错 出现这一问题猜测是由于网络连接问题,默认timeout的时间是15秒,可以使用参数–timeout中加大这一设置,如 为方便Python程序的编写和调试,我们将使用iPython Notebook来进行操作,在Terminal中输入ipython notebook就会自动在浏览器中打开http://localhost:8888/tree,首先我们新建一个文件: 默认为code模式,可以在里面直接输入命令并按下Shift+Return来执行命令,以下为演示模式: 如上图我们还可以在下拉框中选择Markdown模式来输入注释等内容,我们这里输入以下内容 按下Shift+Return输出结果如下图所示  

Tags:

0

【大数据基础】使用Maven编写第一个MapReduce程序

Posted by Alan on February 21, 2016 in 大数据 |

前面讲过了如何使用和配置Maven,那么接下来就使用Maven编写一个MapReduce程序,这里参照某视频教程中的程序进行编写。 首先在前面创建的datacount项目的src/main/java下创建一个类,基本配置如下: 以下例子来自于传智播客某视频教程: 使用MapReduce程序分析一段手机访问日志,获取对应的上行流量、下行流量和总流量,以下是日志片段: 关于日志的字段说明如下: 因此我们只需获取列序号为1,8和9的三列数据(第一列序号为0),由于包含多项数据,我们封装了一个DataBean对象来做为Mapper的输出和以及Reducer的输入、输出。 编写文件如下: DataBean.java DataCount.java 完成代码编写后导出jar包 在Eclipse项目上右击选择Export,然后在弹出窗口中选择JAR file: 点击Next在接下来的窗口中勾选Export all output folders for checked projects并指定导出jar包的名称和路径。点击Finish完成即可: 执行程序: 上传HTTP_20130313143750.dat文件,并启动hdfs和yarn服务。接下来上传日志文件到hdfs上并执行程序 通过hadoop fs -cat /dataout/part-r-00000可查看执行结果如下: 注:其中的WARN信息不影响程序运行,为安装文件的编译问题,如需解决,请参考本地安装Hadoop完整笔记部分。

Tags: , , ,

0

【大数据基础】如何使用和配置Maven

Posted by Alan on February 21, 2016 in 大数据 |

Alan在安装CentOS时使用的是minimal文件,所以需要先安装图形化界面 如果安装中出现如下报错 请使用yum grouplist(或yum grouplist | grep ‘KDE\|GNOME’进行更精准查询)查看所在机器对应的KDE或GNOME组名是什么,修改组名再进行安装。 安装完成后在命令行输入init 5临时打开图形界面,然后同意协议添加一个用户账号即可进入图形登录页面。若要永久启动时即进入图形界面,需在/etc/inittab文件中进行配置。 接下来Linux上下载或上传Eclipase安装文件并解压完成完装: 将/usr/local/eclipse/eclipse加到桌面的快捷方式方便之后使用 然后双击桌面图标启动eclipse,新建一个maven项目,在新建窗口勾选Create a simple project(skip archetype selection),进入下一个窗口设置Group ID和Artifact ID然后点击完成即可: 创建好项目之后编辑项目的pom.xml文件在<project>标签对中加入hadoop和mapreduce的依赖,保存后系统会自动下载对应的依赖包文件 如下图所示,原本空的Maven Dependencies下会出现配置后下载导入的jar包

Tags: ,

0

【大数据基础】第一个MapReduce程序

Posted by Alan on February 3, 2016 in 大数据 |

Hadoop中最重要的两个部分就要属HDFS和MapReduce了,本文我们一起来探讨一下如何来实现MapReduce的入门级程序Word Count。 测试数据 Hello Tom Hello Jerry Hello Kitty Hello World Hello Tom 如何编写MapReduce Word Count代码? 本例中我们手动写入了输入输出文件路径(setInputPaths, setOutputPath) 编写main方法 继承Mapper类 继承Reducer类 如何导出jar包? 1.在project名称上右击在弹出窗口中点击Export,然后选择Java下的JAR file下一步 2.在JAR File Specification窗口中选择一个jar包导出路径和文件名,点击Next 3.紧接中进入JAR Packaging Options窗口,暂不进行任何操作点击Next进入下一步,在下面的JAR Manifest Specification页面Main class部分选择main方法所在类,然后点击Finish完成即可 将jar包上传到Linux服务器上,然后将测试数据上传到hdfs上(hadoop fs -put xx /words.txt)。由于我们在程序中写入了输入文件和输出路径,并且在导出jar包时指定了main方法所在类,仅需输入hadoop jar wordcount.jar等待程序执行即可。 执行过程中会显示如下进度 输出结果

Tags: ,

0

【大数据基础】常用命令

Posted by Alan on January 12, 2016 in 大数据 |

操作hdfs的相关命令 比如查看hdfs下的文件使用 hadoop fs -ls hdfs://hadoop01:9000/ 或 hadoop fs -ls / hadoop fs的其它选项: [-appendToFile <localsrc> … <dst>] [-cat [-ignoreCrc] <src> …] [-checksum <src> …] [-chgrp [-R] GROUP PATH…] [-chmod [-R] <MODE[,MODE]… | OCTALMODE> PATH…] [-chown [-R] [OWNER][:[GROUP]] PATH…] [-copyFromLocal [-f] [-p] [-l] <localsrc> … <dst>] [-copyToLocal [-p] [-ignoreCrc] [-crc] <src> … <localdst>] [-count [-q] [-h] […]

0

【大数据基础】Hadoop集群环境伪分布式配置

Posted by Alan on January 4, 2016 in 大数据 |

本文使用环境为在VirtualBox上安装的CentOS虚拟机。这个安装部分比较简单,不再赘述,对这块不太熟悉的话可以参考【大数据基础】VirtualBox安装CentOS实操,考虑到生产环境多采用64位,本文中也使用64位的系统进行安装。 一、准备工作 在进入前需先做好网络配置,这部分在【大数据基础】VirtualBox安装CentOS实操中也做了介绍。接着需要做的是关闭防火墙,直接输入service iptables stop即可关闭防火墙,但这在重启后就会失效,要设置开机关闭防火墙请在命令行中输入chkconfig iptables off。 chkconfig iptables –list可以查看防火墙开机关闭状态,service iptables status可查看当前防火墙状态。 输入useradd hadoop添加用户hadoop,passwd hadoop两次输入密码来设置hadoop用户密码 二、安装JDK 安装方法一 可以去Oracle官网下载JDK然后上传到虚拟机上,对于可以上网的机器也可以直接通过wget命令下载到服务器上(未安装wget在命令行运行yum install wget -y来进行安装)。 然后为方便管理在/usr目录下创建一个java目录(),将所下载的JDK包直接解到到/usr/java目录 安装方法二 除了通过tar包安装外还可以下载rpm包来完成安装,方法相似 配置环境变量 要方便地使用Java就必须要配置环境变量,我们在/etc/profile文件的最后添加如下配置 然后输入source /etc/profile在应用刚刚设置的配置,此时在命令行中输入echo $PATH就会发现/usr/java/jdk1.8.0_66/bin已经被添加到了环境变量中,可以在命令行中输入java -version查看版本号来进行验证。 三、安装Hadoop 我们将使用前面创建的hadoop用户来安装Hadoop,执行su – hadoop切换到hadoop用户,然后上传Hadoop安装包或在虚拟机上直接下载Hadoop安装包,然后将安装包解压到hadoop用户的根目录下(/home/hadoop) 免登录配置 为方便Hadoop在本地的使用乃至今后管理Hadoop集群,我们会生成一对密钥来实现免登录。在命令行键入ssh-keygen -t rsa并连续4次回车生成密钥(其中的rsa代表加密类型),其中id_rsa文件为私钥,id_rsa.pub文件为公钥(两个文件都在用户根目录的.ssh目录下)。 实现免登录的原理实际上就是把公钥内容添加到所需免密码登录的主机的authorized_keys文件中,可以使用cat命令也可以使用专用的”ssh-copy-id -i 主机名或ip”来进行配置。当前我们采用伪分布式配置Hadoop,所以配置在本机上 此时发现已由之前ssh localhost需要输入密码变为免密码登录了(第一次登录需要输入设置为安全主机) Hadoop配置文件 光解压Hadoop压缩包还未完成Hadoop的安装,需要修改的主要有以下5个配置文件,这几个文件都在hadoop安装包的etc/hadoop/目录下 1.hadoop-env.sh 在本文件中主要设置JAVA_HOME,将文件中export JAVA_HOME=${JAVA_HOME}部分的${JAVA_HOME}修改为Java的安装目录(/usr/java/jdk1.8.0_66) 2.core-site.xml 在这个文件中主要配置NameNode的通信地址(fs.defaultFS)和hadoop运行时产生文件的存储路径(hadoop.tmp.dir) 3.hdfs-site.xml 在本文件中主要设置hdfs的副本数量,本例中我们搭建的是伪分布式,因而设置为1 4.mapred-site.xml 默认是没有这个文件的,但有一个模板文件mapred-site.xml.template,可执行mv mapred-site.xml.template […]

Tags: , ,

0

【大数据基础】VirtualBox安装CentOS实操

Posted by Alan on January 4, 2016 in Linux, 大数据 |

首先下载VirtualBox并安装,可在官网根据所使用的系统直接下载:https://www.virtualbox.org/wiki/Downloads。VirtualBox和一般的软件安装并没有什么差别,这里略过不提。 注:本文中使用Mac OS X系统进行操作,但文中的方法也同样适用Windows系统 安装完后打开VirtualBox,点击New添加虚拟机 在弹出的窗口中填写名称方便查找并选择需安装的操作系统类型及版本,这里名称填入hadoop01,操作系统选择64位的Linux,完成点击Continue 下一个页面为内存大小配置,此处用于配置所创建虚拟机所占用的内存大小,推荐大小为不小于512MB。可通过拖动滑块或直接输入来调整内存大小值,配置完成后点击Continue继续 下一个页面为硬盘配置页面,确定是否创建虚拟硬盘或使用已有的虚拟硬盘,我们选择Create a virtual hard disk now,点击Create进入下一步 下一个页面选择创建的虚拟硬盘类型,默认为VDI,据说VMDK可跨平台在VMware中导入,这里我们选择VMDK格式,点击Continue进入下一步 下一个页面用于如何为虚拟磁盘分配电脑的硬盘的资源,一般建议使用动态分配,这样不会占用过多的硬盘资源。点击Continue进入下一步 此处选择虚拟磁盘保存位置以及可使用的硬盘资源大小。点击Create进入下一步完成VirtualBox上虚拟磁盘的配置 此时在VirtualBox主界面左侧就会出现刚刚创建的hadoop01,选中该虚拟机,点击Start 进入的下一个页面需选择所下载CentOS的iso文件(可根据实际情况在以下地址中选择镜像下载地址:http://isoredirect.centos.org/centos/7/isos/x86_64/),点击Start开启操作系统的安装流程 接下来进入的是CentOS安装的欢迎界面,选择Install or upgrade an existing system并按下Enter/Return键 下一个页面为设备检测,可使用Tab键切换到Skip并按下Enter/Return键跳过该步骤 紧接着进入欢迎页面和安装向导中使用的语言,选择后点击Next或直接按下Enter/Return键进入下一步(注:如果点击后发现鼠标无法退出虚拟机界面,按下左侧的Command键即可) 接下来的页面选择存储设备,一般选择默认的Basic Storage Devices,点击Next或直接按下Enter/Return键进入下一步 接下来警告是否保存原虚拟磁盘的数据,由于我们是初次安装,可以选择Yes, discard any data,点击按钮或直接按下Enter/Return键进入下一步 接下来进入主机名和网络配置页面,主机名是指在局域网中显示的名称,这里我们使用hadoop01。在该页面点击Configure Network还可以进行网络配置,为便于对配置文件的了解我们将在安装完成后进行相关配置,点击Next按钮进入下一步 紧接着进入的是时区配置页面,可根据需求进行选择或保持默认,这里我们选择北京时间Asia/Shanghai,点击Next按钮进入下一步 接下来进入root用户的密码的设置页面,root用户在Linux中拥有最高权限,这个密码相当重要,务必记牢,点击Next按钮进入下一步 下一个页面选择安装类型,我们采用默认的Replace Existing Linux System(s),点击Next或直接按下Enter/Return键进入下一步 此时会弹出一个窗口确认是否写入(Write changes to disk),点击Next或直接按下Enter/Return键进入下一步 紧接着进入到安装进度页面 安装完成进入如下页面,点击Reboot进行重启 然后进入的是命令行页面,输入用户名(root)和密码完成登录 此时在主界面中点击Settings>Network,然后配置网卡适配器为Bridged Adapter,如无需上网,可选择Host-only Adapter,Alan使用的是Mac采用无线上网,这里选择en0: Wi-Fi(Airport) 在命令行界面输入vi /etc/sysconfig/network-scripts/ifcfg-eth0进行编辑,主要修改和配置的内容如下: vi […]

Tags: , , ,

Copyright © 2012-2018 记录点滴生活 | Alan Hou的个人博客 All rights reserved.