сброс соединений в нейронных сетях с питоном - PullRequest
0 голосов
/ 05 октября 2019

У меня есть код, который подклассов nn.module.

Я не знаю, что именно делает функция reset_(), и я не нашел ни одной функции reset_() в исходном коде nn.module.

, кто знает, как я могу использовать это для сброса настроексоединения в нейронных сетях, когда нет операций в этом, а также нет функции в имени reset_() в родительском классе ???


    class Connection(torch.nn.module):
      super().__init__()

      def reset_(self) -> None:

      #Contains resetting logic for the connection.#

      super().reset_()

1 Ответ

0 голосов
/ 05 октября 2019

Хотя я не уверен, что вы имели в виду под функцией reset() в модуле PyTorch, однако, как правило, во многих NN слоях, есть функция reset_parameters(), которая используется для сброса параметров этого слоя. Я даю вам пример, если это поможет.

import torch
import torch.nn as nn


class Connection(nn.Module):

    def __init__(self):
        super().__init__()
        # a weight matrix of shape [10 x 100] as parameters
        self.weight = nn.Parameter(torch.Tensor(10, 100))

    def reset_parameters(self) -> None:
        # reset parameters using random values from a uniform distribution
        nn.init.uniform_(self.weight, -0.01, 0.01)


c = Connection()
c.reset_parameters() # reset the weight parameters

Это всего лишь пример, вы можете изменить функцию reset_parameters для удовлетворения ваших потребностей.

...