项目场景:
完成吴恩达机器学习作业时,编写逻辑回归代码,遇到以上错误。
问题描述:
ValueError: shapes (1,3) and (1,100) not aligned: 3 (dim 1) != 1 (dim 0)
原因分析:
发现原先写的损失函数cost()中,参数的位置错了,在写梯度下降函数时,以及损失函数时,要把theta放到前面。
解决方案:
def gradient(theta,X,y)
def cost(theta,X,y)
result = opt.fmin_tnc(func=cost, x0=theta, fprime=gradient, args=(X, y))