2020-02-22 12:30:00
全文共2044字,预计学习时长6分钟
来源:Pexels
近期,Tractica的报告显示,人工智能支持的NLP软件市场预计将从2016年的1.36亿美元增加到2025年的54亿美元。10年内增长约40倍!
另一方面,《计算语言学》杂志的赞助者,计算语言学协会(ACL)举办的年度会议吸引了许多NLP科学家提交他们的成果。与2018年相比,2019年的ACL仅提交的论文就增加了75%。
看到这里,你可能会想——哇!在不久的将来,我要努力成为一名NLP数据科学家!我爱NLP!
但这是否意味着,仅因为这一领域前途光明就该进入这一领域?
事实是,你读到的一切都表明NLP的未来是光明的,是伟大的。但是,在完全了解NLP数据科学家的工作之前,不应该进入这个领域。
本文将分享NLP数据科学家工作的真相。希望你仔细了解实际情况,以便更好地决定是否进入NLP领域。
NLP是什么?
简而言之,它涉及到分析人类自然语言和表达的计算技术。
嗯…这是什么意思呢?
这意味着需要处理不同形式的文本。以下是NLP数据科学家有时会面临的一些情况。
情况1
看看下面的推文。
假设你正在分析这段文字。目的是理解文本。假设你确定主语是“mypants”,动词是“missing”。那么,你从这条推文中得到了什么信息?
“裤子不见了。”…??!
这显然不能代表推文的意思,对吧?
情况2
假设你正在执行基于方面的情感分析,包括情感(积极的或消极的)和目标(意见)。
例如,“餐厅提供的服务很好”。其中,方面是“服务”,情感是“积极的”。
这为什么很重要?因为餐厅老板不仅知道顾客有好的体验,而且知道自己提供了良好的服务。
假设在数据集中看到了这段文字。
“Thisvacuum cleaner really sucks.(这个吸尘器真棒。)”
这里的对象是吸尘器,但情感是什么呢?“suck”这个词通常代表一种负面情绪,但与吸尘器搭配使用时,它的意思可能会发生变化。
吸尘器通过产生吸力来清洁。所以这里使用“suck”其实是在描述这个吸尘器很好用,不是吗?
情况3
考虑一下更复杂的情况。例如:
“嘿,哥们儿,去哪儿吃好吃的啊?”
这个句子的意思是食物很好吃吗?不,实际上这只是一个问句。
来源:Pexels
情况4
另一种情况是处理文本时不知道它的意思。例如,你懂得英语、汉语和马来语。但公司正在进行日语文本分类项目。因此,在试图理解模型出了什么问题时,就会遇到困难。
解决方案之一是使用谷歌翻译将句子转换成你知道的语言。然而,谷歌翻译并不完美。某些情况下它所提供的翻译是没有意义的,这时就需要咨询母语是日语的人。
情况5
假设你在处理一个文本分类任务。目标是检测一个项目名称是属于葡萄酒还是果汁。
也许你会考虑使用关键字列表作为区分特征。在花了几个小时寻找一些有用的关键字来进行区分后,以下是你的想法:
首先,为每个类提供一组关键字列表。例如,葡萄酒类的关键字列表是['wine ', 'grape juice '],而果汁类的关键字列表是['juice ']。如果在项目名称中找到了关键字列表中的元素,该元素就会作为特征输入到模型中。
然而,该模型的准确率低于基准准确率(90%)。
该怎么做呢?耐心检查每一个错误分类的测试数据。你震惊于发现葡萄酒有许多拼写错误:wne、wyne等等。因此,必须更新列表,或者对训练数据集执行某些类型的检查,以期提高准确性。
然而,这还没有结束。精确度确实提高了,但你仍然对结果不满意。再一次仔细观察错误分类的数据,会发现这个有趣的项目名称:
“发酵葡萄汁制成的黑皮诺”
从名称中提取的关键字是“juice”,因此模型将其分类为果汁。这是错误的!黑皮诺是红葡萄酒,因此应归类为葡萄酒!
来源:Pexels
我知道你已经听过一千遍了,但这是真的——努力总有回报。如果你想成为优秀的人,必须练习,练习,再练习。如果你不喜欢什么,那就不要去做。
——雷·布拉德伯利(RayBradbury)
文本既有趣又令人厌烦。因此,绝大多数时间里,NLP数据科学家都在看着这些数据绞尽脑汁,想尽办法使模型理解上下文。
无论是在执行分析、特征工程还是模型改进,都应该用80%的时间来查看文本数据。因此,要确保能正确理解数据,并且预见将来可能发生的潜在情况。
如果你认为NLP数据科学家只是调用sklearn中的.fit(),小芯建议你考虑换个方向。