layout: post title: "CACM 笔记 (July 2020)" date: 2020-07-31 23:24:01 +0800
大家好我是焦点!!今天开始写一个新的系列,《COMMUNICATIONS OF THE ACM》阅读笔记!!!
我才发现我们学校的图书馆网站上可以看完全体的CACM而不需要去官网上花钱订阅,所以本着学(bai)习(piao)至(wan)上(sui)的精神,同时也是为了督促自己,我准备一边看一边把知识要点呀、文章大意呀等等用笔记的方式记录下来。一方面是为了可以和大家分享,另一方面更主要的是为了自己以后查阅方便一些。当然,由于我的水平有限,肯定许多文章的内容我都理解得不够到位,想要深入学习的话还是建议大家去看原文啦~
闲话少说,就让我们开始吧!
作者: Moshe Y.Vardi
Page 5
这篇文章主要写了作者关于COVID-19疫情之下全球经济系统的思考,同时也简单讨论了一下CS对于全球经济系统的发展都能做些什么。
COVID-19带来的两个危机:1.全球健康危机 2.经济危机。
经济系统过于追求efficiency而因此变得更vulnerable,目前的全球产业链的适应力还很差。
Efficiency不等于optimality。
经济高效不能保证实现社会利益最大化。
经济平衡几乎不可能达成。
就和CS里面的Greedy算法一样,很多时候局部最优也并不会得到整体最优。
经济系统中的数字设施是为数不多没在疫情中崩溃的部份,大家都开始在家办公,网络的快速适应能力正是由这种看起来没效率的redundancy达成的。
作者: Yosuke Ozawa
Page 7
这篇文章的中心思想就是教育我们要不断挑战自己,不断提高自己的极限。主要写了作者在IBM Research、Ecrebo以及自己创业建立Epistra的经历。
Page 9
这是一个回复读者留言的板块。
第一个留言是对"Conferences in an Era of Expensive Carbon" (Mar. 2020)的回复,大意是说,既然计算机科学家都认为全球变暖是个严重的问题,发电会释放温室气体,那就减少用电咯?计算机也少用咯,车也少开咯,上课也别用投影仪咯,在家也别开灯咯?
反正听起来有点抬杠的意思。。。
作者的回答是,通过实际行动来减少碳排放是没错的,为了更行之有效,我们应该着重在那些能够大量减少排放的方面。对于计算机科学家和研究人员来说,主要碳排放的机会是坐飞机参加研讨会。所以各个conference应该开始负起这个环保的责任来。
主编回复说,他也支持减少碳排放。不仅要减少去参加研讨会的旅行,更要减少计算机在制造和运行过程中的碳排放。比如 "What Do DDT and Computing Have in Comment?"(June 2020, p.5) 和 "Owning Computings Environmental Impact" (Mar 2019, p.5) 两篇论文当中就已经提出如何一边减少碳排放一边继续享受计算机带来的福利。
第二个留言是对"Can You Locate Your Locations Data?" (Sept. 2019, p.19)的回复,大意是说,有一种方法可以用来保护自己的隐私,比如有两款手机应用,一款可以限制某些手机应用对于GPS数据的访问以及对外的传送,另一款可以关闭传输能力,来达到不被人通过网络监控的目的。此外,我们应该有能力关闭摄像头和麦克风,至于访问位置查看地图啥的,我们应该提前把地图下载到本地。法律在保护隐私方面应该负起责任来。
主编回复说,他认为主要还是由政府应该推动对隐私的保护,不然很少有人会自主地为了保护隐私而做产品和推广,目前真正关心隐私问题的人也是少数。
第三个留言是对"Beyond the 'FixIt' Treadmill" (May 2020, p.58)的回复,大意是说,这篇文章说的很好很对,并推荐了另一篇报道: "Army Lessons Learned Program."
没有回复。
Page 10-11
本篇分为两个部分
第一部分副标题:The COVID Catalyst
作者:John Arquilla
作者先是说了一下COVID疫情的影响以及和历史上疫情的比较,并谈了谈全世界在这次疫情当中的三点进步。
首先就是居家办公,同时还减少了空气污染和碳排放,对防止全球变暖也有帮助。其次是远程上课,作者感觉远程在线上课比在教室效果好,以后VR技术应该会让远程上课的体验变得更好。第三就是有可能推动建立一个全球医疗研究网络。
各国不应该为了私利而控制信息,应该通过分享信息来使其价值最大化。不仅仅是医疗方面的研究,在各方面都是如此,大家应该有全球意识,才能整合大家的智慧。
疫情或许可以促进环境方面、健康方面以及网络安全的发展。
第二部分副标题:Students Get the Idea They’re Unwanted When There Are Enrollment Barriers: Touring the Best of SIGCSE 2020
作者:Mark Guzdial
ACM Special Interest Group on CS Education (SIGCSE)的科技研讨会被取消了。我白跑了一趟。新发的论文我都看了,很想听听作者的演讲并和他们讨论。推荐论文:“Competitive Enrollment Policies in Computing Departments Negatively Predict First-Year Students’ Sense of Belonging, Self-Efficacy, and Perception of Department”,作者是An Nguyen和Colleen M. Lewis,来自Harvey Mudd College。论文大意是说,对于计算机新生而言,如果竞争压力大的话,他们更会觉得自己不被关心、不自信、不是学计算机的料……
作者:Gregory Mone
Page 12-14
如今的通讯安全系统可能很快就要过期了。虽然适用的量子计算机还没出现,但专家认为是时候开始做准备了,因为这对全球经济的风险太大了。
目前最成功的加密系统依靠的是两个数学问题:大数分解和寻找离散对数。现今的计算机还无法解决这两个问题。在1994年,数学家Peter Shor设计了一种算法来解决,但不是给1和0的数字语言设计的,而是给量子计算机设计的。他使用了量子比特。这些量子比特可以存在于指数级数量的状态的叠加。量子计算机可以用这个算法把两个问题都解决。
所以我们要为“后量子计算机”的世界做准备。德国政府为此资助了七个项目,但大多数的专家都在美国NIST的后量子加密标准化的项目里,为了开发、改进和测试加密算法能在之后依然保证安全。
目前我们没有一个加密算法被证明是无法攻破的,只要不能被10到20年之内被攻破,我们就已经认为这足够好了。但如果有人用量子计算机搞出了个聪明的算法,我们就完了。所以我们需要找到新的、更难的数学问题。幸运的是,人们已经为后量子时代的加密安全准备了20年了。这工作不像是刷墙,而是把每一块砖都换掉重建。
NIST的项目是为了把理论变得可行,并加以测试。最开始收到了82个提议,通过了69个,在之后的测试当中,有些提议又被攻破了,到2019年还剩26个,以后还会减少。比如其中有一个方案很有名,就是格点问题,数年间都没有被攻破。
为了使其能在现实世界中应用,最后的方案还必须很轻量级,不能有过多运算和存储。为了保证线上传输,算法必须要足够快。此外,key的大小也很关键,基于格的加密需要8000 bits,而目前主流的RSA只需要2048 bits,因为有设备限制,所以key越小越好。
不同的算法有不同的优势和特性,所以不会有一个完全符合所有要求的完美算法。No Silver Bullet。
作者:Neil Savage
Page 15-16
AI的发展使更多工作都自动化。或许我们可以让AI来写代码了。 目前已经开始了这方面的研究,目标是只告诉计算机一个应用需要做什么,AI就能把这个应用写好,写的中途可以提出问题。让软件工程师来做设计者而不用处理低级的细节。但目前我们还不完全清楚这该怎么做。
如今AI的主流是神经网络,但当初是符号描述,我们或许需要把这两者结合。因为神经网络很难把事情做得精准,所以无法完成整个编程。我们可以用神经网络来实现结构上的理解,通过遍历和学习成千上万的代码来写出一段不会报TypeError的代码,再用符号方式才完成底层的细节,比如具体在什么地方用什么变量。例如PlinyCompute就是用这种方法来学习一段代码的设计。但PlinyCompute只能识别局部模型,没法识别整体框架以及理解这些部份是如何组合的,所以它无法写出五六十行以上的代码。
程序合成对于有明确定义范围的小问题做得很好,但当规模变大,程序员想具体做什么就更难判断。要么用自然语言描述你想要的结果,要么就给它一堆例子让它学。但两者都不容易说明你真正想干啥。2017年,微软有一个项目叫DeepCoder,就是用神经网络来学习一系列给定输入和输出的例子,来让它用指定的编程语言来写一段程序。
代码自动补全就是机器学习在软件工程当中的一种应用。VS和Intellicode就有这样的功能,通过遍历GitHub上的代码来给出建议,Eclipse和Kite也是一样。DeepCode使用机器学习来检查写好的软件,看有没有安全漏洞。
教机器写代码的一个难点就是缺少数据。虽然GitHub上有很多代码,但很少有描述开发者意图的标识。所以机器没法从一个宏观的指令来知道它具体需要做什么,但如果需要开发者解释的非常详细的话,程序合成也就没啥用了。
因此,机器需要学会分解指令。首先,机器需要理解程序员的目标。然后,机器需要有能力写代码实现目标。最后,机器还需要修改程序来修改漏洞并使其更有效率。
有的地方机器已经做得比人好了,比如生成测试找漏洞。Intel开发的AutoPerf就可以识别出MySQL数据库管理的一个bug并让它的表现变快了70%。AI写程序可以减少错误,增加效率,从而减少支出,也能解放程序员去专注于创意,甚至可以让不会写代码的人也来做软件。
作者:Keith Kirkpatrick
Page 17-19
电子产品越来越多,与之而来的是越来越多的电子垃圾。因为大多含有有害的化学成分,他们无法被废物填埋或者邮去他国处理。电子垃圾处理的核心是拆解。碾碎之后把塑料、金属和其他分开拿去再利用。电路板会被酸溶掉,再把金属分离出来。还有的是用高温熔化。
拆解过程很贵,再利用率只有12%。所以对于难以拆解的材料要减少使用。比如“减重”后的电视机从阴极射线管变成了LED。但减重也不都是好事,轻的材料不代表更容易处理,比如智能手机和平板,元件之间更紧密更难拆。所以有的公司开始把产品做得更易回收或者更新。
中国不再接受外来垃圾使大家更专注电子垃圾的处理。EPEAT主张设计产品的时候就要考虑材料和化学使用、能源效率、回收能力、产品寿命以及产品设计。
电池是目前最受关心的元件。ReCell就专注于电池技术,开发可以更容易回收、更容易恢复、更容易分解的电池材料,并把这些技术工业化。虽然主要针对的是电子交通工具中的锂电池,但普通消费者也能收益。
作者:Pamela Samuelson
Page 20-22
上个世纪七十年代,Commission on New Technological Uses of Copyrighted Works(CONTU)的建立是为了处理与计算机程序输出相关的版权问题。八十年代,Office of Technology Assessment(OTA)开始研究AI著作权的问题。但在当时都是小问题。
但在有了深度学习和其他AI领域的突破之后,AI著作权的问题开始得到重视了。比如The Next Rembrandt里就讲如何开发模型来创造出Rembrandt风格的新画。但对于这新画的著作权,他们没有讨论。2020年2月,美国开始讨论这个问题了。第一个关于AI著作权的诉讼发生在中国。问题主要围绕在:AI软件在法律上是否可以拥有其输出的著作权?该有著作权的是AI还是人?
1979年CONTU的报告认为,计算机和程序就是工具,工具不应该拥有著作权。美国的Copyright Office认为只有人创造的东西才能被著作权保护,所以例如没有人干预的动物或者机器画的画、拍的照都没有著作权。因此Office拒绝为一只猴子的自拍照赋予版权,即便摄影家David Slater辩护说他应该有这张照片的著作权,因为是他把相机摆在哪里的。
这种著作权问题还包含超自然现象。1927年英国的案子,Cummins被古圣人灵魂附身,Bond根据Cummins的叙述写下了作品。最后法院认为Cummins拥有著作权,因为他把灵魂的语言翻译成了英文。。。
软件生成的案例也有,比如2017年美国的Design Data v. Unigate Enterprises案和2018年的Rearden v. Walt Disney Co.案。都是B用了A的软件来生成一些东西,A认为B侵权,法院最后判B没侵权。
中国也有类似的案件。比如Feilin v. Baidu案,中国法院认为,AI生成的东西都不应该受著作权保护,因为作品本身都是由AI生成的,所以没有人类作者。但在和Shenzen Tencent v. Yinxin案当中,说法又与上一个案例不符,认为Shenzen Tencent拥有其AI生成作品的版权。
所以,有的认为AI生成的作品不该拥有版权,有的认为版权应该归程序员所有,有的认为应该归用户,还有的认为应该由程序员和用户共同拥有。主要原因还是因为AI生成的作品是多方共同合作的结果。作者认为,版权应该归用户,因为是最后生成的作品是由用户支配的产物,虽然AI本身有各种算法、分析和模型,但是由用户来发掘和使用出了他的价值。
作者:Marshall W. Van Alstyne
Page 23-25
政治宣传,Facebook上啥都有,Twitter上全没有。扎克伯格认为公司没义务保证政治宣传的真实性。杰克多西则决定拿掉所有政治宣传。
他们都不对。FB污染了政治话语环境,Twitter则使其枯竭。创造一个“真相市场”才是更好的方式,既不需要机器算法,也不需要公司主观判断,只需要防止骗子说谎。
比如在发布政治宣传的时候,让发布者拿出一大笔钱作为诚信押金。如果有人对宣传发出质疑,就由一个独立的机构来调查和决定宣传的真实性。类似的组织有FactCheck.org,Politifact,HoaxSlayer,和Snopes。费用由质疑者承担。如果调查后发现确实是假的,那就把诚信押金交给因此受到损害的一方,作为赔偿。如果调查后发现没问题,那就把诚信押金返还给发布者。假如过了30天,一直都没人发出质疑,那也可以把诚信押金返还给发布者。说白了就是让说谎的代价更高。。。
但如果是半真半假呢?如果是暗示呢?基于有多少虚假成份,就扣多少押金。。。对于有更高声望和影响力的政客而言,押金应该翻倍。对于曾发表过假宣传的政客,押金应该依次增加。
由于调查是由第三方进行的,FB和Twitter就不需自己决策了。这个方法是和“碳市场”学的。消息的发布者需要对其消息负责,并对其造成的社会危害付出代价。虽然可能会影响言论自由,但我们也可以把押金变成自愿的,这样人们会更愿意相信交了押金的消息。因为好卖家会比坏卖家提供更多产品保障,所以可以用押金来自然分出好坏。然而目前在公共媒体上说谎的代价却是0。
作者:Kathleen H. Pine, Margaret M. Hinrichs, Jieshu Wang, Dana Lewis, and Erik Johnston
Page 26-28
为了保证道德和对社会负责任,在计算机领域研究中的监督很有必要,不然容易误入歧途,欲速则不达。比如研究表明,智能城市会对某些人群造成伤害,导致歧视、偏见和霸凌。技术进步并不总是会让所有人都受益,但很少有人在研究时注意道德责任。在研究技术对社会带来价值时,很少有人在意那些意料之外的负面影响。
即使没有故意违背道德,研究的很多影响都是意料之外的。研究中大家妄称自己很关注道德问题,但主要是对公共社会有利的部份。而负面影响都是在实践中才发现的。主要还是研究者对不同的社会群体、社会问题的了解不足,社区人员也没有参与任何研究过程的设计和决定。
对于社区参与的研究,可以想成是一次殖民,用计算机知识对本地社区的一次殖民性的改变,所以要先理解本地社区的复杂和动态,而不是我们用高高在上的破坏性逻辑来加于社区。应该与社区的每个人一起使用能力,而不是把能力施加与社区之上。尽量用社区的知识和资源来解决社区的问题,我们的研究只是中间的一个工具。社区应该知道我们研究的方法,所用的知识,将做的事情,以及受益的人。研究者和社区成员应该平等合作。学者,实践者和社区成员在项目中应该无差别对待。社区参与者应该得到报酬。Institutional Review Boards(IRB)是用来保护研究参与者的,虽然适应起来比较慢,因为社区人员缺少社区参与研究的专业知识。只有共同合作,提高意识,才能做出负责任的研究和设计,减少对社区造成的负面影响。