import numpy as np
nClass = 5
nTheta = 4
labels = [0,1,2,3,4]
def get_binary_label_matrix():
label_matrix = np.zeros((nClass, nTheta))
for i, lab in enumerate(labels):
binary_labels = np.ones(nTheta, dtype=np.int32)
for k in range(nTheta):
if i <= k:
binary_labels[k] = 1
else:
binary_labels[k] = -1
label_matrix[i] = binary_labels
return label_matrix
print(get_binary_label_matrix())

该代码定义了一个函数,用于根据给定的类别数(nClass)和特征数(nTheta),以及类别标签列表,生成一个二值标签矩阵。每个类别的行由一个长度为nTheta的向量表示,其中在第k个位置的值为1(如果k小于当前类别)或-1(否则)。最后,函数返回这个标签矩阵。
1399

被折叠的 条评论
为什么被折叠?



