如何将词语作为分类中的数值特征

在任何机器学习算法中,使用词语本身作为特征的最佳方法是什么?

我的问题是要从特定段落中提取与词语相关的特征。我应该使用字典中的索引作为数值特征吗?如果是的话,我该如何对这些特征进行归一化处理?

一般来说,NLP 中如何将词语本身用作特征?


回答:

有几种传统技术可以将词语映射到特征(二维数据矩阵中的列,其中行是各个数据向量)上,以便作为机器学习模型的输入。分类

  • 一个布尔字段,用于编码某个词在给定文档中是否存在;

  • 一个预定词集的频率直方图,通常是所有训练数据文档中出现频率最高的前 X 个词(本回答最后一段将详细介绍此项);

  • 两个或多个词的并置(例如,‘alternative’和‘lifestyle’连续出现时,其意义与这两个词的单独意义无关);这种并置可以在数据模型中直接捕获,例如,一个表示两个特定词在文档中直接相邻出现的布尔特征,或者可以在机器学习技术中利用这种关系,就像在这个例子中朴素贝叶斯分类器所做的那样强调文本

  • 词语作为原始数据用于提取潜在特征,例如,LSA或潜在语义分析(有时也称为LSI,用于潜在语义索引)。LSA是一种基于矩阵分解的技术,从文本中提取出文本本身的词语所未能显现的潜在变量。

机器学习中的一个常用参考数据集由大约50个最常见的词(例如,aanofandthethereif)的频率组成,这些词被称为“停用词”,用于莎士比亚、伦敦、奥斯汀和弥尔顿的出版作品。一个具有单隐藏层的基本多层感知器可以以100%的准确率分离这个数据集。这个数据集及其变体在机器学习数据库中广泛可用,学术论文中展示的分类结果同样常见。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注