sklearn.neural_network和简单的深度学习之间的区别是由Keras使用顺序节点和分布式节点实现的吗?

zvokhttg  于 2023-02-23  发布在  其他
关注(0)|答案(1)|浏览(114)

给定sklearn.neural_network和Keras使用Sequential和Dese节点进行的简单深度学习,数学上是否相同只是两个具有计算优化功能的API?是的,Keras支持Tensor,还可以利用GPU,并且允许使用CNN和RNN等复杂模型。
然而,它们在数学上是相同的吗?在给定相同的超参数、随机状态、输入数据等的情况下,我们**会产生相同的结果吗?

否则除了计算效率,什么制造商Keras是一个更好的选择?

zhte4eai

zhte4eai1#

我不认为他们会给予你完全相同的结果,因为即使在pytorch和tensorflow中,两个相同操作的内部实现也是不同的。
Keras更好的选择是生态系统。你有DataLoaders,它可以批量加载所需格式的复杂数据,然后你有Tensorboard,你可以看到模型训练,然后你有预处理功能,特别是数据增强。在TF/Keras中,你现在甚至有数据增强层,在PyTorch中,Torchvision在Transforms中提供了这一功能。然后你有了灵活性。你可以定义什么类型的层以什么顺序你想要的,什么应该是层的初始化器,你是否想要层之间的批量范数,你是否想要层之间的丢弃层,什么应该是隐藏层的激活你可以在1层中具有relu而在其他层中具有tanh,你可以定义你的正向传递应该如何存在,等等。然后你有回调来定制训练体验,等等。

相关问题