最近人工智能好像特别火,至少从高考和考研的专业分数上就可以看出来,从基金申报趋势也可以看出来,就连核聚变领域也有非常多的人工智能论文和项目。大家都知道人工智能解决了很多问题,比如识别猫和狗、预报天气、控制托卡马克等离子体、帮你写论文和作业等等。大家都开始学Python,学线性代数学概率论,想要掌握人工智能,解决自己身边的难题。
我也研究了几年人工智能了,发现也许我们除了自然科学知识,还需好好学历史。
这个观点是怎么产生的呢。这要说起很久以前,我们家小朋友的一次家长会,老师鼓励小朋友们多看书。然后给了一个不同的书对学习成绩的影响。
可以看到看科普类的书对学习成绩有明显的好处,但是看历史类的书籍好像没啥鸟用。 我们家小朋友那个时候最喜欢看历史书了,尤其是中国古代历史,比我熟多了,有哪几个朝代发生了啥,有哪几个皇帝,分别有啥癖好啥的。看历史书真的没鸟用吗?
当时我就想到了机器学习(其实人工智能并不一定是机器学习,但是机器学习是目前实现人工智能最重要的方式,下面我可能会混着说)。机器学习不就是样本中找到规律,然后就行预测?历史不也是一种数据吗?
这里我们看看机器学习人工智能的本质。这里简单说一下,可能并不太准确,不过对于这篇文章来说足够了。机器学习就是建立一个模型,他给出一个输入变量X和输出变量Y之间的关系,这个关系是通过从大量的样本数据中学到的。 这个关系可以用来接近一个条件概率分布P(Y|X),或者P(X),总的来说就是一个复杂系统可以建模为一个P(Y,X)的一个随机过程。例如,X=一个狗子的照片,Y是这个动物的种类,机器学习模型看到这个照片X以后会告诉你,这个8成是个狗。这个被近似的概率分布可以被看作是一个复杂系统的本质。比如狗这个物种的外形特征就是一个复杂系统,只要他是狗子,他的外形就一定满足某规则,但是这个系统太复杂了,没有办法用人类能表述规则来描述。相反有些系统,规则很简单,比如我定义加法这个系统1+1=2,2+2=4……,。我如果用机器学习,给他很多的算例,他也能学会加法,例如x=(1,1),那么Y有9.9成=1。但是这个系统规则太简单了,就没有必要用机器学习。
也就是说,当有一个非常复杂的系统,背后govern他的规则特别复杂,没有办法描述。那么可以利用这个系统产生的大量数据,通过机器学习,从数据中得到一个近似的模型来代替这个系统,从而对这个系统的进行预测。 那这个和历史有什么关系呢?这个复杂系统产生样本的过程,是不是就可以理解为历史呢?要想预测天气需要大量天气的历史数据,这个是字面上的历史。要想识别狗子,需要大量已经存在的狗子猫子的照片,要想下围棋非常厉害,人工智能要和自己下上千万盘棋。也就是说所有的样本,可以认为是这个复杂系统运行产生的历史。
那学习历史为什么重要呢?我们人类的历史是什么系统产生的?是人类、人类社会产生的。人类社会是一个复杂的系统这个没有问题吧,我相信没有什么简单或者足够简单的规则可以描述人类社会是怎么运作的。 因此想要在人类社会中,能够成功,顺利的活下去,成为伟人什么的,都需要从历史数据中找到规律,从而掌握社会运作的规律,然后成为一个成功的社会人。这不是和机器学习一个意思吗。你看领导人什么的都是要认真的学历史的,古代的帝王大臣们基本上最重要的就是学历史了。
有句话,叫历史都是惊人的相似,历史总是不断重复,历史的车轮啥的。也说明了,人类社会这个复杂系统,让相似的样本出现了很多次 。如果能够发现这些相似规律不就可以预测未来吗,能预测未来还不能称王称帝?其实这个机器学习理论中也有类似的表现。例如有一篇论文,我经常提到“Every Model Learned by Gradient Descent Is Approximately a Kernel Machine”。这是说所有梯度下降训练(绝大多数机器学习模型)的模型都是一个kernel machine。什么是kernel machine呢?这个给我一个小时也说不明白,你可以理解为就是在一个复杂的空间中找到相似的东西(非常不准确,但是就这样吧)。例如你给一个旺财的照片,机器学习模型会在一个空间(就算不是在是原来的图片像素空间,而是经过变化)中找到10张照片和这个类似的照片,其中8张是狗子,2张是猫,他就说你给的照片8成是狗子。也就是说,你学了历史,看到眼前的情况和历史中几个什么事件很类似,有一种deja vu的感觉,那么历史很有可能就要重演了。看看今天和历史上哪一天比较像,后来怎么发展的,那么怎么选择怎么站队,应该就清楚了吧。
这个时候有朋友要说了,要真这么简单,那大家学好历史都可以预测未来了,为啥我炒股还是亏钱,那历史为啥有时候又给我这么多意外?这个就要引入一个新的概念了,叫Domain Shift(领域偏移)。Domain,领域,就是一个机器学习模型适用的范围,比如识别猫狗的模型,就无法识别牛和羊。历史随着人类的发展也是不断在在变化的,这个在机器学习里面还有个专门的说法non-stationary time series,也就是不同的时代就像是不同的Domain,他们之间是有偏移的 。就好比说,你看历史上唐朝,以胖为美,但到了宋朝就是以瘦为美。你要根据唐朝历史,还是胡吃海喝,在宋朝肯定当不了妃子。那这样的话历史是不是不灵了?
这个时候,我们还是从机器学习找灵感哈。不同的时代,可以算是两个不同的domain,有没有什么办法可以让从以前的历史学到规律对新的时代也有用呢?这里就可以用到所谓的迁移学习,也就是transfer learning,具体提的,用一种domain generalization(领域泛化)的方法。就是学到一个对不同的domain都有用的规律,也就是不管是古代还是现代都管用的规律。这里我们想一下,人类社会这个复杂系统,决定他运行的底层的规则是什么(the underlying laws)。是法律、道德、习俗、宗教?这些是不变的吗?并不是,在历史中这些东西不断地在变化。我们要从历史中学到真正不变的规则,不管在哪个时期、哪个朝代都管用的道理。这个在领域泛化里面,有一类方法叫做domain invariant learning(领域不变学习)。那在人类社会中,什么是不变的呢?我认为是人性(humanity),不管是石器时代、还是信息时代、不管是古罗马过希腊,还是十字军,还是文艺复兴,还是工业革命,不管是奴隶制、封建君主制,还是社会主义,背后的一切都是人性所驱动的,社会上每一个人在面对这个时代做的决定,都是人性决定的,每个人可能会做不同的决定,但都可以理解是人性这个背后的概率分布下采样的结果。为什么说人性是“domain invariant”的呢?因为人性是由基因决定的。而人类的基因,是在百万年的进化过程中确定下来的。人类(Homo sapiens)已经在地球上存在了300万年了,这段时间内,我们的基因都没有太大的变化,我们还是会害怕黑暗和蜘蛛,和我们的祖先一样。就是这个不变的人性一直在governing人类社会。
历史,不同的时代,看起来可能完全不一样,在人人平等的今天你无法想象,为什么会有教皇、为什么有皇帝,为什么皇帝可以把仆人的小鸡鸡剪掉、可以有1000个老婆。但是仔细一想这都是人性。由于不同的时期,人类对自然的理解、掌握的资源不同,也就是生产力水平不同,同样的人性就会创造不同的历史。这里认为历史数据构成一个特征空间X的话,人性就是一个底层的特征空间Z(latent space),这个Z就是我们说的领域不变的特征(domain invariant features),不同的生产力水平对应的是Z->X的一个变换。不管X空间怎么变化,你能够看透这个时代,看到背后人性不变的本质,你就能在任何时候都做出历史上正确的决定。
所以你不仅仅是要学习近代历史、现代历史,古代的你也要学,甚至史前的,从石器时代、盘古开天地时期的就要学。不仅仅是中国的,还有外国的、非洲的,只要是人类的历史都要学,domain要越多越好。才能从各种各样不同的历史数据中找到其中的共同的特性,也就是我们要的domain invariant features,也就是人性 ,从而实现领域泛化。之后你可以通过仔细观察当下,然后你所知道的不变的人性套到当今的时代中,你就能正确的判断未来了。这个在transfer Learning技术里面里面就是fine tune这个技巧。
但是这里有个问题了,就是300万年的人类历史,有记录的历史只有一点点。大家都知道深度学习是非常吃数据的,数据不够多训练出来的模型多半不太行,那这么点历史足够我们掌握人性吗?这里就要提人类的牛逼之处了,人类相对于数据驱动的模型,是有很强的归纳总结能力的。除了历史,还有很多别的学科,人类其实建立了很多理论体系,比如社会学、行为学、心理学、经济学、法学、管理学等等理论体系。这些理论其实是我们对人性已有理解。这些理论当然不能够完美的预测人类社会这样一个复杂系统,但是他对人类社会很多现象是可以解释的,大部分现象也是满足这些规律的约束的。例如人都有所谓的七情六欲,就是一种对人性规律的总结。例如当有个人很生气的时候,那么他打你屁股的概率就会很高。因此,这种规律可以用来指导我们从历史中学习规律,可以帮助我们我们解释一些历史中的很多事件,让我们学到更加接近人性本质的知识,也可以避免我们被一些历史极端事件给带偏。这个就是现在现在非常流行的Physics informed machine learning(PIML),也就是物理启发的机器学习(翻译可能不准)。PIML不仅可以减少我们对数据的依赖,也可以帮助我们更好的泛化,也就是找到更准确的domain invariant features。
这里我插播一个小广告,我今年计划申报的自然科学基金就是基于物理启发的的领域泛化深度学习技术(physics informed deep domain generalization),用于实现跨装置托卡马克等离子体的破裂预测(cross tokamak plasma disruption prediction)的一个研究。他利用现有托卡马克实验数据来保障未来托卡马克聚变堆的安全运行。意义非常重大哦,如果大家要碰到了,谢谢支持啦。
好了大家都知道学好历史非常重要了,那我们怎么学呢?这个很简单啦,就是阅读大量历史数据的同时,学习下一下社会学、法学等等理论就可以了。这里我再简单说一下,如果要阅读大量历史数据的话,有没有什么选择?首先前面说过的,为了保证泛化,能够得到领域不变的结果,尽量保证你看的历史的多样性,古今中外,这个其实还有一定难度,你懂的。
针对选择什么形式的历史数据,现在很多中小学历史教材,我觉得就不是一个很好的数据集。为什那么呢,那些历史书,基本就是一个时间表,几几年,什么朝代,发生了什么事。这个虽然是历史,但是这里面能学到什么本质吗?相比来说,很多历史故事就更加合适,例如《资治通鉴》、《史记》这些,它里面都是以故事的形式描述的历史事件,所谓的纪传体。从机器学习的角度说,中小学历史课本就是一个feature engineering后的数据集 ,而历史故事就是raw data。对于深度学习来说raw data会更加合适。因为feature engineering会提取数据中所谓的有用的特征。而这个提取特征的过程是依赖人类对这个复杂系统本质的理解上的,这些理解本身可能是不全面的,甚至是基于某些假设的。这样可以让一些简单的算法模型训练更容易一些。就是说你靠这个学历史,去期末考试肯定会考得更好。但是我们作为人类,脑子比深度学习模型还深,我们目的也不仅仅是考试,而是探索社会的规律,成为一个成功的社会人。这种feature engineering以后的教科书会限制你探索历史中未知的规律的。
然后就是有很多历史小说和影视作品。其实我觉得也是很合适的。这些作品在历史的基础上往往做了一些演绎,对很多历史事件进行了夸张。这个很多人觉得可能是有问题。从机器学习的角度出发,这些演绎其实是对其中的人性的本质做了一些夸张,大家会发现人物塑造更加细致、人物的性格更加突出,这个可以认为是一种数据增强(data augmentation),能让你更加关注于人性的本质。是一种通过数据增强增加inductive bias的方式。 但是很多时候,这些演绎是为了收视率和销量而加上去的,一定要避免,数据增强里面常见的坑,就是添加太多不真实的样本,这个可以配合前面的PIML,通过已知的人性规则来降低这些不合理样本的影响力。
好了,最后我总结一下吧。人工智能告诉我们,学历史可以掌握人类社会本质规律,让你成为一个牛逼的社会人。学历史要学domain invariant的东西,看透表现看到人性的本质,不管哪个朝代都管用。Physics informed machine learning告诉我们除了数据,已知的理论、规律也可以指导我们学习历史。历史数据要丰富,尽量输入原始数据,就是历史故事、纪传体通史什么的,不要feature engineering以后的那种中小学教科书。
这个世界还是需要科学家和工程师的,不过Nikola Tesla发明了交流电,但是现在最大的电气公司之一GE却是他对手爱迪生公司发展来的;Alan Turing破解了Enigma code却被化学阉割了;J. Robert Oppenheimer造出了第一个原子弹,在广岛和长崎引爆原子弹却不是他的决定;那么多研究病毒的科学家,也不能决定隔离几天。也许学历史真的影响学习成绩,不过好像有时候学习成绩不好也挺好。
"教育厅重磅发布:这件事对提高孩子成绩效果最差!可几乎每个家长都在做!", https://www.sohu.com/a/325827392_695359
"Why Study History?" by Peter N. Stearns, The American Historical Association.
"Machine Learning for Earth System Science" by Yves-Alexandre de Montjoye, et al.
"The Meaning of Human Existence" by Edward O. Wilson, Liveright.
"Every Model Learned by Gradient Descent Is Approximately a Kernel Machine",arXiv:2012.00152
"AdaRNN: Adaptive Learning and Forecasting of Time Series", arXiv.2108.04443
"On Learning Invariant Representation for Domain Adaptation", arXiv:1901.09453
"A Comprehensive Survey on Transfer Learning", arXiv:1911.02685
"Domain Generalization: A Survey", arXiv:2103.02503
"Domain-invariant Feature Exploration for Domain Generalization", arXiv:2207.12020
"Physics-informed machine learning", Nat Rev Phys 3, 422–440 (2021). https://doi.org/10.1038/s42254-021-00314-5
"Why Historical Fiction Is Important For Children’s Learning", https://www.kidpressroom.com/historical-fiction-for-childrens-learning/
"Vitamins in Chocolate Cake: Why Use Historical Fiction in the Classroom?", https://teachinghistory.org/nhec-blog/24679
琪琪学姐吖 2024-11-17
汽势Auto-First 2024-11-17
金管证监干货通 2024-11-17
量化计算科技有限公司 2024-11-17