伯林和自由主义(一)

这段时间阅读伯林的《自由论》及相关书籍,发现伯林的思想广博又深邃,他是哈耶克和波普尔的好友,他的很多想法甚至超越了穆勒,我特别欣赏他坚持在自由的前提下,坚守多元和容忍。伯林有两篇重要的文章,重要得我不得不转到这里来,为此我专门进行了OCR识别,并且人工校对。 第一篇文章是他总结自己的思想史,回顾最重要的两个观点:一是否定历史必然性,即否定决定论,二是再次阐述自己关于消极自由和积极自由的观点。这篇文章摘自伯林的作品《我的思想之路》(1987),全文收录于《观念的力量》(伦敦,2000:温多斯;普林斯顿,2000:普林斯顿大学出版社)。 决定论 政治自由是我在二十世纪五十年代两个讲演的主题。第一个讲演题目是《历史必然性》。在这里,我陈述的观点是:决定论是一种千百年来为无数哲学家广为接受的学说。决定论宣称每个事件都有一个原因,从这个原因中,事件不可避免地产生。这是自然科学的基础:自然规律及这些规律的运用——构成整个自然科学——建立在自然科学所探讨的永恒秩序的观念之上。但是,如果自然的其余部分都是服从于这些规律的,那么唯有人类不服从它们吗?当一个人就像绝大多数平常人(虽然并非绝大多数科学家与哲学家)那样假定,当他从椅子上站起来时他并不是非要这么做不可;他从椅子上起来,是因为他选择这样做,但他并不是必须要做这样的选择——当他这样假定时,他就被告知:这是一种幻觉;随着心理学家的必要工作的完成(它尚未完成,但至少从原则上讲是可以完成的),总有一天他会发现,他的所是和所做都是必然如此的,是不可能不如此的。我相信这个学说是错误的,但我在这篇文章中并没有证明这点,或者说我并没有驳斥决定论,而且我也怀疑这种证明或者驳斥是否可能。我的唯一用心是问自己这两个问题:为什么哲学家或其他人认为人类是完全被决定的?如果他们是这样认为的,那么,这与一般所理解的正常的道德情操及行为是否相容? 我的观点是,主要有两个理由支持人的决定论的学说(注:伯林自己并不认同这两种学说,而是在叙述这两种学说的过程中对它们进行反驳)。 第一个理由是,既然自然科学是整个人类历史中也许最成功的故事,那么假设只有人不服从由自然科学家发现的自然规律,便是非常荒谬的。这的确就是十八世纪的phibsophes(哲人们)所坚持的。当然,问题并不是人是否完全不受这种自然规律决定——只有疯子才会坚持人不依赖他的生物学或心理学结构,不依赖于环境或自然规律。关键的问题是:他的自由是否因此完全被杜绝?是不是还存在着某个角落,在其中他可以做他选择的事情,而不是被前在的原因决定去做这种选择?在自然领域中这也许是个很小的角落,但是除非这个角落存在,他的作为自由的存在物的意识——这种意识无疑是普遍的;绝大多数人相信这种观点,即虽然他们的行为中有些是机械的,有些却是服从他的自由意志的——才不至成为一种巨大的幻觉^这种意识自从人类开始时,即从亚当偷食禁果时就存在了。亚当虽然被告知不要偷食禁果,似偷食了以后也没有这样回答:“我禁不住这样做,我并不是自由地这样做的,是夏娃强迫我这样做的。” 第二个理由是,它把人们做的好多事情的责任,推到非人的原因上面,从而使他们对自己的所作所为有无需负责任的感觉。当我犯了一个错误,或者做了一件坏事,或犯了什么罪,或做了我或其他人认为是坏的或不幸的事情,我会说:“我怎么能够避免得了呢?我就是被教育这样做的”;或者,“这是我的天性,自然规律应该对此负责”;或者,“在我所属的那个社会、阶级、教会、民族中,每个人都是这样做的,而且没有人谴责这样做”;或者,“从心理学上,我是受我的父母彼此之间的行事方式以及他们对我的行事方式决定的,是受我置身其中的经济与社会状况决定的,或者是被迫这样做的,无法做其他选择的”;或者干脆,“我是在执行命令”。 与此相反,大多数人相信每个人都至少能够做出两种选择,两种他能够实现的可能性。当艾希曼说“我杀死犹太人是因为我被命令如此;如果我不这样做我自己也会被杀死”时,人们可能会说:“我觉得你不太可能会选择被杀,但是从原则上讲如果你决定这么做,你就可以这样选择。并不真的存在像自然界中那样的强迫,导致你做出你的行为。”你可能会说,当面临巨大危险时,期望每个人都如此行事是不合理的。的确如此,但是不管多么不可能,在他们“能够”作此选择这一字面意义上,他们都应该决定这么做。殉难是不能期望的,但是殉难是可以接受的,不管其概率有多么小。而且这正是它如此值得称道的原因。 这就是历史上人们接受决定论的理由。但是如果他们接受决定论,那么至少存在着一个逻辑上的困难。这意味着我们不可能对任何人这样说:“你已经这样做了吗?你为什么非要这样做不可?”隐藏在这种说法下面的假定是,他其实可以不这样做,或是可以做其他事情的。我觉得正是我们的全部日常道德观点(在其中我们可以谈及责任与义务、对与错、道德褒贬)——也就是当人们不是被迫行事时(他们能够以另一种方式行事),他们因其所作所为而受到的称赞或谴责、奖励或惩罚——我们日常道德依赖于其上的这种信念与实践的网络,假定了责任的观念;而正是责任使得在黑与白、对与错、快感与义务之间做出选择成为必要;同样,在更广泛的意义上,使得在生活方式、政府形式与整个道德价值星丛中做出选择成为必要——不管他们有没有意识到,大多数人实际上都是根据这些价值星丛来生活的。 如果决定论被接受,那么,我们的词汇就要做出非常根本的改变。我并不是说这事从原则上讲不可能,但是它的确不可能为绝大多数人所承受。在最好的情况下,美学将代替道德。你会羡慕或赞扬某些人的帅气、慷慨或精通音乐,但这不是他们的选择的结果,而是“他们被造就”的结果。道德赞扬也将不得不采取同样的形式:如果我因为你冒着生命危险救我而赞扬你,那么我的意思是说,值得惊叹的是你被如此造就,以致无法避免这样做;而且我非常高兴我遇到的是某个确确实实被决定要去救我的人,而不是一个被决定故意朝另一边看的人。值得尊敬与不值得尊敬的行为、享乐主义与英雄般的殉道、欺诈与真诚正派等等,所有这些都变得像漂亮与丑陋、高与矮、老与少、黑与白、英国或意大利父母所生一样,是我们无法改变的。因为一切都被决定好了。我们可能会希望事情变得如我们所愿,但我们不能为此做些什么——我们被如此造就,以致除了依某种特殊方式行事外无法做任何别的事情。事实上,行动的概念本身就意味着选择;但是如果选择本身是被决定了的,那么在行动与纯粹的动作之间有什么区别呢? 对我来说非常矛盾的是,某些政治运动一方面要求牺牲,另一方面却又持决定论的信念。例如,马克思主义是建立在历史决定论——社会在达到完美境界之前必须经过若干不可避免的阶段——基础上的,它责令人从事痛苦而危险的行动、强迫与斗争,这样一些对于行动者与受动者同样痛苦的事情;但是如果历史真的不可避免地带来完美社会,那么一个人为什么还要为这样一种据说不需要人帮助也会达到其适当而幸福的终点的过程牺牲性命呢?不过,存在着一种古怪的人类情感,即,如果天意在你这一边,你的事业必胜,那么,就像马克思所说的那样你必须牺牲你的生命以缩短这个进程,从而带来新秩序临近的阵痛。不过,是不是那么多的人真的都能被说服去面对这些危险,以缩短那种无论他们行动或不行动都会导致幸福的进程呢?这个问题总是使我、同时也使其他人感到困惑。 我在这个讲座中讨论的问题,一直是具有争论性的问题,它以往被激烈地讨论与争论着,也仍将被激烈地讨论与争论。 关于自由 我的另一篇讨论自由的讲演题目是《两种自由概念》。这是我就任牛津大学教授讲席的致辞。它的要点是区分自由的两种观念,即消极与积极自由。 关于消极自由,我指的是不存在阻碍人行动的障碍。除了由外部世界,或支配人类的生物的、生理的和心理的规律所产生的阻碍外,还存在着缺乏政治自由的阻碍——这是我的讲演的核心。在缺乏政治自由的地方,这些阻碍就是人为的,不管是有意的还是无意的。消极自由的程度取决于这种人为阻碍存在与否,也就是说取决于我不被人为的制度、纪律或某些特定人类的活动所阻止,而自由地沿这条或那条道路前进的程度。 说消极自由仅仅意味着自由地做我喜欢做的事情,这是不够的,因为在那种情况下,我可以简单地遵循古代斯多鳴派消灭欲望的方法,使自己从实现欲望的障碍中解放出来。但是这条路径,即逐渐消除会导致障碍产生的欲望,最后会导致人类逐渐失去其自然的、有活力的活动;换句话说,处于最完美的自由状态的人将是那些死者,因为在他们那里既不存在欲望也不存在障碍。但是我心目中的消极自由,指的仅仅是一个人能够顺着走的那些道路的条数,至于他走不走,那是另一回事。这是政治自由的两个基本含义的第一个。 有些人不赞同我的观点,坚持说自由必须是一种三重关系:我克服、清除或摆脱障碍仅仅是为了做某件事,即自由地做某个或某些既定的行动。但我不接受这种说法。当一个人身陷囹圄或被绑在树上时,他就是不自由的;不自由的最基本的含义就是如此。这种状态中的人唯一寻求的,是打碎他的锁链,逃离监狱,他并不必然是为了实现某个特殊的行动。当然,在更大的意义上,自由意味着摆脱社会或其制度的统治,摆脱某种过分的道德或物质力量所施加的作用,或者摆脱任何关闭行动的可能性的东西——这些可能性本来是可以开放的。这就是我所说的“免于……的自由”。 自由的另外一个核心含义是“做……的自由”。如果我的消极自由通过对“我被控制到何种程度?”这个问题的回答而得到限定,那么,自由的第二个含义,是通过对“谁控制我?”这个问题的回答来限定的。既然我们说的是人为的障碍,那么我就可以问:“谁决定我的行为、生命?我是否能自由地依我选择的方式行事?或者,我是否处于别的控制力量的命令之下?我的行动是不是受父母、学监、牧师、警察的决定?我是不是处于法律制度、资本主义秩序、奴隶主、政府(君主制的、寡头制的和民主制的)的约束之下?我的行动的可能性也许受到限制,但是它们被如何限制?代表我的那些人是谁?他们可以使用的权力有多大?” 这就是我想要探讨的“自由”的两个核心含义。我认识到它们是不同的,是对两种不同性质的问题的回答;它们虽然同源,但在我看来它们却并不冲突,也就是说对其中一种问题的回答并不必然决定对另一种问题的回答。 两种自由都是人类的终极目的,两者都必需受到限制,两种概念在人类历史上都可能被滥用。 消极自由可能被解释成经济的自由放任,据此,矿场主以自由的名义被允许在矿井下摧毁儿童的生命,或者工厂主被允许去摧毁工厂中工人的健康与人格。但是在我看来,那是一种滥用,而不是这个概念对于人类的基本含义。同样,告诉一个穷人说虽然他支付不起,但他完全有自由在一家昂贵的饭店拥有一个房间,这么说无异于嘲弄。但是这种说法也是一种混淆。他的确有在那里租用一间房子的自由,但没有手段使用这种自由。而他之所以没有这种手段,可能是因为一种经济制度阻碍他获得比他现在更多的收入;但这是一种对赚钱的自由的剥夺,而不是对租用房间的自由的剥夺。这听起来好像是一种学究式的区分,但是对于经济自由与政治自由的讨论却是非常关键的。 从历史上看,积极自由的观念甚至导致了更加可怕的滥用。谁对我的生命下命令?我。真的是我吗?无知、混乱、处处受无法控制的激情与的名义。 这正是积极自由观念常常陷入的最大的滥用:不管专制来源于……领袖、国王、法西斯独裁者,还是来自极权式的教会或阶级或国家的主人,它都试图在人性中寻找被禁锢的“真实”自我,并“解放”它,以便这个自我能够达到那些发号施令者的水平。 这就回到了一种天真的观念:每一个问题都只有一个正确的答案:如果我知道这个正确的答案而你不同意我,那是因为你无知;如果你知道真理,你必然会相信我所相信的;如果你想不服从我,只能说明你是错误的,因为那个真理并没有像显示给我那样显示给你。这种说法替人类历史上一些最令人发指的压制与奴役形式辩护;而且这的确是积极自由观念的最危险、最凶残的含义,特别是在我们这个世纪。 从那以后,两种自由观念及它们的被歪曲的形式,在西方以及其他地方的大学里,成为激烈的讨论与争论的中心,今天仍然如此。

July 1, 2021

.NET 6 Preview 5 正式发布,并且Visual Studio 2022 Preview 1也发布了

微软具有里程碑意义的Visual Studio 2022 Preview 1已经正式发布,虽然没有增加新功能,但是这个IDE重点支持64位。与此同时,微软也发布了.NET 6 Preview 5。 https://devblogs.microsoft.com/visualstudio/visual-studio-2022-preview-1-now-available/ https://devblogs.microsoft.com/dotnet/announcing-net-6-preview-5/ https://devblogs.microsoft.com/dotnet/announcing-net-maui-preview-5/ 微软在曾经在4月份在官方的博客文章种宣布了VS2022将会第一次支持64位,不再局限于4GB的内存限制,通过Windows上的64位的Visual Studio,你可以打开,编辑、运行和调试非常复杂的解决方案。 微软通过一个Gif视频展示64位的优势,最新版本的Visual Studio 2022可以轻松打开包含约1600个项目和大约300000个文件的解决方案。 微软在6月17日的文章 Visual Studio 2022 Preview 1 now available!,关键目标是测试和调整新 64 位平台的可扩展性!这是一个巨大的变化,影响到IDE的每一个部分。微软呼吁早期采用者开发者帮助开展这项工作,称"我们需要您的反馈"。VS 2019 功能不包括在预览 1: Web实时预览 仪器分析仪 Azure 云服务项目支持 T-SQL 调试器 Web负载测试和测试控制器/测试代理 Azure数据湖 Coded界面测试 DotFuscator 内置 IDE 集成 智能提示的代码查找并替换 64 位版本Visual Studio 2022 Preview 1 三个版本的早期版本(社区、专业版和企业版) ,现在已经可以下载了:https://visualstudio.microsoft.com/zh-hans/vs/preview/vs2022/

June 18, 2021

关于自然景观和人文景观

今天读到王小波的文章《自然景观和人文景观》,他写出了我对国内的乡村一直很想说的话,我认为他的这篇文章到现在都还没有过时,从我自己的村子到北京这座城市,现在还是如此。 王小波:自然景观和人文景观 我到过欧美的很多城市,美国的城市乏善可陈,欧洲的城市则很耐看。比方说,走到罗马城的街头,古罗马时期的竞技场和中世纪的城堡都在视野之内。这就使你感到置身于几十个世纪的历史之中。走在巴黎的市巾心,周围是漂亮的石头楼房,你可以在铁栅栏上看到几个世纪之前手工打出的精美花饰。英格兰的小城镇保留着过去的古朴风貌,在厚厚的草顶下面,悬挂出木制的啤酒馆招牌。我记忆中最漂亮的城市是德国的海德堡,有一座优美的石桥夹在内卡河上,河对岸的山上是海德堡选帝侯的旧官堡。可以与之相比的有英国的剑桥,大学设在五六百年前的石头楼房里,包围在常春藤的绿荫里——这种校舍不是任何现代建筑可比。比利时的小城市和荷兰的城市,都有无与伦比的优美之处,这种优美之处就是历史。相比之下,美国的城市很是庸俗,塞满了乱糟糟的现代建筑。他们自己都不爱看,到了夏天就跑到欧洲去度假——历史这种东西,可不是想有就能有的呀。 有位意大利的朋友告诉我说,除了脏点、乱—点,北京城很像一座美国的城市。我想了一下,觉得这是实情——北京城里到处是现代建筑,缺少历史感。在我小的时候就不是这样的,那时的北京的确有点与众不同的风格。举个例子来说,我小时候作在北京的郑工府里,那是一座优美的古典庭院,眼看着它就变得面门全非、塞满了四四方方的楼房,丑得要死。郑王府的遭遇就是整个北京城的缩影。顺便说一句,英国的牛津城里,所有的旧房子,屋主有翻修内部之权,但外观一毫不准动,所以那座城市保持着优美的旧貌。所有的人文景观属于我们只有一次。假如你把它扒掉,再重建起来就不是那么回事了。 这位意大利朋友还告诉我说,他去过山海关边的老龙头,看到那些新建的灰砖城楼,觉得很难看。我小时候见过北京城的城楼,还在城楼边玩耍过,所以我不得不同意他的意见。真古迹使人留恋之处,在于它历经沧桑直至如今,在它身边生活,你才会觉得历史至今还活着。要是可以随意翻盖,那就会把历史当作可以随意捏造的东西,一个人尽可夫的娼妇;这两种感觉真是大不相同。这位意大利朋友还说,意大利的古迹可以使他感到自己不是属于一代人,而是属于一族人,从亘古到如今。他觉得这样活着比较好,他的这些想法当然是有道理的,不过,现在我们谈这些已经有点晚了。 谈过了城市和人文景观。也该谈谈乡村和自然景观——谈这些还不晚。房龙曾说,世界上最美丽的乡村就在奥地利的萨尔兹堡附近。那地方我也去过,满山枞木林,农舍就在林中。铺了碎石的小径一尘不染……还有荷兰的牧场,弥漫精心修整的人工美。牧场中央仓放干草的小亭子,油漆得整整齐齐,像是园林工人干的活;因为要把亭子造成那个样于,不但要手艺巧,还要懂什么是好看。让别人看到自己住的地方是—种美丽的自然景观,这也是一种作人的态度。谈论这些域外的风景不是本文土旨,主旨当然还是讨论中国。我前半辈子走南闯北,去过国内不少地方,就我所见,贫困的小山村,只要不是穷到过不下去,多少还有点样。到了靠近城市的地方,人也算有了点钱,才开始难看。家家户户房子宽敞了,院墙也高了,但是样子恶俗,而且门前渐渐和猪窝狗圈相类似。到了城市的近郊,到处是乱倒的垃圾。进到城里以后,街上是干净了,那是因为有清洁工在扫。只要你往楼道里看一看,阳台上看一眼,就会发现,这里住的人比近郊区的人还要邋遢得多。总的来说,我以为现在到处都是既不珍惜人文景观、也不保护自然景观的邋遢娘们邋遢汉。这种人要吃,要喝,要自己住得舒服,别的一概不管。 我的这位意大利朋友是个汉学家。他说,中国入只重写成文字的历史,不重保存环境中的历史。这话从—个意大利人嘴里说出来,叫人无法辩驳。人家对待环境的态度比我们强得多。我以为,每个人都有—部分活在自己所在的环境中,这一部分是不会死的,它会保存在那里,让后世的人看到。住海德堡,在剑桥,在萨尔兹堡,你看到的不仅是现世的人,还有他们的先人,因为世世代代的维护,那地方才会像现在这样漂亮。和青年朋友谈这些,大概还有点用。

June 9, 2021

.NET 6 Preview 4中.NET Core的更新内容

原文:bit.ly/3wFqDy9 作者:Daniel 译者:王亮 .NET 6 预览版 4 现已发布,其中包括对 ASP.NET Core 的许多新改进。 下面是此次预览版中 ASP.NET Core 的更新内容: 1 开始使用 要开始使用 .NET 6 Preview 4 中的 ASP.NET Core,请安装 .NET 6 SDK[1]。 如果你在 Windows 上使用 Visual Studio,我们建议安装 Visual Studio 2019 16.11 的最新预览版。如果你在 macOS 上,我们建议安装 Visual Studio 2019 for Mac 8.10 的最新预览版。 2 升级一个现有的项目 要将一个现有的 ASP.NET Core 应用程序从 .NET 6 Preview 3 升级到.NET 6 Preview 4。 将所有 Microsoft.AspNetCore. 引用包更新为 6.0.0-preview.4.。 更新所有 Microsoft.Extensions. 引用包更新为 6.0.0-preview.4.。 请参阅 .NET 6 中 ASP.NET Core 的完整中断变化列表[2]。 ...

June 8, 2021

重读王小波

这几日开始重读王小波的作品,打算从《沉默的大多数》到《黄金时代》、《白银时代》、《青铜时代》和《革命时期的爱情》,然后把王小波全集剩下的文章都读一遍。前面这四本书是我在大学的时候读过的图书,那时候大一宿舍有一位江苏的舍友,他姐姐是南京师范大学的中文系学生,极力推荐他读王小波,我受他的影响读完了这几本书。那时候读王小波,觉得很奇特,但我觉得自己并没有完全读懂他。虽然如此,我相信王小波对我的影响很大,这种影响是不知不觉中的影响,那时候中文互联网还很自由,我们都还可以使用谷歌的手气不错,那时候真的是中国互联网的黄金时代。 这次我放弃那种囫囵吞枣、一目十行的阅读方法,而是细致阅读,特别是阅读《沉默的大多数》的时候。这两天读到《中国知识分子与中古遗风》里面关于知识分子最害怕的事情,王小波真是太睿智了,这段话至今依然令人惊叹: “我也有一个问题,是这样的:什么是知识分子最害怕的事?而且我也有答案,自以为经得起全球知识分子的质疑,那就是:知识分子最怕活在不理智的年代。所谓不理智的年代,就是伽利略低头认罪,承认地球不转的年代,也是拉瓦锡上断头台的年代;是茨威格服毒自杀的年代,也是老舍跳进太平湖的年代。 “我认为,知识分子的长处只是会以理服人,假如不讲理,他就没有长处,只有短处,活着没意思,不如死掉。丹麦王子哈姆雷特说:活着呢,还是死去,这是问题。但知识分子赶上这么个年代,死活不是问题。最大的问题是:这个倒霉的年头儿何时过去。假如能赶上这年头过去,就活着;赶不上了就犯不着再拖下去。 “老舍先生自杀的年代,我已经懂事了,认识不少知识分子。虽然我当时是个孩子,但嘴很严,所以也是他们谈话的对象。就我所知,他们最关心的正是赶得上赶不上的问题。在那年头死掉的知识分子,只要不是被杀,准是觉得赶不上好年头了。而活下来的准觉得自己还能赶上——当然,被改造好了、不再是知识分子的人不在此列。因此我对自己的答案颇有信心,敢拿这事和天下人打赌,知识分子最大的不幸,就是这种不理智。”

June 7, 2021

隐形马尔可夫模型(HMM)

什么是熵(Entropy) 简单来说,熵是表示物质系统状态的一种度量,用它老表征系统的无序程度。熵越大,系统越无序,意味着系统结构和运动的不确定和无规则;反之,,熵越小,系统越有序,意味着具有确定和有规则的运动状态。熵的中文意思是热量被温度除的商。负熵是物质系统有序化,组织化,复杂化状态的一种度量。 熵最早来原于物理学. 德国物理学家鲁道夫·克劳修斯首次提出熵的概念,用来表示任何一种能量在空间中分布的均匀程度,能量分布得越均匀,熵就越大。 一滴墨水滴在清水中,部成了一杯淡蓝色溶液热水晾在空气中,热量会传到空气中,最后使得温度一致更多的一些生活中的例子: 熵力的一个例子是耳机线,我们将耳机线整理好放进口袋,下次再拿出来已经乱了。让耳机线乱掉的看不见的“力”就是熵力,耳机线喜欢变成更混乱。熵力另一个具体的例子是弹性力。一根弹簧的力,就是熵力。 胡克定律其实也是一种熵力的表现。万有引力也是熵力的一种(热烈讨论的话题)。浑水澄清 于是从微观看,熵就表现了这个系统所处状态的不确定性程度。香农,描述一个信息系统的时候就借用了熵的概念,这里熵表示的是这个信息系统的平均信息量(平均不确定程度)。 最大熵模型 我们在投资时常常讲不要把所有的鸡蛋放在一个篮子里,这样可以降低风险。在信息处理中,这个原理同样适用。在数学上,这个原理称为最大熵原理(the maximum entropy principle)。 让我们看一个拼音转汉字的简单的例子。假如输入的拼音是"wang-xiao-bo",利用语言模型,根据有限的上下文(比如前两个词),我们能给出两个最常见的名字“王小波”和“王晓波 ”。至于要唯一确定是哪个名字就难了,即使利用较长的上下文也做不到。当然,我们知道如果通篇文章是介绍文学的,作家王小波的可能性就较大;而在讨论两岸关系时,台湾学者王晓波的可能性会较大。在上面的例子中,我们只需要综合两类不同的信息,即主题信息和上下文信息。虽然有不少凑合的办法,比如:分成成千上万种的不同的主题单独处理,或者对每种信息的作用加权平均等等,但都不能准确而圆满地解决问题,这样好比以前我们谈到的行星运动模型中的小圆套大圆打补丁的方法。在很多应用中,我们需要综合几十甚至上百种不同的信息,这种小圆套大圆的方法显然行不通。 数学上最漂亮的办法是最大熵(maximum entropy)模型,它相当于行星运动的椭圆模型。“最大熵”这个名词听起来很深奥,但是它的原理很简单,我们每天都在用。说白了,就是要保留全部的不确定性,将风险降到最小。 回到我们刚才谈到的拼音转汉字的例子,我们已知两种信息,第一,根据语言模型,wangxiao-bo可以被转换成王晓波和王小波;第二,根据主题,王小波是作家,《黄金时代》的作者等等,而王晓波是台湾研究两岸关系的学者。因此,我们就可以建立一个最大熵模型,同时满足这两种信息。现在的问题是,这样一个模型是否存在。匈牙利著名数学家、信息论最高奖香农奖得主希萨(Csiszar)证明,对任何一组不自相矛盾的信息,这个最大熵模型不仅存在,而且是唯一的。而且它们都有同一个非常简单的形式 – 指数函数。下面公式是根据上下文(前两个词)和主题预测下一个词的最大熵模型,其中 w3 是要预测的词(王晓波或者王小波)w1 和 w2 是它的前两个字(比如说它们分别是“出版”,和“”),也就是其上下文的一个大致估计,subject 表示主题。 我们看到,在上面的公式中,有几个参数lambda和Z,他们需要通过观测数据训练出来。最大熵模型在形式上是最漂亮的统计模型,而在实现上是最复杂的模型之一。 我们上次谈到用最大熵模型可以将各种信息综合在一起。我们留下一个问题没有回答,就是如何构造最大熵模型。我们已经所有的最大熵模型都是指数函数的形式,现在只需要确定指数函数的参数就可以了,这个过程称为模型的训练。 最原始的最大熵模型的训练方法是一种称为通用迭代算法 GIS(generalized iterative scaling) 的迭代 算法。GIS 的原理并不复杂,大致可以概括为以下几个步骤: 假定第零次迭代的初始模型为等概率的均匀分布。 用第 N 次迭代的模型来估算每种信息特征在训练数据中的分布,如果超过了实际的,就把相应的模型参数变小;否则,将它们便大。 重复步骤 2 直到收敛。 GIS 最早是由 Darroch 和 Ratcliff 在七十年代提出的。但是,这两人没有能对这种算法的物理含义进行很好地解释。后来是由数学家希萨(Csiszar)解释清楚的,因此,人们在谈到这个算法时,总是同时引用 Darroch 和Ratcliff 以及希萨的两篇论文。GIS 算法每次迭代的时间都很长,需要迭代很多次才能收敛,而且不太稳定,即使在 64 位计算机上都会出现溢出。因此,在实际应用中很少有人真正使用 GIS。大家只是通过它来了解最大熵模型的算法。 八十年代,很有天才的孪生兄弟的达拉皮垂(Della Pietra)在 IBM 对 GIS 算法进行了两方面的改进,提出了改进迭代算法 IIS(improved iterative scaling)。这使得最大熵模型的训练时间缩短了一到两个数量级。这样最大熵模型才有可能变得实用。即使如此,在当时也只有 IBM 有条件是用最大熵模型。 由于最大熵模型在数学上十分完美,对科学家们有很大的诱惑力,因此不少研究者试图把自己的问题用一个类似最大熵的近似模型去套。谁知这一近似,最大熵模型就变得不完美了,结果可想而知,比打补丁的凑合的方法也好不了多少。于是,不少热心人又放弃了这种方法。第一个在实际信息处理应用中验证了最大熵模型的优势的,是宾夕法尼亚大学马库斯的另一个高徒原 IBM 现微软的研究员拉纳帕提(Adwait Ratnaparkhi)。拉纳帕提的聪明之处在于他没有对最大熵模型进行近似,而是找到了几个最适合用最大熵模型、而计算量相对不太大的自然语言处理问题,比如词性标注和句法分析。拉纳帕提成功地将上下文信息、词性(名词、动词和形容词等)、句子成分(主谓宾)通过最大熵模型结合起来,做出了当时世界上最好的词性标识系统和句法分析器。拉纳帕提的论文发表后让人们耳目一新。拉纳帕提的词性标注系统,至今仍然是使用单一方法最好的系统。科学家们从拉纳帕提的成就中,又看到了用最大熵模型解决复杂的文字信息处理的希望。 ...

June 7, 2021

龙应台的《目送》

华安上小学第一天,我和他手牵着手,穿过好几条街,到维多利亚小学。九月初,家家户户院子里的苹果和梨树都缀满了拳头大小的果子,枝丫因为负重而沉沉下垂,越出了树篱,钩到过路行人的头发。 很多很多的孩子,在操场上等候上课的第一声铃响。小小的手,圈在爸爸的、妈妈的手心里,怯怯的眼神,打量着周遭。他们是幼儿园的毕业生,但是他们还不知道一个定律:一件事情的毕业,永远是另一件事情的开启。 铃声一响,顿时人影错杂,奔往不同方向,但是在那么多穿梭纷乱的人群里,我无比清楚地看着自己孩子的背影──就好像在一百个婴儿同时哭声大作时,你仍旧能够准确听出自己那一个的位置。华安背着一个五颜六色的书包往前走,但是他不断地回头;好像穿越一条无边无际的时空长河,他的视线和我凝望的眼光隔空交会。 我看着他瘦小的背影消失在门里。 十六岁,他到美国做交换生一年。我送他到机场。告别时,照例拥抱,我的头只能贴到他的胸口,好像抱住了长颈鹿的脚。他很明显地在勉强忍受母亲的深情。 他在长长的行列里,等候护照检验;我就站在外面,用眼睛跟着他的背影一寸一寸往前挪。终于轮到他,在海关窗口停留片刻,然后拿回护照,闪入一扇门,倏忽不见。 我一直在等候,等候他消失前的回头一瞥。但是他没有,一次都没有。 现在他二十一岁,上的大学,正好是我教课的大学。但即使是同路,他也不愿搭我的车。即使同车,他戴上耳机──只有一个人能听的音乐,是一扇紧闭的门。有时他在对街等候公交车,我从高楼的窗口往下看:一个高高瘦瘦的青年,眼睛望向灰色的海;我只能想象,他的内在世界和我的一样波涛深邃,但是,我进不去。一会儿公交车来了,挡住了他的身影。车子开走,一条空荡荡的街,只立着一只邮筒。 我慢慢地、慢慢地了解到,所谓父女母子一场,只不过意味着,你和他的缘分就是今生今世不断地在目送他的背影渐行渐远。你站立在小路的这一端,看着他逐渐消失在小路转弯的地方,而且,他用背影默默告诉你:不必追。 我慢慢地、慢慢地意识到,我的落寞,仿佛和另一个背影有关。 博士学位读完之后,我回台湾教书。到大学报到第一天,父亲用他那辆运送饲料的廉价小货车长途送我。到了我才发觉,他没开到大学正门口,而是停在侧门的窄巷边。卸下行李之后,他爬回车内,准备回去,明明启动了引擎,却又摇下车窗,头伸出来说:“女儿,爸爸觉得很对不起你,这种车子实在不是送大学教授的车子。” 我看着他的小货车小心地倒车,然后“噗噗”驶出巷口,留下一团黑烟。直到车子转弯看不见了,我还站在那里,一口皮箱旁。 每个礼拜到医院去看他,是十几年后的时光了。推着他的轮椅散步,他的头低垂到胸口。有一次,发现排泄物淋满了他的裤腿,我蹲下来用自己的手帕帮他擦拭,裙子也沾上了粪便,但是我必须就这样赶回台北上班。护士接过他的轮椅,我拎起皮包,看着轮椅的背影,在自动玻璃门前稍停,然后没入门后。 我总是在暮色沉沉中奔向机场。 火葬场的炉门前,棺木是一只巨大而沉重的抽屉,缓缓往前滑行。没有想到可以站得那么近,距离炉门也不过五米。雨丝被风吹斜,飘进长廊内。我掠开雨湿了前额的头发,深深、深深地凝望,希望记得这最后一次的目送。 我慢慢地、慢慢地了解到,所谓父女母子一场,只不过意味着,你和他的缘分就是今生今世不断地在目送他的背影渐行渐远。你站立在小路的这一端,看着他逐渐消失在小路转弯的地方,而且,他用背影默默告诉你:不必追。

June 3, 2021

社区正式发布.NET 6 Preview4

时间过得真快,.NET 5我还没有来得及研究,眼看.NET 6的正式版本马上就要来了,我一直期待这个版本,因为这是LTS版本,我们团队会迁移到这个版本上来。 社区一直在不断推进.NET 6的可用性,Build 2021大会发布了Preview4,这个版本更新很大,可能与最终的版本相差不大,,正式发布RC版本是在8月份,正式发布RTM版本是在11月 ,到时后.NET正式完成.NET Framwork和.NET Core以及Mono的功能统一,还是非常值得期待的。 新产品功能: System.Text.Json support for IAsyncEnumerable System.Text.Json: Writable DOM Feature Microsoft.Extensions.Logging compile-time source generator System.Linq enhancements Significantly improved FileStream performance on Windows Enhanced Date, Time and Time Zone support CodeGen .NET Diagnostics: EventPipe for Mono and Improved EventPipe Performance IL trimming Single-file publishing CLI install of .NET 6 SDK Optional Workloads Built-in SDK version checking CLI Templates (dotnet new) 另外,还有.NET MAUI或多平台应用UI :允许开发人员构建适用于Windows、MacOS、ios 和android的应用程序,共享单一代码库和模板。 ASP.NET Blazor混合应用程序:帮助开发人员构建基于Web的跨平台桌面体验,从而利用本机设备功能。 对ARM的加强支持:包括 Silicon 和ARM64支持。

May 26, 2021

马尔可夫链(Markov Chain)

马尔可夫链是一种非常重要的随机过程模型,在排队论、预测等方面有非常多的应用,当年我考数学系的时候就是冲着学校有一位马尔可夫领域的顶级数学家,不过后来自己越走越偏,也没有来得及进修这个算法。 随机过程 讲马尔可夫链不得不提到随机过程。顾名思义,它其实就是个过程,比如今天下雨,那么明天下不下雨呢?后天下不下雨呢?从今天下雨到明天不下雨再到后天下雨,这就是个过程。那么怎么预测N天后到底下不下雨呢?这其实是可以利用公式进行计算的,随机过程就是这样一个工具,把整个过程进行量化处理,用公式就可以推导出来N天后的天气状况,下雨的概率是多少,不下雨的概率是多少。 说白了,随机过程就是一些统计模型,利用这些统计模型可以对自然界的一些事物进行预测和处理,比如天气预报,比如股票,比如市场分析,比如人工智能。它的应用还真是多了去了。 马尔可夫链 (Markov Chain) 马尔可夫链 (Markov Chain)是随机过程中的一种过程,到底是哪一种过程呢?好像一两句话也说不清楚,还是先看个例子吧。 比如一个人,每天中午12点的标配,仨状态:吃,玩,睡。这就是传说中的状态分布。 你想知道他n天后中午12点的状态么?是在吃,还是在玩,还是在睡?这些状态发生的概率分别都是多少? 先看个假设,他每个状态的转移都是有概率的,比如今天玩,明天睡的概率是几,今天玩,明天也玩的概率是几几,看图更清楚一点。 这个矩阵就是转移概率矩阵P,并且它是保持不变的,就是说第一天到第二天的转移概率矩阵跟第二天到第三天的转移概率矩阵是一样的。(这个叫时齐,不细说了,有兴趣的同学自行百度)。 有了这个矩阵,再加上已知的第一天的状态分布,就可以计算出第N天的状态分布了。 S1 是4月1号中午12点的的状态分布矩阵 [0.6, 0.2, 0.2],里面的数字分别代表吃的概率,玩的概率,睡的概率。 那么 4月2号的状态分布矩阵 S2 = S1 * P (俩矩阵相乘)。 4月3号的状态分布矩阵 S3 = S2 * P (跟S1无关,只跟S2有关)。 4月4号的状态分布矩阵 S4 = S3 * P (跟S1,S2无关,只跟S3有关)。 … 4月n号的状态分布矩阵 Sn = Sn-1 * P (只跟它前面一个状态Sn-1有关)。 总结 马尔可夫链就是这样一个任性的过程,它将来的状态分布只取决于现在,跟过去无关!就把下面这幅图想象成是一个马尔可夫链吧。实际上就是一个随机变量随时间按照Markov性进行变化的过程。

May 24, 2021

自由多元文化主义

去年一整年在阅读政治哲学方面的图书,前段时间读完金里卡先生的《当代政治哲学》,开始对自由多元文化注意产生浓厚的兴趣,“多元文化主义的自由主义”在上世纪末以来,一直是欧美倡导的价值观,特别是澳大利亚、新西兰和加拿大,这三个主要的移民国家几乎把自由多元文化注意当成本国的主流价值观。 这段时间先后阅读了十几篇论文,包括周濂老师的《如果多元文化主义是答案,它的问题是什么》、《澳大利亚多元文化主义政策的形成》、《多元文化主义的兴衰?关于多样性社会中接纳和包容的新争论》,这是我的文献综述结果: 我觉得自己下一步可以集中重读罗尔斯和金里卡,做更深入的思考,目前我的初步感觉是:自由多元主义是非常美好的理想,而且也有实际操作的可能,现实中的澳大利亚、加拿大和新西兰做得也非常不错。即使如此,我仍然相信在宪政制度下要真正平稳地运行自由多元主义,其实需要更高的社会成本和更高的公民素质。 更进一步,我甚至认为自由多元文化主义有可能最适合的运用是:已经能保障基本自由和人权、并且收入水平达到发达国家水平的移民国家。 这里我要说明:如果一个国家已经建立起了自由多元文化主义,那么哪怕物质收入水平下降到发展中国家,也适用自由多元文化主义这一价值体系。对于加拿大、澳大利亚和新西兰这几个著名的移民国家,如果轻易放弃自由多元主义,那么将是莫大的损失和悲哀。 对于美国和欧洲来说,践行自由多元主义(这里指让其成为社会主流),可能会面临很多困难和阻碍,但是我觉得这不是放弃理想的理由。

May 23, 2021