Аномалия в python с умножением матриц

#python #matrix #vector

#python #матрица #вектор

Вопрос:

У меня есть следующая функция:

 def logistic(y):
    print((1-y).shape)
    print((y).shape)
    return y*(1-y)
  

Размеры y являются 20 X 10 . Эта функция выводит

20 X 10
20 X 10

И функция возвращает другую матрицу размерности 20 X 10 . При векторном умножении количество столбцов первого аргумента должно равняться количеству строк 2-го аргумента. Даже если это не так, как я могу успешно выполнить эту функцию?

Комментарии:

1. Потому что * не выполняет умножение матрицы. Скорее, это поэлементное умножение. Попробуйте numpy.dot или @ оператор, если у вас достаточно новый python.

Ответ №1:

«Потому что * не выполняет умножение матрицы. Скорее, это поэлементное умножение. Попробуйте numpy.dot или @ operator, если у вас достаточно новый python.» Предоставлено пользователем: jme