强化学习 V.S. 自然语言处理,计算机保研er应该选哪个?
写在前面
人工智能是21世纪对人类影响最大的技术之一。人工智能,就是像人一样的智能,而人的智能包括感知、决策和认知(从直觉到推理、规划、意识等)。
那么,对于计算机保研er来说,我们选择AI方向读研,该选择哪个方向呢?是强化学习/机器学习理论,还是自然语言处理?本期岛主就来带大家梳理一下。
强化学习是机器学习的一个分支。
机器学习,简单来说就是从历史数据中学习规律,然后将规律应用到未来。目前人类所研究的AI还是弱人工智能,电影里面看到的那种机器完全和人类一样去思考、行动的智能还十分遥远。人工智能领域包含机器学习,机器学习又包含强化学习与深度学习,具体来讲,强化学习、深度学习是机器学习里面的两个不同的研究领域。强化学习是除了深度学习之外的第二种基本的机器学习方法。
业界标准的定义对强化学习的描述是:
强化学习(Reinforcement learning,RL)讨论的问题是一个智能体(agent)怎么在一个复杂不确定的环境(environment)里面去极大化它能获得的奖励。通过感知所处环境的状态(state)对动作(action)的反应(reward)来指导更好的动作,从而获得最大的收益(return),这被称为在交互中学习,这样的学习方法就被称作强化学习。
可以看出,强化学习更偏重于智能体与环境的交互, 这带来了一个独有的挑战 ——“试错”与“开发”之间的折中权衡,智能体必须开发已有的经验来获取收益,同时也要进行试探,使得未来可以获得更好的动作选择空间。强化学习一般没有直接的指导信息,Agent 要以不断与 Environment 进行交互,通过试错的方式来获得最佳策略,而且强化学习的指导信息很少,而且往往是在事后(最后一个状态)才给出的。
如果想要进一步读博深造,强化学习在科研方面已经较为成熟,从未来发展趋势上,RL是比较有潜力的方向,但还有很多理论问题很难解决,导致较难进入工程应用。这里推荐一些国内强化学习领域的优秀的课题组与老师[1]:
1. 清华大学:张崇杰老师组:
2. 北京大学:卢宗青老师组:
3. 中国科学技术大学:吴锋老师组:
4. 南京大学:郝建业老师组:
5. 清华大学:李升波老师
6. 上海交通大学:张伟楠组
7. 国防科大:徐昕组
8. 哈工大深圳:李衍杰老师组
9. 南京大学:高阳老师组
10. 上海交通大学:俞凯老师(Reinforcement Learning: An Introduction书翻译作者)组
11. 中国科学院:赵冬斌老师、张海峰老师等
12. 中科大:李厚强老师、周文罡老师、王杰老师、庄连生老师等
如果想要直接就业,RL在互联网企业应用较多,除了AlphaGo以外,还有以下几个领域的应用场景:
自动驾驶领域
第一就是自动驾驶领域,目前国内百度在自动驾驶领域中就使用了一定的强化学习算法,但是因为强化学习需要和环境交互试错,现实世界中这个成本太高,所以真实训练时都需要加入安全员进行干预,及时纠正Agent采取的错误行为。
第二就是游戏领域,游戏可以说是目前强化学习应用最广阔的,目前市场上的一些游戏基本都有了强化学习版的AI在里面,最出名的就是王者荣耀AI。游戏环境下可以随便交互,随便试错,没有任何真实成本。
第三就是推荐系统了,目前一些互联网大厂也在推荐系统中尝试加入强化学习来进行推荐,比如百度&美团。使用强化学习去提高推荐结果的多样性,可以和传统的协同过滤&CTR预估模型等进行优势互补。
但是从实际问题角度,强化学习还是不太理想。由于落地难+烧钱,强化学习岗位很少,基本只有几个头部游戏公司会养一个规模不大的团队,强化学习在软件仿真上能做的很好,比如王者荣耀,星际争霸。因为这些游戏的规则都是写死的,只要给强化学习足够的时间,就一定能把所有规则学会,但是实际中,事件充满着不确定性,强化学习没法学到所有的规则,所以可能存在落地的安全问题永远没法避免的情况,目前除了游戏公司外,别的领域很难有应用。
总结:落地还是难。
推荐书籍:
1. 强化学习圣经-Rich Sutton
2. 深入浅出强化学习:原理入门(博文视点出品)
3. Python强化学习实战-Sudharsan Ravichandiran
4. 强化学习精要-冯超
5. David Silver强化学习公开课中文讲解及实践-叶强(知乎专栏)
6. 强化学习知识大讲堂(知乎专栏)
自然语言是人类特有的用来表达情感、交流思想的工具,本质是一种信息编码。处理包含理解、转化、生成等过程。自然语言处理,是指用计算机对自然语言的形、音、义等信息进行处理,即对字、词、句、篇章的输入、输出、识别、分析、理解、生成等的操作和加工,实现人机间的信息交流。自然语言处理是一门融语言学、计算机科学、数学于一体的科学,它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。
自然语言处理(NLP)的具体表现形式包括机器翻译、文本摘要、文本分类、文本校对、信息抽取、语音合成、语音识别等。可以说,自然语言处理就是要计算机理解自然语言,自然语言处理机制涉及两个流程,包括自然语言理解和自然语言生成:自然语言理解是指计算机能够理解自然语言文本的意义,自然语言生成则是指能以自然语言文本来表达给定的意图。
自然语言处理设计的主要研究问题包括:
1、语义文本相似度分析(对两段文本的意义和本质之间的相似度进行分析的过程)
2、信息检索(将信息按一定的方式加以组织,并通过信息查找满足用户的信息需求的过程和技术)
3、信息抽取(从非结构化/半结构化文本中提取指定类型的信息,并通过信息归并、冗余消除和冲突消解等手段将非结构化文本转换为结构化信息)
4、文本分类(根据给定文档的内容或主题,自动分配预先定义的类别标签)
5、文本挖掘(信息挖掘的一个研究分支,用于基于文本信息的知识发现)
6、文本情感分析(使用自然语言处理技术来识别客户评论的语义情感、语句表达的情绪正负面以及通过语音分析或书面文字判断其表达的情感等)
7、问答系统(自动问答是指利用计算机自动回答用户所提出的问题以满足用户知识需求的任务。不同于现有搜索引擎,问答系统是信息服务的一种高级形式,系统返回用户的不再是基于关键词匹配排序的文档列表,而是精准的自然语言答案。
8、机器翻译(利用计算机实现从一种自然语言到另外一种自然语言的自动翻译)
9、自动摘要(自通过自动分析给定的一篇文档或多篇文档,提炼、总结其中的要点信息,最终输出一篇长度较短、可读性良好的摘要)
10、语音识别(将不同语言的文本区分出来)
如果想要毕业直接就业,推荐做一些比较容易落地项目的方向,如文本分类、文本生成等。这些任务虽然比较简单,但是企业中也用到的非常多。
以文本分类为例,文本分类可以给数据源打标,然后给用户打上兴趣标签,进而可以做广告相关的业务。每个大厂背后都有很多NLP的技术支撑,大厂对NLP工程师需求一点都不亚于CV工程师,大部分NLP的应用还都是在后台,为搜索、推荐等应用作为一个技术支撑。
如果想要读博深造,自然语言处理(NLP)的研究更注重感知之后的认知/理解阶段,NLP领域,人们逐渐将各种统计理论与相关的NLP技术进行融合,发展出了一套完整的基于统计学习的分词,词性标注,解析,翻译,文档分类等技术,以及基于统计理论的语言模型等。自然语言处理日新月异,要想在这个领域出成果,需要的是终身学习的能力。
推荐一些国内自然语言处理领域的优秀的实验室[2]:
1、哈工大社会计算与信息检索研究中心
2、哈工大智能技术与自然语言处理研究室
3、清华大学交互式人工智能课题组
4、复旦大学自然语言处理实验室
5、哈尔滨工业大学语言技术研究中心机器智能与翻译研究室
推荐书籍:
1、 自然语言处理入门-何晗
2、 Python深度学习 基于Pytorch-梁茂贵
3、 知识图谱-王昊奋
4、 机器阅读理解算法与实践-朱晨光
从发展上,两个方向目前都有一定的前景,很难分出个高下,共同的是,它们都逐渐被深度学习统治,有相当多互相借鉴的地方。岛主建议以个人兴趣作为第一出发点,无论选择哪个方向都不错。而且有了深度学习技术的基础以后,想转学另外一个方向,也不是很难。最后,岛主希望大家都能选择最适合自己的研究方向,学有所成~
引用来源:
[1]国内强化学习读博可以选择哪些高校及团队?https://www.zhihu.com/question/347029772
[2]国内有哪些自然语言处理的牛人或团队?
【今日保研资料推荐】
👇👇👇
全程资料
课程资料
资讯资料
项目解析手册
考核手册
单院校资料包
文书资料
真题资料
竞赛资料
科研资料
编程资料
其他
阅读推荐