白话大数据与机器学习

阅读目标

对数据挖掘和机器学习做基本了解,忽略各种算法的原理及实现

大数据产业生产流程从数据的生命周期的传导和演变上可以分为这样几个部分:数据收集、数据存储、数据建模、数据分析、数据变现。

大数据人才大致可以分为以下3个方向(准备往大数据方向发展的同学,可以参考)

一、偏重基建与架构的“大数据架构”方向。

二、偏重建模与分析的“大数据分析”方向。

三、偏重应用实现的“大数据开发”方向。

一、大数据架构方向的人才更多注重的是Hadoop、Spark、Storm等大数据框架的实现原理、部署、调优和稳定性问题,以及它们与Flume、Kafka等数据流工具以及可视化工具的结合技巧,再有就是一些工具的商业应用问题,如Hive、Cassandra、HBase、PrestoDB等。

以下是大数据架构方向研究的主要方面。

(1)架构理论:关键词有高并发、高可用、并行计算、MapReduce、Spark等。

(2)数据流应用:关键词有Flume、Fluentd、Kafka、ZMQ等。

(3)存储应用:关键词有HDFS、Ceph等。

(4)软件应用:关键词有Hive、HBase、Cassandra、PrestoDB等。

(5)可视化应用,关键词有HightCharts、ECharts、D3、HTML5、CSS3等。

二、大数据分析方向的人才更多注重的是数据指标的建立,数据的统计,数据之间的联系,数据的深度挖掘和机器学习,并利用探索性数据分析的方式得到更多的规律、知识,或者对未来事物预测和预判的手段

以下是大数据分析方向研究的主要方面。(1)数据库应用:关键词有RDBMS、NoSQL、MySQL、Hive、Cassandra等。

(2)数据加工:关键词有ETL、Python等。

(3)数据统计:关键词有统计、概率等。

(4)数据分析:关键词有数据建模、数据挖掘、机器学习、回归分析、聚类、分类、协同过滤等。此外还有一个方面是业务知识。

三、大数据开发方向的人才更多注重的是服务器端开发,数据库开发,呈现与可视化,人机交互等衔接数据载体和数据加工各个单元以及用户的功能落地与实现。

以下是大数据开发研究的主要方面。

(1)数据库开发:关键词有RDBMS、NoSQL、MySQL、Hive等。(2)数据流工具开发:关键词有Flume、Heka、Fluentd、Kafka、ZMQ等。

(3)数据前端开发:关键词有HightCharts、ECharts、JavaScript、D3、HTML5、CSS3等。

(4)数据获取开发:关键词有爬虫、分词、自然语言学习、文本分类等。

市面上的数据分析工具,主要分两类:

1、商业软件:收费,数据挖掘和可视化做得好,已经形成系统的解决方案。

2、开源软件:免费,但只专注某一环节的技术实现,比较孤立,可视化做得差,只是工具而已。

大数据技术还不能被普遍应用的原因:数据收集、数据存储、数据建模、数据分析、数据变现这几个主要环节,对一般公司来说成本还太高。

复习一些概率论概念

1、排列组合

2、加和值、平均值、加权均值

3、标准差:又叫均方差,反映一个数据集的离散程度。

4、众数:一组数据中出现次数最多的数值。

5、中位数/中值:顾名思义,就是位于中间位置的数字。

6、欧氏距离:是欧几里得空间中两点间“普通”(即直线)距离。

7、曼哈顿距离:把两个点坐标的x坐标相减取绝对值,y坐标相减取绝对值,再加和。

8、正态分布/高斯分布:钟型分布,用一句话解释高斯分布所表现的分布特点就是“一般般的很多,极端的很少”。

9、泊松分布:是一种离散分布,适合于描述单位时间(或空间)内随机事件发生的次数。如某一服务设施在一定时间内到达的人数,电话交换机接到呼叫的次数,汽车站台的候客人数。

10、伯努利分布:是一种离散分布,有两种可能的结果,1表示成功,出现的概率为p(其中0

数据建模:建模工作实际上是抽象在生产生活中的各种数字,并尝试建立数字和数字之间的逻辑关系假说,并通过分析手段来进行逻辑关系的调整,最终让建立的这种逻辑关系和客观事实一致。先建立指标,再用这些指标的运算组合来定义新的指标,这个过程就是一个建模的过程。

一般来说,在一个比较成熟的行业里,数据指标相对是比较固定的,只要对业务有足够的了解是比较容易建立起运营数据模型的。

信息熵:如果要用平民语言说得尽可能直白的话,我觉得可以认为是信息的杂乱程度的量化描述。

信息越确定,越单一,信息熵越小;信息越不确定,越混乱,信息熵越大。

泛读算法部分

回归:简单说就是“由果索因”的过程,是一种归纳的思想——当看到大量的事实所呈现的样态,推断出原因是如何的;当看到大量的数字对(pair)是某种样态,推断出它们之间蕴含的关系是如何的。

线性回归是利用数理统计学中的回归分析来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。

聚类(Clustering):是一种学习方式(操作方式),即把物理或抽象对象的集合分组为由彼此类似的对象组成的多个类的分析过程。

K-Means算法是很常用的一个聚类算法。

分类:分类算法是机器学习中的一个重点,也是人们常说的“有监督的学习”。这是一种利用一系列已知类别的样本来对模型进行训练调整分类器的参数,使其达到所要求性能的过程,也称为监督训练或有教师学习。

所有的分类算法不管怎么变,都是在解决:“某样本是某对象,某样本不是某对象”的概率问题。

推荐系统

目前协同过滤公认的应该是两种思路,第一种是利用早期大家研究比较多的邻居方法,这是一种非常经典的推荐算法思路;第二种是目前研究得比较多的一类方法--基于模型的推荐算法。

邻居方法中也有两种视角:

第一种,基于用户,即基于用户的协同过滤。也就是说,系统通过分析一个用户和哪些用户的特征比较像,然后看看这些用户喜欢买哪类的商品,再从这些商品里挑出一些推荐给该用户。

第二种,基于商品,即基于商品的协同过滤。也就是说,系统通过分析用户的购买行为来判断用户喜欢的商品类型,然后从那些用户喜欢的商品类型里挑出一些推荐给用户。

文本挖掘一般来说有7个主要的领域,其中就有NLP自然语言处理。

  • 发表于:
  • 原文链接:https://kuaibao.qq.com/s/20180619G1EOFG00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

同媒体快讯

扫码关注云+社区

领取腾讯云代金券