Я хочу взять дотпродукт для сигмовидной функции.
import numpy as np
def sigmoid(x):
sigm = 1 / (1 + np.exp(-x))
return sigm
def p(D, w, b):
prob=sigmoid(np.dot(D[:,7],w)+b)
return prob
Работает
x = np.array([D[0,7], D[0,9]])
w = np.array([w1, w2])
prob=sigmoid(np.dot(x[:],w)+b)
также работает, однако
x = np.array([D[:,7], D[:,9]])
w = np.array([w1, w2])
prob=sigmoid(np.dot(x,w)+b)
НЕ работает.
Выдает ошибку выравнивания размеров.
ValueError: shapes (2,426) and (2,) not aligned: 426 (dim 1) != 2 (dim 0)
Полагаю, я мог бы использовать цикл для итерации первой позиции массива, но, возможно, в Python3 есть способ сделать это более элегантно.
Как правильно отформатировать массив, чтобы он принимался в качестве входных данных для функции numpy.dot ()?