日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > pytorch >内容正文

pytorch

01.神经网络和深度学习 W2.神经网络基础(作业:逻辑回归 图片识别)

發布時間:2024/7/5 pytorch 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 01.神经网络和深度学习 W2.神经网络基础(作业:逻辑回归 图片识别) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

    • 編程題 1
      • 1. numpy 基本函數
        • 1.1 編寫 sigmoid 函數
        • 1.2 編寫 sigmoid 函數的導數
        • 1.3 reshape操作
        • 1.4 標準化
        • 1.5 廣播機制
      • 2. 向量化
        • 2.1 L1\L2損失函數
    • 編程題 2. 圖片🐱識別
      • 1. 導入包
      • 2. 數據預覽
      • 3. 算法的一般結構
      • 4. 建立算法
        • 4.1 輔助函數
        • 4.2 初始化參數
        • 4.3 前向后向傳播
        • 4.4 更新參數,梯度下降
        • 4.5 合并所有函數到Model
        • 4.6 分析
        • 4.7 用自己的照片測試模型
      • 5. 總結

選擇題測試,請參考 鏈接博文

編程題 1

1. numpy 基本函數

1.1 編寫 sigmoid 函數

import mathdef basic_sigmoid(x):"""Compute sigmoid of x.Arguments:x -- A scalarReturn:s -- sigmoid(x)"""### START CODE HERE ### (≈ 1 line of code)s = 1/(1+math.pow(math.e, -x)) # or s = 1/(1+math.exp(-x))### END CODE HERE ###return s
  • 不推薦使用 math 包,因為深度學習里很多都是向量,math 包不能對向量進行計算
### One reason why we use "numpy" instead of "math" in Deep Learning ### x = [1, 2, 3] basic_sigmoid(x) # you will see this give an error when you run it, because x is a vector. # 會報錯! import numpy as np# example of np.exp x = np.array([1, 2, 3]) print(np.exp(x)) # result is (exp(1), exp(2), exp(3)) # [ 2.71828183 7.3890561 20.08553692] # numpy 可以對向量進行操作
  • 使用 numpy 編寫的 sigmoid 函數
import numpy as np # this means you can access numpy functions by writing np.function() instead of numpy.function()def sigmoid(x):"""Compute the sigmoid of xArguments:x -- A scalar or numpy array of any sizeReturn:s -- sigmoid(x)"""### START CODE HERE ### (≈ 1 line of code)s = 1/(1+np.exp(-x))### END CODE HERE ###return s x = np.array([1, 2, 3]) sigmoid(x) # array([0.73105858, 0.88079708, 0.95257413])

1.2 編寫 sigmoid 函數的導數

# GRADED FUNCTION: sigmoid_derivativedef sigmoid_derivative(x):"""Compute the gradient (also called the slope or derivative) of the sigmoid function with respect to its input x.You can store the output of the sigmoid function into variables and then use it to calculate the gradient.Arguments:x -- A scalar or numpy arrayReturn:ds -- Your computed gradient."""### START CODE HERE ### (≈ 2 lines of code)s = sigmoid(x)ds = s*(1-s)### END CODE HERE ###return ds x = np.array([1, 2, 3]) sigmoid_derivative(x) print ("sigmoid_derivative(x) = " + str(sigmoid_derivative(x))) # sigmoid_derivative(x) = [0.19661193 0.10499359 0.04517666]

1.3 reshape操作

將照片的數據展平,不想計算的維,可以置為 -1,會自動計算

# GRADED FUNCTION: image2vector def image2vector(image):"""Argument:image -- a numpy array of shape (length, height, depth)Returns:v -- a vector of shape (length*height*depth, 1)"""### START CODE HERE ### (≈ 1 line of code)v = image.reshape(-1,1)### END CODE HERE ###return v # This is a 3 by 3 by 2 array, typically images will be (num_px_x, num_px_y,3) where 3 represents the RGB values image = np.array([[[ 0.67826139, 0.29380381],[ 0.90714982, 0.52835647],[ 0.4215251 , 0.45017551]],[[ 0.92814219, 0.96677647],[ 0.85304703, 0.52351845],[ 0.19981397, 0.27417313]],[[ 0.60659855, 0.00533165],[ 0.10820313, 0.49978937],[ 0.34144279, 0.94630077]]])print ("image2vector(image) = " + str(image2vector(image))) # 輸出 image2vector(image) = [[0.67826139][0.29380381][0.90714982][0.52835647][0.4215251 ][0.45017551][0.92814219][0.96677647][0.85304703][0.52351845][0.19981397][0.27417313][0.60659855][0.00533165][0.10820313][0.49978937][0.34144279][0.94630077]]

1.4 標準化

標準化通常使得梯度下降收斂更快。

舉個例子 x=[034264]x = \begin{bmatrix} 0 & 3 & 4 \\ 2 & 6 & 4 \\ \end{bmatrix}x=[02?36?44?]
那么 ∥x∥=np.linalg.norm(x,axis=1,keepdims=True)=[556]\| x\| = np.linalg.norm(x, axis = 1, keepdims = True) = \begin{bmatrix} 5 \\ \sqrt{56} \\ \end{bmatrix}x=np.linalg.norm(x,axis=1,keepdims=True)=[556??]
x_normalized=x∥x∥=[03545256656456]x\_normalized = \frac{x}{\| x\|} = \begin{bmatrix} 0 & \frac{3}{5} & \frac{4}{5} \\ \frac{2}{\sqrt{56}} & \frac{6}{\sqrt{56}} & \frac{4}{\sqrt{56}} \\ \end{bmatrix}x_normalized=xx?=[056?2??53?56?6??54?56?4??]

# GRADED FUNCTION: normalizeRowsdef normalizeRows(x):"""Implement a function that normalizes each row of the matrix x (to have unit length).Argument:x -- A numpy matrix of shape (n, m)Returns:x -- The normalized (by row) numpy matrix. You are allowed to modify x."""### START CODE HERE ### (≈ 2 lines of code)# Compute x_norm as the norm 2 of x. Use np.linalg.norm(..., ord = 2, axis = ..., keepdims = True)x_norm = np.linalg.norm(x, axis=1, keepdims=True)# Divide x by its norm.x = x/x_norm### END CODE HERE ###return x x = np.array([[0, 3, 4],[1, 6, 4]]) print("normalizeRows(x) = " + str(normalizeRows(x))) # normalizeRows(x) = [[0. 0.6 0.8 ] # [0.13736056 0.82416338 0.54944226]]

1.5 廣播機制

官方文檔

對于行向量 x∈R1×n,?softmax(x)=softmax([x1x2...xn])=[ex1∑jexjex2∑jexj...exn∑jexj]x \in \mathbb{R}^{1\times n} \text{, } softmax(x) = softmax(\begin{bmatrix} x_1 && x_2 && ... && x_n \end{bmatrix}) = \begin{bmatrix} \frac{e^{x_1}}{\sum_{j}e^{x_j}} && \frac{e^{x_2}}{\sum_{j}e^{x_j}} && ... && \frac{e^{x_n}}{\sum_{j}e^{x_j}} \end{bmatrix}xR1×n,?softmax(x)=softmax([x1???x2???...??xn??])=[j?exj?ex1????j?exj?ex2????...??j?exj?exn???]

對于矩陣 xxx ∈Rm×n\in \mathbb{R}^{m \times n}Rm×n
xijx_{ij}xij? maps to the element in the ithi^{th}ith row and jthj^{th}jth column of xxx, thus we have

softmax(x)=softmax[x11x12x13…x1nx21x22x23…x2n?????xm1xm2xm3…xmn]=[ex11∑jex1jex12∑jex1jex13∑jex1j…ex1n∑jex1jex21∑jex2jex22∑jex2jex23∑jex2j…ex2n∑jex2j?????exm1∑jexmjexm2∑jexmjexm3∑jexmj…exmn∑jexmj]=(softmax(first?row?of?x)softmax(second?row?of?x)...softmax(last?row?of?x))softmax(x) = softmax\begin{bmatrix} x_{11} & x_{12} & x_{13} & \dots & x_{1n} \\ x_{21} & x_{22} & x_{23} & \dots & x_{2n} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ x_{m1} & x_{m2} & x_{m3} & \dots & x_{mn} \end{bmatrix} = \begin{bmatrix} \frac{e^{x_{11}}}{\sum_{j}e^{x_{1j}}} & \frac{e^{x_{12}}}{\sum_{j}e^{x_{1j}}} & \frac{e^{x_{13}}}{\sum_{j}e^{x_{1j}}} & \dots & \frac{e^{x_{1n}}}{\sum_{j}e^{x_{1j}}} \\ \frac{e^{x_{21}}}{\sum_{j}e^{x_{2j}}} & \frac{e^{x_{22}}}{\sum_{j}e^{x_{2j}}} & \frac{e^{x_{23}}}{\sum_{j}e^{x_{2j}}} & \dots & \frac{e^{x_{2n}}}{\sum_{j}e^{x_{2j}}} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ \frac{e^{x_{m1}}}{\sum_{j}e^{x_{mj}}} & \frac{e^{x_{m2}}}{\sum_{j}e^{x_{mj}}} & \frac{e^{x_{m3}}}{\sum_{j}e^{x_{mj}}} & \dots & \frac{e^{x_{mn}}}{\sum_{j}e^{x_{mj}}} \end{bmatrix} = \begin{pmatrix} softmax\text{(first row of x)} \\ softmax\text{(second row of x)} \\ ... \\ softmax\text{(last row of x)} \\ \end{pmatrix} softmax(x)=softmax??????x11?x21??xm1??x12?x22??xm2??x13?x23??xm3????x1n?x2n??xmn????????=????????j?ex1j?ex11??j?ex2j?ex21???j?exmj?exm1???j?ex1j?ex12??j?ex2j?ex22???j?exmj?exm2???j?ex1j?ex13??j?ex2j?ex23???j?exmj?exm3?????j?ex1j?ex1n??j?ex2j?ex2n???j?exmj?exmn???????????=?????softmax(first?row?of?x)softmax(second?row?of?x)...softmax(last?row?of?x)??????

# GRADED FUNCTION: softmaxdef softmax(x):"""Calculates the softmax for each row of the input x.Your code should work for a row vector and also for matrices of shape (n, m).Argument:x -- A numpy matrix of shape (n,m)Returns:s -- A numpy matrix equal to the softmax of x, of shape (n,m)"""### START CODE HERE ### (≈ 3 lines of code)# Apply exp() element-wise to x. Use np.exp(...).x_exp = np.exp(x)# Create a vector x_sum that sums each row of x_exp. Use np.sum(..., axis = 1, keepdims = True).x_sum = np.sum(x_exp, axis=1, keepdims=True)# Compute softmax(x) by dividing x_exp by x_sum. It should automatically use numpy broadcasting.s = x_exp/x_sum### END CODE HERE ###return s x = np.array([[9, 2, 5, 0, 0],[7, 5, 0, 0 ,0]]) print("softmax(x) = " + str(softmax(x))) softmax(x) = [[9.80897665e-01 8.94462891e-04 1.79657674e-02 1.21052389e-041.21052389e-04][8.78679856e-01 1.18916387e-01 8.01252314e-04 8.01252314e-048.01252314e-04]]

2. 向量化

向量化計算更簡潔,更高效

2.1 L1\L2損失函數

L1(y^,y)=∑i=0m∣y(i)?y^(i)∣\begin{aligned} & L_1(\hat{y}, y) = \sum_{i=0}^m|y^{(i)} - \hat{y}^{(i)}| \end{aligned}?L1?(y^?,y)=i=0m?y(i)?y^?(i)?

def L1(yhat, y):"""Arguments:yhat -- vector of size m (predicted labels)y -- vector of size m (true labels)Returns:loss -- the value of the L1 loss function defined above"""### START CODE HERE ### (≈ 1 line of code)loss = np.sum(abs(yhat-y))### END CODE HERE ###return loss yhat = np.array([.9, 0.2, 0.1, .4, .9]) y = np.array([1, 0, 0, 1, 1]) print("L1 = " + str(L1(yhat,y))) # L1 = 1.1

L2(y^,y)=∑i=0m(y(i)?y^(i))2\begin{aligned} & L_2(\hat{y},y) = \sum_{i=0}^m(y^{(i)} - \hat{y}^{(i)})^2 \end{aligned}?L2?(y^?,y)=i=0m?(y(i)?y^?(i))2?

import numpy as np
a = np.array([1, 2, 3])
np.dot(a, a)
14

# GRADED FUNCTION: L2def L2(yhat, y):"""Arguments:yhat -- vector of size m (predicted labels)y -- vector of size m (true labels)Returns:loss -- the value of the L2 loss function defined above"""### START CODE HERE ### (≈ 1 line of code)loss = np.dot(yhat-y, yhat-y)### END CODE HERE ###return loss yhat = np.array([.9, 0.2, 0.1, .4, .9]) y = np.array([1, 0, 0, 1, 1]) print("L2 = " + str(L2(yhat,y))) # L2 = 0.43

編程題 2. 圖片🐱識別

使用神經網絡識別貓

1. 導入包

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%matplotlib inline

2. 數據預覽

弄清楚數據的維度
reshape 數據
標準化數據

有訓練集,標簽為 y = 1 是貓,y = 0 不是貓
有測試集,帶標簽的
每個圖片是 3 通道的

  • 讀取數據
# Loading the data (cat/non-cat) train_set_x_orig, train_set_y, test_set_x_orig, test_set_y, classes = load_dataset()
  • 預覽圖片
# Example of a picture index = 24 plt.imshow(train_set_x_orig[index]) print ("y = " + str(train_set_y[:, index]) + ", it's a '" + classes[np.squeeze(train_set_y[:, index])].decode("utf-8") + "' picture.") y = [1], it's a 'cat' picture.

  • 數據大小
### START CODE HERE ### (≈ 3 lines of code) m_train = train_set_x_orig.shape[0] m_test = test_set_x_orig.shape[0] num_px = train_set_x_orig.shape[1] ### END CODE HERE ###print ("Number of training examples: m_train = " + str(m_train)) print ("Number of testing examples: m_test = " + str(m_test)) print ("Height/Width of each image: num_px = " + str(num_px)) print ("Each image is of size: (" + str(num_px) + ", " + str(num_px) + ", 3)") print ("train_set_x shape: " + str(train_set_x_orig.shape)) print ("train_set_y shape: " + str(train_set_y.shape)) print ("test_set_x shape: " + str(test_set_x_orig.shape)) print ("test_set_y shape: " + str(test_set_y.shape)) Number of training examples: m_train = 209 Number of testing examples: m_test = 50 Height/Width of each image: num_px = 64 Each image is of size: (64, 64, 3) train_set_x shape: (209, 64, 64, 3) train_set_y shape: (1, 209) test_set_x shape: (50, 64, 64, 3) test_set_y shape: (1, 50)
  • 將樣本圖片矩陣展平
# Reshape the training and test examples### START CODE HERE ### (≈ 2 lines of code) train_set_x_flatten = train_set_x_orig.reshape(m_train, -1).T test_set_x_flatten = test_set_x_orig.reshape(m_test, -1).T ### END CODE HERE ###print ("train_set_x_flatten shape: " + str(train_set_x_flatten.shape)) print ("train_set_y shape: " + str(train_set_y.shape)) print ("test_set_x_flatten shape: " + str(test_set_x_flatten.shape)) print ("test_set_y shape: " + str(test_set_y.shape)) print ("sanity check after reshaping: " + str(train_set_x_flatten[0:5,0])) train_set_x_flatten shape: (12288, 209) train_set_y shape: (1, 209) test_set_x_flatten shape: (12288, 50) test_set_y shape: (1, 50) sanity check after reshaping: [17 31 56 22 33]
  • 圖片的矩陣數值為 0 - 255,標準化數據
train_set_x = train_set_x_flatten/255. test_set_x = test_set_x_flatten/255.

3. 算法的一般結構

用神經網絡的思路,建立一個 Logistic 回歸

4. 建立算法

定義模型結構(如,輸入的特征個數)
初始化模型參數
循環迭代:

  • 計算當前損失(前向傳播)
  • 計算當前梯度(后向傳播)
  • 更新參數(梯度下降)
  • 4.1 輔助函數

    • sigmoid 函數
    # GRADED FUNCTION: sigmoiddef sigmoid(z):"""Compute the sigmoid of zArguments:z -- A scalar or numpy array of any size.Return:s -- sigmoid(z)"""### START CODE HERE ### (≈ 1 line of code)s = 1/(1+np.exp(-z))### END CODE HERE ###return s

    4.2 初始化參數

    邏輯回歸的參數可以都設置為 0(神經網絡不可以)

    # GRADED FUNCTION: initialize_with_zerosdef initialize_with_zeros(dim):"""This function creates a vector of zeros of shape (dim, 1) for w and initializes b to 0.Argument:dim -- size of the w vector we want (or number of parameters in this case)Returns:w -- initialized vector of shape (dim, 1)b -- initialized scalar (corresponds to the bias)"""### START CODE HERE ### (≈ 1 line of code)w = np.zeros((dim, 1))b = 0### END CODE HERE ###assert(w.shape == (dim, 1))assert(isinstance(b, float) or isinstance(b, int))return w, b

    4.3 前向后向傳播

    前向傳播:

    • XXX 特征
    • 計算 A=σ(wTX+b)=(a(0),a(1),...,a(m?1),a(m))A = \sigma(w^T X + b) = (a^{(0)}, a^{(1)}, ..., a^{(m-1)}, a^{(m)})A=σ(wTX+b)=(a(0),a(1),...,a(m?1),a(m))
    • 計算損失函數: J=?1m∑i=1my(i)log?(a(i))+(1?y(i))log?(1?a(i))J = -\frac{1}{m}\sum_{i=1}^{m}y^{(i)}\log(a^{(i)})+(1-y^{(i)})\log(1-a^{(i)})J=?m1?i=1m?y(i)log(a(i))+(1?y(i))log(1?a(i))

    方程:

    ?J?w=1mX(A?Y)T\frac{\partial J}{\partial w} = \frac{1}{m}X(A-Y)^T?w?J?=m1?X(A?Y)T
    ?J?b=1m∑i=1m(a(i)?y(i))\frac{\partial J}{\partial b} = \frac{1}{m} \sum_{i=1}^m (a^{(i)}-y^{(i)})?b?J?=m1?i=1m?(a(i)?y(i))

    # GRADED FUNCTION: propagatedef propagate(w, b, X, Y):"""Implement the cost function and its gradient for the propagation explained aboveArguments:w -- weights, a numpy array of size (num_px * num_px * 3, 1)b -- bias, a scalarX -- data of size (num_px * num_px * 3, number of examples)Y -- true "label" vector (containing 0 if non-cat, 1 if cat) of size (1, number of examples)Return:cost -- negative log-likelihood cost for logistic regressiondw -- gradient of the loss with respect to w, thus same shape as wdb -- gradient of the loss with respect to b, thus same shape as bTips:- Write your code step by step for the propagation. np.log(), np.dot()"""m = X.shape[1]# FORWARD PROPAGATION (FROM X TO COST)### START CODE HERE ### (≈ 2 lines of code)A = sigmoid(np.dot(w.T, X)+b) # compute activation# w 是列向量, A 行向量,dot 矩陣乘法cost = np.sum(Y*np.log(A)+(1-Y)*np.log(1-A))/(-m) # compute cost# Y 行向量,* 對應位置相乘### END CODE HERE #### BACKWARD PROPAGATION (TO FIND GRAD)### START CODE HERE ### (≈ 2 lines of code)dw = np.dot(X, (A-Y).T)/mdb = np.sum(A-Y, axis=1)/m### END CODE HERE ###assert(dw.shape == w.shape)assert(db.dtype == float)cost = np.squeeze(cost)assert(cost.shape == ())grads = {"dw": dw,"db": db}return grads, cost w, b, X, Y = np.array([[1],[2]]), 2, np.array([[1,2],[3,4]]), np.array([[1,0]]) grads, cost = propagate(w, b, X, Y) print ("dw = " + str(grads["dw"])) print ("db = " + str(grads["db"])) print ("cost = " + str(cost)) dw = [[0.99993216][1.99980262]] db = [0.49993523] cost = 6.000064773192205

    4.4 更新參數,梯度下降

    # GRADED FUNCTION: optimizedef optimize(w, b, X, Y, num_iterations, learning_rate, print_cost = False):"""This function optimizes w and b by running a gradient descent algorithmArguments:w -- weights, a numpy array of size (num_px * num_px * 3, 1)b -- bias, a scalarX -- data of shape (num_px * num_px * 3, number of examples)Y -- true "label" vector (containing 0 if non-cat, 1 if cat), of shape (1, number of examples)num_iterations -- number of iterations of the optimization looplearning_rate -- learning rate of the gradient descent update ruleprint_cost -- True to print the loss every 100 stepsReturns:params -- dictionary containing the weights w and bias bgrads -- dictionary containing the gradients of the weights and bias with respect to the cost functioncosts -- list of all the costs computed during the optimization, this will be used to plot the learning curve.Tips:You basically need to write down two steps and iterate through them:1) Calculate the cost and the gradient for the current parameters. Use propagate().2) Update the parameters using gradient descent rule for w and b."""costs = []for i in range(num_iterations):# Cost and gradient calculation (≈ 1-4 lines of code)### START CODE HERE ### grads, cost = propagate(w, b, X, Y)### END CODE HERE #### Retrieve derivatives from gradsdw = grads["dw"]db = grads["db"]# update rule (≈ 2 lines of code)### START CODE HERE ###w = w - learning_rate * dwb = b - learning_rate * db### END CODE HERE #### Record the costsif i % 100 == 0:costs.append(cost)# Print the cost every 100 training examplesif 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 params, grads, costs params, grads, costs = optimize(w, b, X, Y, num_iterations= 100, learning_rate = 0.009, print_cost = False)print ("w = " + str(params["w"])) print ("b = " + str(params["b"])) print ("dw = " + str(grads["dw"])) print ("db = " + str(grads["db"])) w = [[0.1124579 ][0.23106775]] b = [1.55930492] dw = [[0.90158428][1.76250842]] db = [0.43046207]
    • 可以利用學習到的參數來進行預測

    計算預測值 Y^=A=σ(wTX+b)\hat{Y} = A = \sigma(w^T X + b)Y^=A=σ(wTX+b)
    根據預測值進行分類,<= 0.5 標記為0,否則為1

    # GRADED FUNCTION: predictdef predict(w, b, X):'''Predict whether the label is 0 or 1 using learned logistic regression parameters (w, b)Arguments:w -- weights, a numpy array of size (num_px * num_px * 3, 1)b -- bias, a scalarX -- data of size (num_px * num_px * 3, number of examples)Returns:Y_prediction -- a numpy array (vector) containing all predictions (0/1) for the examples in X'''m = X.shape[1]Y_prediction = np.zeros((1,m))w = w.reshape(X.shape[0], 1)# Compute vector "A" predicting the probabilities of a cat being present in the picture### START CODE HERE ### (≈ 1 line of code)A = sigmoid(np.dot(w.T, X) + b)### END CODE HERE ###for i in range(A.shape[1]):# Convert probabilities A[0,i] to actual predictions p[0,i]### START CODE HERE ### (≈ 4 lines of code)Y_prediction[0][i] = 0 if A[0][i] <= 0.5 else 1### END CODE HERE ###assert(Y_prediction.shape == (1, m))return Y_prediction print ("predictions = " + str(predict(w, b, X))) predictions = [[1. 1.]]

    4.5 合并所有函數到Model

    # GRADED FUNCTION: modeldef model(X_train, Y_train, X_test, Y_test, num_iterations = 2000, learning_rate = 0.5, print_cost = False):"""Builds the logistic regression model by calling the function you've implemented previouslyArguments:X_train -- training set represented by a numpy array of shape (num_px * num_px * 3, m_train)Y_train -- training labels represented by a numpy array (vector) of shape (1, m_train)X_test -- test set represented by a numpy array of shape (num_px * num_px * 3, m_test)Y_test -- test labels represented by a numpy array (vector) of shape (1, m_test)num_iterations -- hyperparameter representing the number of iterations to optimize the parameterslearning_rate -- hyperparameter representing the learning rate used in the update rule of optimize()print_cost -- Set to true to print the cost every 100 iterationsReturns:d -- dictionary containing information about the model."""### START CODE HERE #### initialize parameters with zeros (≈ 1 line of code)w, b = initialize_with_zeros(X_train.shape[0])# Gradient descent (≈ 1 line of code)parameters, grads, costs = optimize(w, b, X_train, Y_train, num_iterations, learning_rate, print_cost = print_cost)# Retrieve parameters w and b from dictionary "parameters"w = parameters["w"]b = parameters["b"]# Predict test/train set examples (≈ 2 lines of code)Y_prediction_test = predict(w, b, X_test)Y_prediction_train = predict(w, b, X_train)### END CODE HERE #### Print train/test Errorsprint("train accuracy: {} %".format(100 - np.mean(np.abs(Y_prediction_train - Y_train)) * 100))print("test accuracy: {} %".format(100 - 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 d = model(train_set_x, train_set_y, test_set_x, test_set_y, num_iterations = 2000, learning_rate = 0.005, print_cost = True) Cost after iteration 0: 0.693147 Cost after iteration 100: 0.584508 Cost after iteration 200: 0.466949 Cost after iteration 300: 0.376007 Cost after iteration 400: 0.331463 Cost after iteration 500: 0.303273 Cost after iteration 600: 0.279880 Cost after iteration 700: 0.260042 Cost after iteration 800: 0.242941 Cost after iteration 900: 0.228004 Cost after iteration 1000: 0.214820 Cost after iteration 1100: 0.203078 Cost after iteration 1200: 0.192544 Cost after iteration 1300: 0.183033 Cost after iteration 1400: 0.174399 Cost after iteration 1500: 0.166521 Cost after iteration 1600: 0.159305 Cost after iteration 1700: 0.152667 Cost after iteration 1800: 0.146542 Cost after iteration 1900: 0.140872 train accuracy: 99.04306220095694 % test accuracy: 70.0 %
    • 模型在訓練集上表現的很好,在測試集上一般,存在過擬合現象
    # Example of a picture that was wrongly classified. index = 24 plt.imshow(test_set_x[:,index].reshape((num_px, num_px, 3))) print ("y = " + str(test_set_y[0,index]) + ", you predicted that it is a \"" + classes[int(d["Y_prediction_test"][0,index])].decode("utf-8") + "\" picture.") y = 1, you predicted that it is a "cat" picture.


    更改 index 可以查看 測試集的 預測值和真實值

    • 繪制代價函數、梯度
    # Plot learning curve (with costs) costs = np.squeeze(d['costs']) plt.plot(costs) plt.ylabel('cost') plt.xlabel('iterations (per hundreds)') plt.title("Learning rate =" + str(d["learning_rate"])) plt.show()

    • 增加訓練迭代次數為 3000(上面是2000)
    train accuracy: 99.52153110047847 % test accuracy: 68.0 %

    訓練集上的準確率上升,但是測試集上準確率下降,這就是過擬合了

    4.6 分析

    • 不同學習率下的對比
    learning_rates = [0.01, 0.001, 0.0001] models = {} for i in learning_rates:print ("learning rate is: " + str(i))models[str(i)] = model(train_set_x, train_set_y, test_set_x, test_set_y, num_iterations = 1500, learning_rate = i, print_cost = False)print ('\n' + "-------------------------------------------------------" + '\n')for i in learning_rates:plt.plot(np.squeeze(models[str(i)]["costs"]), label= str(models[str(i)]["learning_rate"]))plt.ylabel('cost') plt.xlabel('iterations')legend = plt.legend(loc='upper center', shadow=True) frame = legend.get_frame() frame.set_facecolor('0.90') plt.show() learning rate is: 0.01 train accuracy: 99.52153110047847 % test accuracy: 68.0 %-------------------------------------------------------learning rate is: 0.001 train accuracy: 88.99521531100478 % test accuracy: 64.0 %-------------------------------------------------------learning rate is: 0.0001 train accuracy: 68.42105263157895 % test accuracy: 36.0 %-------------------------------------------------------

    • 學習率太大的話,容易引起震蕩,導致不收斂(本例子0.01,不算太壞,最后收斂了)
    • 低的cost不意味著好的模型,要檢查是否過擬合(訓練集很好,測試集很差)

    4.7 用自己的照片測試模型

    ## START CODE HERE ## (PUT YOUR IMAGE NAME) my_image = "cat1.jpg" # change this to the name of your image file ## END CODE HERE ### We preprocess the image to fit your algorithm. fname = "images/" + my_image image = Image.open(fname) my_image = np.array(image.resize((num_px, num_px))).reshape((1, num_px*num_px*3)).T my_predicted_image = predict(d["w"], d["b"], my_image)plt.imshow(image) print("y = " + str(np.squeeze(my_predicted_image)) + ", your algorithm predicts a \"" + classes[int(np.squeeze(my_predicted_image)),].decode("utf-8") + "\" picture.")


    5. 總結

    • 處理數據很重要,數據維度,數據標準化
    • 各個獨立的函數,初始化,前后向傳播,梯度下降更新參數
    • 組成模型
    • 調節學習率等超參數

    總結

    以上是生活随笔為你收集整理的01.神经网络和深度学习 W2.神经网络基础(作业:逻辑回归 图片识别)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    欧美国产不卡 | 国产69久久久 | 日本黄色一级电影 | 色播激情五月 | 日韩小视频网站 | 久久久久久久久电影 | 国产精品系列在线观看 | 日批网站免费观看 | 三日本三级少妇三级99 | 视频一区在线免费观看 | 欧美在线久久 | 热久久国产精品 | 蜜臀aⅴ精品一区二区三区 久久视屏网 | 狠狠做深爱婷婷综合一区 | 日韩免费观看视频 | 国产裸体视频网站 | 天天干天天做天天操 | 久久精品屋 | 91麻豆精品国产自产 | 91av片| 免费男女网站 | 人人要人人澡人人爽人人dvd | 久久久久国产成人精品亚洲午夜 | 日日夜夜人人天天 | 91在线免费播放 | 麻豆精品视频在线 | 国产白浆视频 | 97在线精品国自产拍中文 | 天天射天天干天天爽 | 日韩欧美一区二区在线观看 | 精品高清美女精品国产区 | 精品久久影院 | 99久久日韩精品视频免费在线观看 | 国产精品自产拍 | 四虎免费在线观看视频 | 国产99久久久精品视频 | 久久色视频 | 激情丁香综合 | 丁香婷婷激情国产高清秒播 | 婷婷在线免费 | 国产高清一区二区 | 欧美日韩精品免费观看视频 | 日韩中文免费视频 | 国产在线欧美日韩 | 91资源在线 | 免费在线精品视频 | av福利免费| 欧美韩日在线 | 久久99亚洲网美利坚合众国 | 成人av影视观看 | 成人免费大片黄在线播放 | 免费观看午夜视频 | 九九视频这里只有精品 | 国产美女网站视频 | 嫩嫩影院理论片 | 久久精品国产免费看久久精品 | 日本少妇高清做爰视频 | 国产日韩中文在线 | 久久艹99| 国产精品成人一区二区三区吃奶 | 久久精品国亚洲 | 我要色综合天天 | 色狠狠干 | 久久久久免费精品视频 | 国产精品福利在线观看 | 日韩精品极品视频 | 国产精品嫩草影院9 | 成人免费一区二区三区在线观看 | 日韩天堂在线观看 | 最近中文字幕在线播放 | 久久久久色 | 国产一区二区高清视频 | 天天操天天射天天爱 | 日韩中文字幕网站 | 天天操天天色天天射 | 日韩最新av在线 | 欧美精品一区二区三区一线天视频 | 欧美成人手机版 | 欧美日韩一区二区在线 | 最近中文字幕第一页 | 在线观看色网站 | 深爱婷婷 | avav片 | 亚洲成人蜜桃 | 国产精品理论片 | 五月天综合激情 | av中文字幕电影 | www.在线观看av | 婷色在线 | 国产精品久久99综合免费观看尤物 | 91九色网站| 亚洲免费在线看 | 一区二区精品久久 | 日韩午夜在线播放 | 91在线porny国产在线看 | 日韩欧美高清视频在线观看 | 伊色综合久久之综合久久 | 午夜国产在线观看 | 国产一区在线免费 | 激情在线五月天 | 在线色亚洲 | 97超在线视频 | 国产网站在线免费观看 | 超碰在线观看av | 午夜精品视频免费在线观看 | 久久久久久久国产精品视频 | 免费观看的黄色 | 777奇米四色 | 免费高清男女打扑克视频 | 天天色天天干天天色 | 亚洲乱亚洲乱妇 | 国产在线小视频 | 黄色中文字幕 | 五月综合色婷婷 | 九九热在线视频免费观看 | 色a4yy| 亚洲永久国产精品 | 精产嫩模国品一二三区 | 国产无遮挡又黄又爽在线观看 | 日韩精品最新在线观看 | 伊人久在线 | www天天干com | 久久久91精品国产一区二区三区 | 国产成在线观看免费视频 | 色综合天天干 | 草在线视频| 超碰在线观看av.com | 99色视频| 色狠狠综合天天综合综合 | 国产精品一区久久久久 | 欧美日本日韩aⅴ在线视频 插插插色综合 | 9幺看片| 五月婷婷激情五月 | 欧美a级片网站 | 黄色三级免费观看 | 四虎国产免费 | 久久久久久久久久久久影院 | 婷婷综合| 在线免费观看国产视频 | 成人黄色在线观看视频 | 国产成人精品在线观看 | 97精品国产91久久久久久 | 免费福利在线视频 | 中文字幕免费在线看 | 天天插天天干天天操 | 国产亚洲视频中文字幕视频 | 玖玖爱在线观看 | av日韩不卡| 欧美亚洲一区二区在线 | 九九热免费精品视频 | 色婷婷 亚洲 | 一区二区三区在线影院 | 婷婷激情站 | 免费a一级| 久久99视频| 色婷婷免费视频 | www99精品 | 又黄又刺激的网站 | 中文字幕亚洲欧美日韩2019 | 日韩在线二区 | 国产精品第一视频 | 久草在线观看视频免费 | 成人网在线免费视频 | 久久超 | 国产精品自拍在线 | 麻豆国产精品永久免费视频 | 香蕉视频最新网址 | 在线免费视频 你懂得 | 国产一级在线观看视频 | 一区二区三区日韩视频在线观看 | 亚洲欧美视频在线 | 久久大视频 | 婷婷色网址 | 在线观看免费成人av | 久久综合中文字幕 | av一级网站 | 成人影视片 | 久在线观看视频 | 成人毛片久久 | 99精品视频免费观看视频 | 午夜视频在线观看一区二区三区 | 日韩在观看线 | 综合在线色 | 国产一级a毛片视频爆浆 | 人人爽人人爽人人 | 午夜.dj高清免费观看视频 | 国产精品免费久久久久久久久久中文 | 亚洲欧美乱综合图片区小说区 | 手机看片1042 | 2020天天干夜夜爽 | 久草网站在线 | 久久成人福利 | 色黄久久久久久 | 婷婷丁香在线观看 | 国产在线自 | 亚洲成熟女人毛片在线 | 欧美色图88 | 国产精品一区二区精品视频免费看 | 日韩免费大片 | 九九视频网站 | 四虎影院在线观看av | 久艹视频在线观看 | 五月天久久久久 | 粉嫩高清一区二区三区 | 中文字幕高清 | 欧美一级片在线播放 | 亚洲精品国产精品久久99热 | 一区二区三区四区五区在线视频 | 免费黄色一区 | 精品久久美女 | 天天射狠狠干 | 日韩精品亚洲专区在线观看 | 国产精品刺激对白麻豆99 | 久久成人18免费网站 | 亚洲h在线播放在线观看h | 一级精品视频在线观看宜春院 | 不卡视频在线 | 91亚洲精品乱码久久久久久蜜桃 | 国产成人三级 | 综合av在线 | 亚洲色影爱久久精品 | 国产91成人 | 美女网站在线观看 | 97电影院网| 国产在线观看污片 | 91麻豆网| a特级毛片 | 日韩高清国产精品 | 日本黄色a级大片 | 岛国一区在线 | 91网站观看 | 国内精品久久久久久中文字幕 | 日本中文字幕网站 | 久久刺激视频 | 国产亚洲精品久久久久久无几年桃 | 久久试看 | 国产+日韩欧美 | 国产精品久久久久婷婷 | 亚洲天堂精品 | 国产精品高清在线 | 久久五月网 | 亚洲女同ⅹxx女同tv | 一区二区三区四区影院 | 国产精品免费大片视频 | 国产成人三级在线观看 | 最新色视频| 99在线免费视频观看 | 一区二区三区影院 | 少妇bbw搡bbbb搡bbbb | 国产精品久久久久久久7电影 | 久久呀| 永久av免费在线观看 | 国产精品v欧美精品 | 国产自在线 | 国产又粗又猛又色 | 精品国产成人在线影院 | 日韩成人精品一区二区三区 | 日韩一区二区三区免费电影 | 91久久国产自产拍夜夜嗨 | 97碰在线 | 欧美aaa视频 | 夜夜澡人模人人添人人看 | 一区二区不卡高清 | 免费黄色在线播放 | 国产精品乱码一区二三区 | 一性一交视频 | 欧美a级片网站 | 国产精品白丝jk白祙 | 一级黄色免费 | 中国一级特黄毛片大片久久 | 免费视频成人 | 久久精品3 | 欧美激情一区不卡 | 夜夜躁日日躁狠狠久久av | 欧美成人精品欧美一级乱黄 | 日韩一区二区三区免费视频 | 国产精品1区2区在线观看 | 久久久久久久久久久久久久电影 | 超碰97公开 | 一区二区三区免费看 | 日韩字幕在线 | 一区精品久久 | 日韩久久精品一区二区三区下载 | 97视频在线免费观看 | av在线精品 | 日韩一二三在线 | 狠狠躁夜夜av | 成人免费看电影 | 久久免费视屏 | 亚洲 欧美变态 另类 综合 | 九七视频在线 | 精品在线观看一区二区三区 | 日韩三级视频在线看 | 98涩涩国产露脸精品国产网 | 91av资源在线| 五月婷婷色综合 | 精品中文字幕视频 | 国产黄色片免费观看 | 91豆花在线| 97网| 亚洲精品久久视频 | 亚洲成人资源在线观看 | 在线观看网站你懂的 | 免费三级黄色片 | 五月天久久狠狠 | 成人h视频| 日韩高清在线不卡 | 国内精品久久天天躁人人爽 | 日本最新一区二区三区 | 亚洲精品一区二区精华 | 日本在线观看中文字幕 | 4p变态网欧美系列 | 丁香九月激情综合 | 狠狠色狠狠色综合日日小说 | 国产精品白浆 | 精品国产视频在线观看 | 久久99视频精品 | 免费网站观看www在线观看 | 97在线观看 | 超碰免费在线公开 | 久久久国产精品人人片99精片欧美一 | 国产手机在线观看视频 | 97av影院| 91麻豆高清视频 | 日韩久久精品一区二区 | 色黄久久久久久 | 婷婷www| 99精品国产99久久久久久97 | 国产福利91精品一区二区三区 | 亚洲国产欧美一区二区三区丁香婷 | 国产区欧美 | 69久久99精品久久久久婷婷 | 国产精品一区一区三区 | 精品一区二区三区香蕉蜜桃 | 国产一区视频在线 | 久久精品亚洲 | 国产vs久久| 欧美精品一级视频 | 亚洲精品456在线播放 | 操久在线| 日韩在线观看第一页 | 久久精品免费观看 | 欧美在线1区 | 国产精品九九九 | 麻豆网站免费观看 | 97在线看片| 奇米影视777影音先锋 | 久草在线免费在线观看 | 亚洲国产免费网站 | 精品视频久久久久久 | 久久精品日产第一区二区三区乱码 | 免费看黄网站在线 | 一区二区三区在线不卡 | 国内小视频 | 99久久久久免费精品国产 | 午夜手机电影 | 丁香花五月 | 久艹在线播放 | 欧美日韩视频精品 | 国产精品一区二区av影院萌芽 | 国产精品久久久视频 | 婷婷丁香花 | 在线成人国产 | 超碰人人av| 日韩在线视频免费观看 | 国产精品久久久久久久久大全 | 不卡精品 | 欧美日韩精品区 | 丁香高清视频在线看看 | 91黄色视屏 | 成人av在线影视 | 午夜狠狠干 | 国产1区2区3区在线 亚洲自拍偷拍色图 | 久久精品这里热有精品 | 国产免费高清 | 伊人色播 | 在线观看久久 | 精品成人在线 | 久久国产精品99久久久久久进口 | 97福利在线观看 | 欧美a在线看 | 大荫蒂欧美视频另类xxxx | www.av在线.com | 欧美日产一区 | 综合色站导航 | 精品国产123 | 日精品在线观看 | 亚洲欧洲在线视频 | 国产精品毛片一区视频播不卡 | 日本在线观看黄色 | 久久国产精品成人免费浪潮 | 在线影视 一区 二区 三区 | 亚洲精品在线视频网站 | 不卡的一区二区三区 | 日本精品一区二区三区在线观看 | 成人一区不卡 | 国产精品自产拍在线观看 | 欧美午夜精品久久久久久孕妇 | 九九久久久 | 久久久精品一区二区 | 天天干天天操人体 | 91私密视频 | 欧美日韩在线精品一区二区 | 国产乱码精品一区二区三区介绍 | 欧美一区二区三区在线播放 | 91看成人| 久久久久美女 | 国产精品精品久久久久久 | 欧美精品久久久久久久久老牛影院 | 91九色在线视频 | 国产91电影在线观看 | 国产精品自产拍在线观看中文 | 亚洲资源网 | 夜夜嗨av色一区二区不卡 | 久久高清国产视频 | 色视频在线 | 国产美女永久免费 | 久久免费中文视频 | 337p日本欧洲亚洲大胆裸体艺术 | 亚洲国产影院av久久久久 | 麻豆av电影 | 91超在线| 天天干天天操人体 | 在线成人免费电影 | 日韩手机视频 | 在线观看中文字幕av | 一级黄视频 | 免费在线观看黄色网 | 日韩在线视频看看 | 精品久久久久久久久久久久 | 午夜性色 | 中文字幕一区在线观看视频 | 日韩高清一区在线 | 在线视频99 | 日韩免费看视频 | 午夜精品一区二区三区在线视频 | 欧美婷婷综合 | 一区二区视频在线免费观看 | 91黄色小网站 | 久久久久这里只有精品 | 黄色小说视频网站 | 伊人成人精品 | 久久99精品久久久久久秒播蜜臀 | 日韩av电影中文字幕在线观看 | 麻豆久久一区二区 | 日日爽天天操 | 午夜色站 | 丁香久久五月 | 亚洲美女视频网 | 午夜婷婷网| 久久精品永久免费 | 国产日女人 | 久久综合狠狠狠色97 | 97视频在线播放 | 亚洲高清精品在线 | 91精选在线观看 | 国产精品久久久久久久久蜜臀 | 中文字幕乱码一区二区 | 日韩二区在线 | 国产精品美女久久久久久久 | 免费国产在线精品 | 99精品在这里 | av解说在线 | 又色又爽又激情的59视频 | 亚洲国产中文字幕在线观看 | 视频 国产区 | 天天综合成人网 | 亚洲天堂网在线播放 | 免费色视频网址 | 日韩精品一区二区三区第95 | 五月视频 | 精品免费观看 | 不卡av免费在线观看 | 日日夜夜亚洲 | 91麻豆网站 | 中文十次啦 | 久人人 | 91av在线电影 | 久久黄色免费观看 | 久久免费视频8 | 日本一区二区不卡高清 | 国产视频精品免费播放 | 久久综合久久综合久久 | 黄色片网站免费 | 亚洲精品久久久久中文字幕m男 | 手机在线看片日韩 | 天天综合天天做 | 亚洲免费一级 | 91污污| 精品国偷自产在线 | 午夜精品久久久久 | 人人干人人模 | 国产最新在线视频 | 日韩美女av在线 | 亚洲女人天堂成人av在线 | 日韩午夜视频在线观看 | 日日操日日| 狠狠狠色 | 国产精品夜夜夜一区二区三区尤 | 中文字幕 国产视频 | 国产视频亚洲视频 | 美女精品在线 | 色妞色视频一区二区三区四区 | 久久久资源网 | 国产一区二区在线观看免费 | 色多多视频在线 | 日韩午夜精品福利 | 国产日韩精品一区二区三区在线 | 久久黄色成人 | 99免费精品视频 | 99在线视频网站 | 亚洲一级影院 | 亚洲精品国偷自产在线99热 | 成人影片免费 | 成人一区二区三区中文字幕 | www视频在线免费观看 | 午夜精品久久久久久久久久 | 成年人免费电影 | 亚洲综合色av | av色一区 | 9在线观看免费 | 欧美精品久久久久性色 | 亚洲精品在线看 | 欧美精品一区二区免费 | 91桃色在线免费观看 | 欧美日韩中文字幕在线视频 | 精品久久久久亚洲 | 日韩成人免费在线观看 | 999电影免费在线观看 | 在线 精品 国产 | 91成人破解版 | 久久综合九色综合97_ 久久久 | 麻豆激情电影 | 波多野结衣视频一区 | av免费播放| 国内精品视频一区二区三区八戒 | 久久久久久激情 | 在线黄色免费av | 青青草在久久免费久久免费 | 91在线播 | 91传媒在线观看 | 欧美精品中文 | 香蕉精品在线观看 | 日韩一级成人av | 免费视频一级片 | 日日爽天天爽 | 黄污网站在线 | 精品国产乱码久久久久久天美 | 国产精品免费高清 | 免费网站污 | 91免费视频黄 | 最近日本中文字幕a | 黄色在线网站噜噜噜 | 狠狠干网 | 99久久精品一区二区成人 | 狠狠色免费 | 婷婷狠狠操 | 成人四虎 | 激情综合网五月 | 99久久精品免费看国产一区二区三区 | 亚洲国产精品日韩 | 久草电影免费在线观看 | 色综合久 | 一区二区三区四区免费视频 | 黄色电影小说 | 成人精品国产 | 成人91在线 | 色婷在线 | 在线视频一区二区 | 成av人电影 | 一区二区激情 | 波多野结衣视频一区二区三区 | 九九av | 色婷婷av一区二 | 精品久久网 | 色视频网址 | www黄免费 | 国产成人一区在线 | 丁香资源影视免费观看 | 日韩va在线观看 | 欧美在线视频日韩 | 在线免费色视频 | 色播五月激情五月 | 精品国产综合区久久久久久 | 九九精品视频在线 | 国产护士在线 | 天天插天天爽 | av电影中文字幕 | 欧美性做爰猛烈叫床潮 | 在线观看的a站 | 在线电影中文字幕 | 久草视频在 | 91亚洲影院 | 免费成人在线电影 | 色偷偷88888欧美精品久久 | 日韩精品欧美专区 | 天天操天天射天天操 | 一区二区精品视频 | 俺要去色综合狠狠 | 天天干亚洲 | 97视频资源 | 91精品在线免费观看视频 | 少妇高潮流白浆在线观看 | 91福利视频网站 | 国产伦精品一区二区三区四区视频 | avsex| 久久男人视频 | 国内精品视频在线 | 国产精久久久久久妇女av | 国产视频日韩视频欧美视频 | 最近中文字幕国语免费高清6 | 深夜免费福利在线 | 一区二区三区在线观看免费 | 在线精品国产 | 在线视频1卡二卡三卡 | 天天色棕合合合合合合 | 91在线观看欧美日韩 | 亚洲精品网站 | 国产在线精品福利 | 2021国产精品 | 欧美巨乳网 | 午夜国产福利视频 | av免费电影在线 | 久久人人爽人人爽人人片av免费 | 综合久久五月天 | 国产一级做a爱片久久毛片a | 亚洲精品中文在线资源 | 久久久久久美女 | 视频在线观看入口黄最新永久免费国产 | 一区二区 不卡 | 蜜桃视频在线观看一区 | 在线电影91 | 亚洲高清视频在线观看免费 | 欧美小视频在线观看 | 国产九色视频在线观看 | 中文字幕一区在线 | 日韩特级毛片 | 91精品在线免费 | 国产精品成人免费精品自在线观看 | 久久这里只有精品久久 | 中文字幕无吗 | 超碰人人草人人 | 欧美精彩视频 | 黄色国产精品 | www.99在线观看 | 国产精品免费久久久 | 一色屋精品视频在线观看 | 国产资源在线免费观看 | 欧美日韩国产免费视频 | 又黄又色又爽 | www.黄色片网站 | 日韩精品久久久免费观看夜色 | 久久精品精品电影网 | 国产伦精品一区二区三区在线 | 色就干| 天天草天天色 | 91av小视频| 99久久这里只有精品 | 夜夜操夜夜干 | 中午字幕在线 | 不卡国产在线 | 国产日本在线观看 | 国产精品亚洲综合久久 | 亚洲小视频在线 | 午夜三级大片 | 日本视频网| 综合天堂av久久久久久久 | 日韩高清在线看 | 成人网在线免费视频 | 国产精品视频一二三 | 亚洲精品美女免费 | 91一区啪爱嗯打偷拍欧美 | 成年人看片网站 | 国产在线久久久 | 国产亚洲观看 | 国产亚洲成av片在线观看 | 国产v视频 | 韩国一区二区在线观看 | 九色精品免费永久在线 | 色中色亚洲 | 久久亚洲欧美日韩精品专区 | 色偷偷88888欧美精品久久 | 九九精品久久 | 99久久久免费视频 | 麻豆视频在线免费观看 | 日日激情| 欧美日韩精品在线视频 | 婷婷在线网站 | 亚洲国产精品成人精品 | 天天操天天干天天 | 最近中文字幕免费视频 | 国产一级久久久 | 亚洲精品在线看 | 欧美视频xxx | 美女视频黄的免费的 | 亚洲视频电影在线 | 久久曰视频| 99自拍视频在线观看 | 亚洲高清视频在线观看 | 99热这里只有精品8 久久综合毛片 | 色七七亚洲影院 | 五月精品 | 天天久久夜夜 | 日韩欧美一区二区三区在线观看 | 欧美三级免费 | 成人免费91 | 久久久精品免费看 | 五月天婷婷丁香花 | 男女视频久久久 | 奇米先锋 | 国产一区二区在线免费播放 | 一区二区视频在线播放 | 欧美一级高清片 | 涩涩色亚洲一区 | 国产免费观看久久黄 | 狠狠操狠狠干天天操 | 国产精品无 | 成人黄色视 | 国产精品久久久久久一二三四五 | 日日夜夜网站 | 久久综合福利 | 97视频在线观看播放 | 国产一区91 | 色综合天天综合 | 婷婷视频在线 | 97电影手机 | 亚洲免费在线看 | 在线岛国av | 久久伊人八月婷婷综合激情 | 亚洲三级毛片 | 国产精品女同一区二区三区久久夜 | 99久精品视频 | 六月色婷 | 免费高清国产 | 日本公妇色中文字幕 | 国产在线第三页 | 久久视频国产精品免费视频在线 | 日本精品一区二区在线观看 | 国产精品一区二区av | 日韩av在线影视 | 久久免费片 | 天天草天天干天天射 | 久久韩国免费视频 | 日韩网 | 欧美在线视频一区二区三区 | 欧美日韩性生活 | 欧美怡红院视频 | 亚洲精品视频国产 | 精品自拍av | 久草精品视频在线看网站免费 | 欧美激情视频一二三区 | 亚洲国产手机在线 | 一区二区视频在线播放 | 日韩欧美大片免费观看 | 日本 在线 视频 中文 有码 | 高清一区二区三区av | 伊人久久av | 在线国产精品视频 | 97超碰色偷偷 | 99精品在线免费在线观看 | 成人在线一区二区 | 中文不卡视频在线 | 国产不卡精品视频 | 男女激情片在线观看 | 手机在线小视频 | 青青草国产成人99久久 | 欧美精品一级视频 | 成人在线观看你懂的 | 色婷婷色 | 国产精品一区二区美女视频免费看 | 欧美日韩在线精品一区二区 | 中文av日韩 | 亚洲国产影院 | 国内精品久久久久久中文字幕 | 有码中文字幕在线观看 | 久久久久久久久久久国产精品 | 欧美成年人在线视频 | 天天综合天天做天天综合 | 国产亚洲精品美女 | 尤物97国产精品久久精品国产 | www五月天| 免费黄在线看 | 精品亚洲免a | 国产精品嫩草影视久久久 | 欧美视频18| 久久久久久看片 | 成人永久在线 | 91黄色小网站 | 午夜精品一区二区三区免费 | 丁香av | 亚洲经典在线 | 超碰公开在线观看 | 天天色天天射综合网 | 欧美一区二区三区四区夜夜大片 | 婷婷色中文字幕 | 亚洲国产精品激情在线观看 | 中文字幕视频免费观看 | 久久精品网 | 久久精品爱视频 | 婷婷激情5月天 | 久久久久一区二区三区 | 久久av影视 | va视频在线观看 | www.av小说| 69国产成人综合久久精品欧美 | 91在线观看视频 | 日韩精品久久中文字幕 | 97在线精品国自产拍中文 | 丁香五婷 | 国外调教视频网站 | 四虎国产精 | 天天舔天天射天天操 | 97精品超碰一区二区三区 | 日韩中文字幕在线看 | 国产日韩欧美在线观看 | 在线免费黄色av | 91传媒免费观看 | 一级黄色电影网站 | 久久99国产精品免费网站 | 精品国产美女在线 | 操少妇视频 | 久久99影院 | 久久久www成人免费毛片麻豆 | 最近免费中文字幕大全高清10 | 久久婷婷综合激情 | 亚州中文av | 丝袜美女在线观看 | 超碰97国产精品人人cao | 六月激情网 | 久草免费色站 | av免费在线网站 | 中文字幕免费观看全部电影 | 久草91视频 | av免费在线免费观看 | 美女视频永久黄网站免费观看国产 | 五月综合久久 | 欧美一区二区精品在线 | 最近中文字幕免费av | 久久久久成人免费 | 国产99久久久国产精品免费二区 | 欧美日韩在线视频一区 | 欧美国产精品久久久久久免费 | 蜜臀av夜夜澡人人爽人人桃色 | 麻豆视频在线 | 日韩免费视频在线观看 | 狠狠狠干 | 久久久久久久久亚洲精品 | 国产区欧美 | 国产在线精品二区 | 久久er99热精品一区二区 | 波多野结衣视频一区 | 国产原创在线观看 | 欧美成年人在线观看 | 日韩午夜电影网 | 在线观看黄色av | 尤物97国产精品久久精品国产 | 久久久噜噜噜久久久 | 婷婷综合五月天 | 九九视频一区 | 悠悠av资源片 | 91精品一区在线观看 | 亚洲国产视频在线 | 国产精品久久久 | 免费在线国产黄色 | 激情综合婷婷 | 亚洲国产久| 精品国产伦一区二区三区观看说明 | 福利一区二区三区四区 | 国产精品久久久久久婷婷天堂 | 久久免费视频在线 | 成人 国产 在线 | 免费进去里的视频 | 91九色视频在线观看 | 亚洲激情校园春色 | 国产精品色视频 | 国产一区免费观看 | 美女网站在线看 | 亚洲一级片在线看 | 亚洲一区免费在线 | 午夜在线看 | 久久不射电影院 | 日韩理论在线视频 | 亚洲永久精品视频 | 日韩黄色大片在线观看 | 正在播放亚洲精品 | 99精品国产一区二区三区不卡 | 成年人免费在线播放 | 91资源在线免费观看 | 欧美中文字幕第一页 | 免费福利在线 | 亚洲精品www久久久 www国产精品com | 国产又粗又长又硬免费视频 | 免费看的av片 | 在线免费观看羞羞视频 | 久久精品电影院 | 人人爽人人爽人人片 | 亚洲综合成人av | 黄色精品久久久 | 久久久久久毛片精品免费不卡 | www.色婷婷.com | 最新一区二区三区 | 午夜精品福利在线 | 成人h在线观看 | 成人久久久久久久久 | 九九九在线 | 国产精品com | 美女免费视频一区 | 欧美一级特黄aaaaaa大片在线观看 | 黄色a视频 | 玖玖视频免费在线 | 欧美性天天 | 国产日韩精品在线观看 | 中文字幕在线播放一区二区 | 日韩欧美xx | 92国产精品久久久久首页 | 久久久久成人精品 | 免费av在线网站 | 亚洲国产伊人 | 久久精品一 | 久久国产精品久久精品国产演员表 | 五月天中文字幕 | 人九九精品 | 超碰97成人| 免费三级a | 91片黄在线观看动漫 | 日韩av在线免费看 | 在线之家官网 | 久久婷婷国产色一区二区三区 | 俺要去色综合狠狠 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 伊香蕉大综综综合久久啪 | 婷婷视频 | www视频免费在线观看 | 天堂久色 | 六月丁香在线观看 | 亚洲深爱激情 | 久久激情婷婷 | 亚洲午夜精品久久久久久久久 | 国产资源免费在线观看 | 在线视频日韩一区 | 日本黄色免费网站 | 我要色综合天天 | 夜夜躁天天躁很躁波 | 午夜精品麻豆 | .国产精品成人自产拍在线观看6 | 亚洲免费在线播放视频 | 色婷婷久久 | 97香蕉久久超级碰碰高清版 | 福利视频区 | 欧美日韩国产一二 | 亚洲成人资源在线观看 | 日韩中文字幕视频在线观看 | 香蕉手机在线 | 国产无套精品久久久久久 | 亚洲精品国产片 | 国产精品久久久区三区天天噜 | 黄色av网站在线观看免费 | 最近中文字幕免费观看 | 97精品国自产拍在线观看 | 97色噜噜| 国产精品12 | 99久久婷婷国产精品综合 | 日韩高清 一区 | 亚洲精品mv在线观看 | 在线久久| 在线观看成人av | 国产亚洲精品综合一区91 | 黄色aaa毛片| 99久久成人 | 91免费在线播放 | 久久久久国产成人精品亚洲午夜 | 91最新网址 | 国产亚洲情侣一区二区无 | www.久艹| 久久成人亚洲欧美电影 | 日韩在线大片 | 久久视频在线 | 国产中文字幕一区二区 | 天天干天天插伊人网 | 四虎国产精品永久在线国在线 | 成人av电影在线 | 国产精品久久久久毛片大屁完整版 | 黄色日批网站 | 中文字幕精品一区久久久久 | 国产黄大片 | 啪啪免费试看 | 亚洲精品视频在线免费 | 久草免费电影 | 久久av免费 | 久久怡红院 | 天天干天天拍天天操 | 精品国产乱码久久久久久1区二区 | 午夜.dj高清免费观看视频 | 6080yy精品一区二区三区 | 五月婷婷激情六月 | 最近字幕在线观看第一季 | 亚洲年轻女教师毛茸茸 | 日韩动态视频 |