大数据,why python
ps,
2015-12-4 20:47:46
http://www.open-open.com/news/view/fbffc4
《机器学习编程语言之争,Python夺魁》,又是一只黑天鹅
--------
在《zwPython 3.0 初步规划》blog中,我们极大地强化了大数据功能,并作为首个All-in-one大数据分析平台。参见: http://blog.sina.com.cn/s/blog_7100d4220102vlpa.html
zwPython 3.0目标:目前最强的集成式Python开发平台,大数据分析平台,没有之一:
- 比pythonXY更加强大,内置全中文用户手册;
- 苹果“开箱即用”模式,绿色软件,解压即可,零配置。
- 首个All-in-one大数据分析平台:内置pandas、Scala、R语言、Q语言、Quant、matlab、hadoop、spark模块库和API接口支持。(仅限V3.0版本)
- 超强功能:图像处理、AI人工智能、机器学习、openCV人像识别、gpu、openCL并行超算开发、pygame游戏设计......
为什么是python,而不是r语言、Julia、matlab、Scala、Hadoop、Spark,等目前热门的解决方案。
这个,主要是因为python发展太快,太猛,尤其是在AI人工智能、机器学习领域,已经超越lisp,成为行业标准。
而国内,因为中英语言、区域分隔等种种原因,通常要落后欧美2-3年。
像大数据架构,目前欧美IT行业:“强烈推崇Spark技术,宣称Spark是大数据的未来,同时宣布了Hadoop的死刑”
无他,因为Spark比Hadoop快一百倍。
而国内,今天百度了一下大数据人才需求,90%还是:Hadoop
大数据的核心是数据分析,数据分析的核心是模式匹配、机器学习方面的算法模型。
简单但说,就是一个类似字符串匹配的算法,不过这个字符串是一个超长的字符串,可能超过1000T字节。
算法、模型,向来是AI人工智能理论方面的范畴,这个类似于量子理论物理学,和理论天文学。
目前人工智能尚处于0.1版本阶段,大体上相当于哥白尼以前的天文学“地球中心说”、和量子物理以前的经典物理学阶段。
因此,大数据、人工智能,基本上,就和理论物理学差不多,AI的算法模型,99%都是靠理论推测,说白点,基本上靠“蒙”
(参见《人工智能永远差500年》 http://blog.sina.com.cn/s/blog_7100d4220102vmlm.html)
这里“蒙”,并非贬义词,是指,大部分相关的理论,很多都是经验参数、经验理论,既然是经验,就有可能成功,更多的可能是失败,特别是推而广之的时候。
(参见《国内首个大数据网络推广实战案例》http://blog.sina.com.cn/s/blog_7100d4220102vmlm.html)
我说“蒙”大家可能不服气,这个却是老老实实,来自一线的实战经验,庆幸的是,国外的顶级AI学者的观点也差不多:
“对于(大数据、人工智能)这个词,我觉得最近社交网络上比较流行的那个笑话非常贴切,把大数据比作青少年性行为:每个人都在谈论它,没人知道到底怎么做,每个人都以为其他人知道怎么做,所以每个人都声称自己也在做、”
(参见附录)
当然,这个0.1阶段,也已经能够解决N多实际问题了,例如目前的人脸识别、车牌识别、客户行为模式分析、网络广告点击分析、关联商品推荐等算法都比较成熟。
我谈大数据,特别是黑天鹅算法,更加强调我们提出的“小数据理论”,原因有以下两个:
首先,简单来说,国内除了进入“国际500强”的企业,例如阿里、百度、四大银行、移动等巨无霸企业。
99%的企业,基本上并不需要大数据,这些企业所谓的大数据,其实只是最简单的数据库、数据分析。
简单做个大数据的量化门槛标准,可以分为以下两条:
1、企业的活跃用户规模超过一个亿。
2、每天的活跃用户更新数据的数据量,超过数据总量的1%,换句话说,每天有过百万的活跃用户数据更新。
如果符合以上两条,可以导入真正的大数据平台:hadoop、spark,其他的,用pandas、R语言、matlab,或者其他传统数据库,可能效果更佳好。
例如淘宝、阿里的用户就完全符合以上两条,是典型的大数据企业。
而中国民政部门,负责人口统计管理的信息中心,每个人的记录就那么几十条记录,例如:出生日期、籍贯、性别等,基本都是关系数据库表格可以高效处理的,即使数据库规模,超过十亿人,也无需采用什么大数据系统,一台i7的的笔记本,基本上就可以搞掂。
当然,这里的一亿用户、1%,日过百万活跃用户,也都是笔者根据一线实战,总结的经验参数。
这些参数,不一定完全正确,但还是有过十年的专业经验做背书的。
例如,笔者得知百度世界杯足球预测十八连胜,就断言,百度的大数据、人工智能算法不靠谱,里面绝对有大量的人工干扰。
果然,不断两个月,百度的大数据图像识别,被K了,(百度在ImageNet图像识别测试中有违规行为)
参见《又一只黑天鹅爆掉了》, http://blog.sina.com.cn/s/blog_7100d4220102vnm2.html
注意这个blog日期,和zw大数据系列blog,最早断言,百度大数据有问题的blog发表日期,这个是真实的案例。
这个也可以视为一种经验模型,因为我们的黑天鹅算法,自身数据回测,准确度,也不会超过90%。谷歌、微软的准确度在50-60%左右。
我们强调“小数据理论”的第二个原因,以目前大数据应用最广泛的、最深入的量化交易为例。
无论什么模型、算法,无论是pc集群、云计算、天河巨型机系统,归根到底,就是一个“涨”和“跌”的问题。
简而言之,就是一个1与0的问题。
这个,说来说去,又绕到了最基本的哲学问题,非三言两语能够说清。
ps,2015.8.11 补充,本文发布后,发现也有学者开始强调“小数据”了
《大数据,小数据,哪道才是你的菜?》
http://blog.sina.com.cn/s/blog_7100d4220102vkdb.html
看来,zw的大方向,还是正确的 :)
事实上,对于大数据而言,比金融股票更好的数据算法对象,是足彩数据,
因为足彩的结果是3、1、0,胜、平、负,三种状态结果
这三种状态结果,可以适用于所有的模型框架,暗合易经之道:
一生二,二生三,三生万物。
至于为什么,我也在研究。
有兴趣的朋友,可以参考《文科生、易经与大数据》
http://blog.sina.com.cn/s/blog_7100d4220102vne7.html
关于大数据、高频交易和人工智能,个人的基本观点:凡是无法通过“足彩数据”实盘测试的方案、算法,都是在耍流氓。
足彩数据是最透明的数据源,如果足彩不是 就没有更加公平的了博弈模型,
如果 这个都通不过其他都是扯蛋
所以说:足彩是最合适的数据源有历史数据 还有横向对比
其他任何数据源都没有这种实时的“矩阵”数据源
2014年世界杯对于大数据人工智能 是个分水岭 是元年
微软 谷歌 百度都有相关的项目胜率<50%
参见《字王看:大数据观点补充》
http://blog.sina.com.cn/s/blog_7100d4220102vkdb.html
AI人工智能理论专家,和理论物理学家、理论天文学,大部分不是程序员(实验员),
因此,要求他们学习c,可能需要等上一百年,还不一定靠谱。
不过,“生命总是会找到自己的进化之路。”(侏罗纪公园)
转来转去,AI人工智能、大数据方面的理论专家,不约而同地找到了python
同样的,目前量化投资领域,一线交易员必须自己code,他们的选择也是python
“目前,量化投资、高频交易领域,一线操盘手自己编程,将投资策略直接程序化,已经成为国际大投行的标配。”
“在数据处理领域,特别在量化交易方面,python已成为“统治级”编程语言。”
参见《零起点,python大数据与量化交易》
http://blog.sina.com.cn/s/blog_7100d4220102vlpa.html
事实上,目前,python已经是天文学、化学行业的标准编程语言
既然,这些地球上最聪明的家伙,都不约而同选择了python,我们为什么不“跟进”呢?
目前,python在人工智能、机器学习方面积累的资源,可能比c、r语言、matlab等加起来都要多,而且全部是“TOP one”级别的:
scikit-learn、Orange、NLTK、MDP、PyBrain、BigML、PyML、Pattern 、Theano、Pylearn等
r语言虽然凭借统计背景,在早期的大数据、人工智能方面有些热,
不过,到2012、2013年,涉及到深层的AI理论、算法模型时,r语言就力不从心了
而此时,无论是厚积薄发的scikit-learn、NLTK,还是pandas、Theano、Pylearn的异军突起,
一下子,就把r语言上升的势头给掐死了,顺便把,matlab给伤大了,就像加多宝PK王老吉,把和其正给灭了。:)
Hadoop、Spark虽然都内置编程语言,特别是spark,内置的scala,完全lisp风格
lisp近年因函数编程大热,事实上,lisp和prolog,也一直是AI人工智能的行业标准语言。
lisp的逆波兰语法虽然小众,不过作为AI行业的笔者,还是比较熟悉的,而且比起曾经用过的,100%纯
逆波兰风格的
forth,语法要简单、传统N倍
尽管如此,笔者还是义无反顾,选择了python。
因为,目前大数据、人工智能、机器学习都尚处于0.1版本阶段
这个阶段,需要的是,大量的建模、分析、测试
而python,可能是地球上建模最快的编程语言,再加上,python有这么多的数据分析、机器学习模块库,而且大部分是开源的
AI行业,国际顶级的专家学者也如是说:(参见附录)
“基本上(机器学习)工具有两个推荐:Torch7(lua)、Theano + Pylearn2(python)”
python最大的缺点是速度,一般比c慢十倍左右,不过大数据分析的瓶颈在IO,
目前,全内存计算是趋势,而且intel前几天发布的xpoint,号称能够提高内存速度1000倍,基本上是cpu内部cache级别
(事实上,目前最前沿的高频、黑池交易软件,已经开始基于cpu的cache进行加速编程)
另外一个大杀器是,gpu并行运算,无论是cuda、opencl,2014年,千元左右的GPU,已经能够提速3-500倍,未来几年,2020前,提速3000-5000倍,甚至上万倍,应该没有问题。
具体到python,虽然有衰减,不过目前,非官方的GPU模块库,提速100-200倍,已经完全ok。
至于gpu并行运算的门槛,目前已经很低了,最简单的,只要在相关函数前,加一个python的修饰符"@jit",就全自动加速。
无需修改任何其他代码,至于超级复杂的cpu、gpu内存拷贝、交换,cl异构运算语法、矢量编程,完全可以无视,比matlab还方便
pandas、scikit-learn的GPU加速模块,也已经发布了多种版本,
目前,python与c、fortran,已经是cuda官方认可的三大gpu并行编程语言。
工业级的大数据分析,离开gpu,即使是计算机集群,无论在投资产出、还是实时运算方面,完全就是扯淡。
相比c、fortran,无疑,python要可爱的多,特别是“小白”般的理论学者。
python号称:胶水语言,是目前唯一能够打通:
pandas、Scala、R语言、Q语言、Quant、matlab、hadoop、spark
等目前、以及未来,各种大数据架构的平台,
统一的开发环境、统一的数据分析平台,无论在前期的建模、测试,还是后期的数据分析、系统维护,
在管理维护、培训研发成本方面,至少可以降低一个数量级。
想象一下,同时维护windows、linux,甚至还有ios、bsd,以及手机安卓app,
更何况,大数据往往还需要提供集群,gpu异构运算支持。。。。。
这些,仅仅是维护的硬件、软件名录清单,就可以把一个企业的IT部门主管,以及所有的工程师逼疯。
既然,python如此美好?
大数据, why python?
应该说得通吧。
(ps,本文是因《zwPython 3.0 初步规划》blog,有感而作,没有详细核对资料,可能有不少bug,请大家谅解)
ps2.2015.8.10
《大数据, why python?》,原本以为只是一家之言
blog发布不到几天,发现了一篇类似的blog
《大数据全栈式开发语言 – Python》
http://news.cnblogs.com/n/526283/
Python 可以称为大数据全栈式开发语言。因为 Python 在云基础设施,DevOps,大数据处理等领域都是炙手可热的语言。
像只要会 JavaScript 就可以写出完整的 Web 应用,只要会 Python,就可以实现一个完整的大数据处理平台。
看来,《大数据, why python?》,又召唤到一只黑天鹅
---------------
【附录】
blog的部分引用,来自对国际顶尖AI专家Yann LeCun(燕乐存)的访问记录
http://www.cnblogs.com/yymn/p/4619320.html
Yann LeCun(燕乐存),Facebook人工智能实验室主任,NYU数据科学中心创始人,计算机科学、神经科学、电子电气科学教授。
他1983年在ESIEE获得电气工程学位,1987年在UPMC获得计算机博士学位。在多伦多大学做了一段时间博士后,于1988年加入位于新泽西州的AT&T贝尔实验室。
1996年他成为图像处理研究部的主任,2003年,在普林斯顿NEC研究院经历短暂的Fellow生活以后,加入NYU。
2013年,他被Facebook聘请为人工智能实验室主任,同时仍在NYU兼职。
?深度学习可不是一个容易用的方法,你能给大家推荐一些工具和教程么?大家都挺想从在自己的数据上跑跑深度学习。
答:基本上工具有两个推荐:
Torch7
Theano + Pylearn2
他们的设计哲学不尽相同,各有千秋。Torch7是LuaJIT语言的一个扩展,提供了多维数组和数值计算库。它还包括一个面向对象的深度学习开发包,可用于计算机视觉等研究。
Torch7的主要优点在于LuaJIT非常快,使用起来也非常灵活(它是流行脚本语言Lua的编译版本)。
Theano加上Pylearn先天就有Python语言带来的优势(Python是广泛应用的脚本语言,很多领域都有对应的开发库),劣势也是应为用Python,速度慢。
?xxxx
答:“对于(大数据、人工智能)这个词,我觉得最近社交网络上比较流行的那个笑话非常贴切,把大数据比作青少年性行为:每个人都在谈论它,没人知道到底怎么做,每个人都以为其他人知道怎么做,所以每个人都声称自己也在做、”
-----------
ps,8月11日,新浪blog审核,老是不让发新文章,只能先把
《大数据·实战个案“宏”分析》作为附件发这里
------------
大数据·实战个案“宏”分析
MBA教育体系最成功之处,就在于导入了科学的个案分析。
Ps,二战最伟大的技术成功,不是原子弹、导弹、喷气机,而是流水线。流水线提供的生产力,比二战所有科技提高的总和还要高。
至于“宏”,学过c语言的,都知道宏定义、宏替换。
本文不玩文字游戏,也不玩数字游戏,只是简简单单,对几个大数据实战个案,进行宏观的定性分析。
目前,大数据,和大数据分析的核心,人工智能,都处于v0.1的黑暗期,这个阶段,“宏”分析,可能比大量的数字堆砌,更加重要。
还记得量子物理学爆发前的原子轨道模型吗?
当时,有几个人能够想象、理解原子轨道的跳变模型?
还记得天圆地方、地球中心学吗?
要不是哥伦布,“宏”分析一把,认为地球是个“球”,敢去环球探险?
废话少说,言归正传。
本文“宏”分析,包括以下几个大数据案例:
l 经典“啤酒+尿布”案例
l 2015中国股市“七·七”股灾
l 国内首个大数据网络推广个案
个案1:经典“啤酒+尿布”案例
“啤酒+尿布”案例,是最经典、最古老的大数据个案,其历史甚至比大数据这个名词更悠久。
早在上个世纪,dbase时代,数据仓库,数据分析,都用其做过案例。
久而久之,“啤酒+尿布”案例,似乎成了“神”一样的存在。
好像三大几何原理,成为大数据的基本“公理”。
不过,这个“神”,是“伪神”。
参见:《字王看:大数据观点补充》
http://blog.sina.com.cn/s/blog_7100d4220102vkdb.html
【黑天鹅才是新常态】
"啤酒和尿布有什么关系",这个十年前经典案例, 目前我是作为反面课件来说的
这个是冰岛的一个数据分析结果,至少 在中国 不存在
参见:《大数据与黑天鹅等》
http://blog.sina.com.cn/s/blog_7100d4220102vkxa.html
大数据,再多的专家,再nb的模型,再炫的demo,
也不如自己亲自去沃尔玛、家乐福、华润等超市亲眼看看,再回头问问这些大师们,"啤酒和尿布"模型,怎么玩砸了?
个案2:2015中国股市“七·七”股灾
blog《股灾、马云、大数据》
http://blog.sina.com.cn/s/blog_7100d4220102vpzv.html
blog,虽然发布与7月20日,但成文要早得多。
“这篇blog,股市关头“七·七”之日,就差不多构思,因为事件敏感,一直压住没有发布。”
笔者的这篇blog,可能是全网第一个,从大数据分析、技术层面,对“七·七”股灾,进行“宏”分析,断定事件:
“七·七”股灾,根本就不关华尔街、美帝什么事?
幸运的是,笔者blog当中,对于“七·七”股灾的“宏”分析,及其推断,目前,已经证明是科学的、正确的。
“七·七”股灾前后,整个社会好像“三战”核弹爆发,经济、金融的“灭国”之战,国家经济有倒退十年的危险。。。。。
连外访总理都匆忙回国,好像美国华尔街、联合欧洲、日本等全球资本,恶意做空中国,
更加关键的是,这种错误的推断,引发了政府部门实质性的的救市行为,上万亿的资金被导入股市,
好似当年三个代表,有关政府部门,近期言必“大数据”,这次股灾应对,必然会极大的参考大数据方面的资料。
可惜,政府主导的大数据,和其他政府项目一样,往往换来的是是十倍、百倍的失败。
面对“七·七”股灾,政府种种应对措施,全面失败,而且,闹出了个世界金融史上的超级“大乌龙”事件,居然找错了“靶标”。
“七·七”股灾的最终调查结果,目前虽然没有发布,但有消息称,虽然不一定正确:
前期,不过是江浙的一些土老板,为防止风险,做的空头对冲保险,因为配资杠杆,引发的技术性股市大幅度下调。
后期,则是因为程序化交易系统,对阀值K值的设定,引发的一系列自动抛盘,
就像前几年光大乌龙事件,专业人员一听,就知道是因为交易系统,相关参数,未进行初始化设置,直接上线引发的自动抛盘
也许,“七·七”股灾,根本就不关华尔街、美帝什么事?
完全是躺枪。
ps,8月10日新增片段:笔者很少引用中华网的资料,因为基本是TG的文宣。不过这次,过了一个月,这些blog也羞羞答答、间接认可了上面的推断。
《大老虎想在中国玩双头政治?白日做梦》 http://jnwct.blog.china.com/201508/13458004.html
欧洲最近有点看中国的笑话。大老虎作乱。欧美都看笑话。
(ps,应该就是这个“七·七”股灾的超级“大乌龙”事件)
个案3:国内首个大数据网络推广个案
2004年,我们利用AI人工智能和大数据分析技术,研发成功国内首个海量级社区营销软件:百万社区营销系统(软件著作权登记号:2005sr5133)。社区数据库超过一百万个,比同期类似产品,高两个数量级。
2008年,依托百万社区营销系统,在北京联合创办国内首家4A级的专业网络公关公司:wowa传媒,首年业绩突破一千万。
同年,“特仑苏” 危机公关案爆发,wowa受中国国际公关协会委托,在北京,首度对国内大型公关公司,统一进行专业的网络公关培训,被协会誉为:中国网络公关事业的开拓者和启蒙者。
Wowa服务过150+国际500强客户;是微软公司首家官方认证的网络公关服务商;新华美通首选网络传媒合作伙伴;国内TOP10网络公关公司,50%采购过wowa的服务。
2007年,操盘惠普笔记本“数码混搭”推广个案,成为年度十大公关行业经典案例(注意,非仅指网络公关);被业界誉为:史上最强之网络推广案例,没有之一;不可逾越的概念营销“标杆之作”。
我们在惠普笔记本“数码混搭”推广个案当中,首度提出的百度、谷歌搜索引擎:覆盖率指标,NLP反向链接数,等参数,目前已经成为网络公关行业的基础指数。
这个也是大数据技术,首度在网络推广方面的应用个案,我们当时的经验参数:1:1000。(百度NLP反向链接数-抽样采集率)。
按照客户要求,利用自行开发的AI语义分析系统,针对“笔记本电脑”,“数码混搭”两个主关键词,结合百度、搜狗的行业分类关键词,将发布主题帖,细分为数十组不同风格的软文,并在每篇软文前后,插入系统细分的关键词组。
硬件方面,我们采用了近百台PC,组成了一个简单的发布集群系统,通过1-2周时间,围绕关键词:hp笔记本、数码混搭,发布了过百万条网络推广软文。
最终,hp笔记本“数码混搭”的网络推广方案,获得了“空前绝后满天飞”的成功,软文的存活率非常高。
“数码混搭”个案当中高至70-80%的覆盖率,至今,国内外尚没有一家团队、公司能够超越,包括百度、谷歌自身。
技术博客:http://blog.sina.com.cn/zbrow
--------------
zwPython 3.0 初步规划
zwPython 3.0目标:目前最强的集成式Python开发平台,大数据分析平台,没有之一:
- :: 比pythonXY更加强大,内置全中文用户手册;
- :: 苹果“开箱即用”模式,绿色软件,解压即可,零配置。
- :: 首个All-in-one大数据分析平台:内置pandas、Scala、R语言、Q语言、Quant、matlab、hadoop、spark模块库和API接口支持。(仅限V3.0版本)
- :: 超强功能:图像处理、AI人工智能、机器学习、openCV人像识别、gpu、openCL并行超算开发、pygame游戏设计......
因为“All-in-one”大数据分析平台,增加了N多第三方软件,许多都是目前IT领域最前沿的大型系统,
测试相关脚本代码很耗时间,相关软件,包括python本身,也都在不断更新当中(而且非常活跃),
目前无法确定最终发布时间,初步预计需要6-10个月。
幸运的是,zwPython 3.0,基本平台框架,和80%的新增模块,都已经到位
至于为什么选择python,作为大数据分析平台,请参见blog《大数据,why python》
http://blog.sina.com.cn/
---
更多参见blog《大喜,python版opencv3发布 》
http://blog.sina.com.cn/s/blog_7100d4220102vo2m.html
zwPython3的升级也可以启动了,一直在等这个,zwPython会直接升级到版本3:zwPython3
大喜python版opencv3发布,demo脚本抢鲜版发布
zwPython3采用64位python3,支持opencv3
zwPython3的重点会由原来偏重于字库、图像处理,延展到大数据领域,会重点强化以下模块:
pandas数据分析
theano、Scikit Learn机器学习
cuda、gpu并行超算
采用python3,是因为v3的内码是unicode,而且是趋势,目前模块库也n多了,超过一万个
原来用2.7版,最主要的是因为opencv2对python3 的支持很差
遗憾的是,opencv3的demo脚本还都是python2的,连GitHub的官方包都是
为方便大家学习opencv3,用2to3.py把demo脚本升级到python3,并修改了数据包目录
测试了一下,70%可以直接运行
作为抢鲜版,大家先凑合用用
下载还是在zw项目的百度网盘:
http://pan.baidu.com/s/1tY7Wq
文件名:cv3python3demo.zip