Tensorflow(或 Keras)与 Pytorch 与其他一些用于实现 CNN 的 ML 库

数据挖掘 神经网络 张量流 美国有线电视新闻网 卷积 火炬
2021-09-20 01:54:10

我正在研究为一个研究问题实施卷积神经网络。我听说过像 Pytorch 和 Tensorflow 这样的深度学习库,并希望获得一些关于它们是否适合我的需求的更多信息。

我对 Pytorch 的研究不多,只是简要了解了 Tensorflow。在易用性方面,我没有听到关于 Tensorflow 的好消息。我听说 Pytorch 更容易使用。但是似乎有更多关于 Tensorflow 的教程,特别是用于创建 CNN 的教程。

在确定哪个图书馆最适合我的需求时,我应该问自己什么样的问题?

2个回答

如果您正在寻找易于使用和阅读的东西,那么绝对选择 Keras。


Keras 中的 CNN 示例:

model = Sequential()
model.add(Conv2D(32, kernel_size=(3, 3),
                 activation='relu',
                 input_shape=input_shape))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(num_classes, activation='softmax'))

model.compile(loss=keras.losses.categorical_crossentropy,
              optimizer=keras.optimizers.Adadelta(),
metrics=['accuracy']) 

很容易阅读!

Source,实际上是在 Google 上搜索“keras CNN”时的第一个链接。


我真的很喜欢 Keras,因为它易于阅读、易于使用、出色的文档,如果您想在较低级别搞砸事情,您可以通过触摸 Keras 的后端(Tensorflow 或 Theano)来实现

编辑(根据您的评论)

优秀的博客:Keras vs Tensorflow

就个人而言,我在维也纳技术大学做研究,因为易于实施、安装和“可调试性”,我们使用了大量的 PyTorch。因此,我推荐 PyTorch。如果你正在做研究,这会派上用场。如果您有不同的想法,请随时质疑我的陈述。:)