2数据科学 - 浙江大学计算机辅助设计与图形学国家重点实验室

Download Report

Transcript 2数据科学 - 浙江大学计算机辅助设计与图形学国家重点实验室

数据可视化基础
数据科学
陈为
[email protected]
http://www.cad.zju.edu.cn/home/chenwei/visclass
内容提纲



大数据时代
数据科学简介
大数据的案例
大数据的定义与特性
大数据用来定义那些大小超出常用
软件工具在可承受的运行时间内进
行数据捕获、管理和处理的能力的
数据集。
*
 大数据的3V特性
美国政府的大数据计划



2009年,美国国家标准技术研究所(NIST)帮助发表了一
篇题为“控制数据的力量”的报告,对
大数据研发计划的开展有许多影响。
2011年,总统科技顾问委员会(PCAST)
提出增加美国在大数据研发方面投入的
建议,同时成立大数据高层指导小组。
2012年3月29日奥巴马政府公布了“大数据研发计划”
(Big Data Research and Development Initiative)
美国政府的大数据计划
国防部(DoD)

自然语言处理(Machine Reading)
视觉智能(Mind’s Eye)
安全云(Mission Oriented Resilient Clouds)
对加密数据的编程计算(PROCEED)
对视频和图像的检索和分析工具(VIRAT)
CINDER计划
Insight计划

美国政府的大数据计划










国土安全部(DHS)
可视化数据分析(CVADA)
能源部 (DOE)
ASCR计划,提供数据管理,可视化和数据分析的社区,
包括数字化保存和社区访问
生物和环境研究计划(BER)
系统生物学知识库(Kbase)
美国核数据计划(USNDP)
NASA
全球地球观测系统(GEOSS)
行星数据系统(PDS)
美国政府的大数据计划











卫生和人类服务部(HHS)
生物传感2.0 计划
癌症成像存档(TCIA)
癌症基因组图谱(TCGA)
传染病代理研究模型(MIDAS)
人口研究数据共享(DSDR)
计算神经科学的合作研究(CRCNS)
食品药品监督管理局(FDA)
虚拟实验室环境(VLE)计划
国家安全局(NSA)
情报共同体(IC)计划
美国政府的大数据计划




美国国家自然基金委(NSF)
开发、整合一套一体化的数据工具和先进的基础设施方案以
支持科学和教育。
美国国家卫生研究院(NIH)
The Structural Genomics Initiative,通过发现,分析和
传播蛋白质的三维结构,RNA和其他生物大分子结构,展现
生物的多样性,以促进在生物学,农业和医药的基本认识和
应用。
 美国地质调查局(USGS)
 利用庞大的数据集、先进的计算能
力和协作工具,提高对一些地球问
题的认识,如气候变化,地震的复
发率。
多尺度异常检测(ADAMS)

2011年由国防部高级研究计划局(DARPA)提出。

投资:3500万美元。
该项目旨在发现和防止内部威胁。系统预期
输出对象是反间谍机构。

同时可以用于解决大规模数据集的异常检测
和特征化,用于商业融资等其他领域。

核心技术由乔治亚理工学院高性能计算团队
研发。

Insight计划

解决目前情报,监视和侦察系统的不足,
进行自动化和人机集成推理,使得能够提
前对时间敏感的更大潜在威胁进行分析

开发新的方法来检测军事计算机网络与网
络间谍活动
XDATA计划

国防部高级研究计划局(DARPA)今年提出开始XDATA计划。

将在四年里拟投资每年2500万美元。
开发用于分析大量的半结构化和非结构化数据的计算技术和
软件工具。


提出的挑战:
开发可扩展的算法处理分布式数据中不完整存储的数据。
∙
研发有效的人机交互工具促进在各种各样的任务中快速分析
并反馈最重要的视觉信息。
∙
DAX计划

高级科学计算研究办公室(ASCR)提出。
DAX是一个为推动百万兆级计算所需的数据分析和
可视化算法提供细粒度并发支持的工具包。


基本单元是实现一个网格里元素行为的函数。
每个函数只能访问传递和调用的元素,避免了内
存冲突从而实现无限数量的线程并发。

执行器遍历网格所有元素,调用一个或多个函数
处理无差别功能的元素并收集每个元素的值。

PROMIS计划
病人报告结果测量信息系统
2002年5月,国家卫生研究所召开多个会议为21世纪的医学
研究制定了发展路线并提出了NIH共同基金。

为支持重要项目之一的慢性疾病病人临床研究动态评估,由
NIH共同基金提出了合作项目PROMIS。

PROMIS是一个高度可靠,有效,灵活,准确,反应病人健康
状况的评估工具系统。

核心资源是评估中心:提供工具和数据库,以帮助研究人员
收集,存储,分析病人的健康状况有关的数据。

EOSDIS计划
NASA提出的地球科学数据和信息系统研制计划

主要目标:

处理、存储与分发地球科学卫星数据。
b)提供用于方便管理地球科学数据的工具。
c)促进地球科学数据的跨学科使用。
d)通过国际之间地球观测数据的共享和整合,推动地球系统科学,满
足气候和环境变化的挑战。
a)
有12个数据中心,14个科学研究处理系统以
及26个合作伙伴为项目提供支持。

大数据计划特点总结及高校面临的挑战

美国“大数据计划”特点

应用单位提出,应用单位主导

有非常明确的应用需求,要求解决实际问题

应用单位完全掌握大数据资源

高校参与关键技术研究

我国高校面临的挑战

不掌握大数据来源

很难得到真正的实际需求

无能力建设试验环境

不能提供足够的人力资源
数据产品
提取、转换、加载
(ETL)
商业智能
分析
数据准备-复杂化








语法错误
语义错误
缺失值
异常检测
再归一化
编码
降维
整合
数据准备-语法和语义错误

利用:日志!




对于文本格式,人来检查是可能的



维护一个记载错误记录的文件
尽可能多地捕捉出错地方的状态
能够帮助确定数据源的错误
对于二进制格式,使用16进制编辑器
进行语法或语义变化,或者检查数据源是否有
错?
涉及到其他记录和数据源的限制是十分难查的
数据准备-扩展性问题

已有的数据和需要的数据均是动态的目标




数据质量是一个过程
经常会在分析数据是发现问题
修复找到的错误会是极耗资源或不可能的
容错



保留初始数据
能够将工作流的阶段回滚
允许以前工作的重用
数据准备-扩展性问题

工作流元数据管理




工作流进度估计


现在正在运行什么?
自动源捕获
对工作流进行版本编号
必须向下流进程通信
工作流单元重用


在复合时:常用工作流库
在执行时:消除工作流常见任务的冗余
数据表现


数据表现概览
图表





单变量
双变量
其他
图表的选择
设计的考虑




表格
图表
颜色
活板印刷
数据表现-例子









图
信息图
表格
图表
信息窗
介绍
文档
视频
应用程序
数据表现
图
数据表现
图
数据表现
图
数据表现
图
数据表现
信息图
数据表现
信息图
数据表现
信息图
数据表现
信息图
数据表现
表格
数据表现
图表
数据表现
信息窗
数据表现
信息窗
数据表现
信息窗
数据表现
图像
设计的考虑
表格和图表



减少图表垃圾/表格垃圾;增加数据墨水比
认知的限制:限制一次展示的物体数量
颜色




颜色模式
对比、强调
与公司一致
6大格式塔原则:接近、相似、圈围、封闭、
连续、连接(proximity, similarity, enclosure,
closure, continuity, connection)
数据产品

不要只关注“思想”




你构建了数据集
你构建了信息窗
你构建了实验平台
其他你可以构建的事




搜索
广告定位
垃圾检测
内容推荐
Facebook大数据案例
潜在的朋友
提纲




推荐谁?
静态,离线预测
动态,在线重排序
性能/热身
你可能认识的人
• 前1~2个推荐会直接显
示在Faceboook的主页上
• 查看所有链接会使用
户看到更多的推荐
• 很多的好友都是直接
在主页而不是“查看
所有”页面被添加的
• ‘Xing’某个用户把某人
永远地从列表里删除
• 在未来的推荐中取消
掉
• 占了Facebook中朋友中
的很大一部分内容
帮助用户在FB上找到好友

推荐已经在很多应用
中得到了证明


和他们一样,我们可
以通过作出优秀的推
荐来增加我们对用户
的价值


Amazon、NetFlix等
都有复杂的系统
有更多好友的用户更
频繁地使用网站,从
中也得到更多
不像那些系统(协同
过滤)我们必须要考
虑社交背景
好友统计

大约每天有两亿的页面互访



新用户(注册帐号不超过两
周)每天要连接4千万


26%直接来自于PYMK的贡
献(点击PYMK添加链接)
另外14%是间接引起的
28%直接通过PYMK,总共
为42%
没有“你可能认识的人”
(PYMK)时很多人可能都
无法被他人所发现

被从PYMK上移除的新用户
在6周以后会少27%的好友
如何推荐

大部分的友谊来自于朋友的朋
友(Friend of Friend, F-F)



以前的工作表明FoF(2跳)的
友谊比多余3跳的友谊要多五倍
以上
FB上92%的新朋友关系
从实际的角度来看,做比F-F更
深入的工作是不可能的了

一般用户平均有超过130个好友



130×130 = 17K FoFs
130^2 = 2.2M FoFoFs
特殊的用户会有大约5000个好
友
推荐朋友的朋友

问题陈述:


给定一个源用户,找到
最佳的朋友的朋友推荐
给他
挑战:

一个典型的用户会有成
百上千的FoFs(平均为
40K,有一部分人会达
到800K!)


哪些特性可以帮助我们从
中进行选择
我们如何结合网络和人口
特性
共同好友

共同好友数目是一个很好的指标


其他社交网络特性也很有帮助:


两个有10个共同好友的人成为好友的
概率是仅有1个共同好友的12倍
比如,如果你的好友刚刚添加了一个新
的还有,这也是一个很好的推荐
我们可以结合网络特性:

𝛿𝑢,𝑣 给出了边创建以来的时间
系统概览

系统检测所有的FoFs


存储评分并且使用简便易
得的数据来预测实时的
CTRs


产生前100位候选人列表
候选人被重新排序并且在
每次访问时展示
结果被反馈到系统并保留

实时模型依赖于输出分数,
并进行在线训练来保证
CTR预测的准确性
进行静态预测

使用传统机器学习


对一个用户u,考虑所有的FoFs
w1,…,wk
对每一对(u, wj) 生成一系列特性


共同好友,很久以前的共同好友,
新的共同好友等
也结合u和wj各自的特性


年龄、性别、国家、总的朋友、在FB
的时间等
我们使用袋装决策树(许多决策
树的平均)


训练集来自于以前的PYMK
只训练 “first impression”或主页
好友的好友特性

两类特性

带权的共同好友(MFs)


个人特点



实际的MFs、带时间权重的MFs、有向
的MFs、带强度权的MFs、推迟的MFs
年龄、国家、FB年龄、性别、朋友数
由于用户平均有40K个FoFs,这些必须在
每台机器上进行冗余备份而不是共享
用于预测的最重要特性



时间流逝的共同好友
源用户的国籍和FB年龄
好友数目
特性选择

首要特性


1.时间权重,有向共同
好友
2.国家(u)


某些国家的用户相比于其
他国家的用户更倾向于使
用某些特性
3.从u到v的带权重边

来自于信息订阅的权重粗
略地暗示了联系的强度
4和5是其他的共同好友权重,其他重要特性是U的度,V的度以及U的年龄
巨大的代价




用户平均有40K个FoFs
共有超过500M的用户
40K × 500M = 20 T
多台拥有72G内存的机器
(40台)



每台机器都存了社交图的一
部分在内存中(对单台机器
来说太大了)
即便如此,我们至少要在2
天中才能算出新的推荐
为了保证对新用户进行最
佳的推荐,我们会为他们
进行更多的计算
推荐生成

社交图被40台机器所共享


请求会直接送到有用户好
友列表的机器


包括边上的注释:创建时
间、方向,权重
这台机器分割好友列表并
且向其他机器请求FoFs
结果被汇总并排序

前100位被返回
推荐生成


使用了4台机器的简单例子
4号用户请求PYMK


向其他机器请求FoFs(本地
的机器也一样被请求)


4号用户和
5,6,7,13,26,31,121等用户是
好友
请求包括去权重(如时间)
每个FoF的特征向量被聚集



14:2, 18, 81
17:2, 53, 12
123: 2, 0, 0
提高效率和内存利用率

为每个用户都运行40K个FOFs的决
策树评价是不可能 的


使用启发式方法来缩小范围
通过共同好友特性建立logistic模型来
选择出前1K




使用线性时间排N算法来找到截止(不
是nlogn排序)
仅在前1K上运行完全决策树算法
不想使用网络来获得年龄、性别等
信息
从前1000用户中选择出前100


只有那些人才能被展示
为了保证多样性,会暂时不推荐已经
向用户推荐了4次以上的好友
每次都展示最好的推荐

为了优化推荐,我们在每次推荐
以后都再次重排

决策模型只能每两天运行一次


他们为每个用户对(u, wi)输出一个
评分
不能为每次推荐进行过多的运算,
但是可以适量运算

简单特性在每次推荐的时候都存在


(u, wi)的分数,对(u, wi)的推荐次数,
U的朋友数,wi的朋友数
将可获得的信息和评分相结合并通
过Logistics模型来进行重排
通过Logistics回归进行重排

简单logistics回归模型进行
CTRs预测的表现良好



对某个推荐给定特性 F1、F2、
F3
预测CTR =
logistics(C0+C1*F1+C2*F2+
…)
从两方面来提高质量


不要不断重复某个推荐,展
示过往的最佳推荐
如果用户从来都不用PYMK,
就停止推荐
通过Logistics回归进行重排

简单logistics回归模型进行CTRs
预测的表现良好



对某个推荐给定特性 F1、F2、
F3
预测CTR =
logistics(C0+C1*F1+C2*F2+…)
从两方面来提高质量


不要不断重复某个推荐,展示过
往的最佳推荐
如果用户从来都不用PYMK,就停
止推荐
• 实现简单,很多的软件可以被用来学习参数
• 使用用户历史数据来个个性化推荐能获得巨大的效果提升
机器学习挑战
在该数据上训练的模型,
部署了以后
新模型过高评价了那些没在之前
数据中出现的推荐; 点击率骤减

对过去数据的良好预测并不总是有价值


可能会给予没有出现在以前数据集里的推荐很高的评分
如果是从头开始训练,需要一定量的迭代以达到收敛

目前使用在线学习系统来进行CTR预测
组合系统
上下文PMYK

简单扩展以后使得推荐可
以根据当前的上下文

在确定了一个好友的请求
之后,推荐一些该好友的
朋友


但是应该是哪些人?
之前的排序仅根据共同好
友数据(在我和他们之间)

使用学习好的模型(和其
他PYMK基于相同的特性),
增加了40%的好友添加
性能

两个性能指标


建立的还有关系
CTR

总能通过牺牲其他指标来提高某个指标

离线模型的首次发送和早期的CTR预测




从那时开始的一些不足
总的来说,增加了60%
同时,有下调趋势的CTR预测下降了1/3
因此,CTR提高了130%
要点

边注释是重要的特性


从简单的用户需求来获得巨大的成功


图并不仅是点和边 --- 边有时间,方向和权重
了解人们在用什么、人们不在意什么、展示他
们喜欢的内容
~3个人带动了在FB上的~40%的交友==每
个人每秒交385个朋友