zw-ps:几年前d老文章了,现在依然有参考价值,特别是对于初学者。
参见:
zw公开课与哈佛、斯坦福MBA案例教学
TQ极宽量化·课程简介
2022,zw-ps:这是一篇n年前的blog,正是这篇blog,催生了《零起点量化三部曲》,加速了中国Python量化的普及与发展。
TQ极宽·系列课程,全部独家免费提供zwPython:国内唯一,全球三大集成式开发平台。







zwPython功能,比对标产品anacoda商务版还强(anacoda免费版限制n多),特别是在中文本地化、AI人工智能、金融量化方面。
大数据,why python
转自:大数据,why?python_字王_新浪博客 http://blog.sina.com.cn/s/blog_7100d4220102vqmk.html
(2015-08-08 23:11:24)转载▼
ps, 2015-12-4 20:47:46
大数据,why pythonhttp://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王老吉,把和其正给灭了。:) 大数据,why python
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
答:“对于(大数据、人工智能)这个词,我觉得最近社交网络上比较流行的那个笑话非常贴切,把大数据比作青少年性行为:每个人都在谈论它,没人知道到底怎么做,每个人都以为其他人知道怎么做,所以每个人都声称自己也在做、”



请大家关注TOP极宽量化公众号:TOP极宽量化,浏览,TopQuant.vip极宽网站,大量原创量化资料和课件、案例源码。关注公众号,即可获得最新网盘下载地址。TQ极宽·相关网络QQ社群如下:
- QQ群号:124134140,TOP极宽金融量化总群,面向专业金融实盘用户,三千人大群。
- QQ群号:1057170501,zwPython.com学习群,面向py初学者和大众小白用户,两千人大群。
- QQ群号:699266891,TFB极宽足球大数据,TFB=TopFootBall
- QQ群号:790548107,FASTAI智能量化
- QQ群号:663952322,PytorchLightning智能框架
- QQ群号:655402626,CBF中华大字库,ziwang.com字王网站,已升级为元字库: metafont.vip