[免责声明] ,这是我第一次涉足机器学习。
我有一个1-d numpy实向量的列表,它们代表已知与两个互斥类相关的实验条件。可以为每个向量分配1或0作为类标签。
使用这些类在Python中构造分类器/预测子以使两个类之间的差异最大化的最佳方法是什么?
答案 0 :(得分:1)
假设您有1000个向量和10个值。您的x数据的形状为(1000,10),y数据的形状为(1000,1)(根据类,其值为0或1)。您想从x预测y。
最简单的模型可能看起来像(使用Keras):
from keras.models import Sequential
from keras.layers import Dense
from keras.optimizers import Adam
mdl = Sequential() // create model
mdl.add(Dense(8, input_shape=(10,), activation='sigmoid'))
mdl.add(Dense(1, activation='sigmoid')
mdl.compile(optimizer = 'adam', loss='binary_crossentropy')
mdl.fit(x, y, epochs = 30)
请注意,只有在有2个类的情况下,才可以在分类问题的最后一层使用sigmoid。对于更多的类,您应该使用softmax。
我建议您检查以下页面:https://keras.io/
此外,我认为比起张量流,keras更好。