解释这段代码# coding: utf-8 from gensim.models.word2vec import Word2Vec import numpy as np import jieba import csv from sklearn.externals import joblib # 对每个句子的所有词向量取均值,来生成一个句子的vector def build_sentence_vector(text, size, imdb_w2v): vec = np.zeros(size).reshape((1, size)) count = 0. for word in text: try: vec += imdb_w2v.wv[word].reshape((1, size)) count += 1. except KeyError: continue if count != 0: vec /= count return vec # 构建待预测句子的向量 def get_predict_vecs(words): n_dim = 300 imdb_w2v = Word2Vec.load(r'..\test\sentiment-analysis\svm_data\w2v_model\w2v_model.pkl') train_vecs = build_sentence_vector(words, n_dim, imdb_w2v) return train_vecs # 对单个句子进行情感判断 def svm_predict(string): words = jieba.lcut(string) words_vecs = get_predict_vecs(words) # 构建测试集的词向量 # 加载训练好的模型 clf = joblib.load(r'..\test\sentiment-analysis\svm_data\svm_model\model.pkl') result = clf.predict(words_vecs) if int(result[0]) == 1: #print("positive") return "1" else: #print("negetive") return "-1" count = 0 prodict = 0 # 计算准确度 with open(r'..\test\sentiment-analysis\test.csv',encoding='utf-8') as csvfile: online = csv.reader(csvfile) for lonly in enumerate(online): count = count + 1 identify = svm_predict(lonly[1][0]) print(lonly[1][1]) if identify == lonly[1][1]: prodict = prodict + 1 accuracy = prodict/count*100.0 print(accuracy)
时间: 2023-06-04 11:08:53 浏览: 73
这段代码的作用是创建一个Python的类,类名为Person,其中包含两个属性name和age,以及两个方法__init__()和get_info()。其中__init__()方法是类的构造函数,用于初始化对象的属性值;get_info()方法用于返回对象的信息,即name和age属性的值。
相关问题
# coding=utf-8 和 # coding: utf-8有什么区别
两者的作用是相同的,都是用来指定Python源文件的编码格式为UTF-8。但是,它们的语法有所不同:
- `# coding=utf-8` 使用了等号,这种写法在Python 2.x中是不支持的,只有在Python 3.x中才能使用。
- `# coding: utf-8` 使用了冒号,这种写法在Python 2.x和Python 3.x中都是支持的。
在Python 2.x中,如果你想指定文件编码格式为UTF-8,应该使用第二种写法,即 `# coding: utf-8`。在Python 3.x中,两种写法都可以使用,但是推荐使用第一种写法,即 `# coding=utf-8`。
# coding: utf-8 import sys, os from catdog.deep_convnet import DeepConvNet sys.path.append(os.pardir) # 为了导入父目录而进行的设定 import numpy as np import matplotlib.pyplot as plt from input_data import load_data
这段代码是一个 Python 脚本的开头部分,主要包括导入必要的库和模块,以及设置导入路径。具体来说,该脚本导入了 sys、os、numpy、matplotlib.pyplot 和 load_data 函数。其中,sys 和 os 模块用于设置导入路径,numpy 用于处理数组数据,matplotlib.pyplot 用于绘制图表。另外,该脚本还导入了一个 DeepConvNet 类,用于创建深度卷积神经网络模型。该类定义在 catdog.deep_convnet 模块中,因此需要将该模块所在的路径添加到导入路径中。最后,该脚本调用了 load_data 函数,用于加载训练集和测试集数据。