【新智元导读】在过去几年中,自然语言处理 (NLP) 的知名度不断提高,我们查看了超过 25,000 个与 NLP 相关的工作描述,这里是您在 NLP 职业中应该了解的最重要的技能、框架、编程语言和云服务。
老板们正在寻找特定的技能组合、专业知识和工作流程,而这些技能与平台无关。
下图显示了20种需求技能,包括NLP基础知识和更广泛的数据科学专业知识。
如图表所示,老板最看重的NLP技能是NLP基础知识。与去年相比,雇主对具有数据分析技能的人需求激增。这意味着我们不能只是了解平台,而要了解NLP是如何作为一项核心技能运作的。如果你不知道如何应用Transformer、分类、语言学、问题回答、情感分析、主题建模、机器翻译、语音识别、命名实体识别等核心NLP技能,那么知道光是知道spaCy如何工作,也没有什么意义。机器学习与深度学习
机器学习是基本的数据科学技能,而深度学习是NLP的基础。
掌握这两者将证明您了解数据科学,进而了解NLP。因为雇主大多希望人才可以使用预训练模型和Transformer。研究
NLP需要与最新的论文和模型保持同步。公司发现NLP是AI的最佳应用之一,无论是什么行业的公司都如此。
因此,了解或找到正确的模型、工具和框架来应用于 NLP 的许多不同用例,这需要一个强大的研究重心。数据科学基础
在了解机器学习这一核心技能之后,了解编程和计算机科学基础知识,会表明你在该领域有坚实的基础。计算机科学、数学、统计学、编程和软件开发都是NLP项目中所需的技能。
云计算、API 和数据工程
NLP专家不会直接在他们的个人笔记本电脑上进行情感分析。雇主们正在寻找能够处理更多数据工程全栈的NLP专家,像是能够使用API,建立数据管道,构建工作流程管理,并在基于云的平台上完成这一切的人才。
除了技能和专业知识之外,还有一些特定的平台、工具和语言是老板们特别看重的。下面的图表显示了现在流行的平台。这个名单并没有囊括所有平台,所以大家最好是随时更新、查找一下流行的新工具和框架。
机器学习框架
除了一般的机器学习和深度学习之外,还有一些框架是NLP项目的核心。
TensorFlow因其在ML和神经网络的灵活性而受到青睐,PyTorch因其在NLP方面的易用性和先天设计而受到欢迎,scikit-learn则广泛用于分类和聚类。虽然只知道一个平台已经很厉害了,但通过了解这三个或更多的平台,我们可以变得更灵活,更具适应性,这样也就会更有竞争力。与去年相比,PyTorch现在是最受欢迎的机器学习框架,并且已经慢慢超过TensorFlow/Keras,成为ML任务的首选。自然语言处理框架
为了更具体地了解NLP,这里有几个框架,对于想要成为NLP的专业人员很有用。NLTK因其更广泛的性质而受到赞赏,因为它能够为几乎所有工作提取正确的算法。同时,spaCy因其处理多种语言的能力和支持词向量的能力而受到赞赏。新加入的是Apache OpenNLP,主要用于常见的NLP任务和简易操作,CoreNLP用于Java。令人惊讶的是,有着深度学习架构的HuggingFace transformers并不在去年的列表上。在过去的几年里,BERT仍然非常受欢迎,尽管谷歌的最后一次更新是在2019年底,但它仍然被广泛应用。BERT之所以能够脱颖而出,是因为其对问答和基于上下文的相似性搜索有强大亲和力,这样它在聊天机器人以及其他相关应用程序中也能表现得相当可靠。BERT甚至考虑了单词的上下文,从而可以得到与各个查询和任务相关的更准确的结果。数据工程平台
数据管道有助于文本数据的流动,特别是对于实时数据流和基于云的应用。而在这个领域,尽管其他平台还在壮大,Spark仍然是数据管道的领导者。
它甚至还有一个更具体的版本,Spark NLP。它是一个专门用于语言任务的库。尤其是在医疗保健领域,Spark NLP得到了大量应用——这是一个拥有大量数据的领域,含有很多医疗记录和医学数据。Python作为NLP的首选编程语言,一直遥遥领先,这一点应该不出大家所料。许多流行的NLP框架,如NLTK和spaCy,都是基于Python的,所以成为Python配套语言的专家是很有意义的。了解一些SQL也是必不可少的。Java有许多为该语言设计的库,包括CoreNLP、OpenNLP等。云服务是2022年的常态,所以我们看到一些服务提供商变得越来越受欢迎。AWS云、Azure云和其他都与许多其他框架和语言兼容,它们也就因此成为所有NLP技能的必要条件。与此同时,谷歌云也开始崭露头角。总的来说,如果你想点亮一个新的技能点,获得一项稀缺的、永不过时的、广泛使用的技能,那么也许现在是时候学习NLP或其他核心数据科学技能了!https://odsc.medium.com/top-nlp-skills-frameworks-platforms-and-languages-for-2023-cb05b8b5624b