特征向量的输出不正确

时间:2017-04-11 16:16:01

标签: python machine-learning svm feature-extraction

我已经为情绪分析创建了一个分类器,并且在训练时没有遇到任何问题。但在测试时,我无法获得正确的输出。这里的主要问题是我输入分类器的特征向量没有返回正确的值。

这是我对特征向量的实现:

#Fucntion for feature vector for a single tweet
def getSVMFeatureVector(tweets):
        sortedFeatures = sorted(featureList)
        map = {}
        feature_vector = []
        for t in tweets:
            label = 0
            map = {}
            #Initialize empty map
            for w in sortedFeatures:
                map[w] = 0
            #Fill the map
            for word in t:
                if word in map:
                    map[word] = 1
            #end for loop
            values = map.values()
            feature_vector.append(values)                    
        return feature_vector
#end

正确的向量返回应该有' 1'放置在有击中的位置,即值与我的要素列表中存在的值匹配。但相反,它返回一个满0的向量。我认为我的这段代码存在逻辑错误。

featureList包含从数据集中提取的特征词。 示例:假设我的数据集包含足球比赛中的所有推文。所以功能列表如下所示:featureList = [' football',' el classico',' messi',' ronaldo',&# 39;巴塞罗那'马德里' ...]。这些是在预处理过的推文后准备的。

0 个答案:

没有答案