gpt4 book ai didi

haskell - 使用 Haskell Grenade 为自动编码器建模

转载 作者:行者123 更新时间:2023-12-01 03:20:06 25 4
gpt4 key购买 nike

我想使用 Haskell 编写的 Grenade 深度学习库为自动编码器创建一个网络。
它应该学会用 200 位的层来表示 265 位的输入。
因此,我声明了类型:

type Auto = 
Network
'[ FullyConnected 265 200, Relu, FullyConnected 200 265, Relu]
'[ 'D1 265, 'D1 200, 'D1 265]

但是,当我尝试为这种类型生成随机网络时
randomAuto :: MonadRandom m => m Auto
randomAuto = randomNetwork

我收到这样的类型错误:
Could not deduce (Layer Relu ('D1 200) ('D1 265)) arising from a use of ‘randomNetwork’

这肯定是因为唯一的 Relu维度 1 的实例声明为
KnownNat i => Layer Relu (D1 i) (D1 i)

要求输入和输出的大小相同。

但是你如何用这个库创建一个自动编码器呢?

最佳答案

看起来激活函数在这个库中算作“层”(不改变维度)。所以复制对应于 relu 层的维度:

type Auto = 
Network
'[ FullyConnected 265 200, Relu, FullyConnected 200 265, Relu]
'[ 'D1 265, 'D1 200, 'D1 200, 'D1 265, 'D1 265]

关于haskell - 使用 Haskell Grenade 为自动编码器建模,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46104942/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com