出错记录

根据吴恩达深度学习第二周的作业进行编程,最后程序出错,这么也找不到错误原因,因此记录一下,希望下次能有好的解答。
"""
Created on Sat Jun 23 17:25:15 2018

@author: lenovo
"""

import numpy as np
import matplotlib.pyplot as plt
import h5py
import scipy 
from PIL import Image
from scipy import ndimage
from lr_utils import load_dataset

# load the dataset 
train_set_x_orig,train_set_y,test_set_x_orig,test_set_y,classes = load_dataset()
# 对数据的预处理
m_train = train_set_x_orig.shape[0]
m_test = test_set_x_orig.shape[0]
num_px = train_set_x_orig.shape[1]
train_set_x_flatten = train_set_x_orig.reshaape(m_train,-1).T
test_set_x_flatten = test_set_x_orig.reshape(m_test,-1).T
#将数据集标准化,中心化
train_set_x = train_set_x_flatten/255
test_set_x = test_set_x_flatten//255
#下面将建立基本模型,来帮助预测
#建立激活函数
def sigmoid (z):
    s = 1.0/(1+np.esp(-z))
    return s
#参数出事化
def initialize_with_zeros(dim):
    w = np.zeros((dim,1))
    b = 0
    assert(w.shape ==((dim,1))
    return w,b
    
#向前传播或者向后传播的结构
def propagata(w,b,X,Y):
    m = X.shape[1]
    A = sigmoid(np.dot(w.T,X)+b)
    cost = -(1.0/m)*np.sum(Y*np.log(A)+(1-Y)*np.log(1-A))
    dw = (1.0/m)*np.dot(X,(A-Y).T)
    db = (1.0/m)*np.sum(A-Y)
    assert(dw.shape == w.shape)
    assert(db.dtype ==float)
    cost = np.sequeeze(cost)
    assert(cost.shape ==())
    grads = {"dw":dw,"db":db}
    return grads,cost
    
#下面的模块就是进行优化训练
def optimize(w,b,X,Y,num_iterations,learning_rate,print_cost = False):
    costs = []
    for i in range(num_iterations):
        grads, cost = propagate(w,b,X,Y)
        dw = grads["dw"]
        db = grads["db"]
        w = w-learning_rate*dw
        b = b-learning_rate*db
        if i%100 = 0:
            costs.append(cost)
        if print_cost and i %100 ==0:
            print("Cost after iteration %i: %F" %(i cost))
        params = {"w":w,"b":b}
        grads = {"dw":dw,"db":db}
        return parama,grade,costs
# 最后将得到的结果进行预测
def predict(w,b,X):
    m = X.shape[1]
    Y_prediction = np.zeros((1,m))
    w = w.reshape(X.shape[0],1)
    A = sigmoid(np.dot(w.T,X)+b)
    for i in range(A.shape[1]):            Y_prediction[0.i] = 1
        else:
        Y_prediction[0,i] = 0
        assert(Y_prediction.shape ==(1,m))
        return Y_prediction
# 下面要做的事情就是将以上的代码整合起来,得到最终的结果
def model(X_train,Y_train,X_test,Y_test,num_iteratons = 2000,learning_rate = 0.5,print_cost = False):
    w,b = initialize_with_zeros(X_train.shape[0])
    parameters,grads.costs = optimize(w,b,X_train,Y_train,num_iterations,learning_rate,print_coat)
    w = paramaters["w"]
    b = parameters["b"]
    Y_prediction_test = predict(w,b,X_test)
    Y_prediction_train = predict(w,b,X_train)
    #求出误差函数
    print("train accuracy:{} %".format(100-np.mean(np.abs(Y_prediction_train-Y_train))*100))
    print("test accuracy: {}%".format(100-np.mean(np.mean(np.abs(Y_prediction_test-Y_test))*100))
    d = {"costs": costs,"
         "Y_prediction_test": Y_prediction_test,
         "Y_prediction_train": Y_prediction_train.
         "w": w,
         "b":b
         "learning_rate":learning_rate,
         "num_iterations": num_iterations}
         return d
# 画出成本函数和梯度
costs = np.squeeze(d['costs'])
plt.plot(coats)
plt.ylabel('cost')
plt.xlabel('iterations (per hundreds)')
plt.title("Learning rate = "+str(d["learning_rate"]))
plt.show
  
最后出错显示为
runfile('E:/python自学/深度学习编程资料/第2周 神经网络基础(1-2 编程作业)/第2周 神经网络基础(1-2 编程作业)_files/resource/logigist_demo.py', wdir='E:/python自学/深度学习编程资料/第2周 神经网络基础(1-2 编程作业)/第2周 神经网络基础(1-2 编程作业)_files/resource')
  File "E:/python自学/深度学习编程资料/第2周 神经网络基础(1-2 编程作业)/第2周 神经网络基础(1-2 编程作业)_files/resource/logigist_demo.py", line 37
    return w,b
         ^
SyntaxError: invalid syntax



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值