我有一个存储在变量 ‘similarity’ 中的余弦相似度度量字典数据,数据图片。我想知道如何将这些数据按70%和30%的比例进行分割。我希望将数据分成两部分,并将这两部分存储在变量中,最好是按7:3的比例进行分割。
我提出这个问题的原因为,我有一个准确性算法,可以计算这些数据的准确性,但问题是,我在训练和测试时使用了相同的数据,如代码中所示,因此显然我的训练和测试数据相同,所以我得到了100%的准确率。因此,我想将数据按70%和30%的比例进行分割,使训练数据占70%,测试数据占30%。
print(similarity)train_r = np.array(similarity)test_r = np.array(similarity)train_c = train_r[:,10]test_c = test_r[:,10]a = train_cb = test_ccos_sim = (dot(a, b)/(norm(a)*norm(b))) * 100print(cos_sim)
如果能得到答案,我将不胜感激。非常感谢
回答:
这样应该可以实现:
split_rate = 0.7split_idx = int(len(similarity)*split_rate)train_r = np.array(similarity)[:split_idx] test_r = np.array(similarity)[split_idx:]