涉及多个功能时如何处理文本分类问题

时间:2018-12-26 07:56:39

标签: python nlp feature-extraction text-classification

我正在研究一个文本分类问题,该问题具有多个文本功能,需要建立一个模型来预测薪资范围。请参阅Sample dataset 大多数资源/教程仅在一列上处理特征提取,然后预测目标。我知道一些过程,例如文本预处理,特征提取(CountVectorizer或TF-IDF),然后是应用算法。

在这个问题上,我有多个输入文本功能。 涉及多个功能时如何处理文本分类问题?这些是我已经尝试过的方法,但是我不确定这些方法是否正确。请提供您的意见/建议。

1)对每个功能分别应用数据清洗,然后进行TF-IDF,然后进行逻辑回归。在这里,我尝试查看是否只能使用一种功能进行分类。

2)分别在所有列上应用数据清洗,然后对每个特征应用TF-IDF,然后合并所有特征向量以仅创建一个特征向量。最后进行逻辑回归。

3)在所有列上分别应用数据清理,然后合并所有清理后的列以创建一个功能“ merged_text”。然后在此merged_text上应用TF-IDF,然后进行逻辑回归。

这3种方法在交叉验证和测试集上给我大约35-40%的准确性。我期望未提供测试集的准确性至少达到60%。

此外,我不知道如何使用'company_name''experience'处理文本数据。 company_name中大约有2000多个唯一值。请提供有关文本分类问题中如何处理数字数据的输入/指针。

1 个答案:

答案 0 :(得分:1)

尝试这些事情:

  1. 对“职位描述”,“职位指定”和“关键技能”应用文本预处理。删除所有停用词,分隔每个单词以删除标点符号,将所有单词都小写,然后应用TF-IDF或Count Vectorizer,不要忘记在训练模型之前缩放这些功能。

  2. 将体验转换为最小体验和最大体验2个功能并将其视为离散数字功能。

  3. 公司和位置可被视为分类特征,并在训练模型之前创建虚拟变量/一种热编码。

  4. 尝试结合工作类型和关键技能,然后进行矢量化处理,看看效果如何。

  5. 使用随机森林回归器,使用GridCV调整超参数:n_estimators,max_depth,max_features。

希望这些可以提高模型的性能。

让我知道它在这些方面的表现如何。