首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用语义词表示(如word2vec)构建分类器

使用语义词表示(如word2vec)构建分类器
EN

Stack Overflow用户
提问于 2015-07-13 18:32:23
回答 2查看 1.1K关注 0票数 1

我想为论坛文章构建一个分类器,它将使用语义词表示自动将这些帖子分类为一些定义的类别(因此多类分类而不仅仅是二进制分类)。对于这个任务,我想利用word2vec和doc2vec来验证使用这些模型支持分类器快速选择训练数据的可行性。此时此刻,我尝试了这两种模式,它们都很有魅力。但是,由于我不想手动标记每句话来预测它所描述的内容,所以我希望将此任务留给word2vec或doc2vec模型。所以,我的问题是:在Python中我可以使用什么算法作为分类器?(我想在word2vec或doc2vec上应用一些集群--手动标记每个集群(这需要一些时间,并不是最好的解决方案)。在此之前,我使用了“LinearSVC”(来自支持向量机)和OneVsRestClassifier,但是,为了预测一个新的测试语句属于哪一类,我给每个句子贴上了标签(通过手动训练向量"y_train“)。对于这种类型的分类器(使用语义词表示来训练数据),python中有什么好的算法和方法?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-07-13 21:12:49

像word2vec/doc2vec之类的东西--实际上是任何一个非监督的分类器--的问题是它只使用上下文。所以,举个例子,如果我有一个句子,比如“今天是一个炎热的日子”,另一个像“今天是一个寒冷的日子”,它认为热和冷是非常相似的,应该是在一个集群中。

这对标签来说很不好。无论哪种方式,在python的gensim模块中都有一个很好的Doc2Vec和Word2Vec实现--您可以快速使用google数据集的预构建二进制文件,并测试您是否得到了有意义的集群。

您可以尝试的另一种方法是在计算机上实现一个简单的lucene/solr系统,并开始随机标记几个句子。随着时间的推移,lucene/solr会为您的文档建议标记,如果您的数据不是很糟糕的话,它们确实是相当不错的标记。

这里的问题是,你试图解决的问题不是特别容易,也不是完全可以解决的--如果你有非常好的/清晰的数据,那么你可以自动分类你的数据的80%-90%.但是,如果它是坏的,你将不能自动分类太多。

票数 2
EN

Stack Overflow用户

发布于 2015-07-24 21:02:16

对于句子的多类分类问题,doc2vec可以很好地工作,因为上下文在句子中很少有变化。

如果您只想使用python,我将推荐doc2vec (用于构建特性)和xgboost (用于训练分类器),这在类似的问题中对我起了作用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31390838

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档