神经网络应该使用sklearn还是tensorflow?


Answers:


11

Sklearn对深度神经网络没有太多支持。在这两者中,由于您对深度学习感兴趣,因此选择tensorflow

但是,我建议使用keras,它使用tensorflow作为后端,但提供了更简单的界面。


4

在cs231n课程中,据我所知,您花费了大部分时间自己使用NumPy来实现神经网络!对我来说,那绝对是一次了不起的学习经历。

之后,在最后的任务中,您肯定需要查看TensorFlow示例)或Pytorch示例)以构建更复杂的网络。这些框架是由像CS231n之类的课程开发人员(研究人员和行业专家)建立的。

所述SciKit了解神经网络模块包括用于任一分类或消退,但没有发烧友前馈网络,诸如卷积网络(细胞神经网络),复发性网络(RNNs)或其他更奇异的组分,如单独的激活功能。

我同意Djib2011的观点,认为Keras是入门的绝佳选择-并允许您在TensorFlow,CNTK或Theano作为后端之间进行选择。Keras是围绕三个怪物框架的一个很好的统一包装,所以让您快速启动并运行。这是Keras与Pytorch的最近和有用的比较

一旦您熟悉Keras之类的工具,它就会比SciKit Learn中的简单产品更快地使用。


我知道您没有询问PyTorch,但是我想提到它,因为CS231n的最初创建者之一安德烈·卡帕蒂(Andrej Karpathy)表示这是最好的框架(来源1来源2)。


当我们谈论Pytorch时:在可变长度循环网络方面,它远高于其他框架
Evpok

@Evpok-我们可能还应该提到Tensorflow现在使用其tf.eagerapi(与PyTorch相当)支持动态网络。
n1k31t4 '18年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.