一、大数据应用概述
1、导学
大数据背景:半个世纪以来,随着计算机技术全面融入社会生活,信息爆炸已经积累到了一个开始引发变革的程度。它不仅使世界充斥着比以往更多的信息,而且其增长速度也在加快。信息爆炸的学科如天文学和基因学,创造出了“大数据”这个概念*。如今,这个概念几乎应用到了所有人类智力与发展的领域中。
大数据来源:互联网(社交、搜索、电商)
移动互联网(微博)
物联网(传感器,智慧地球)
车联网
GPS
医学影像
安全监控
金融(银行、股市、保险)
电信(通话、短信)都在疯狂产生着数据。
大数据的产生:数据的爆发式增长和社会化趋势是大数据应运而生的本质原因。
爆发式增长:实时数据 社会化趋势:UGC(用户生成内容)
非结构化数据 大量的垃圾和碎片化信息
机器数据 用户行为
新摩尔定律:每十八个月全球新增信 用户关系
息量是计算机史以来全
部信息量的总和
到底什么是大数据 :满足4V特征的
也就是数据的广度、深度、速度和准度四个方面,而面对的困难也是这四个方面:体量大;多样化;速度快;价值密度低都使传统数据库面临挑战。
1、对现有数据库管理技术的挑战
4传统的数据库部署不能处理数TB 级别的数据,也不能很好的支持高级别的数据分析。急速膨胀的数据体量即将超越传统数据库的管理能力。
4如何构建全球级的分布式数据库(Globally-Distributed Database) ,可以扩展到数百万的机器,数已百计的数据中心,上万亿的行数据。
2、经典数据库技术并没有考虑数据的多类别(variety)
4SQL(结构化数据查询语言),在设计的一开始是没有考虑非结构化数据的。
3、实时性的技术挑战:
4一般而言,像数据仓库系统、BI应用,对处理时间的要求并不高。因此这类应用往往运行1、2天获得结果依然可行的。但实时处理的要求,是区别大数据应用和传统数据仓库技术、BI技术的关键差别之一。
4人们每天创建的数据量正呈爆炸式增长,但就数据保存来说,我们的技术改进不大,而数据丢失的可能性却不断增加。
4如此庞大的数据量首先在存储上就会是一个非常严重的问题,硬件的更新速度将是大数据发展的基石。
解决大数据面临的困难的技术:Ø分析技术:
•数据预处理:自然语言处理技术
•统计和分析:A/B test; top N排行榜;地域占比;文本情感分析
•数据挖掘:关联规则分析;分类;聚类
•模型预测:预测模型;机器学习;建模仿真
Ø大数据技术:
•数据采集:ETL工具
•数据存取:关系数据库;NoSQL;SQL等
•基础架构支持:云存储;分布式文件系统等
•计算结果展现:云计算;标签云;关系图等
Ø存储
•结构化数据:
p海量数据的查询、统计、更新等操作效率低
pSQL,关系型数据库
•非结构化数据
p图片、视频、word、pdf、ppt等文件存储
p不利于检索、查询和存储
pNoSQL,非关系型数据库
•半结构化数据
p转换为结构化存储
p按照非结构化存储
Ø解决方案:
•存储:HDFS, HBASE, Hive, MongoDB等
•并行计算:MapReduce技术
•流计算:twitter的storm和yahoo!的S4
•内存计算:Spark等
大数据平台架构:
2、大数据技术的机遇和挑战
机遇:房屋空置率:电力局利用电表看房屋是否空置。
挑战:隐私安全问题:斯诺登安全事件。
大数据心得:数据要有心得;数据不是越大越好;深度挖掘,精准营销;大数据有容乃大;对大数据要宽容,容错性是大数据的重要特征。
3、搜索引擎的概述
大数据应用:4搜索引擎
4推荐引擎
4舆情系统
4社交网络
4……
搜索引擎定义:4从本质而言,搜索引擎就是基于web平台的网络查找工具。
4其概念可从不同的角度来理解。可以认为是以Web相关技术为基础,对网页等网络信息资源进行抓取与采集,建立索引数据库,并对搜索结果进 行排序,能依据用户需求查找相应信息的在线搜索系统。
搜索引擎的分类:大搜索——网页搜索(百度、谷歌)
垂直搜索——专业搜索、分类搜索
基于语义的搜索——理论研究中
关于垂直搜索:其实是一种分类,是一种对用户的要求不确定情况下,让用户多一项表达的选择。
垂直搜索与大搜索的最大区别是对网页信息进行了结构化信息抽取。
搜索引擎另一种分类
元搜索引擎(META Search Engine):
一般都没有自己网络机器人(
网络爬虫
)及数据库,它们的搜索结果是通过调用、控制和优化其它多个独立搜索引擎的搜索结果并以统一的格式在同一界面集中显示
。比如
“
metaFisher
元搜索引擎”
(
http://www.hsfz.net/fish/
),它就调用和整合了
Google
、
Yahoo
、
AlltheWeb
、百度和
OpenFind
等多家搜索引擎的数据。
集成搜索引擎(All-in-One Search Page):
集成搜索引擎是通过网络技术,在一个网页上链接很多个独立搜索引擎,查询时,点选或指定搜索引擎,一次输入,多个搜索引擎同时查询,搜索结果由各搜索引擎分别以不同页面显示,比如:http://www.baigoogledu.com/。 再比如: http://www.udiab.net/
搜索引擎的体系结构:
4
搜索引擎一般由
搜索器
、
索引器
、
检索器
和
用户接口
四个部分组成
采集器:网络爬虫
搜索引擎的基本步骤:数据的批量收集---爬虫
信息的提取---页面分类,内容提取,排重
内容的初步理解----分词
数据之间的关系----外链分析,Pagerank,HITS
数据的存储----正文库,快照库
结果的获得---建立索引库
结果的排序---相关度
效能的提高---cache(高速缓冲存储器)
爬虫:
要求一:全面——能够把网上的数据都爬下来---虽然这是不可能的。但它是终极目标之一。
要求二:快速——更新快的数据,更快的down下来。没有最快只有更快。
要求三:非重——尽量非重复下载。
限制一:我们的带宽是有限的。网是无限的。
限制二:无法确定更新状态。不知道谁更新了。更不知道他更新的规律。我们只能靠近。
限制三:动态页面,动态url,内容在变,url也在变
限制四:有礼貌的访问别人家
信息的抽取:
解析页面结构(html,wap)
页面分类
把页面去除垃圾,分成正文,导航,图片,下载,bbs等类别。
内容提取
非结构化数据到结构化数据的转换。结构化的数据才是好存储好处理的。
排重
网络内容的重复度很高,需要把内容相同的页面做一个归并。这就有了主次的问题。目标是重要网站或者原网站留下,转载网站被归并。
内容的初步理解:
分词
搜索引擎现在对页面的理解是基于分词的。用户的查询也是基于词的。英文好分,因为就是空格键,而中文以字为单位。(也许是个坑~~~~~~L)。所以中文分词是令人头疼的事
中文分词到底对搜索引擎有多大影响?对于搜索引擎来说,最重要的并不是找到所有结果,因为在上百亿的网页中找到所有结果没有太多的意义,没有人能看得完,最重要的是把最相关的结果排在最前面,这也称为相关度排序。中文分词的准确与否,常常直接影响到对搜索结果的相关度排序。
内容的深度理解
索引
客观索引项:客观项与文档的语意内容无关,如作者名、
URL、更新时间、编码、长度、链接流行度(Link Popularity)等等
内容索引项:内容索引项是用来反映文档内容的,如关键词及其权重、短语、单字等等。内容索引项可以分为单索引项和多索引项两种。
单索引项:对于英文来讲是英语单词,比较容易提取,因为单词之间有天然的分隔符(空格);对于中文等连续书写的语言,必须进行词语的切分。 在搜索引擎中,一般要给单索引项赋与一个权值,以表示该索引项对文档的区分度,同时用来计算查询结果的相关度。使用的方法一般有统计法、信息论法和概率法。
多索引项:又称短语索引项,提取方法有统计法、概率法和语言学法。
外链和pagerank
Anchor,锚文,我们有时也叫做外链词,他在排序中有相当重要的作用。我们认为:外链词其实是这篇文章的关键内容的一个提炼或者就是文章的关键词。当然,作弊页会通过外链词来作弊,吸引点击。
静态权重和动态权重。Pagerank是通过分析网络结构给出的静态的网页相对的重要程度。而动态的权重是与检索词相关的。两者的结合构成了我们熟知的相关性。Pagerank的重要性在排序中已经越来越低。原因:
41. 作弊
42. 数据质量的提高
43. 对接近语义的追求。
搜索引擎的局限和补充
只能搜索内容,不能提供内容。基本不具备内容整合的能力。
社区和知识库是现在的搜索引擎的非常好的补充。特别是那些与日常生活关系很大的信息。人回答的,人整理的挑选的,搜索引擎基本不具备这样的灵活性。
例:百度知道、百度贴吧、百度文库……
4、推荐系统的表现形式
推荐系统概论:
时间漫长:从购物篮分析->推荐系统->个性化推荐
推荐引擎:是主动发现用户当前或潜在需求,并主动推送信息给用户的信息网 络。
个性化推荐:个性化推荐是根据用户的兴趣特点和购买行为,向用户推荐用户感兴趣的信息
和
商品
相关技术:
机器学习、数据挖掘算法
用户行为分析
聚类及分类处理
关联规则处理算法:
(Apriori算法、
FP-Growth
算法)
自然语言处理等
离线计算
在线合并
推荐引擎App
常见表现形式:猜你喜欢
买了又买
精品推荐
互补商品、关联规则
等等
5、推荐系统的基本算法
1. 协同过滤CF
A)基于用户的过滤
通过用户相似度获得结果,优点是易于实现,缺点是需要频繁计算,适用于“密集数据”
B)基于物品的过滤 (现在大规模电商会用)
通过物品间的相似度获得推荐结果,优点不需要频繁计算,缺点是不容易实现,适用于“稀疏数据”
4
(其中,为
0
的表示未评分)
4
(
1
)基于项目相似度计算式计算如
Item3
,
Item4
两列向量相似度;
4
(
2
)基于用户相似度计算式计算如
User3
,
User4两
行向量相似度。
2. 聚类及相似算法(数据挖掘的基础算法)
聚类:
聚类的结果使得在同一个簇中的对象之间具有较高的相似度,而不同簇中的对象差别较大。(尽量最大化类内相似度,最小化类间相似度;最小化类内距离,最大化类间距离)。核心是衡量对象的相似度,或者说是距离。
常见的聚类有:
基于密度的聚类
基于划分的聚类
基于距离的聚类
基于概率分布的聚类
相似度:
1.
基于欧几里德距离的相似度(数值型常用)
2. 余弦相似度(计算文本相似度常用)
3. 调整余弦相似度()
4. 基于皮尔森相关性的相似度(计算高维数据)
5. 斯皮尔曼相关
6. 基于谷本系数的相似性度量等
欧几里德距离
向量夹角的余弦
3. 基于知识的推荐(规则引擎)
•通过知识推理来产生推荐
不依赖于用户评分等历史数据,不存在冷启动问题。
当用户的偏好发生变化时,不需要额外训练。
•常见推理形式
规则推理(
综合考虑性别、年龄、职业、时间、天气等)
本体推理
案例推理等
问题示例:
1、小明手上有50元钱;
2、1元钱可以买一瓶饮料;
3、2个空瓶可以兑换一瓶饮料;
4、问题是:最终小明可以喝多少瓶饮料?
规则1,如果有钱就买一瓶喝掉
规则2,如果空瓶数大于2则换购1瓶(兑换成1元钱)
规则3,打印已经喝掉的数量
JAVA规则引擎示例
4.
关联规则:
关联规则用于寻找在同一个事件中
出现不同
项的
相关性(啤酒尿不湿)
常见算法:
Apriori
算法:会产生一项频繁集、二项频繁集、三项频繁集到K项频繁集,以此来挖掘用户在购买行为中的关联规则,或是点击流中的频繁模式。由于会产生多项的后悬集,所以性能不太好,尤其在挖掘多项关联规则的时候,会多次扫描数据库。就有了改进算法
FP-Growth
算法,只扫描两次数据库,时间性能会好一些
5.
其它方法:
分类算法
贝叶斯分类、SVM(支持向量机、神经网络)等
基于用户行为的用户画像建模(
通过分析用户的行为,包括 用户行为,点击、收藏、购买等行为,来产生群组规则与情境模式)
基于效用的推荐
(考虑提供商的可靠性和产品的可得性)
基于社交网络的推荐
( 提高惊喜性,例如 二
度好友理论)
混合
推荐
推荐系统案例
十大挑战
Ø挑战一:数据稀疏性问题
Ø挑战二:冷启动问题
Ø挑战三:大数据处理与增量计算问题
Ø挑战四:多样性与精确性的两难困境
Ø挑战五:推荐系统的脆弱性问题
Ø挑战六:用户行为模式的挖掘和利用
Ø挑战七:推荐系统效果评估
Ø挑战八:用户界面与用户体验
Ø挑战九:多维数据的交叉利用
Ø挑战十:社会网络推荐(惊喜度)
6、舆情监控系统
什么是舆情:
¢舆情是“舆论情况”的简称,是指在一定时期的一定社会空间内,围绕新闻事件、社会现象和社会问题所表达的信念、态度、意见和情绪的总和。
¢网络舆情(Internet Public Opinion,IPO)特别强调两点:
一是新闻事件、社会现象和社会问题主要通过互联网首发或传播
二是表达信念、态度、意见和情绪的公众主要是网民。
网络舆情信息的主要来源:
1.网站新闻评论
2.论坛与社区BBS
3.聚合新闻RSS
4.QQ
5.MSN
6.博客BLOG
7.微博MicroBlog
8.微信
¢(后五项被认为是现在最重要的Me Media或We Media,自媒体时代到来~!)
网络舆情监控系统可以实现:
1.如何实时去抓取互联网里面的海量数据,这种包括国内网站、境外网站以及一些电子报刊等
2.逐条分析是否与“我”相关
3.逐条分析是否属于“舆情”
4.逐条分析是否属于“负面”
5.分析各条舆情“舆情热度”,评估其影响力,分析“重大舆情”“重点事件”
6.分析各条舆情的传播路径、传播时间,做到舆情能“查得清”
7.每日生成“网络舆情简报”,重大舆情生成“舆情专报”
8.时时进行舆情预警
9.24小时不间隔监测,监测时差保障在30分钟内
网络舆情空座系统监控流程:
7、舆情系统的架构和模型
网络舆情监控的系统架构
网络舆情监控的“舆情漏斗”模型
1.分析与我相关:需要一些白名单:与偶有关的名词
2.分析是否属于舆情:需要一个与舆情相关的词汇库
3.分析舆情传播的热度:
4.舆情传播的路径、速度:
5.关联分析:相关新闻
6.舆情简报:Web、报纸给领导看
8、社交网络概述
社会网络带来的改变:
社交网络中的数据,是一部由海量用户UGC(用户生成内容)的历史著作(就是说是用户/草根生成的)
社会学上的测不准定律:
特点:海量用户,实时数据,完整数据 三者同时存在
社交网络产生了这些数据
社交网络的群众情绪可记录
社交网络的二度好友理论
群体智慧
社交网络挖掘案例:
•利用社交网络数据监测天气变化
传统方式:卫星云图,实地仪器监测
社交网络:通过各个地区的喊热人数进行监测
喊热的词有哪些,如何结合语境?
基本算法流程:
(扯淡,说不定每个人对热的感觉不一样呢)
基于社交网络数据的预测与问题:
1
、大选
预测
•
预测
得票率几乎一致
2
、股市
预测
•
准确率
86.7%
问题与挑战:
社交网络挖掘面临的挑战:1.机器对语言语境的理解:自然语言处理技术(尤其是中文)
2. 机器对情感的识别:情感分析算法
3.垃圾信息检测:水军,僵尸识别
4.合理的抽样方法:抽样的准确性
具体到微博挖掘的挑战:
1
、文本
短,特征稀疏
2、文本口语化,符号化
3、僵尸,水军多
4、几个微博传播分析网站http://www.weiboreach.com/
http://www.doodod.com/doodod/home
http://vis.pku.edu.cn/weibova/weiboevents/index.html
搜索网络与热点发现:
9、知识拓展
个性化推荐
个性化推荐是根据用户的兴趣特点和购买行为向用户推荐用户感兴趣的信息和商品。随着电子商务规模的不断扩大,商品个数和种类快速增长,顾客需要花费大量的时间才能找到自己想买的商品。这种浏览大量无关的信息和产品过程无疑会使淹没在信息过载问题中的消费者不断流失。为了解决这些问题,个性化推荐系统应运而生
个性化推荐系统简介
个性化推荐系统是建立在海量数据挖掘基础上的一种高级商务智能平台,以帮助电子商务网站为其顾客购物提供完全个性化的决策支持和信息服务。购物网站的推荐系统为客户推荐商品,自动完成个性化选择商品的过程,满足客户的个性化需求,推荐基于:网站最热卖商品、客户所处城市、客户过去的购买行为和购买记录,推测客户将来可能的购买行为。
在电子商务时代,商家通过购物网站提供了大量的商品,客户无法一眼通过屏幕就了解所有的商品,也无法直接检查商品的质量。所以,客户需要一种电子购物助手,能根据客户自己的兴趣爱好推荐客户可能感兴趣或者满意的商品。
个性化推荐系统的算法
电子商务推荐系统的主要算法有:
(1) 基于关联规则的推荐算法
(2) 基于内容的推荐算法
基于内容过滤的系统其优点是简单、有效。尤其对于推荐系统常见的冷启动问题,因为该算法不依赖于大量用户的点击日志,只需要使用待推荐对象本身的属性、类目、关键词等特征,因此该方法在待推荐对象数量庞大、变化迅速、积累点击数稀少等应用场景下有较好的效果。但该方法的缺点是对推荐物的描述能力有限,过分细化,推荐结果往往局限与原对象相似的类别中,无法为客户发现新的感兴趣的资源,只能发现和客户已有兴趣相似的资源。这种方法通常被限制在容易分析内容的商品的推荐,而对于一些较难提取出内容的商品,如音乐CD、电影等就不能产生满意的推荐效果。
(3) 协同过滤推荐算法
二、数据挖掘算法与实践
1、导学
2、数据挖掘系统的分类
3、分类挖掘
4、聚类挖掘
5、数据挖掘面临的问题
6、聚类分析的要求及实操
7、K均值算法及实操
8、关联规则及实操
9、APRIORI算法
10、知识点拓展
(1)、聚类算法的步骤
(2)、分类算法的步骤
三、社交网络挖掘算法与实践
四、推荐系统挖掘算法与实践
五、文本挖掘算法与实践
六、Hadoop生态系统