@123581321345589
web-разработчик

Делаю по книжке, но получаю ошибку. Где собака зарылась?

Книга "Создай свою нейросеть", Тарик Рашид
Выполняю код:
import numpy
import scipy.special

class nnet:
    def __init__(self, input_cnt, hidden_cnt, output_cnt, learning_rate):
        self.input_cnt = input_cnt
        self.hidden_cnt = hidden_cnt
        self.output_cnt = output_cnt
        self.learning_rate = learning_rate
        self.wih = numpy.random.normal(0.0, pow(self.hidden_cnt, -0.5), (self.hidden_cnt, self.input_cnt))
        self.who = numpy.random.normal(0.0, pow(self.output_cnt, -0.5), (self.output_cnt, self.hidden_cnt))
        self.activation = lambda x: scipy.special.expit(x)
        pass

    def train():
        pass
    
    def query(self, inputs_list):
        inputs_arr = numpy.array(inputs_list, ndmin=2)
        hidden_inputs = numpy.dot(self.wih, inputs_arr)
        hidden_outputs = self.activation(hidden_inputs)
        final_inputs = numpy.dot(self.who, hidden_outputs)
        final_outputs = self.activation(final_inputs)
        return final_outputs

n = nnet(3, 3, 3, 0.3)
n.query([1.0, 0.5, -1.5])

Получаю ошибку:
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-56-849319ec0a6a> in <module>()
      n = nnet(3, 3, 3, 0.3)
----> n.query([1.0, 0.5, -1.5])

<ipython-input-55-12e1a08edf8c> in query(self, inputs_list)

--->          hidden_inputs = numpy.dot(self.wih, inputs_arr)

ValueError: shapes (3,3) and (1,3) not aligned: 3 (dim 1) != 1 (dim 0)



UPD
в книге такой код - joxi.ru/L213ReMs89ePpr
очень смущает .T
сначала я думал это опечатка, может я ошибаюсь? ил чт это может быть вообще?
  • Вопрос задан
  • 299 просмотров
Решения вопроса 1
@123581321345589 Автор вопроса
web-разработчик
inputs_arr = numpy.array(inputs_list, ndmin=2).T
В книге встречаются опечатки, но это НЕ одна из них
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы