什么是“大数据”?

今天杨老师问什么是大数据。我刚好做了一个小小的总结。也放在这里。

很早以前,只有科学家依赖于用数据发现规律和解决问题。科学家可以先通过观察或者实践需求提出问题,然后收集这个问题相关的现象的数据,接着从数据里面发现具有一定普适性的表现规律和这个普适性的边界,接着构造一个理想模型来符合这个表现出来的规律,最后这个模型经过检验之后,用于解决当时提出的问题甚至更多的问题,甚至成为发展其他模型的基础。一个典型的例子就是Newton运动定理和万有引力的发现。首先是大概的猜想——地心说或者日心说,然后对某些地方想不通想把记录搞得更准确,接着就是真的把数据搞得更准确了,然后从数据里面发现规律,接着问这个规律到底怎么产生的,于是有了新的猜想,发明了新的数学分析工具,最后理论建立好了,还能够用来预测其他天体的运动了。因此,Tycho、Kepler、Newton都是数据科学家:提出问题、获取数据、发现数据规律、提出进一步的新问题、提出新的数据分析方法、数据验证,还有解决问题。其中最关键的思想就是:一切以数据和从数据分析得到的结果和模型为准。当然,更加核心和底层的思想上的突破是批判性思维——谁说的不算数,必须是经过逻辑、计算和数据验证的陈述或者理论,才算数。

但是,那个时候,关于人类生活的规律和为什么有这样的规律,基本靠猜。或者说,可能都不去思考到底有没有一些规律,浑浑噩噩过日子算了。能够关心一下自然的世界就不错了,人的行为和社会什么的就算了。

现在,随着信息技术的发展,我们进入了一个人类交往——也就是人和人之间发生思想、物质或者金钱、情感的交换——远远比以前丰富的多的时代。并且,这个交往还常常留下了数字痕迹。于是,有关人类生活的数字痕迹越来越多了。终于,有人开始思考,是不是能够用这些数字痕迹来了解人类行为,服务人类社会,尤其是商业还有社会学研究等。于是,就进入了一个数据为王的时代。

于是,原来研究自然界的科学家们还有原来研究社会的科学家们都看到了好机会:这么多数字痕迹,我们总可以拿来研究点什么吧!他们还没动手的时候,忽然发现,计算机科学家们兴奋起来了,说,这么多数据的分布式存储、分布式计算就是一个好问题啊。于是,计算机科学家们竟然先开始投入到这个大数据的领域。这个时候,大数据的意思真的是数据要大,要不然,需要那一帮计算机科学家来专门研究存储、计算干什么,如果很小的话。由于这样的大数据很多时候和互联网商业有关,于是,这就热起来了:希望基于大量用户的各种数据的分析能够帮助赚钱。其中一个直接的例子就是推荐系统。最简单的,按照排序来推荐:计算所有的用户合起来看哪个电视剧最多,于是推荐给其他用户。稍微复杂一点:按照相似性推荐,经常看跟你一样的某些电视剧的其他人还看某个另外的电视剧,于是把那个电视剧推荐给你;或者某电视剧和你已经看过的挺像,于是推荐给你。或者更加复杂一点:依赖你的朋友关系,如果你的朋友经常看某电视剧,那么,你也应该会想了解一点;甚至你的朋友关系都是通过现有的显式记录,或者日常交往隐式计算出来的。这个例子说多了。江湖传言比父母先发现其女儿怀孕,以及尿片和啤酒放在一起更好卖,也是这样的例子。

但是,但是,我们一定要回到一开始的自然科学,一开始的数据科学的思想和哲学:大数据不一定数据量很大,尽管一般也确实挺大,更重要的是,从合适的数据里面用合适的方法来回答合适的问题,以及,一切基于数据和数据分析结论来说话这个思想。这个过程,本质上,就是通过数据搞清楚事物之间的关系,然后,再用这个关系建立模型做进一步计算。这不就是物理学吗。于是,我们发现,大数据这个不是计算机科学家的活,而是物理学家的活。分析天体运动、云室轨迹、CERN的加速器数据分析,其实都在做这个事情。只不过,现在我们关系的对象扩大了,不仅仅是自然的世界,还要关心人类社会。原来的模型不一定适用了。但是,科学的精神——也就是批判性思维,问更多的为什么,还有科学的核心——尊重实验尊重数据以及构建理想的关系模型来解释实验和数据,这些还是适用的。

因此,big不是大小的意思,而是,很牛的意思,数据为王的意思,必须以数据和数据分析结果为准的意思。数据量很小,但是,还是数据驱动数据验证的研究,也可以认为是大数据研究。不过就是牵涉到人类生活的数据,一般来说,信息确实比较丰富比较大而已。将来,随着数据开放获取变得更容易,更加重要的事情是:提出新问题、提出新分析方法,也就是发现和解决问题的能力

顺便,这也是为什么我把自己的研究小组叫做“Big Data, Bigger Physics”的意思。

libreoffice可以直接编辑pdf文档

有的时候pdf文件里面的内容需要修改,又拿不到输出成为这个pdf文件的源文件。这个时候,就需要直接修改这个pdf文件了。刚发现linux下的libreoffice可以直接编辑pdf文档。这个太牛了。当然,如果仅仅是提取页面合并页面之类的,用pdftools就够了。我记得在windows下面(你没看错,我确实当年也用过doc、windows的)需要购买非常专业的软件才行的。又多了一个转投linux阵营的理由。当然你可以用盗版。

当然,现在libreoffice也已经有windows下面的版本了,而且继续免费。

研究用物理概念列表PhySH

AIP发布了一个新的文章分类(或者说标注)体系,PhySH。其本意主要是方便文章审稿过程。但是,也可以看作一个研究用物理概念列表。其中主体就是概念,每一个概念还设置了属性,以及下一级概念和相关概念。因此,初步具有概念之间关系。结合wikipedia的物理概念列表以及其他人初步尝试的物理概念地图,应该可以当做人工制作学习用物理概念地图的基础了。记下来,等有时间,可以从这里开始。

或者,自己一门一门课去研究,去讲课,去写书,也总有搞定的时候。

小学四年级数学概念地图

为了给心儿示范如何制作一个概念地图来总结学习过的内容和促进进一步思考,我和心儿一起制作了这张小学四年级上学期数学内容的概念地图。教材是师大版四上。
MathGrade4-1
网络版的这张图以及cmap格式的源文件可以从以下网址获得。

期待心儿独立整理的其他学科和年级的概念地图。制作这个图的关键提示性问题就是:是什么、为什么、相互之间有什么关系、为什么学这个教这个(以及为什么没有学或者教这个)。

其中有一些模块之间的联系没有画出来。还有数学是什么(学习数学是为了学会用数学表达自己描述世界促进思考)和具体内容之间的联系也没有画出来。这两部分供老师们还有深入思考的学生们进一步思考。更加重要的问题是,从这个概念地图来看,“教什么怎么教”的选择合适吗?联系到上一个帖子,“关于计算的意义和验算”,我认为这是一个非常需要进一步思考的问题。

关于计算的意义和验算,带单位

今天让心儿算一个有一定难度的问题,总共1200公里的路程,车开60公里每小时,问需要多少分钟到达。如果车的速度变成120公里每小时呢?如果车的速度变成30公里每小时呢?这个计算本身很简单,但是需要做单位换算,尤其是后半问,有点小小的技巧。如果在速度上先做变换就比较困难,会遇到\(30公里\div 60分钟\)的计算问题——小数和分数的处理对于四年级学生还是有点问题的。更方便的方法在于搞清楚速度变慢了,成了两分钟一公里了,于是,只要在原来的时间基础上加倍就够了。严格来说,如果先算速度是需要先转化速度的单位,然后计算的。当然,先算时间再把小时转化成分钟单位就很容易计算。不过 怎么求解这个问题本身不是重点。

在这里,心儿的计算出了问题。她是这样计算的:\[1200\div (60\div 60)=1200(分钟),\]
\[1200\div (120\div 60)=600(分钟),\]
\[1200\div (60\div 30)=600(分钟)。\]
其中,在最后一个算式中,由于她不会计算\(30\div 60\)就替换成了\(60\div 30\)。于是,我就问她,在这里计算的是什么,用的是什么除以什么?回答,这里计算的是每分钟走多少公里的速度,用的“公里”除以“小时”(应该是用每小时走的路程除以每小时的分钟数,也就是路程除以时间,单位是“公里”和“分钟”)。可见,心儿就算心里明白在算什么,实际上,是不明确的,或者还有可能就没有意识到需要思考在算什么,拿什么除以(或者乘以、加上、减去等等)什么的问题,为什么能够这样算的问题。这个问题实际上非常深刻:所有的计算需要思考所做的计算的含义,以及为什么这样算,也就是概念和概念之间的关系。我不知道是心儿体会不到,还是教学中没有强调。一个解决这个问题的方法是在计算中带上单位,永远带上,从小学开始就带上。带上单位就会注意到概念和概念之间的关系。

经过思考和指点,她改成了\((30\div 60)\),但是,她算出来
\[(30\div 60)=2。\]
我提醒她验算,她这样验算,
\[30\times 2=60。\]
这里的问题是,她做的验算和所被验算的等式之间没有关系。这个问题的进一步根源还是概念和和概念之间的关系。怎么说?验算实际上是在等式的两边做一些相同的计算,按照相同的计算维持等式的条件,我们来看看是否会导致等式最后不成立。也就是说,从一个等式开始,经过等价变换这个等式之间的关系来得到其他等式。于是,我们要做的事情是,
\[(30\div 60)=2 \Rightarrow (30\div 60)\times 60=2\times 60 \Rightarrow 30=120 !\]

因此,这里的根本问题就是学习过程中主要学会了计算,但是深入思考在算什么(或者等式变换)以及为什么能够这样算(变换)方面不够。当然,确实\((30\div 60)\)的计算有一定技术难度也是一个原因。但是,其根本就是对概念和概念之间的关系关注不够,而主要关注在具体计算上。计算中引入单位,以及积极思考概念和概念之间的关系对解决这两个问题有帮助。只有单位(以及有这个单位的量)才代表了关系,而不是单位前面的那个数。

数和量(由单位代表)不是一个东西。例如,\(\left(60\div 30=2\right)\)什么都不是,完全没有意思,除了代表一个正确的算式。但是,\(\left(路程\div 速度=时间\right)\),或者等价地\(\left(公里 \div 公里/小时=小时\right)\)既代表了一个正确的算式,还代表了正确的观念之间的关系。