Как я могу добавить метки классов в Python? - PullRequest
0 голосов
/ 01 ноября 2018

У меня есть гауссовские данные:

r1=np.random.multivariate_normal(mean1, cov1, 3000)
r2=np.random.multivariate_normal(mean2, cov2, 3000)

Теперь я хочу добавить метки классов для этих данных для обучения классификатора. Для r1 это class1, а для r2 это class2. Как я могу добавить метки классов?

1 Ответ

0 голосов
/ 01 ноября 2018

с учетом +1 для класса 1 в качестве метки1 и -1 для класса 2 в качестве метки2:

label1 = np.ones( (r1.shape[0],1) )
label2 = np.ones( (r2.shape[0],1) ) * -1
data = np.concatenate((r1, r2))
labels = np.concatenate((label1, label2))

В случае, если вам необходимо перетасовать данные перед тренировкой и вы хотите отслеживать, какая метка для какого образца, сначала добавьте каждую метку к соответствующим данным:

r1 = np.append(label1, r1, axis=1)
r2 = np.append(label2, r2, axis=1)
data = np.concatenate((r1,r2))
np.random.shuffle(data)
labels = data[:,0] #extracts labels in shape of (len(labels),)which is a rank 1 array 
labels = np.reshape(labels,(len(labels),1)) #fix the shape to a 1D array    
R = data[:,(1,2)] #extracting inputs
...