学习自然语言处理(NLP)前要知道的7件事
从智能音箱到客户服务聊天机器人,自然语言处理(NLP)为技术人员提供了无数机会。MarketsandMarkets预计全球NLP市场将从2020年的116亿美元增长到2026年的351亿美元,年复合增长率为20.3%。
NLP起源于机器学习(ML)算法,通过研究实例和从统计数据中形成推断来学习规则,它帮助计算机更容易理解语言。
自然语言处理的实际用例包括自动化金融中的法律文件。聊天机器人还使用NLP对医疗保健中的医疗症状进行分类,并改善零售和客户服务。
布法罗大学工程与应用科学学院计算机科学与工程教授Rohini Srihari博士指出,许多应用可能需要NLP来理解大量文本、处理简历和医疗记录,以及分析新闻。NLP还帮助市场营销和研究专业人员进行意见分析、社交媒体挖掘和消费者品牌分析。此外,初创公司需要NLP工程师来开发客服聊天机器人,制造商也依赖NLP来筛选手册。
Primer AI是一家工业级NLP应用程序提供商,其产品工程师和数据科学家Zein Tawil指出了企业如何使用NLP来分析Glassdoor上的数千条评论。“你可以看到,Glassdoor已经做到了提取关键短语,然后聚合它们,但你可以通过对这些短语进行一些针对性分析,从而深入到更深层的层面,”Tawil说。
为了有效地培训NLP,你可以在大学或学院把它作为计算机科学项目的一部分来学习,或者从Coursera、edX或Udacity等在线服务上在线学习NLP课程。如果你开始学习这门特殊的学科,这里有7件事要记住。
学好数学
与ML的其他方面一样,自然语言处理需要对数学有深刻的理解,包括概率、统计、线性代数和微积分。人工智能人才平台和服务提供商Fusemachines的首席执行官、哥伦比亚大学国际与公共事务副教授Sameer Maskey博士说:“如果你想成为一名NLP工程师、NLP研究员或NLP科学家,你需要完全做好准备,并有这样的心态:‘我要学习NLP中应用的所有机器学习所需的核心数学。’”
学习编程和计算机科学
至少学习一门编程语言,比如Python或Java,Maskey建议:“你需要非常了解算法、数据结构和一种编程语言,这样你就可以在打下扎实的算法和数据结构基础的基础上写出好的程序和代码。”
学习一门语言
Srihari建议,要扎实理解计算语言学和语言,它们构成了植根于ML的自然语言处理的经典形式。语言帮助NLP专业人员理解他们正在创建的语言背后的语法。
Maskey说:“要了解你在构建NLP系统时使用的语言。”通过这种方式,NLP工程师可以在制造机器的过程中评估机器的性能。Maskey建议,如果工程师们用英语构建自然语言处理系统,他们应该掌握英语的细微差别,以便通过分析输出和发现错误来正确评估系统。Maskey希望自己在IBM沃森(IBM Watson)构建机器翻译系统时,能学习中文或西班牙语。
学习搜索引擎是如何工作的
Srihari建议,在学生学习自然语言处理课程之前,应该学习搜索引擎中的信息检索。Srihari说:“在开发NLP应用程序了解如何处理大量文本数据时,这是一个非常重要和宝贵的经验,比如如何索引一百万或200万条推文并快速搜索。”
深入学习ML和深度学习
Srihari说,研究科学家将需要基于深度学习和ML的自然语言处理技能。“如今真正流行的是深度学习方法,这种方法工作得很好,因为这些深度学习模型有大量的数据和一些复杂度,以及它们学习这些表示的能力。”
深度学习模型可以区分在讲话中使用的正确代词,这种做法被称为呼叫参考或代词解析。
学习错误分析
学习如何调试聊天机器人,并确保他们为用户提供正确的答案。Srihari在她的自然语言处理课程中教授这一概念,她说,错误分析包括创建新的规则以及新的数据类型和再训练。
她说:“这是我非常强调的一点——找出问题所在,进行错误分析,然后告诉你如何进行微调。”
探索语音识别和对话人工智能
让Alexa和Siri等智能音箱工作的自然语言处理部分被称为语音识别。它包括语音输入,工程师确保对话被正确地听到,然后准确地转录成文本。
NLP将使未来的能力超越简单的问题和答案,并使与alexa类设备的来回对话成为可能。Srihari正在进行这种对话式人工智能的研究。
“我们能否开发出一种真正能与人类进行智能、移情和互动的人工智能?”Srihari问道。“如果我们能做到这一点,那么所有类型的应用程序都将被启用。”
作者:Brian T. Horowitz
AI聘
微信扫码关注该文公众号作者