python - Keras 神经网络和 SKlearn SVM.SVC

标签 python machine-learning scikit-learn keras

最近我在我所在的城市参加了一个数据科学聚会,讨论了将神经网络与 SVM 连接起来的话题。不幸的是,演示者不得不在演示后立即退出,所以我无法提出一些问题。

我想知道这怎么可能?他谈到使用神经网络进行分类,后来,他使用 SVM 分类器将他的准确性和精度提高了大约 10%。

我将 Keras 用于神经网络,将 SKlearn 用于机器学习的其余部分。

最佳答案

这是完全可能的,而且实际上很常见。您只需选择神经网络层的输出并将其用作特征向量来训练 SVM。通常也会对特征向量进行归一化。

(卷积)神经网络学习到的特征非常强大,可以泛化到不同种类的对象,甚至是完全不同的图像。有关示例,请参阅论文 CNN Features off-the-shelf: an Astounding Baseline for Recognition .

关于实现,你只需要训练一个神经网络,然后选择其中一层(通常是全连接层之前的层或第一个全连接层),在你的数据集上运行神经网络,存储所有特征向量,然后使用不同的库(例如 sklearn)训练 SVM。

关于python - Keras 神经网络和 SKlearn SVM.SVC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40401008/

相关文章:

python - 将 MySQL 查询结果存储到 python 变量中

python - plotly 中的 Streaming API token 是什么?

python - 减小 Keras LSTM 模型的大小

algorithm - 分段多语言平行文本

machine-learning - grid.py 运行需要多长时间?

python - 无法根据规则 ('<M8[ns]' 将数组数据从 dtype ('float64' ) 转换为 dtype 'safe' )

python - 如果不为空,则从现有数据框列创建新数据框

python-2.7 - 从 tf-idf 计算余弦相似度

python - 如何获取语料库中某个单词的平均 TF-IDF 值?

python - 在 mllib kmeans pyspark 中获取集群标签