NLP - 使用哪种技术对段落的标签进行分类?
NLP - which technique to use to classify labels of a paragraph?
我对 NLP 还很陌生,正在尝试学习可以帮助我完成工作的技术。
这是我的任务:我必须根据文本备忘录对钻井过程的各个阶段进行分类。
我必须根据 "Com" 列中的内容对 "Activity"、"Activity Detail"、"Operation" 的标签进行分类。
我已经在网上阅读了很多文章,我读过的各种不同的技术确实让我感到困惑。
我试图理解的流行语是
- Skip-gram(基于预测的方法,Word2Vec)
- TF-IDF(基于频率的方法)
- 共现矩阵(基于频率的方法)
我得到了大约 40,000 行数据(我知道这很小),我看到一篇文章说,如果我的数据很少,基于神经网络的模型(如 Skip-gram)可能不是一个好的选择训练数据。所以我也在研究基于频率的方法。总的来说,我不确定哪种技术最适合我。
这是我的理解:
- Skip-gram:用于表示向量中单词的技术space。但是一旦我对我的语料库进行矢量化,我就不知道下一步该怎么做
- TF-IDF:告诉每个单词在每个句子中的重要性。但我仍然不知道它如何应用于我的问题
- 共现矩阵:我不太明白它是什么
- 这三种技术都是用数字表示文本。但是我不确定接下来应该采取什么步骤来对标签进行实际分类。
我应该使用什么方法和技术顺序来解决我的问题?如果有任何开源 Jupyter notebook 项目,或 link 完成类似工作的文章(希望有代码),请在此处分享。
让我们把事情弄清楚一点。你的任务是创建一个系统来预测给定文本的标签,对吗?并且无法对非结构化数据(文本)进行标签预测(分类)。所以你需要让你的数据结构化,然后训练和推断你的分类器。因此,你需要引入两个独立的系统:
- 文本矢量化器(如您所说,它有助于用数字表示文本)。
- 分类器(预测数字表示文本的标签)。
Skip-Gram 和共现矩阵是对文本进行矢量化的方法(这里有一个不错的 article that explains their difference). In case of skip-gram you could download and use a 3rd party model that already has mapping of vectors to most of the words; in case of co-occurrence matrix you need to build it on your texts (if you have specific lexis, it will be a better way). In this matrix you could use different measures to represent the degree of co-occurrence of words with words or documents with documents. TF-IDF is one of such measures (that gives a score for every word-document pair); there are a lot of others (PMI, BM25, etc). This article should help to implement classification with co-occurrence matrix on your data. And this one 给出了如何使用 Word2Vec 执行相同操作的想法。
希望对您有所帮助!
我对 NLP 还很陌生,正在尝试学习可以帮助我完成工作的技术。
这是我的任务:我必须根据文本备忘录对钻井过程的各个阶段进行分类。
我必须根据 "Com" 列中的内容对 "Activity"、"Activity Detail"、"Operation" 的标签进行分类。
我已经在网上阅读了很多文章,我读过的各种不同的技术确实让我感到困惑。
我试图理解的流行语是
- Skip-gram(基于预测的方法,Word2Vec)
- TF-IDF(基于频率的方法)
- 共现矩阵(基于频率的方法)
我得到了大约 40,000 行数据(我知道这很小),我看到一篇文章说,如果我的数据很少,基于神经网络的模型(如 Skip-gram)可能不是一个好的选择训练数据。所以我也在研究基于频率的方法。总的来说,我不确定哪种技术最适合我。
这是我的理解:
- Skip-gram:用于表示向量中单词的技术space。但是一旦我对我的语料库进行矢量化,我就不知道下一步该怎么做
- TF-IDF:告诉每个单词在每个句子中的重要性。但我仍然不知道它如何应用于我的问题
- 共现矩阵:我不太明白它是什么
- 这三种技术都是用数字表示文本。但是我不确定接下来应该采取什么步骤来对标签进行实际分类。
我应该使用什么方法和技术顺序来解决我的问题?如果有任何开源 Jupyter notebook 项目,或 link 完成类似工作的文章(希望有代码),请在此处分享。
让我们把事情弄清楚一点。你的任务是创建一个系统来预测给定文本的标签,对吗?并且无法对非结构化数据(文本)进行标签预测(分类)。所以你需要让你的数据结构化,然后训练和推断你的分类器。因此,你需要引入两个独立的系统:
- 文本矢量化器(如您所说,它有助于用数字表示文本)。
- 分类器(预测数字表示文本的标签)。
Skip-Gram 和共现矩阵是对文本进行矢量化的方法(这里有一个不错的 article that explains their difference). In case of skip-gram you could download and use a 3rd party model that already has mapping of vectors to most of the words; in case of co-occurrence matrix you need to build it on your texts (if you have specific lexis, it will be a better way). In this matrix you could use different measures to represent the degree of co-occurrence of words with words or documents with documents. TF-IDF is one of such measures (that gives a score for every word-document pair); there are a lot of others (PMI, BM25, etc). This article should help to implement classification with co-occurrence matrix on your data. And this one 给出了如何使用 Word2Vec 执行相同操作的想法。
希望对您有所帮助!