Python 在利用CNN提取特征的同时,如何利用SVM进行分类?
在conv13层之后,我想使用SVM,我该怎么做呢?我对这一点还不熟悉,但我无法理解。您的神经网络会在给定输入(我假设的图像)的情况下产生输出。当您将此输出设置为来自Python 在利用CNN提取特征的同时,如何利用SVM进行分类?,python,machine-learning,classification,svm,cnn,Python,Machine Learning,Classification,Svm,Cnn,在conv13层之后,我想使用SVM,我该怎么做呢?我对这一点还不熟悉,但我无法理解。您的神经网络会在给定输入(我假设的图像)的情况下产生输出。当您将此输出设置为来自conv13层的参数时,它将是一个特定大小的向量。现在可以将此输出视为SVM分类器的输入。但是,对于这一步,您不需要坚持使用Keras,因为像scikit-learn这样的库已经实现了一种更简单的方法 假设您的CNN生成一组向量,如X=[95,25,…,45,24]作为输出。如果有一组标签y={0,1},则可以执行以下操作:
conv13
层的参数时,它将是一个特定大小的向量。现在可以将此输出视为SVM分类器的输入。但是,对于这一步,您不需要坚持使用Keras
,因为像scikit-learn
这样的库已经实现了一种更简单的方法
假设您的CNN生成一组向量,如X=[95,25,…,45,24]
作为输出。如果有一组标签y={0,1}
,则可以执行以下操作:
conv12 = Conv2D(32, (3, 3), activation='relu', padding='same')(up12)
conv12 = Dropout(0.3)(conv12)
conv12 = Conv2D(32, (3, 3), activation='relu', padding='same')(conv12)
conv13 = Conv2D(1, (1, 1), activation='sigmoid')(conv12)
model = Model(inputs=[inputs], outputs=[conv13])
model.compile(optimizer=Adam(lr=.00045), loss=dice_coef_loss, metrics=[dice_coef])
return model
请参阅:很抱歉打扰您。我很难实现它。y=[0,1]svm=SVR(kernel=“rbf”,gamma=“scale”,C=1.0)svm.fit(conv13,y)我在这里做错了什么?当我运行上面的代码时,我得到了这个_数组_u()接受1个位置参数,但给出了2个。我是诺布。
from sklearn.svm import SVC
clf = SVC() # Play with hyperparameters.
clf.predict([[95, 25, ..., 45, 24]]) # Output: array([1])