作 Tom Silver
栗子 & Root 编译自 MIT Blog
量子位 出品 | 公众号 QbitAI
做研究,特别是在AI领域做研究,时常挑战人类的智力极限和心理极限。来自MIT的汤姆,入坑已有两年,并在坑里向广大准同行们发来了倾心打造的攻略,帮助大家在漫漫夜路上,不要迷失自己的方向。
以下为汤姆第一人称——
我的一个小伙伴啊,终于也要踏上AI研究的不归路了。他惶惶地问我,两年前刚入行的时候,有没有过一些,“如果我懂这个就好了”的东西。
回想这两年走过的路,我不禁……
△ 忍住没笑出声
为自己感到骄傲。毕竟,身边的渣渣都已经改行了。
所以,由我来总结一套攻略也是非常合适。大到人生指南,小到技术细节,本篇总有各位需要的章节。
闲言少叙,我要开始bb了,可能停不下来。
△ 我准备好了
用来回答菜比问题的美妙物种
一开始,我被同事们强大的气场震慑了,就怕不小心问出什么暴露智商的问题。过了好一段时间才发现,有那么几个人,我在他们面前发问感觉蛮舒服的,不过那时候的问题还是自己精心组织过的。现在,我的“不会就找他”名单里,已经有三四个人了。我只要有问题,就立刻问,困惑才不会积压。
△ 我有个问题
研究灵感需要四处搜刮
想好自己要做什么,这可能是研究中最困难的一步。你可能需要以下策略:
1. 和其他领域的研究人员面基
看他们对什么问题感兴趣,再用计算机语言重述那些问题。再问他们有没有需要分析的数据集,传统方法分析起来费劲的那些。
△ 你喜欢...
机器学习领域,许多有影响力的研究都是学科之间碰撞出来的。物化生,社会科学,或者纯数学,都可以去试试。
比如,Matthew Johnson和他的基友们发表在NIPS 2016的那篇论文,受到了小鼠行为的启发。再比如,Justin Gilmer他们在ICML 2017发表的成果,就是机器学习在量子化学里的应用。
2. 写个简单的baseline找找感觉
比如,写写用来操控倒立摆的、仔细校准了的代码,或者看看你能用一个自然语言数据集、把词袋 (BOW) 模型玩成什么样。
我写基线的时候,就经常出bug。Bug修复的时候,我的脑子里就有了一些新想法可以去试,对问题的理解也更深刻了。
3. 帮喜欢的论文扩展实验部分
仔细读实验方法和结果的部分。先考虑最简单的扩展方法,看看论文里的方法够不够用。想下文中没讨论过的基线方法,看看它们哪里不好。
可视化工具和技能
我做研究的时候,一个重要的策略,就是从可视化脚本开始。其他部分的代码都写完之后,跑一下可视化脚本,我就能迅速看到代码和我想象的一不一样。
△ TensorBoard
有了好的可视化,代码中的问题,和思路的问题,都会更加清楚的显现,也更好理解。当然,这样做有一个最直接的好处,就是有视频可以拿出去秀了。
不过,为自己要处理的问题,找到合适的可视化方法,可能并不容易。如果你正在不断的迭代中优化模型,绘制损失曲线大概是个不错的选择。
△ 画出分布
还有很多技术,适合给神经网络 (特别是CNN) 中的学习权重做可视化——比如有导向的反向传播 (guided backpropagation) 。
在强化学习和规划中,最需要可视化的就是智能体在环境里的表现,不管是雅达利,机器人人物,还是简单的网格世界。
△ 价值函数
根据设定的不同,我们或许也可以把价值函数可视化,看它在训练过程中会发生怎样的变化。当处理图形模型的时候,把一维或二维变量的分布可视化,可以获得许多的信息。
可视化技术有没有效果,就要看你从里面能获得多少有效信息了。如果可视化做的不好,就要回头去看代码。优秀的可视化,可以给人直击灵魂的结论。
看出论文和研究人员的原始动机
即便是参加同一个会议,用着同一套术语,并且同样以“人工智能”一词来表述自己的领域,两个研究人员的出发点可能完全不同。
乔丹甚至提议,可以多起几个名字,来把这个混沌的领域变得更加清晰。但情况好像也没有到完全无法理解的地步,AI领域至少还有三个主要的方向——数学,工程,以及认知。
· “数学”方向研究的是:某个智能系统,它的基本属性和限制是什么?
· “工程”方向讨论的是:怎样开发一些智能系统来解决现实问题,还比其他方法好用?
· “认知”方向关心的是:怎样用机器来模拟人类或其他动物的智能?
这些动机是可以和谐共生的,许多AI论文也是包含多重视角的。而且,许多研究人员也不只有一种动机,可能大家原本就是一家人。
不过,就算是一家人,也还是会有分歧。我有一些纯“工程”方向的小伙伴,还有一群兄弟对“生物”情有独钟。
有一篇论文的结论说,在某个benchmark上,一些现有技术的某种巧妙结合,足以打败最前沿的技术。
攻城狮可能会为这样的研究成果而感动,但认知科学家们可能就洗洗睡了。如果是一篇纯理论论文,他们的态度就会反过来。
一些优秀的论文和优秀的研究人员,一开始就会表明立场,但多数情况下动机还是被埋没的。我发现,在论文动机不明显的时候,站在不同的角度多读几遍还是有用的。
找论文
AI领域的论文大多都在arXiv,很容易找到。大量的论文排山倒海,让人在兴奋的同时,也有点喘不过气。于是,有些善良的业内人士,提供了披沙拣金的有效途径——
△ 这不是我,是我的机
Andrej Karpathy建起了”arXiv Sanity Preserver”,帮助大家对论文进行分类筛选,搜索,以及特征过滤。Miles Brundage以前也经常在推特上,发一些经过轻度炮制的arXiv论文清单,单子大概率是AI列的。
还有很多其他推友,非常乐于分享他们看到的有趣论文。这里是我可爱的关注列表:
https://twitter.com/tomssilver/following
如果喜欢Reddit的话,当然要关注r/MachineLearning。不过,上面的内容还是更适合吃瓜群众动手实践,对于学术研究的帮助可能小一些。
另外,大会上发表的论文是有必要看看的。NIPS、ICML以及ICLR是重中之重,其他有名的大会还包括AAAI、IJCAI和UAI等等。
分方向来说,计算机视觉会议有CVPR、ECCV和ICCV;自然语言会议有ACL、EMNLP以及NAACL;说到机器人,就是CoRL、ICAPS、ICRA、IROS和RSS。要看理论研究的话,AISTATS、COLT和KDD都是不错的选择。
△ 论文中奖
目前,参加各大会议是论文发表的主要途径,不过期刊也是有的。JAIR和JMLR这两个是AI领域的主流期刊。偶尔也有厉害的论文,登上Nature和Science。
比起新论文,老论文比较难找,但是同样不可忽视。许多“经典”一直被人们翻出来看,除了出现在引用列表里,也会出现在研究生课程的阅读清单里。
还有一个搜寻旧论文的方法,就是从业内某个知名老教授开始,找他过往的研究成果,比如评上教授职称的时候用到的论文。也可以发邮件给教授,问他们还有没有更多资料可以参考。不过,要从Google Scholar上找老论文,我还没有发现太好的搜索方式。
关于花多少时间在读paper上,常见的两种观点是:
1)刚开始,什么都读,别挑。很多人都说研一就是读Paper,其余啥也别干;2)但过了这个阶段,就不要再花那么多时间在论文上了。
后者的逻辑,是在提出解决问题阶段很需要创新的思维,如果这个时候还读太多Paper容易被带偏。
我个人觉得,第一个说得,非常有道理。只要有时间,就应该尽可能地多读paper。
但我diss第二个。
那些认为不必了解其他同行的研究工作,可以闭门自己憋出好方法的人,有点拿衣服。虽然我们时不时会听到,有些业余的外行可以想出不错的办法,也确实解决了长久以来的问题。
不过我们作为长期从事AI研究的人,不能寄希望于那个“灵光乍现”的瞬间。大部分的时候,问题的解决过程都是非常漫长的。
要搞清楚我们的研究目前处于什么阶段,下一步该怎么做,阅读相关的文献是一个更高效的方法。
这里推荐阅读Julian Togelius的《小修小补和真正研究的区别》:
http://togelius.blogspot.com/2016/04/the-differences-between-tinkering-and.html
另外,还要提醒一点。不要一味地追求阅读的数量,更重要的是把读过的每一篇论文认真的做笔记,做好反思,深度消化之后,再读下一篇。不要一个劲地一篇接一篇地读但不经大脑加工处理。
交流>>看视频>>读论文>>听讲座
如果要了解一个全新的研究工作,读文献是最容易获取信息的途径。
但理想的高效方式,我认为,是找机会和在这行做的研究人员聊聊天。
当然,这样的机会不是经常有。所以看这些人的论文讲解直播,也是个不错的选择。
一般大家习惯在直播的时候,把自己的工作讲清楚,让受众尽可能听得懂;而写文章的时候,因为要考虑到字数的限制,会追求极简的行文。对比之下,显然前者更便于用户消化信息。
另外大家还有个说不出口的原因:写文章时介绍太多背景知识,也会显得自己很弱鸡,像是刚入行什么都不太懂。
为什么我觉得听讲座的效果最不好呢?
通常来说,讲座更多都是走形式,并不是个非常好的学习机会。不过讲座完之后,完全可以趁机找主讲人聊两句。
警惕名利
成功的AI研究工作,会吸引公众的关注。这会进一步鼓励更多的人加入到这个领域,对研究工作来说,是一个非常好的良性循环。
不过负面的影响是,招来无效的媒体曝光。做新闻的人想要更多的点击量,企业想拉投资和招大牛,做技术的人希望发表更高级别的文章,以及文章被更多的人引用。这些都会制造更大的名利泡沫。
大家要时刻提醒自己,留心所有参与方背后的动机。在文章标题、新闻稿、论文方面要十分小心。
在NIPS 2017的会上,有一个很有名的教授当着几百个参会人的面,在Q&A的环节拿到话筒之后,指出主讲人不应该在论文标题里使用“想象(imagination)”一词,并强烈地表达了对主讲人的不满。
这篇被质疑的论文,正好是我非常喜欢的。
不过我也非常认同这个教授的观点。总有人想搞大新闻,把很久以前的工作,冠一个大家没听过的新词,假装自己在搞新的方向。AI圈里,这可以说是十分的尴尬了。
所以要警惕那些喜欢玩概念的文章。尽量从实验和结果的部分,来判断研究工作的质量。
让自己看见可量化的进步
早期寻找研究项目时,我会花大量时间脑暴。我当时傻傻地觉得,脑子里那些模糊的想法,会自己慢慢生成一个具体的思路。
然后一天下来,我脑子就宕机了。啥具体结论也没想出来,很受挫。我还一度怀疑自己,这是研究吗?
研究工作如何取得进展,没有固定的路径可循。
不过,我慢慢发现把研究工作分解成更小的可量化的目标,相对来说是更简单点的办法。
每当找不着北的时候,我的目标就是:把模糊的想法写下来,然后找出论据来证明它不可行,而不是敷衍地直接划掉。
或者当脑子连模糊的想法都没有时,就把目标定位读文献或找同行聊天。
这样至少一天下来,我可以看到自己实实在在做了些事情,是有推进工作往前走的。即使很多想法难产,我认知上也有很大的收获。现在排除掉的不靠谱的想法,相当于节省了未来的思考判断时间。
不钻牛角尖,遇到死胡同早点掉头
功底深厚的研究人员会把更多时间留在好的问题上。所以学会分辨问题的好坏是一个很强大的技能。
不管是什么level的研究人员,都会面临的一个问题是,我的课题思路有缺陷,无法下结论。我是该继续补救这个课题呢还是直接找不必继续的理由?
我非常后悔。曾经的我一根筋,即意识到了这可能是一条死胡同,但还是坚持补救,然后耗费了很多时间。对沉没成本的不甘心,导致了我再这个问题上犹豫不决。执念的力量相当可怕。
最后放弃这个课题,心情悲痛。但我现在有意识地改变自己的认知,放弃死胡同往回退几步,看起来反直觉,但也算是一种“进步”。
接受失败也是精神认知上很重要的一课。像提出量子点动力学理论的理查德·费曼说的,“尽早证明自己错了,才能进步。”
我有次很幸运,遇到一个业内大神。他给我的早期职业建议就是:写!
写博客记录自己的研究历程,写论文。更重要的是,记录自己每一天的思考。自从那以后,我每天都复盘。我很明显地感觉到主动写作的收获,比光在脑子里想要大得多。
要想研究做得好,还得身体好,脑子好
搞学术的人,总是很忘我。觉得睡觉都浪费时间,也不怎么注意身体。完全沉浸在追求学术进步的世界里。
刷起夜来不要命……
我自己也有这个毛病。但现在理智的我意识到了,养成习惯锻炼身体和多休息,并不是浪费时间或分散专注力,而是非常必要的投资。
睡4小时对身体是非常不好的,8小时的工作会让脑子变傻。
但反过来,每天花8个小时睡觉,4个小时工作,我的工作产出效率反而会更高。?
我非常理解,在解决一个非常难的问题过程中,很难说做到一半时扔下跑去干别的。我经常都困过点了还死撑着泡在工作里,但没有取得一点点进展。
现在,我可以做到强迫自己走开来,做个深呼吸放松一下自己。我很开心自己做到这个进步,相信这会对我未来的事业有长远的好处。
善待自己:)
最后,附作者小哥哥博客地址:
http://web.mit.edu/tslvr/www/index.html
— 完 —
入“3+2”高职 入学后被要求改读中专
河北三十余名学生升学遇“超招”
晨雾 / 转帖
中国青年报·中国青年网记者 朱洪园
“我家孩子明明收到的是‘3+2’高职录取通知书,入学两个多月后,学校却要求他改上普通中专。”12月12日下午,河北省保定市的刘鹏(化名)拿着一份录取通知书复印件端详,不清楚哪儿出了问题。
与他有相同遭遇的学生家长超过30人,他们的孩子都是今年8月进入位于保定市的河北省信息工程学校就读,又都在两个多月后被要求从“3+2”高职改读普通中专。这些学生多为农村生源。
刘鹏对记者说,他的孩子上初中时成绩不太好,觉得考高中无望,但他又想让孩子上大学,于是在朋友的建议下选择了“3+2”高职。“3+2”是指中高职三二分段制,由部分重点中专学校和高职院校经批准联合举办,学制5年。
他通过咨询了解到,这种学制下,学生需要参加转籍考试,成绩合格者转入高职,毕业后发大专文凭。在教育部门的学历证书电子注册信息中,这类学生“考生特征”一栏填写的是“三二分段”。
今年年初,刘鹏考察了3所学校,反复斟酌后,最终确定了河北省信息工程学校、河北软件职业技术学院联合开办的“3+2”大专直通班——学生先在河北省信息工程学校读3年,然后去河北软件职业技术学院读两年,拿一个中专毕业证和一个大专毕业证。
河北省信息工程学校的招生简章介绍,这是一所始建于1958年的公立学校、河北省重点中专。该校与河北软件职业技术学院合作举办的“3+2”大专直通班,学生前3年在河北省信息工程学校就读,涉及机电技术应用、计算机平面设计、计算机网络技术、市场营销(电子商务)4个专业。学生经面试后择优录取,额满为止。学生入学后,学校即与学生签订培养就业协议,保障学生全部定向安排就业。
此次被要求改读中专的30多名学生,就分布在这4个“3+2”招生专业。
“听上去还不错,又是公办学校,于是我才决定让孩子选择这个。”刘鹏说。他还到学校咨询过,据他回忆,一位招生工作人员告诉他,“只要孩子中考考到300分,就没问题”。
他们最后选择了机电技术应用专业。今年3月23日,刘鹏在河北省信息工程学校招生办公室缴了400元费用,票据上写着“报名费、书费”,另外还注明了“机电3+2”。
几个月后,刘鹏的孩子中考考了301分。两天后,他们收到了河北省信息工程学校的录取通知书。
在另一位家长提供的录取通知书复印件上,中国青年报·中国青年网记者看到,这名学生被该校计算机平面设计专业录取,录取专业后面列着“普通中专”和“高职大专”两个选项,“普通中专”已被划掉,落款是河北省信息工程学校,并盖有该校招生办公室的公章。
8月18日,刘鹏送孩子到河北省信息工程学校报到,缴了6800元学杂费。“当时收费的工作人员说是3年的费用,我觉得费用也不多,就一下全缴了。”
中国青年报·中国青年网记者注意到,在家长们向学校缴纳的学杂费收据上,也注明了学生专业和“3+2”字样。
11月14日,刘鹏接到孩子的电话,说学校要求改读普通中专。“听到这个消息,我是又气愤、又惊讶,不知道是怎么回事。”
另一名学生家长孟光也说,他家孩子班里有18个被录取到“3+2”高职班的学生,也被要求改上普通中专。“学校也没通知家长,就让孩子自己签名改了,这些孩子都是未成年人,学校这么做真是太不负责任了!”
家长们告诉中国青年报·中国青年网记者,他们曾询问学校为什么要求这些孩子改读普通中专,标准和依据是什么,但学校未给出解释。
12月12日下午,河北省信息工程学校一位主管招生工作的负责人对中国青年报·中国青年网记者解释:“今年这事儿做得不漂亮,的确是招超了。”她说,2019年分配给河北省信息工程学校的“3+2”计划指标是100个,指标是河北省发改委下达的。“因为今年招超了”,经过学校努力,最终增加了20个指标。
她还告诉记者,其实每年指标都不够,每年都需要争取增加名额。
这位招生负责人介绍,今年学校向大约160名学生发出了“3+2”高职录取通知书。因此,只有120人能上“3+2”高职,其余30多人要转成普通中专。
“这120个学生是按照什么标准选定的呢?”记者问。
“我们是按照中考成绩从高到低选定的。”她回答。
但是,学生家长对此表示质疑。他们向记者提供了河北省信息工程学校2019级6班的一张表格,表格是学生入学军训期间,校方让学生确认信息时使用的。表格上显示了学生的中考成绩。据学生们反映,一名学生的中考成绩只有187分,但未被要求改上普通中专。
“我们的孩子都是300分以上,为什么187分的学生都能上‘3+2’高职,我们却不能呢?”孟光对记者说。
部分学生家长曾要求学校公布这批新生的中考成绩,但河北省信息工程学校拒绝公开。中国青年报·中国青年网记者查询到,2019年河北省“3+2”高职录取最低控制分数线为200分,为何187分能上“3+2”高职?该校招生负责人在受访时未作解释。
早在2017年,河北省招生委员会就曾发布紧急通知,要求进一步规范中职招生秩序,各地各学校未经省主管部门批准,不得超计划招生或擅自降分违规招收学生,并且将严厉打击和严肃处置非法招生和招生欺诈行为。
目前,家长们坚持要求,既然河北省信息工程学校给学生们发了“3+2”高职录取通知书,就应该继续让孩子们读“3+2”高职。
该校招生负责人称,这种要求不太可能实现。她对中国青年报·中国青年网记者说,为了对学生进行弥补,学校决定集中为这些孩子补课,希望通过老师和学生们的共同努力,让这些学生通过“单招”或“对口”等方式,最终考上大学。
对此,家长们并不接受。孟光说,按照学校的最新安排,就算孩子最终有机会读大专,也需要读6年,这样比“3+2”多花了一年时间,也多了一年的费用。
本报将持续关注此事进展。
信息来源:2019-12-16《中国青年报》
http://zqb.cyol.com/html/2019-12/16/nw.D110000zgqnb_20191216_1-04.htm
天我们学习了html框架代码,简单地写了我们的第一个网页,今天我们来更加丰富它。
我们今天继续讲几个标签然后学习一下style属性。
<del></del>:是在文本上画一条线,就像我们打折促销划掉原价的那种效果。
<div></div>:可以理解为一个空盒子,里面可以装任何东西,嵌套任何代码,可以将代码进行分模块化
<span></span>:和div差不多,区别是span是一个行盒,只能装一行的东西,无法装块级元素如div,之后讲盒子模型的时候会细讲 行盒 和 块盒 。
<p></p>段落标签,使内容分段表示。
<br>换行标签,使输出的文本换行展示(此标签写一个就行,没有结束标签)
<img>图片标签,在网页中插入图片,用法:<img src="图片的地址"(可加入网络的)>
地址分为绝对路径和相对路径:①当图片地址和网页地址在同一个文件夹下成为相对路径,可以直接写图片的名称(带拓展名)。(.html的文件为网页位置)
②绝对路径:当图片地址和网页地址不同时,称为绝对路径,需要路径和名称全写。
style属性和标签:style中的代码又称CSS代码,主要对网页起装饰作用。CSS代码可以写在行间,也可以通过<style></style>写在head标签中,也可以通过<link>标签进行外链。
下面我们来看一下代码
原码在这:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>我是网页名</title>
<style>
#abc{
color: red;
}
img{
width: 200px;
height: 250px;
}
</style>
</head>
<body>
<!-- <h1>作者最帅</h1>
<h2>作者最帅</h2>
<h6>作者最帅</h6>
<strong>作者最帅</strong>
<em>作者最帅</em>
<strong>
<em>
作者最帅
</em>
</strong> -->
<span style="font-size: 100px;">今日大减价<del style="color: #999;font-size: 20px;">原价1999</del>现价只要<span id="abc">999</span></span>
<div>
<span style="color:darkred;">我span是行级元素,能在div里,而div不能在我里面</span>
<img src="https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fup.enterdesk.com%2Fedpic%2Feb%2Ffc%2Fbd%2Febfcbd01bb82dcdbf3be23228bfd7f04.jpg&refer=http%3A%2F%2Fup.enterdesk.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1635824895&t=a25ff3527be2d4495f310ff737b88cf2" alt="他应该是个美女图片" title="大美女">
</div>
<p>
作者天天写文章太难了<br>我要给点点关注
</p>
</body>
</html>
效果就不给大家展示了,大家可以动手操作一下[呲牙]
*请认真填写需求信息,我们会在24小时内与您取得联系。