NLP 并不是所有数据科学家都必须接触和了解的内容。是否需要了解 NLP,取决于面试你的公司。如果你对 NLP 不感兴趣,那么你至少需要知道它是什么,以便在职业生涯中避开它。
1. Google 网络安全证书 - 快速进入网络安全领域。
2. Google 数据分析专业证书 - 提升你的数据分析能力
3. Google IT 支持专业证书 - 支持你的组织 IT
如果你对 NLP 感兴趣并愿意了解更多,你将受益于了解可能会遇到的面试问题。
不,这不是最近流行的那种伪科学心理学方法,他们称之为神经语言程序设计。
“我们的” NLP 也越来越受欢迎,但它指的是自然语言处理。
正如维基百科所说,自然语言或普通语言是指在人类通过使用和重复自然演变的任何语言,无需有意识的规划或预谋。
上述定义中的关键字是“人类”。在 NLP 中,还有一个额外的关键字:计算机。因此,NLP 的定义是教计算机如何理解自然语言。由于这是计算机,这种理解意味着处理和分析以不同数据格式存储的自然语言数据。
为此,NLP 结合了人工智能、计算机科学和语言学的知识。
NLP 正在成为我们日常生活的一部分。当我写下前一句话时,Google 的智能编写功能建议了“日常生活”这个短语。我接受了,因为这正是我想写的。
这就是其用途之一:自动纠错、自动完成和拼写检查。NLP 软件扫描文本中的语法和拼写错误,进行纠正或提供纠正建议。还有一些拼写检查器可以“理解”整个句子的语法、上下文和意义。基于这些,它们会建议纠正或更好的措辞,以符合你希望通过文本实现的目标。
语言翻译是 NLP 的另一种应用。每当你身处外国时,你可能会使用翻译工具,如 Google Translate。同时,翻译工具在社交媒体上也越来越常见,例如 Facebook、Instagram 和 YouTube。
识别和生成语音也是 NLP 的一种应用。想想 Google Assistant、Windows 语音识别、Dragon、Siri、Alexa 或 Cortana;当你说话时,它们似乎都能理解你(多多少少)。根据你告诉它们的内容,它们会执行某些操作,如浏览互联网、输入你的文字或播放你最喜欢的歌曲。其中一些工具甚至可以回应你,即生成语音。
NLP 还可以解码文本的‘情感’。换句话说,它们可以检测文本背后的情感,而不仅仅是字面意思。这意味着理解情绪(快乐、愤怒、困扰、中立……)、讽刺、双关语、隐喻和上下文中的表达。这被称为情感分析。比如理解社交媒体上的评论,移除那些违反服务条款的评论,或者通过分析客户的评论和评价来获取客户的满意度。
NLP 在在线营销中被广泛应用。你搜索的关键词会与公司的关键词、他们的产品以及广告进行匹配。因此,当你开始看到你刚刚搜索的产品的广告时,不用担心。你并没有疯;这是 NLP 和目标广告在发挥作用。
数据科学家可能对自然语言本身不感兴趣。但是,如果将计算机处理加入其中——让自然语言成为数据——那么你可能会吸引数据科学家的注意。
也许仅仅让数据科学家的眼睛一亮是不够的,但如果知道机器学习(ML)与自然语言处理(NLP)有重叠并且经常被使用,这可能会改变这一点。
上述所有 NLP 的应用背后通常都涉及 ML。而 ML 无疑是一个深度融入数据科学的领域。
在讨论 ML 时,通常会区分监督式和无监督式 ML。
在 NLP 中最常用的监督式 ML 模型包括:
-
支持向量机(SVMs)
-
贝叶斯网络
-
最大熵
-
条件随机场
-
神经网络
无监督学习在 NLP 中并不那么常见,但仍然有一些技术被使用:
-
聚类
-
潜在语义索引(LSI)
-
矩阵分解
每个 ML 模型和算法背后都有基础的统计学概念。
这两个领域在所有寻找数据科学家的严肃公司中都受到严格考验。涉及 NLP 的公司也是如此。
NLP 中可能具有特定的术语,你需要了解这些术语。
将我在这里提到的内容结合起来,围绕三个主要主题进行面试准备。
所有之前的讨论自然引出了 NLP 面试问题的类别:
-
一般与 NLP 术语相关的问题
-
统计问题
-
建模问题
“我不会在这篇文章中涵盖编码问题。数据科学家通常需要精通编码,特别是 SQL 和 Python,这已是常识。在 NLP 领域工作的数据科学家也不例外,因此你应当为面试中的编码部分做好准备。”
这些 NLP 面试问题涉及你对 NLP 是什么,它是如何工作的,以及特定于 NLP 的技术概念的知识。
这是最不具有‘可转移性’的数据科学知识。换句话说,如果你没有在 NLP 方面的工作经验,你之前的数据科学知识在这里不会有太大帮助。因此,如果你没有 NLP 的工作经验,请认真对待这些问题,并为面试做细致的准备。
一些问题示例是:
统计问题考察你对统计概念的知识,这些概念你会在作为数据科学家时经常使用,尤其是在处理 NLP 项目时。
以下是一些示例:
-
贝叶斯统计与频率统计:贝叶斯统计与频率统计的区别是什么?
-
皮尔逊相关系数:证明皮尔逊相关系数为何在-1 和 1 之间。
自然语言处理(NLP)面试问题的第三类涉及机器学习(ML)及模型的一般问题。这可能指的是 NLP 中最常用的 ML 算法(如上所述)以及一些在 NLP 中使用的其他特定技术和方法。
以下是一些示例:
-
PCA 和 LDA/QDA:PCA 和 LDA/QDA 之间有什么关系?
-
朴素贝叶斯分类器:朴素贝叶斯分类器的“朴素”是什么?
自然语言处理是一个在日常生活中越来越常用的领域。目前的应用包括拼写检查、自动补全工具、翻译器、语音识别和生成软件。NLP 在社交媒体监控和在线营销中也被广泛使用。
NLP 与机器学习有重叠,因此许多机器学习的知识也适用于 NLP。但不要过于自满!NLP 是一个广泛且具体的领域,需要了解非常具体的术语、技术和常用方法。
一般来说,面试问题的类型可以分为一般的 NLP 问题、统计问题和建模问题。
我给你的例子和资源只是一个开始。但即使如此,它们也足以让你在 NLP 职位面试中无所畏惧。
内特·罗西迪 是一名数据科学家和产品策略专家。他还是一名教授分析学的兼职教授,并且是StrataScratch的创始人,该平台帮助数据科学家通过来自顶级公司的真实面试问题准备面试。你可以通过Twitter: StrataScratch或LinkedIn与他联系。