Database 在DB中保存100万个句子-删除不相关的英语单词
我试图训练一个朴素的贝叶斯分类器,从情绪中提取积极/消极的词。例如: 我喜欢这部电影:)) 我讨厌下雨 我的想法是根据使用的情绪提取积极或消极的句子,但为了训练分类器并将其保存到数据库中 问题是我有超过100万个这样的句子,所以如果我逐字训练,数据库将面临挑战。我想删除所有不相关的单词示例“I”、“this”、“when”、“it”,这样我进行数据库查询的次数就更少了 请帮助我解决这个问题,为我提供更好的解决方法Database 在DB中保存100万个句子-删除不相关的英语单词,database,hadoop,nlp,classification,sentiment-analysis,Database,Hadoop,Nlp,Classification,Sentiment Analysis,我试图训练一个朴素的贝叶斯分类器,从情绪中提取积极/消极的词。例如: 我喜欢这部电影:)) 我讨厌下雨 我的想法是根据使用的情绪提取积极或消极的句子,但为了训练分类器并将其保存到数据库中 问题是我有超过100万个这样的句子,所以如果我逐字训练,数据库将面临挑战。我想删除所有不相关的单词示例“I”、“this”、“when”、“it”,这样我进行数据库查询的次数就更少了 请帮助我解决这个问题,为我提供更好的解决方法 谢谢有两种常见的方法: 编译一个 把那些你认为不有趣的句子和词性扔掉 在这两种情况
谢谢有两种常见的方法:
编辑:您还可以安全地丢弃训练集中只发生一次的所有内容(所谓的)。一次出现的单词对分类器几乎没有信息价值,但可能会占用大量空间。为了减少从数据库中检索到的数据量,您可以在数据库中创建一个字典(一个将单词*映射到数字**的表),然后只检索用于训练的数字向量和用于手动标记的完整句子表达一种感情 |*我脑子里没有科学出版物,但也许只用它代替单词就足够了。它会缩小字典的大小
|**如果此操作终止了您的数据库,您可以在本地应用程序中创建一个字典,该应用程序使用文本索引引擎(例如apache lucene),并仅将结果存储在您的数据库中。您可能希望签出此操作
我猜你的“不相关”单词,包括“I”、“this”、“when”、“it”应该经常出现在肯定句和否定句中。也许这有助于设计一种算法,自动取消某些单词的资格,无论是在你走的时候还是在通过考试前。+1表示“数据库将进行掷骰”这必须是一个数据库吗?全文搜索引擎如何?或者是一个简单的数据结构?+1,在训练算法之前,很难找出要删除的单词,看看哪些单词不那么重要。ps。我还将把句子的长度作为一个特征。确实,感谢这个链接;看看其他人是如何的很有趣这样做。。。