很抱歉,我是小学毕业的老糟头子。视频、图像处理,涉及领域非常广阔,任何一个应用,都可以写出无数篇有价值的论文。比如CT图像的电脑判读,比如润滑油的色度检测,比如违章人脸识别,比如人脸图像的历史年轮,视频特效,图像特效等等。至于自然语言,不知道你想说啥。计算机领域没有自然语言,只有程序语言。程序语言不外乎是C、Delphi,外加VB。如果你更专,那就必须会汇编语言。不管什么语言,必须能控制硬件、数据库、媒体文件、HTML5等等。但无论如何不要碰python,那是庞氏。搞程序,随便完成一个课题,都可以用代码来实现课题中的程序控制部分,写论文也很容易。其实不管选图像、视频处理,还是程序语言,关键是你得选择一个适合自己的课题,用你的计算机技术来完成这个课题,那就是论文了。
你的论文准备往什么方向写,选题老师审核通过了没,有没有列个大纲让老师看一下写作方向? 老师有没有和你说论文往哪个方向写比较好?写论文之前,一定要写个大纲,这样老师,好确定了框架,避免以后论文修改过程中出现大改的情况!!学校的格式要求、写作规范要注意,否则很可能发回来重新改,你要还有什么不明白或不懂可以问我,希望你能够顺利毕业,迈向新的人生。 一、毕业论文选题的重要意义 第一、选题是撰写毕业论文的第一步,它实际上是确定“写什么”的问题,也就是确定论文论述的方向。如果“写什么”都不明确,“怎么写”根本无从谈起,因此毕业论文的顺利完成离不开合适的论文选题。 第二、毕业论文的写作一方面是对这几年所学知识的一次全面检验,同时也是对同学们思考问题的广度和深度的全面考察。因此,毕业论文的选题非常重要,既要考虑论文涉及的层面,又要考虑它的社会价值。 二、毕业论文选题的原则 (一)专业性原则 毕业论文选题必须紧密结合自己所学的专业,从那些学过的课程内容中选择值得研究或探讨的学术问题,不能超出这个范围,否则达不到运用所学理论知识来解决实际问题的教学目的。我们学的是工商管理专业,选题当然不能脱离这个大范畴,而且在限定的小范围内,也不能脱离工商管理、企业经营去谈公共事业管理或金融问题。学术研究是无止境的,任何现成的学说,都有需要完善改进的地方,这就是选题的突破口,由此入手,是不难发现问题、提出问题的。 (二)价值性原则 论文要有科学价值。那些改头换面的文章抄袭、东拼西凑的材料汇集以及脱离实际的高谈阔论,当然谈不上有什么价值。既然是论文,选题就要具有一定的学术意义,也就是要具有先进性、实践性和一定的理论意义。对于工商管理专业的学生而言,我们可以选择企业管理中有理论意义和实践指导意义的论题,或是对提高我国企业的管理水平有普遍意义的议题,还可以是新管理方法的使用。毕业论文的价值关键取决于是否有自己的恶创见。也就是说,不是简单地整理和归纳书本上或前人的见解,而是在一定程度上用新的事实或新的理论来丰富专业学科的某些氦姬份肯莓厩逢询抚墨内容,或者运用所学专业知识解决现实中需要解决的问题。 (三)可能性原则 选题要充分考虑到论题的宽度和广度以及你所能占有的论文资料。既要有“知难而进”的勇气和信心,又要做到“量力而行”。”选题太大、太难,自己短时间内无力完成,不行;选题太小、太易,又不能充分发挥自己的才能,也不行。一切应从实际出发,主要应考虑选题是否切合自己的特长和兴趣,是否可以收集到足够的材料和信息,是否和自己从事的工作相接近。一定要考虑主客观条件和时限,选择那些适合自己情况,可以预期成功的课题。一般来说,题目的大小要由作者实际情况而定,很难作硬性规定要求。有的同学如确有水平和能力,写篇大文章,在理论上有所突破和创新,当然是很好的。但从成人高校学生的总体来看,选题还是小点为宜。小题目论述一两个观点,口子虽小,却能小题大做,能从多层次多角度进行分析论证.这样,自己的理论水平可以发挥,文章本身也会写得丰满而充实。选择一个比较恰当的小论题,特别是与自己的工作或者生活密切相关的问题,不仅容易搜集资料,同时对问题也看得准,论述也会更透彻,结论也就可能下得更准确。 三、毕业论文选题的方法 第一、 浏览捕捉法。这种方法是通过对占有的论文资料快速、大量地阅读,在比较中来确定题目的方法。浏览,一般是在资料占有达到一定数量时集中一段时间进行,这样便于对资料作集中的比较和鉴别。浏览的目的是在咀嚼消化已有资料的过程中,提出问题,寻找自己的论题。这就需要我们对收集到的材料进行全面阅读研究,主要的、次要的、不同角度的、不同观点的都应了解,不能“先入为主”,不能以自己头脑中原有的观点决定取舍。而应冷静地、客观地对所有资料作认真的分析思考,从内容丰富的资料中吸取营养,反复思考琢磨之后,就会有所发现,然后再根据自己的实际确定自己的论题。 第二、 追溯验证法。这种方法要求同学们先有一种拟想,然后再通过阅读资料加以验证来确定选题的方法。同学们应该先有自己的主观论点,即根据自己平时的积累,初步确定准备研究的方向、题目或选题范围。这种选题方法应注意:看自己的“拟想”是否与别人重复,是否对别人的观点有补充作用;如果自己的“拟想”虽然别人还没有谈到,但自己尚缺乏足够的理由来加以论证,那就应该中止,再作重新构思。要善于捕捉一闪之念,抓住不放,深入研究。在阅读文献资料或调查研究中,有时会突然产生一些思想火花,尽管这种想法很简单、很朦胧,也未成型,但千万不可轻易放弃。 第三、 知识迁移法。通过四年的学习,对某一方面的理论知识(经济或者法律或者其它)有一个系统的新的理解和掌握。这是对旧知识的一种延伸和拓展,是一种有效的更新。在此基础之上,同学们在认识问题和解决问题的时候就会用所学到的新知识来感应世界,从而形成一些新的观点。理论知识和现实的有机结合往往会激发同学们思维的创造力和开拓性,为毕业论文的选题提供了一个良好的实践基础和理论基础。 第四、 关注热点法。热点问题就是在现代社会中出现的能够引起公众广泛注意的问题。这些问题或关系国计民生,或涉及时代潮流,而且总能吸引人们注意,引发人们思考和争论。同学们在平时的学习和工作中大部分也都会关注国际形势、时事新闻、经济变革。选择社会热点问题作为论文论题是一件十分有意义的事情,不仅可以引起指导老师的关注,激发阅读者的兴趣和思考,而且对于现实问题的认识和解决也具有重要的意义。将社会热点问题作为论文的论题对于同学们搜集材料、整理材料、完成论文也提供了许多便利。 第五,调研选题法。调研选题法类同于关注社会热点这样的选题方法,但所涉及的有一部分是社会热点问题,也有一部分并不是社会热点问题。社会调研可以帮助我们更多地了解调研所涉问题的历史、现状以及发展趋势,对问题的现实认识将更为清晰,并可就现实问题提出一些有针对性的意见和建议。同学们将社会调研课题作为毕业论文的论题,有着十分重要的现实意义,不仅可为地方经济建设和社会发展提供有价值的资料和数据,而且可为解决一些社会现实问题提供一个很好的路径。
最近出于兴趣和需要,重新回顾中文分词技术,期间有些心得,以及一些关于自然语言处理的浅薄之见,这里简单分享一下。 首先, 中文分词_百度百科 里面简单介绍了其中主要的分词算法以及相应的优缺点,包括字符匹配法、统计法以及理解法,其中字符匹配法和统计法比较流行且可以取到相对不错的效果,而理解法则相对比较复杂高级,但是我认为这才是真正解决中文分词任务的根本算法。 如今用于中文分词的算法和模型虽算不上比比皆是,但也算是唾手可得,开源的如jieba、ltp、Hanlp等等,提供中文分词服务的如腾讯云、百度大脑、讯飞AI平台等,以及其他如Jiagu等。 其实这些平台算法的差距并不算太大,分词准确率基本上都是在80%以上,然而在98%以下(这里胡诌个数),在一些不太严格的应用场景下基本已经够用了,只要挑一个在自己的业务场景下表现最好的即可。 在我看来,对于中文分词这项任务而言,最关键最核心的其实并不是算法模型,这些都不是所谓的瓶颈,最重要的其实是高质量、大规模的词典。对于字符匹配法而言,词典是基础,没有词典自然连分都分不出来;对于统计学习法而言,其效果一方面取决于算法和模型的选择,一方面取决于其训练数据的数量与质量,需要堆人力物力,比如找专门的标注公司标注数据等。但是就算是人标的数据,也难免有所错误遗漏,所以在有错误的训练数据下,模型也不可能学的太好,同时训练数据再大,也难以覆盖全部语料,总会出现OOV,总有些句子会训练不到,此时还强求模型可以做到“举一反三”有些不切实际。 词条中还提到了关于中文分词的技术难点:歧义识别与新词识别,关于歧义识别,上面并没有提具体的解决思路,对于新词识别而言,这又是自然语言处理领域很基础并且很重要的点,可以参见一下我之前的文章: 《NLP基础任务之新词发现探索之路》 | lightsmile's Blog ,也有另一个思路,比如说爬取网上一些网站的相关条目,比如百度百科等。 简单看了一下 jieba 、 ansj_seg 、 Jiagu 的分词词典,发现其中jieba的词典质量最差,其中不少词性都是错误的,Jiagu的词典还算不错,就是一些新词不全,ansi_seg的没有细看。 尽管这些工具在一些评测数据的结果可以达到90以上的成绩,但是在我看来,还是不够的,我觉得中文分词这个基础而又艰巨的任务还是要到99%以上才可以,否则分词都分不对,那些在分词基础之上的任务更是不行,毕竟词是基本的语义单元。 然而在现在深度学习盛行的潮流下,许多任务如文本分类、命名实体识别等并不一定需要依赖于分词,直接基于字符(char)的Embedding也可以取得不错的效果,并且也可以规避OOV(out of vocabulary words,未登录词)的问题。 但是深度学习,尤其是监督学习的很关键之处是得有大规模的高质量训练数据,不然巧妇难为无米之炊,再好的模型也难以从垃圾中学到有用的知识。 话说回来,虽然自然语言处理是计算机科学与其他领域的交叉学科,深度学习、机器学习算是人工智能的一部分,然而许多时候往往十分依赖人工,而所谓的智能其实也不智能。 无论是计算机视觉领域里的图像分类还是自然语言处理领域的文本分类,其任务都是学习一个从输入 映射到输出或者说标签 的函数 ,具体来说就是将 表征为多维向量 ,将 表征为多维向量 ,然后让 进入一个模型进行一系列的运算后得到一个 ,通过不断地比较 和 的值并调整模型的参数使模型的运算结果 更为准确即更加贴近 (过程有点类似于 “猜数字”游戏 ),从而最终得到一个近似函数 ,我们就可以用来代替未知的 用于预测未来的样本 ,得到它对应的 。 我们可以发现,以上学习算法确实可以得到能够解决问题的模型,然而局限之处在于它也只能做这个任务,即对输入 预测 ,别的啥也干不了。 同时在基于深度学习的自然语言处理模型中,基本套路都是Embedding+Encoder+Decoder,其中Embedding是基于字还是基于词,是使用预训练词向量还是随机初始化,这些选择所导致的效果的差异都随着训练轮数的增加而最终减小。然而,由于梯度下降以及解空间的特点,基于bert的效果确实是要比Word2Vec的要好,那些词向量确实比Word2Vec的嵌入了(或者说学到了)更多的语言知识。 关于模型的选择和取舍,工业界和学术界的标准其实差别很大。学术界里有的论文是开创性的,而许多论文其实都是在原来基础上小修小改,将最近的较新的思想和算法一堆,实验结果比原来指标高一点又是一篇文章,程序运行占用多大内存、跑了多长时间这些都不是主要因素,也就是一切向指标看齐。 而工业界则更加看重的是性价比,不同的公司、不同的部门、不同的阶段其主要矛盾不同。比如说Facebook之前出的fastText,尽管模型很简单,最终效果可能比不上一些其他复杂的模型,但是其训练速度超快、基于CPU就可以,并且可以很方便地对模型进行压缩。许多时候,一些指标高低差几个点并没有那么关键,模型大小、训练时间、预测时间在很多时候是比较关键的因素,除非由于甲方或客户不满意,或者家大业大,有的是资源,那么这时候效果和指标又成为主要矛盾,这时的优化可能要以一定的时间和空间为代价。 原来的自然语言处理各任务基本上都构建在分词的基础之上,粗略来说有一个 语法 、 语义 到 语用 的递进的过程。这一层一层的任务虽然耦合的很好,但是 这种Pipline将会导致下层的错误都将会被积累到上层,其直接影响就是越到上层其准确率越低,甚至低到惨不忍睹的程度。然而在表示学习,尤其是深度学习崛起以后,其强大的特征学习能力,使得现在的模型多为end-to-end模型,其结果是一方面可以使得相关人员摆脱繁琐的特征工程,可以将特征提取与组合设计的工作交给神经网络模型去隐形完成,大大解放了生产力;令一方面可以将模型视为整体的一部分,即它的输入直接对应原始输入,它的输出直接是我们想要的结果,有点直达病灶的意思,摆脱了原来Pipline错误累积的困境。 不过我个人看来成也end-to-end,败也end-to-end,虽然简化了任务,但是有点太过开门见山,得到的模型一个个都是彼此孤立的,各做各的事情,然而从整体论的角度来看它们都是整个自然语言处理系统的一部分,一些特征本来是可以共享,一些结果是彼此相互依赖的。这也又涉及到参数共享、多任务学习等概念,不细表。由于神经网络的可解释性较差,这使得模型更加像一个黑盒,训练调参的过程更像是在炼丹,因为谁也不知道具体能炼出个什么玩意儿。 如下图很形象地诠释了这一现状: 下面就深度学习下的自然语言处理四大任务进行简单对比(都是个人浅薄之见,难免有不足之处,还望海涵)。自然语言处理四大任务分别是:序列标注、文本分类、句子关系、文本生成。 序列标注任务的原始语料是一连串的句子,经过标注后的语料格式大概如下(以命名实体识别为例): 我们可以发现,每一行的格式都是一个字符以及它所对应的类别,如 B_{type} 、 O ,那么对于每一个字符模型需要预测的类别数量总计为 2*len(types) + 1 ,其中2是指 BI 这种标注规范, len(types) 指类型种类的数量(如人名、地名、机构名共三种),1是指 O 。可以发现模型需要拟合的函数的值域还是很小的,即 O(len(types)) 。 文本分类任务的标注语料格式大概如下(以情感极性分析为例): 每一行的格式都包含原始文本以及它所对应的类别(或者说标签),我们可以发现模型需要预测的类别数量总计为 len(types) ,即类型种类的数量(以新闻语料分类,如 娱乐 、 军事 、 科技 、 体育 等),可以发现模型需要拟合的函数的值域也是较小的,即 O(len(types)) 。 句子关系任务的标注语料格式大致如下(以语句相似度为例): 每一行都是两个句子以及它们的关系( 1 代表语义相同, 0 代表语义不同),我们可以发现模型需要预测的类别数量总计为 len(relations) ,即关系种类的数量,可以发现模型需要拟合的函数的值域也是较小的,即 O(len(relations)) 。 文本生成任务的标注语料格式大致如下(以机器翻译为例): 我们可以发现每一行都是源语言句子以及目标语言的对应翻译。虽然此时模型和序列标注模型一样都需要对于单个样本预测多次,但是序列标注模型需要预测的次数直接等于字符的数量,是确定的,但是文本生成任务模型需要预测的次数是不确定的,并且每次预测的值域都是目标语言所有word(或者character)所组成的整体集合,即 O(len(words)) ,其规模可能是十万级或百万级的。因此我们很容易发现文本生成任务的难度和复杂程度是要远远高于其他任务的。对话任务如生成式闲聊机器人更是如此。 可能是之前的AlphaGo过于吸引广大群众的眼球,做相关业务的公司吹的太厉害,以及“人工智能”、“深度学习”这几个词听起来逼格满满,导致许多外行人认为现在的人工智能已经发展到很厉害的层次,并且可以做各种各样的事情,似乎无所不能。但是内行人心里却明白:“什么人工智能,人工智障吧”、“所谓人工智能,多是智能不够,人工来凑”。外行人看不到深度模型算法的局限性,如许多模型的精度并不能达到那么高;也看不到深度模型算法的前提条件,如高质量、大规模的数据集,他们以为模型大约聪明到随便喂点数据便成为终结者般的存在。这也就导致了他们刚开始预期很高,然而在投资或找到外包后发现效果远远不能达到预期,大失所望而潦草结束或撤资离场的局面。 如下一张图大概有点这个意思: 统观学术界与工业界,和计算机视觉领域相比,自然语言处理这种更深层次的、涉及到认知智能的领域的进展虽悠久但缓慢,并且许多任务目前为止距离真正商用还有很大的距离。然而正是科学史上如阿基米德、牛顿等伟大人物与其他相对无名之辈默默耕耘,前赴后继,才使得如今之人类齐享先辈之成果,即所谓“前人栽树后人乘凉”也。 我辈也无需悲观,须戒骄戒躁,搞算法的就多己见、少盲从,少水论文;搞工程的就多积累经验,提升实践能力,多做高质量的项目。功夫不负有心人。
我可能会倾向于人工智能,因为未来的市场人工智能占比还是较大的,这样你写论文的范围很广,比较容易
人工智能比较好
推荐下NLP领域内最重要的8篇论文吧(依据学术范标准评价体系得出的8篇名单): 一、Deep contextualized word representations 摘要:We introduce a new type of deep contextualized word representation that models both (1) complex characteristics of word use (e.g., syntax and semantics), and (2) how these uses vary across linguistic contexts (i.e., to model polysemy). Our word vectors are learned functions of the internal states of a deep bidirectional language model (biLM), which is pre-trained on a large text corpus. We show that these representations can be easily added to existing models and significantly improve the state of the art across six challenging NLP problems, including question answering, textual entailment and sentiment analysis. We also present an analysis showing that exposing the deep internals of the pre-trained network is crucial, allowing downstream models to mix different types of semi-supervision signals. 全文链接: Deep contextualized word representations——学术范 二、Glove: Global Vectors for Word Representation 摘要:Recent methods for learning vector space representations of words have succeeded in capturing fine-grained semantic and syntactic regularities using vector arithmetic, but the origin of these regularities has remained opaque. We analyze and make explicit the model properties needed for such regularities to emerge in word vectors. The result is a new global logbilinear regression model that combines the advantages of the two major model families in the literature: global matrix factorization and local context window methods. Our model efficiently leverages statistical information by training only on the nonzero elements in a word-word cooccurrence matrix, rather than on the entire sparse matrix or on individual context windows in a large corpus. The model produces a vector space with meaningful substructure, as evidenced by its performance of 75% on a recent word analogy task. It also outperforms related models on similarity tasks and named entity recognition. 全文链接: Glove: Global Vectors for Word Representation——学术范 三、SQuAD: 100,000+ Questions for Machine Comprehension of Text 摘要:We present the Stanford Question Answering Dataset (SQuAD), a new reading comprehension dataset consisting of 100,000+ questions posed by crowdworkers on a set of Wikipedia articles, where the answer to each question is a segment of text from the corresponding reading passage. We analyze the dataset to understand the types of reasoning required to answer the questions, leaning heavily on dependency and constituency trees. We build a strong logistic regression model, which achieves an F1 score of 51.0%, a significant improvement over a simple baseline (20%). However, human performance (86.8%) is much higher, indicating that the dataset presents a good challenge problem for future research. The dataset is freely available at this https URL 全文链接: SQuAD: 100,000+ Questions for Machine Comprehension of Text——学术范 四、GloVe: Global Vectors for Word Representation 摘要:Recent methods for learning vector space representations of words have succeeded in capturing fine-grained semantic and syntactic regularities using vector arithmetic, but the origin of these regularities has remained opaque. We analyze and make explicit the model properties needed for such regularities to emerge in word vectors. The result is a new global logbilinear regression model that combines the advantages of the two major model families in the literature: global matrix factorization and local context window methods. Our model efficiently leverages statistical information by training only on the nonzero elements in a word-word cooccurrence matrix, rather than on the entire sparse matrix or on individual context windows in a large corpus. The model produces a vector space with meaningful substructure, as evidenced by its performance of 75% on a recent word analogy task. It also outperforms related models on similarity tasks and named entity recognition. 全文链接: GloVe: Global Vectors for Word Representation——学术范 五、Sequence to Sequence Learning with Neural Networks 摘要:Deep Neural Networks (DNNs) are powerful models that have achieved excellent performance on difficult learning tasks. Although DNNs work well whenever large labeled training sets are available, they cannot be used to map sequences to sequences. In this paper, we present a general end-to-end approach to sequence learning that makes minimal assumptions on the sequence structure. Our method uses a multilayered Long Short-Term Memory (LSTM) to map the input sequence to a vector of a fixed dimensionality, and then another deep LSTM to decode the target sequence from the vector. Our main result is that on an English to French translation task from the WMT-14 dataset, the translations produced by the LSTM achieve a BLEU score of 34.8 on the entire test set, where the LSTM's BLEU score was penalized on out-of-vocabulary words. Additionally, the LSTM did not have difficulty on long sentences. For comparison, a phrase-based SMT system achieves a BLEU score of 33.3 on the same dataset. When we used the LSTM to rerank the 1000 hypotheses produced by the aforementioned SMT system, its BLEU score increases to 36.5, which is close to the previous state of the art. The LSTM also learned sensible phrase and sentence representations that are sensitive to word order and are relatively invariant to the active and the passive voice. Finally, we found that reversing the order of the words in all source sentences (but not target sentences) improved the LSTM's performance markedly, because doing so introduced many short term dependencies between the source and the target sentence which made the optimization problem easier. 全文链接: Sequence to Sequence Learning with Neural Networks——学术范 六、The Stanford CoreNLP Natural Language Processing Toolkit 摘要:We describe the design and use of the Stanford CoreNLP toolkit, an extensible pipeline that provides core natural language analysis. This toolkit is quite widely used, both in the research NLP community and also among commercial and government users of open source NLP technology. We suggest that this follows from a simple, approachable design, straightforward interfaces, the inclusion of robust and good quality analysis components, and not requiring use of a large amount of associated baggage. 全文链接: The Stanford CoreNLP Natural Language Processing Toolkit——学术范 七、Distributed Representations of Words and Phrases and their Compositionality 摘要:The recently introduced continuous Skip-gram model is an efficient method for learning high-quality distributed vector representations that capture a large number of precise syntactic and semantic word relationships. In this paper we present several extensions that improve both the quality of the vectors and the training speed. By subsampling of the frequent words we obtain significant speedup and also learn more regular word representations. We also describe a simple alternative to the hierarchical softmax called negative sampling. An inherent limitation of word representations is their indifference to word order and their inability to represent idiomatic phrases. For example, the meanings of "Canada" and "Air" cannot be easily combined to obtain "Air Canada". Motivated by this example, we present a simple method for finding phrases in text, and show that learning good vector representations for millions of phrases is possible. 全文链接: Distributed Representations of Words and Phrases and their Compositionality——学术范 八、Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank 摘要:Semantic word spaces have been very useful but cannot express the meaning of longer phrases in a principled way. Further progress towards understanding compositionality in tasks such as sentiment detection requires richer supervised training and evaluation resources and more powerful models of composition. To remedy this, we introduce a Sentiment Treebank. It includes fine grained sentiment labels for 215,154 phrases in the parse trees of 11,855 sentences and presents new challenges for sentiment compositionality. To address them, we introduce the Recursive Neural Tensor Network. When trained on the new treebank, this model outperforms all previous methods on several metrics. It pushes the state of the art in single sentence positive/negative classification from 80% up to 85.4%. The accuracy of predicting fine-grained sentiment labels for all phrases reaches 80.7%, an improvement of 9.7% over bag of features baselines. Lastly, it is the only model that can accurately capture the effects of negation and its scope at various tree levels for both positive and negative phrases. 全文链接: Recursive Deep Models for Semantic Compositionality Over a Sentiment Treebank——学术范 希望可以对大家有帮助, 学术范 是一个新上线的一站式学术讨论社区,在这里,有海量的计算机外文文献资源与研究领域最新信息、好用的文献阅读及管理工具,更有无数志同道合的同学以及学术科研工作者与你一起,展开热烈且高质量的学术讨论!快来加入我们吧!
你的论文准备往什么方向写,选题老师审核通过了没,有没有列个大纲让老师看一下写作方向? 老师有没有和你说论文往哪个方向写比较好?写论文之前,一定要写个大纲,这样老师,好确定了框架,避免以后论文修改过程中出现大改的情况!!学校的格式要求、写作规范要注意,否则很可能发回来重新改,你要还有什么不明白或不懂可以问我,希望你能够顺利毕业,迈向新的人生。 一、毕业论文选题的重要意义 第一、选题是撰写毕业论文的第一步,它实际上是确定“写什么”的问题,也就是确定论文论述的方向。如果“写什么”都不明确,“怎么写”根本无从谈起,因此毕业论文的顺利完成离不开合适的论文选题。 第二、毕业论文的写作一方面是对这几年所学知识的一次全面检验,同时也是对同学们思考问题的广度和深度的全面考察。因此,毕业论文的选题非常重要,既要考虑论文涉及的层面,又要考虑它的社会价值。 二、毕业论文选题的原则 (一)专业性原则 毕业论文选题必须紧密结合自己所学的专业,从那些学过的课程内容中选择值得研究或探讨的学术问题,不能超出这个范围,否则达不到运用所学理论知识来解决实际问题的教学目的。我们学的是工商管理专业,选题当然不能脱离这个大范畴,而且在限定的小范围内,也不能脱离工商管理、企业经营去谈公共事业管理或金融问题。学术研究是无止境的,任何现成的学说,都有需要完善改进的地方,这就是选题的突破口,由此入手,是不难发现问题、提出问题的。 (二)价值性原则 论文要有科学价值。那些改头换面的文章抄袭、东拼西凑的材料汇集以及脱离实际的高谈阔论,当然谈不上有什么价值。既然是论文,选题就要具有一定的学术意义,也就是要具有先进性、实践性和一定的理论意义。对于工商管理专业的学生而言,我们可以选择企业管理中有理论意义和实践指导意义的论题,或是对提高我国企业的管理水平有普遍意义的议题,还可以是新管理方法的使用。毕业论文的价值关键取决于是否有自己的恶创见。也就是说,不是简单地整理和归纳书本上或前人的见解,而是在一定程度上用新的事实或新的理论来丰富专业学科的某些氦姬份肯莓厩逢询抚墨内容,或者运用所学专业知识解决现实中需要解决的问题。 (三)可能性原则 选题要充分考虑到论题的宽度和广度以及你所能占有的论文资料。既要有“知难而进”的勇气和信心,又要做到“量力而行”。”选题太大、太难,自己短时间内无力完成,不行;选题太小、太易,又不能充分发挥自己的才能,也不行。一切应从实际出发,主要应考虑选题是否切合自己的特长和兴趣,是否可以收集到足够的材料和信息,是否和自己从事的工作相接近。一定要考虑主客观条件和时限,选择那些适合自己情况,可以预期成功的课题。一般来说,题目的大小要由作者实际情况而定,很难作硬性规定要求。有的同学如确有水平和能力,写篇大文章,在理论上有所突破和创新,当然是很好的。但从成人高校学生的总体来看,选题还是小点为宜。小题目论述一两个观点,口子虽小,却能小题大做,能从多层次多角度进行分析论证.这样,自己的理论水平可以发挥,文章本身也会写得丰满而充实。选择一个比较恰当的小论题,特别是与自己的工作或者生活密切相关的问题,不仅容易搜集资料,同时对问题也看得准,论述也会更透彻,结论也就可能下得更准确。 三、毕业论文选题的方法 第一、 浏览捕捉法。这种方法是通过对占有的论文资料快速、大量地阅读,在比较中来确定题目的方法。浏览,一般是在资料占有达到一定数量时集中一段时间进行,这样便于对资料作集中的比较和鉴别。浏览的目的是在咀嚼消化已有资料的过程中,提出问题,寻找自己的论题。这就需要我们对收集到的材料进行全面阅读研究,主要的、次要的、不同角度的、不同观点的都应了解,不能“先入为主”,不能以自己头脑中原有的观点决定取舍。而应冷静地、客观地对所有资料作认真的分析思考,从内容丰富的资料中吸取营养,反复思考琢磨之后,就会有所发现,然后再根据自己的实际确定自己的论题。 第二、 追溯验证法。这种方法要求同学们先有一种拟想,然后再通过阅读资料加以验证来确定选题的方法。同学们应该先有自己的主观论点,即根据自己平时的积累,初步确定准备研究的方向、题目或选题范围。这种选题方法应注意:看自己的“拟想”是否与别人重复,是否对别人的观点有补充作用;如果自己的“拟想”虽然别人还没有谈到,但自己尚缺乏足够的理由来加以论证,那就应该中止,再作重新构思。要善于捕捉一闪之念,抓住不放,深入研究。在阅读文献资料或调查研究中,有时会突然产生一些思想火花,尽管这种想法很简单、很朦胧,也未成型,但千万不可轻易放弃。 第三、 知识迁移法。通过四年的学习,对某一方面的理论知识(经济或者法律或者其它)有一个系统的新的理解和掌握。这是对旧知识的一种延伸和拓展,是一种有效的更新。在此基础之上,同学们在认识问题和解决问题的时候就会用所学到的新知识来感应世界,从而形成一些新的观点。理论知识和现实的有机结合往往会激发同学们思维的创造力和开拓性,为毕业论文的选题提供了一个良好的实践基础和理论基础。 第四、 关注热点法。热点问题就是在现代社会中出现的能够引起公众广泛注意的问题。这些问题或关系国计民生,或涉及时代潮流,而且总能吸引人们注意,引发人们思考和争论。同学们在平时的学习和工作中大部分也都会关注国际形势、时事新闻、经济变革。选择社会热点问题作为论文论题是一件十分有意义的事情,不仅可以引起指导老师的关注,激发阅读者的兴趣和思考,而且对于现实问题的认识和解决也具有重要的意义。将社会热点问题作为论文的论题对于同学们搜集材料、整理材料、完成论文也提供了许多便利。 第五,调研选题法。调研选题法类同于关注社会热点这样的选题方法,但所涉及的有一部分是社会热点问题,也有一部分并不是社会热点问题。社会调研可以帮助我们更多地了解调研所涉问题的历史、现状以及发展趋势,对问题的现实认识将更为清晰,并可就现实问题提出一些有针对性的意见和建议。同学们将社会调研课题作为毕业论文的论题,有着十分重要的现实意义,不仅可为地方经济建设和社会发展提供有价值的资料和数据,而且可为解决一些社会现实问题提供一个很好的路径。
我可能会倾向于人工智能,因为未来的市场人工智能占比还是较大的,这样你写论文的范围很广,比较容易
1、《CURRENT PROBLEMS IN CARDIOLOGY》
研究方向:医学-心血管系统,审稿周期:>12周,或约稿,录用率:较易,年发文量:162。期刊主题:每月发行一期,解决选定的临床问题或状况,包括病理生理学、侵入性和非侵入性诊断、药物治疗、手术管理和康复;或探索诊断模式或特定类别药物的临床应用。
2、《QUARTERLY REVIEW OF BIOLOGY》
研究方向:生物-生物学,审稿周期:周期不定,录用率:较难,年发文量:5。期刊主题:是生物学的首要评论杂志,它对重要的生物学主题进行了深刻的历史、哲学和技术处理。也是相关领域学者的重要评论期刊,包括政策研究、科学历史和哲学。
3、《IEEE INTELLIGENT SYSTEMS》
研究方向:工程技术-工程:电子与电气,审稿周期:>12周,或约稿,录用率:较易,年发文量:66。期刊主题:主题领域包括基于知识的系统、智能软件代理、自然语言处理、知识管理技术、机器学习、数据挖掘、自适应和智能机器人、Web上的知识密集型处理以及与智能系统相关的社会问题。
作者:刘知远链接:来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。昨天实验室一位刚进组的同学发邮件来问我如何查找学术论文,这让我想起自己刚读研究生时茫然四顾的情形:看着学长们高谈阔论领域动态,却不知如何入门。经过研究生几年的耳濡目染,现在终于能自信地知道去哪儿了解最新科研动态了。我想这可能是初学者们共通的困惑,与其只告诉一个人知道,不如将这些Folk Knowledge写下来,来减少更多人的麻烦吧。当然,这个总结不过是一家之谈,只盼有人能从中获得一点点益处,受个人认知所限,难免挂一漏万,还望大家海涵指正。1. 国际学术组织、学术会议与学术论文自然语言处理(natural language processing,NLP)在很大程度上与计算语言学(computational linguistics,CL)重合。与其他计算机学科类似,NLP/CL有一个属于自己的最权威的国际专业学会,叫做The Association for Computational Linguistics(ACL,URL:ACL Home Page),这个协会主办了NLP/CL领域最权威的国际会议,即ACL年会,ACL学会还会在北美和欧洲召开分年会,分别称为NAACL和EACL。除此之外,ACL学会下设多个特殊兴趣小组(special interest groups,SIGs),聚集了NLP/CL不同子领域的学者,性质类似一个大学校园的兴趣社团。其中比较有名的诸如SIGDAT(Linguistic data and corpus-based approaches to NLP)、SIGNLL(Natural Language Learning)等。这些SIGs也会召开一些国际学术会议,其中比较有名的就是SIGDAT组织的EMNLP(Conference on Empirical Methods on Natural Language Processing)和SIGNLL组织的CoNLL(Conference on Natural Language Learning)。此外还有一个International Committee on Computational Linguistics的老牌NLP/CL学术组织,它每两年组织一个称为International Conference on Computational Linguistics (COLING)的国际会议,也是NLP/CL的重要学术会议。NLP/CL的主要学术论文就分布在这些会议上。作为NLP/CL领域的学者最大的幸福在于,ACL学会网站建立了称作ACL Anthology的页面(URL:ACL Anthology),支持该领域绝大部分国际学术会议论文的免费下载,甚至包含了其他组织主办的学术会议,例如COLING、IJCNLP等,并支持基于Google的全文检索功能,可谓一站在手,NLP论文我有。由于这个论文集合非常庞大,并且可以开放获取,很多学者也基于它开展研究,提供了更丰富的检索支持,具体入口可以参考ACL Anthology页面上方搜索框右侧的不同检索按钮。与大部分计算机学科类似,由于技术发展迅速,NLP/CL领域更重视发表学术会议论文,原因是发表周期短,并可以通过会议进行交流。当然NLP/CL也有自己的旗舰学术期刊,发表过很多经典学术论文,那就是Computational Linguistics(URL:MIT Press Journals)。该期刊每期只有几篇文章,平均质量高于会议论文,时间允许的话值得及时追踪。此外,ACL学会为了提高学术影响力,也刚刚创办了Transactions of ACL(TACL,URL:Transactions of the Association for Computational Linguistics (ISSN: 2307-387X)),值得关注。值得一提的是这两份期刊也都是开放获取的。此外也有一些与NLP/CL有关的期刊,如ACM Transactions on Speech and Language Processing,ACM Transactions on Asian Language Information Processing,Journal of Quantitative Linguistics等等。根据Google Scholar Metrics 2013年对NLP/CL学术期刊和会议的评价,ACL、EMNLP、NAACL、COLING、LREC、Computational Linguistics位于前5位,基本反映了本领域学者的关注程度。NLP/CL作为交叉学科,其相关领域也值得关注。主要包括以下几个方面:(1)信息检索和数据挖掘领域。相关学术会议主要由美国计算机学会(ACM)主办,包括SIGIR、WWW、WSDM等;(2)人工智能领域。相关学术会议主要包括AAAI和IJCAI等,相关学术期刊主要包括Artificial Intelligence和Journal of AI Research;(3)机器学习领域,相关学术会议主要包括ICML,NIPS,AISTATS,UAI等,相关学术期刊主要包括Journal of Machine Learning Research(JMLR)和Machine Learning(ML)等。例如最近兴起的knowledge graph研究论文,就有相当一部分发表在人工智能和信息检索领域的会议和期刊上。实际上国内计算机学会(CCF)制定了“中国计算机学会推荐国际学术会议和期刊目录”(CCF推荐排名),通过这个列表,可以迅速了解每个领域的主要期刊与学术会议。最后,值得一提的是,美国Hal Daumé III维护了一个natural language processing的博客(natural language processing blog),经常评论最新学术动态,值得关注。我经常看他关于ACL、NAACL等学术会议的参会感想和对论文的点评,很有启发。另外,ACL学会维护了一个Wiki页面(ACL Wiki),包含了大量NLP/CL的相关信息,如著名研究机构、历届会议录用率,等等,都是居家必备之良品,值得深挖。2. 国内学术组织、学术会议与学术论文与国际上相似,国内也有一个与NLP/CL相关的学会,叫做中国中文信息学会(URL:中国中文信息学会)。通过学会的理事名单(中国中文信息学会)基本可以了解国内从事NLP/CL的主要单位和学者。学会每年组织很多学术会议,例如全国计算语言学学术会议(CCL)、全国青年计算语言学研讨会(YCCL)、全国信息检索学术会议(CCIR)、全国机器翻译研讨会(CWMT),等等,是国内NLP/CL学者进行学术交流的重要平台。尤其值得一提的是,全国青年计算语言学研讨会是专门面向国内NLP/CL研究生的学术会议,从组织到审稿都由该领域研究生担任,非常有特色,也是NLP/CL同学们学术交流、快速成长的好去处。值得一提的是,2010年在北京召开的COLING以及2015年即将在北京召开的ACL,学会都是主要承办者,这也一定程度上反映了学会在国内NLP/CL领域的重要地位。此外,计算机学会中文信息技术专委会组织的自然语言处理与中文计算会议(NLP&CC)也是最近崛起的重要学术会议。中文信息学会主编了一份历史悠久的《中文信息学报》,是国内该领域的重要学术期刊,发表过很多篇重量级论文。此外,国内著名的《计算机学报》、《软件学报》等期刊上也经常有NLP/CL论文发表,值得关注。过去几年,在水木社区BBS上开设的AI、NLP版面曾经是国内NLP/CL领域在线交流讨论的重要平台。这几年随着社会媒体的发展,越来越多学者转战新浪微博,有浓厚的交流氛围。如何找到这些学者呢,一个简单的方法就是在新浪微博搜索的“找人”功能中检索“自然语言处理”、 “计算语言学”、“信息检索”、“机器学习”等字样,马上就能跟过去只在论文中看到名字的老师同学们近距离交流了。还有一种办法,清华大学梁斌开发的“微博寻人”系统(清华大学信息检索组)可以检索每个领域的有影响力人士,因此也可以用来寻找NLP/CL领域的重要学者。值得一提的是,很多在国外任教的老师和求学的同学也活跃在新浪微博上,例如王威廉(Sina Visitor System)、李沐(Sina Visitor System)等,经常爆料业内新闻,值得关注。还有,国内NLP/CL的著名博客是52nlp(我爱自然语言处理),影响力比较大。总之,学术研究既需要苦练内功,也需要与人交流。所谓言者无意、听者有心,也许其他人的一句话就能点醒你苦思良久的问题。无疑,博客微博等提供了很好的交流平台,当然也注意不要沉迷哦。3. 如何快速了解某个领域研究进展最后简单说一下快速了解某领域研究进展的经验。你会发现,搜索引擎是查阅文献的重要工具,尤其是谷歌提供的Google Scholar,由于其庞大的索引量,将是我们披荆斩棘的利器。当需要了解某个领域,如果能找到一篇该领域的最新研究综述,就省劲多了。最方便的方法还是在Google Scholar中搜索“领域名称 + survey / review / tutorial / 综述”来查找。也有一些出版社专门出版各领域的综述文章,例如NOW Publisher出版的Foundations and Trends系列,Morgan & Claypool Publisher出版的Synthesis Lectures on Human Language Technologies系列等。它们发表了很多热门方向的综述,如文档摘要、情感分析和意见挖掘、学习排序、语言模型等。如果方向太新还没有相关综述,一般还可以查找该方向发表的最新论文,阅读它们的“相关工作”章节,顺着列出的参考文献,就基本能够了解相关研究脉络了。当然,还有很多其他办法,例如去上看著名学者在各大学术会议或暑期学校上做的tutorial报告,去直接咨询这个领域的研究者,等等。
有。有水刊。
沈雨娇为我院2012级英语专业本科学生,2017年考上上海外国语大学英语语言文学专业研究生,研究方向为跨文化交际,师从上外跨文化中心主任顾力行教授(Steve J. Kulich)和复旦大学人类社会学博士张晓佳老师。2021年1月获得日本早稻田大学的博士录取通知书,6月获得国家留学基金委员会公派奖学金,将于2022年4月赴日进行为期三年的博士学习,专业为国际文化与交流,研究方向为视觉文化,师从早稻田大学国际文化与交流学院主任吉本光弘教授。
title: 自然语言处理综述 date: 2021-11-18 11:03:11 自然语言是指人类日常使用的语言,比如:中文、英语、日语等。自然语言灵活多变,是人类社会的重要组成部分,但它却不能被计算机很好地理解。为了实现用自然语言在人与计算机之间进行沟通,自然语言处理诞生了。自然语言处理(Natural Language Processing, NLP)是一个融合了语言学、计算机科学、数学等学科的领域,它不仅研究语言学,更研究如何让计算机处理这些语言。它主要分为两大方向:自然语言理解(Natural language Understanding, NLU)和自然语言生成(Natural language Generation, NLG),前者是听读,后者是说写。 本文将从自然语言处理的历史与发展讲起,进而分析目前深度学习在自然语言处理领域的研究进展,最后讨论自然语言处理的未来发展方向。 1950年,计算机科学之父图灵提出了“图灵测试”,标志着人工智能领域的开端。而此时,正值苏美冷战,美国政府为了更方便地破译苏联相关文件,大力投入机器翻译的研究,自然语言处理从此兴起。从这之后的一段时期内,自然语言处理主要采用基于规则的方法,这种方法依赖于语言学,它通过分析词法、语法等信息,总结这些信息之间的规则,从而达到翻译的效果。这种类似于专家系统的方法,泛化性差、不便于优化,最终进展缓慢,未能达到预期效果。 到了20世纪80、90年代,互联网飞速发展,计算机硬件也有了显著提升。同时,自然语言处理引入了统计机器学习算法,基于规则的方法逐渐被基于统计的方法所取代。在这一阶段,自然语言处理取得了实质性突破,并走向了实际应用。 而从2008年左右开始,随着深度学习神经网络在图像处理、语音识别等领域取得了显著的成果,它也开始被应用到自然语言处理领域。从最开始的词嵌入、word2vec,到RNN、GRU、LSTM等神经网络模型,再到最近的注意力机制、预训练语言模型等等。伴随着深度学习的加持,自然语言处理也迎来了突飞猛进。 接下来,我将介绍自然语言处理与深度学习结合后的相关进展。 在自然语言中,词是最基本的单元。为了让计算机理解并处理自然语言,我们首先就要对词进行编码。由于自然语言中词的数量是有限的,那就可以对每个词指定一个唯一序号,比如:英文单词word的序号可以是1156。而为了方便计算,通常会将序号转换成统一的向量。简单做法是对单词序号进行one-hot编码,每个单词都对应一个长度为N(单词总数)的向量(一维数组),向量中只有该单词序号对应位置的元素值为1,其它都为0。 虽然使用one-hot编码构造词向量十分容易,但并不是一个较好的方法。主要原因是无法很好地表示词的语义,比如苹果和橘子是相似单词(都是水果),但one-hot向量就无法体现这种相似关系。 为了解决上述问题,Google的Mikolov等人于2013年发表了两篇与word2vec相关的原始论文[1][2]。word2vec将词表示成一个定长的向量,并通过上下文学习词的语义信息,使得这些向量能表达词特征、词之间关系等语义信息。word2vec包含两个模型:跳字模型(Skip-gram)[1] 和连续词袋模型(continuous bag of words,CBOW)[2],它们的作用分别是:通过某个中心词预测上下文、通过上下文预测某个中心词。比如,有一句话"I drink apple juice",Skip-gram模型是用apple预测其它词,CBOW模型则是用其它词预测出apple。 首先介绍CBOW模型,它是一个三层神经网络,通过上下文预测中心词。以某个训练数据"I drink apple juice"为例,可以把apple作为标签值先剔除,将"I drink juice"作为输入,apple作为待预测的中心词。 Skip-gram模型与CBOW类似,也是一个三层神经网络模型。不同在于,它是通过中心词预测上下文,即通过"apple"预测出"I drink juice"。接下来简单介绍Skip-gram模型中各层: 两种模型训练结束后,会取 作为词向量矩阵,第i行就代表词库中第i个词的词向量。词向量可用来计算词之间的相似度(词向量点乘)。比如,输入 I drink _ juice 上下文,预测出中心词为apple、orange的概率可能都很高,原因就是在 中apple和orange对应的词向量十分相似,即相似度高。词向量还可以用于机器翻译、命名实体识别、关系抽取等等。 其实这两种模型的原型在2003年就已出现[3],而Mikolov在13年的论文中主要是简化了模型,且提出了负采样与层序softmax方法,使得训练更加高效。 词向量提出的同时,深度学习RNN框架也被应用到NLP中,并结合词向量取得了巨大成效。但是,RNN网络也存在一些问题,比如:难以并行化、难以建立长距离和层级化的依赖关系。而这些问题都在2017年发表的论文《Attention Is All You Need》[4]中得到有效解决。正是在这篇论文中,提出了Transformer模型。Transformer中抛弃了传统的复杂的CNN和RNN,整个网络结构完全由注意力机制组成。 Transformer最核心的内容是自注意力机制(Self-Attention),它是注意力机制(Attention)的变体。注意力的作用是从大量信息中筛选出少量重要信息,并聚焦在这些信息上,比如:人在看一幅图像时,会重点关注较为吸引的部分,而忽略其它信息,这就是注意力的体现。但注意力机制会关注全局信息,即关注输入数据与输出数据以及中间产物的相关性。而自注意力机制则减少了对外部其它数据的关注,只关注输入数据本身,更擅长捕捉数据内部的相关性。 自注意力机制的算法过程如下: 自注意力机制不仅建立了输入数据中词与词之间的关系,还能并行地高效地计算出每个词的输出。 Transformer的总体架构如下: 它分为两部分:编码器(Encoder)和解码器(Decoder)。 编码器的输入是词向量加上位置编码(表明这个词是在哪个位置),再通过多头自注意力操作(Multi-Head Attention)、全连接网络(Feed Forward)两部分得到输出。其中,多头自注意力就是输入的每个词对应多组q、k、v,每组之间互不影响,最终每个词产生多个输出b值,组成一个向量。编码器是transformer的核心,它通常会有多层,前一层的输出会作为下一层的输入,最后一层的输出会作为解码器的一部分输入。 解码器包含两个不同的多头自注意力操作(Masked Multi-Head Attention和Multi-Head Attention)、全连接网络(Feed Forward)三部分。解码器会运行多次,每次只输出一个单词,直到输出完整的目标文本。已输出的部分会组合起来,作为下一次解码器的输入。其中,Masked Multi-Head Attention是将输入中未得到的部分遮掩起来,再进行多头自注意力操作。比如原有5个输入,但某次只有2个输入,那么q1和q2只会与k1、k2相乘,。 如果深度学习的应用,让NLP有了第一次飞跃。那预训练模型的出现,让NLP有了第二次的飞跃。预训练通过自监督学习(不需要标注)从大规模语料数据中学习出一个强大的语言模型,再通过微调迁移到具体任务,最终达成显著效果。 预训练模型的优势如下: 预训练模型的关键技术有三个: 关于预训练模型的架构,以Bert为例:输入是词的one-hot编码向量,乘上词向量矩阵后,再经过多层transformer中的Encoder模块,最终得到输出。 本文介绍了NLP领域的流行研究进展,其中transformer和预训练模型的出现,具有划时代的意义。但随着预训练模型越来越庞大,也将触及硬件瓶颈。另外,NLP在一些阅读理解、文本推理等任务上的表示,也差强人意。总而言之,NLP领域依旧存在着巨大的前景与挑战,仍然需要大家的长期努力。 [1]Mikolov, T., Sutskever, I., Chen, K., Corrado, G. S., & Dean, J. (2013). Distributed representations of words and phrases and their compositionality. In Advances in neural information processing systems (pp. 3111-3119). [2]Mikolov, T., Chen, K., Corrado, G., & Dean, J. (2013). Efficient estimation of word representations in vector space. arXiv preprint arXiv:1301.3781. [3]Yoshua Bengio, R´ejean Ducharme, Pascal Vincent, and Christian Janvin. A neural probabilistic language model. The Journal of Machine Learning Research, 3:1137–1155, 2003. [4]Vaswani A, Shazeer N, Parmar N, et al. Attention is all you need[C]//Advances in neural information processing systems. 2017: 5998-6008. [5]Peters M E, Neumann M, Iyyer M, et al. Deep contextualized word representations[J]. arXiv preprint arXiv:1802.05365, 2018. [6]Radford A, Narasimhan K, Salimans T, et al. Improving language understanding by generative pre-training[J]. 2018. [7]Devlin J, Chang M W, Lee K, et al. Bert: Pre-training of deep bidirectional transformers for language understanding[J]. arXiv preprint arXiv:1810.04805, 2018. [8]Houlsby N, Giurgiu A, Jastrzebski S, et al. Parameter-efficient transfer learning for NLP[C]//International Conference on Machine Learning. PMLR, 2019: 2790-2799.
介绍自然语言处理 一个自然语言' (荷兰)是任何自然语言使用的人,即不是一种人为的或人为的语言,如一种编程语言。 '自然语言处理' (自由党)是一个方便的描述,所有企图利用计算机来处理自然语言。 [ 1 ]的NLP包括: 语音合成:虽然这可能不是乍一看似乎很'聪明' ,合成的自然冠冕堂皇的讲话,是在技术上复杂,几乎肯定需要一些理解,什么是口语,以确保举例来说,正确的语调。 语音识别:基本上是连续减少声波分立的话。 自然语言理解:这里当作从孤立的话(无论是书面或决心通过语音识别)的'意义' 。这可能涉及完整的模型系统或'前端' ,带动其它项目由荷兰命令。 自然语言生成:荷兰创造适当的反应不可预测的投入。 问题补充:这个想法的使用数字电脑的NLP是'旧' ,这可能是因为第一个利用计算机,打破军事守则在第二次世界大战中。一些计算机科学家似乎都认为,俄罗斯(例如)是英语在不同的代码。在这种情况下,因为代码可以被打破,因此可以俄文。这种想法假设有一个共同'的含义基地'的所有自然语言,无论其表面的分歧。压倒一切的共识,语言学家是,这是不正确的。 人工语言处理'的形式,编译器和口译编程语言,是一个关键组成部分,成功的数字化电脑从最早的天。这一成功无疑鼓舞研究的NLP (还鼓励和乐观的态度) 。
先看大方向,这个比较好统计。NLP研究的大方向可以参考NLP会议的领域进行划分。各方向的热度可以参考顶会各个领域的论文接收数。虽然这个方法可能不是很实时,但我认为长期(五年)看还是能反映研究热度的,毕竟如果一个领域热门,研究人员多、进展多、论文多,大会组织者就会相应的扩大论文的接收数。不过会不会论文多是因为灌水多?所以我说要看长期而且是看顶会,一个会议如果长期允许这么灌水其档次肯定会下跌,市场规律嘛,这年头办个好会议也不容易。个人也可以根据这些数据自行判断各个领域的热门情况与趋势。
文本挖掘指的是从文本数据中获取有价值的信息和知识,它是数据挖掘中的一种方法。文本挖掘中最重要最基本的应用是实现文本的分类和聚类,前者是有监督的挖掘算法,后者是无监督的挖掘算法。 文本挖掘是一个多学科混杂的领域,涵盖了多种技术,包括数据挖掘技术、信息抽取、信息检索,机器学习、自然语言处理、计算语言学、统计数据分析、线性几何、概率理论甚至还有图论。自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系,但又有重要的区别。所以自然语言处理与文本挖掘是相互包含关系,可以相互联系相互影响。而北京理工大学大数据搜索与挖掘实验室张华平主任研发的NLPIR大数据语义智能分析技术是满足大数据挖掘对语法、词法和语义的综合应用。NLPIR大数据语义智能分析平台是根据中文数据挖掘的综合需求,融合了网络精准采集、自然语言理解、文本挖掘和语义搜索的研究成果,并针对互联网内容处理的全技术链条的共享开发平台。NLPIR大数据语义智能分析平台主要有精准采集、文档转化、新词发现、批量分词、语言统计、文本聚类、文本分类、摘要实体、智能过滤、情感分析、文档去重、全文检索、编码转换等十余项功能模块,平台提供了客户端工具,云服务与二次开发接口等多种产品使用形式。各个中间件API可以无缝地融合到客户的各类复杂应用系统之中,可兼容Windows,Linux, Android,Maemo5, FreeBSD等不同操作系统平台,可以供Java,Python,C,C#等各类开发语言使用。
两个不是同一层面的东西,严格来讲,自然语言处理是数据挖掘的一个具体应用领域。自然语言处理,通过分词、语法分析等,对自然语言文本进行分析,在此基础上进行进一步的分析,比如情感分析,目前在大数据领域应用也挺广泛的。数据挖掘的重点在于应用,用何种算法并不是很重要,关键是能够满足实际应用背景。而机器学习则偏重于算法本身的设计。自然语言处理是计算机科学领域与人工智能。领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。关于数据挖掘的相关学习,推荐CDA数据师的相关课程,课程主要培养学员硬性的数据挖掘理论与Python数据挖掘算法技能的同时,还兼顾培养学员软性数据治理思维、商业策略优化思维、挖掘经营思维、算法思维、预测分析思维,全方位提升学员的数据洞察力。点击预约免费试听课。
最近出于兴趣和需要,重新回顾中文分词技术,期间有些心得,以及一些关于自然语言处理的浅薄之见,这里简单分享一下。 首先, 中文分词_百度百科 里面简单介绍了其中主要的分词算法以及相应的优缺点,包括字符匹配法、统计法以及理解法,其中字符匹配法和统计法比较流行且可以取到相对不错的效果,而理解法则相对比较复杂高级,但是我认为这才是真正解决中文分词任务的根本算法。 如今用于中文分词的算法和模型虽算不上比比皆是,但也算是唾手可得,开源的如jieba、ltp、Hanlp等等,提供中文分词服务的如腾讯云、百度大脑、讯飞AI平台等,以及其他如Jiagu等。 其实这些平台算法的差距并不算太大,分词准确率基本上都是在80%以上,然而在98%以下(这里胡诌个数),在一些不太严格的应用场景下基本已经够用了,只要挑一个在自己的业务场景下表现最好的即可。 在我看来,对于中文分词这项任务而言,最关键最核心的其实并不是算法模型,这些都不是所谓的瓶颈,最重要的其实是高质量、大规模的词典。对于字符匹配法而言,词典是基础,没有词典自然连分都分不出来;对于统计学习法而言,其效果一方面取决于算法和模型的选择,一方面取决于其训练数据的数量与质量,需要堆人力物力,比如找专门的标注公司标注数据等。但是就算是人标的数据,也难免有所错误遗漏,所以在有错误的训练数据下,模型也不可能学的太好,同时训练数据再大,也难以覆盖全部语料,总会出现OOV,总有些句子会训练不到,此时还强求模型可以做到“举一反三”有些不切实际。 词条中还提到了关于中文分词的技术难点:歧义识别与新词识别,关于歧义识别,上面并没有提具体的解决思路,对于新词识别而言,这又是自然语言处理领域很基础并且很重要的点,可以参见一下我之前的文章: 《NLP基础任务之新词发现探索之路》 | lightsmile's Blog ,也有另一个思路,比如说爬取网上一些网站的相关条目,比如百度百科等。 简单看了一下 jieba 、 ansj_seg 、 Jiagu 的分词词典,发现其中jieba的词典质量最差,其中不少词性都是错误的,Jiagu的词典还算不错,就是一些新词不全,ansi_seg的没有细看。 尽管这些工具在一些评测数据的结果可以达到90以上的成绩,但是在我看来,还是不够的,我觉得中文分词这个基础而又艰巨的任务还是要到99%以上才可以,否则分词都分不对,那些在分词基础之上的任务更是不行,毕竟词是基本的语义单元。 然而在现在深度学习盛行的潮流下,许多任务如文本分类、命名实体识别等并不一定需要依赖于分词,直接基于字符(char)的Embedding也可以取得不错的效果,并且也可以规避OOV(out of vocabulary words,未登录词)的问题。 但是深度学习,尤其是监督学习的很关键之处是得有大规模的高质量训练数据,不然巧妇难为无米之炊,再好的模型也难以从垃圾中学到有用的知识。 话说回来,虽然自然语言处理是计算机科学与其他领域的交叉学科,深度学习、机器学习算是人工智能的一部分,然而许多时候往往十分依赖人工,而所谓的智能其实也不智能。 无论是计算机视觉领域里的图像分类还是自然语言处理领域的文本分类,其任务都是学习一个从输入 映射到输出或者说标签 的函数 ,具体来说就是将 表征为多维向量 ,将 表征为多维向量 ,然后让 进入一个模型进行一系列的运算后得到一个 ,通过不断地比较 和 的值并调整模型的参数使模型的运算结果 更为准确即更加贴近 (过程有点类似于 “猜数字”游戏 ),从而最终得到一个近似函数 ,我们就可以用来代替未知的 用于预测未来的样本 ,得到它对应的 。 我们可以发现,以上学习算法确实可以得到能够解决问题的模型,然而局限之处在于它也只能做这个任务,即对输入 预测 ,别的啥也干不了。 同时在基于深度学习的自然语言处理模型中,基本套路都是Embedding+Encoder+Decoder,其中Embedding是基于字还是基于词,是使用预训练词向量还是随机初始化,这些选择所导致的效果的差异都随着训练轮数的增加而最终减小。然而,由于梯度下降以及解空间的特点,基于bert的效果确实是要比Word2Vec的要好,那些词向量确实比Word2Vec的嵌入了(或者说学到了)更多的语言知识。 关于模型的选择和取舍,工业界和学术界的标准其实差别很大。学术界里有的论文是开创性的,而许多论文其实都是在原来基础上小修小改,将最近的较新的思想和算法一堆,实验结果比原来指标高一点又是一篇文章,程序运行占用多大内存、跑了多长时间这些都不是主要因素,也就是一切向指标看齐。 而工业界则更加看重的是性价比,不同的公司、不同的部门、不同的阶段其主要矛盾不同。比如说Facebook之前出的fastText,尽管模型很简单,最终效果可能比不上一些其他复杂的模型,但是其训练速度超快、基于CPU就可以,并且可以很方便地对模型进行压缩。许多时候,一些指标高低差几个点并没有那么关键,模型大小、训练时间、预测时间在很多时候是比较关键的因素,除非由于甲方或客户不满意,或者家大业大,有的是资源,那么这时候效果和指标又成为主要矛盾,这时的优化可能要以一定的时间和空间为代价。 原来的自然语言处理各任务基本上都构建在分词的基础之上,粗略来说有一个 语法 、 语义 到 语用 的递进的过程。这一层一层的任务虽然耦合的很好,但是 这种Pipline将会导致下层的错误都将会被积累到上层,其直接影响就是越到上层其准确率越低,甚至低到惨不忍睹的程度。然而在表示学习,尤其是深度学习崛起以后,其强大的特征学习能力,使得现在的模型多为end-to-end模型,其结果是一方面可以使得相关人员摆脱繁琐的特征工程,可以将特征提取与组合设计的工作交给神经网络模型去隐形完成,大大解放了生产力;令一方面可以将模型视为整体的一部分,即它的输入直接对应原始输入,它的输出直接是我们想要的结果,有点直达病灶的意思,摆脱了原来Pipline错误累积的困境。 不过我个人看来成也end-to-end,败也end-to-end,虽然简化了任务,但是有点太过开门见山,得到的模型一个个都是彼此孤立的,各做各的事情,然而从整体论的角度来看它们都是整个自然语言处理系统的一部分,一些特征本来是可以共享,一些结果是彼此相互依赖的。这也又涉及到参数共享、多任务学习等概念,不细表。由于神经网络的可解释性较差,这使得模型更加像一个黑盒,训练调参的过程更像是在炼丹,因为谁也不知道具体能炼出个什么玩意儿。 如下图很形象地诠释了这一现状: 下面就深度学习下的自然语言处理四大任务进行简单对比(都是个人浅薄之见,难免有不足之处,还望海涵)。自然语言处理四大任务分别是:序列标注、文本分类、句子关系、文本生成。 序列标注任务的原始语料是一连串的句子,经过标注后的语料格式大概如下(以命名实体识别为例): 我们可以发现,每一行的格式都是一个字符以及它所对应的类别,如 B_{type} 、 O ,那么对于每一个字符模型需要预测的类别数量总计为 2*len(types) + 1 ,其中2是指 BI 这种标注规范, len(types) 指类型种类的数量(如人名、地名、机构名共三种),1是指 O 。可以发现模型需要拟合的函数的值域还是很小的,即 O(len(types)) 。 文本分类任务的标注语料格式大概如下(以情感极性分析为例): 每一行的格式都包含原始文本以及它所对应的类别(或者说标签),我们可以发现模型需要预测的类别数量总计为 len(types) ,即类型种类的数量(以新闻语料分类,如 娱乐 、 军事 、 科技 、 体育 等),可以发现模型需要拟合的函数的值域也是较小的,即 O(len(types)) 。 句子关系任务的标注语料格式大致如下(以语句相似度为例): 每一行都是两个句子以及它们的关系( 1 代表语义相同, 0 代表语义不同),我们可以发现模型需要预测的类别数量总计为 len(relations) ,即关系种类的数量,可以发现模型需要拟合的函数的值域也是较小的,即 O(len(relations)) 。 文本生成任务的标注语料格式大致如下(以机器翻译为例): 我们可以发现每一行都是源语言句子以及目标语言的对应翻译。虽然此时模型和序列标注模型一样都需要对于单个样本预测多次,但是序列标注模型需要预测的次数直接等于字符的数量,是确定的,但是文本生成任务模型需要预测的次数是不确定的,并且每次预测的值域都是目标语言所有word(或者character)所组成的整体集合,即 O(len(words)) ,其规模可能是十万级或百万级的。因此我们很容易发现文本生成任务的难度和复杂程度是要远远高于其他任务的。对话任务如生成式闲聊机器人更是如此。 可能是之前的AlphaGo过于吸引广大群众的眼球,做相关业务的公司吹的太厉害,以及“人工智能”、“深度学习”这几个词听起来逼格满满,导致许多外行人认为现在的人工智能已经发展到很厉害的层次,并且可以做各种各样的事情,似乎无所不能。但是内行人心里却明白:“什么人工智能,人工智障吧”、“所谓人工智能,多是智能不够,人工来凑”。外行人看不到深度模型算法的局限性,如许多模型的精度并不能达到那么高;也看不到深度模型算法的前提条件,如高质量、大规模的数据集,他们以为模型大约聪明到随便喂点数据便成为终结者般的存在。这也就导致了他们刚开始预期很高,然而在投资或找到外包后发现效果远远不能达到预期,大失所望而潦草结束或撤资离场的局面。 如下一张图大概有点这个意思: 统观学术界与工业界,和计算机视觉领域相比,自然语言处理这种更深层次的、涉及到认知智能的领域的进展虽悠久但缓慢,并且许多任务目前为止距离真正商用还有很大的距离。然而正是科学史上如阿基米德、牛顿等伟大人物与其他相对无名之辈默默耕耘,前赴后继,才使得如今之人类齐享先辈之成果,即所谓“前人栽树后人乘凉”也。 我辈也无需悲观,须戒骄戒躁,搞算法的就多己见、少盲从,少水论文;搞工程的就多积累经验,提升实践能力,多做高质量的项目。功夫不负有心人。
文本数据挖掘 是一种利用计算机处理技术从文本数据中抽取有价值的信息和知识的应用驱动型学科。(文本挖掘是抽取有效、新颖、有用、可理解的、散布在文本文件中的有价值知识,并且利用这些知识更好地组织信息的过程) 文本数据挖掘处理的数据类型是文本数据, 属于数据挖据的一个分支 ,与机器学习、自然语言处理、数理统计等学科具有紧密联系。 文本挖掘在很多应用中都扮演重要角色,例如智能商务(例如客户关系管理)、信息检索(例如互联网搜索)等。 文本数据挖掘需要从三个层面进行理解:
自然语言处理(NLP) 关注的是人类的自然语言与计算机设备之间的相互关系。NLP是计算机语言学的重要方面之一,它同样也属于计算机科学和人工智能领域。而 文本挖掘 和 NLP 的存在领域类似,它关注的是识别文本数据中有趣并且重要的模式。
但是,这二者仍有不同。首先,这两个概念并没有明确的界定(就像“数据挖掘”和“数据科学”一样),并且在不同程度上二者相互交叉。 如果原始文本是数据,那么 文本挖掘就是信息 , NLP就是知识 ,也就是语法和语义的关系。
文本挖掘利用智能算法,如神经网络、基于案例的推理、可能性推理等,并结合文字处理技术,分析大量的非结构化文本源(如文档、电子表格、客户电子邮件、问题查询、网页等),抽取或标记关键字概念、文字间的关系,并按照内容对文档进行分类,获取有用的知识和信息。
文本挖掘是一个多学科混杂的领域,涵盖了多种技术,
信息检索 是指文献等信息资源的整理和搜索,其主要目的可以概括为:按照用户的具体需要,采用一些检索方法,把所有相关的文献都检索出来,同时摒弃掉那些看似相关实则不符合要求的文档。
我们能否为文本数据的处理制作一个高效并且通用的框架呢?我们发现,处理文本和处理其他非文本的任务很相似 以下就是处理文本任务的几大主要步骤: 1. 数据收集
获取或创建语料库,来源可以是邮箱、英文维基百科文章或者公司财报,甚至是莎士比亚的作品等等任何资料。
2. 数据预处理
在原始文本语料上进行预处理,为文本挖掘或NLP任务做准备
数据预处理分为好几步,其中有些步骤可能适用于给定的任务,也可能不适用。但通常都是标记化、归一化和替代的其中一种。 文本挖掘预处理 :文本挖掘是从数据挖掘发展而来,但并不意味着简单地将数据挖掘技术运用到大量文本的集合上就可以实现文本挖掘,还需要做很多准备工作。 文本挖掘的准备工作 由 文本收集 、 文本分析 和 特征修剪 三个步骤组成
文本分析 是指对文本的表示及其特征项的选取;文本分析是文本挖掘、信息检索的一个基本问题,它把从文本中抽取出的特征词进行量化来表示文本信息。文本(text)与 讯息(message)的意义大致相同,指的是由一定的符号或符码组成的信息 结构体 ,这种结构体可采用不同的表现形态,如语言的、文字的、影像的等等。文本是由特定的人制作的,文本的语义不可避免地会反映人的特定立场、观点、价值和利益。因此,由文本内容分析,可以推断文本提供者的 意图 和目的。 特征选择 将它们从一个无结构的原始文本转化为结构化的计算机可以识别处理的信息,即对文本进行科学的抽象,建立它的数学模型,用以描述和代替文本。使计算机能够通过对这种模型的计算和操作来实现对文本的识别。由于文本是非结构化的数据,要想从大量的文本中挖掘有用的信息就必须首先将文本转化为可处理的结构化形式。目前人们通常采用向量空间模型来描述文本向量,但是如果直接用分词算法和词频统计方法得到的特征项来表示文本向量中的各个维,那么这个向量的维度将是非常的大。这种未经处理的文本矢量不仅给后续工作带来巨大的计算开销,使整个处理过程的效率非常低下,而且会损害分类、聚类算法的精确性,从而使所得到的结果很难令人满意。因此,必须对文本向量做进一步净化处理,在保证原文含义的基础上,找出对文本特征类别最具代表性的文本特征。为了解决这个问题,最有效的办法就是通过特征选择来降维。
目前有关文本表示的研究主要集中于文本表示模型的选择和特征词选择算法的选取上。用于表示文本的基本单位通常称为 文本的特征或特征项 。特征项必须具备一定的特性:
在中文文本中可以采用 字、词或短语 作为表示文本的特征项。相比较而言,词比字具有更强的表达能力,而词和短语相比,词的切分难度比短语的切分难度小得多。因此,目前大多数中文文本分类系统都采用词作为特征项,称作特征词。这些特征词作为文档的中间表示形式,用来实现文档与文档、文档与用户目标之间的相似度计算 。如果把所有的词都作为特征项,那么特征向量的维数将过于巨大,从而导致计算量太大,在这样的情况下,要完成文本分类几乎是不可能的。 特征抽取的主要功能是在不损伤文本核心信息的情况下尽量减少要处理的单词数,以此来降低向量空间维数,从而简化计算,提高文本处理的速度和效率。文本特征选择对文本内容的过滤和分类、聚类处理、自动摘要以及用户兴趣模式发现、知识发现等有关方面的研究都有非常重要的影响。通常根据某个特征评估函数计算各个特征的评分值,然后按评分值对这些特征进行排序,选取若干个评分值最高的作为特征词,这就是 特征选择(Feature Selection) 。
特征选取方式 常见的有4种:
随着网络知识组织、人工智能等学科的发展,文本特征提取将向着数字化、智能化、语义化的方向深入发展,在社会知识管理方面发挥更大的作用。
努力消除歧义 是文本预处理很重要的一个方面,我们希望保留原本的含义,同时消除噪音。为此,我们需要了解:
3.数据挖掘和可视化
无论我们的数据类型是什么,挖掘和可视化是探寻规律的重要步骤 常见任务可能包括可视化字数和分布,生成wordclouds并进行距离测量
4.模型搭建
这是文本挖掘和NLP任务进行的主要部分,包括训练和测试。在适当的时候还会进行特征选择和工程设计
语言模型 :有限状态机、马尔可夫模型、词义的向量空间建模
机器学习分类器 :朴素贝叶斯、逻辑回归、决策树、支持向量机、神经网络
序列模型 :隐藏马尔可夫模型、循环神经网络(RNN)、长短期记忆神经网络(LSTMs)
5. 模型评估
评价模型是否达到预期?其度量标准将随文本挖掘或NLP任务的类型而变化。