Поддержка Chainer и float64 - PullRequest
       38

Поддержка Chainer и float64

1 голос
/ 17 июня 2019

Я хочу знать, как сделать более точные вычисления с поддержкой float64. Ниже приведен мой простой код автоэнкодера, который я написал в цепочке. Изначально я запускал его с float32 dtype, но теперь я хочу проверить точность float64, как мне это сделать?

class AutoEncoder(chainer.Chain):
    def __init__(self, num_input=1024, num_hidden=512, activate=F.leaky_relu, dropout_ratio=0.0):
        super(AutoEncoder, self).__init__(
            encoder=L.Linear(num_input, num_hidden),
            decoder=L.Linear(num_hidden, num_input))
        self.num_input = num_input
        self.num_hidden = num_hidden
        self.activate = activate
        self.dropout_ratio = dropout_ratio

    def __call__(self, x, hidden=False):
        h = F.dropout(self.activate(self.encoder(x)), ratio=self.dropout_ratio)
        if hidden:
            return h

        y = F.dropout((self.decoder(h)), ratio=self.dropout_ratio)
        return y

Когда я пытаюсь запустить это с данными float64, возникает ошибка несоответствия dtype.

...