From f981107b374b9c2729baaf6791c43386251e0af1 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Thu, 29 Apr 2021 10:15:41 +0800 Subject: [PATCH 01/25] =?UTF-8?q?=E6=96=B0=E5=BB=BA=2019210680053?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assignment-2/submission/19210680053/.keep | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assignment-2/submission/19210680053/.keep diff --git a/assignment-2/submission/19210680053/.keep b/assignment-2/submission/19210680053/.keep new file mode 100644 index 0000000..e69de29 -- Gitee From 256978ed39d49eb86f27851db167f6c7201f2b4e Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Thu, 29 Apr 2021 10:16:14 +0800 Subject: [PATCH 02/25] add assignment-2/submission/19210680053/README.md. --- assignment-2/submission/19210680053/README.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assignment-2/submission/19210680053/README.md diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md new file mode 100644 index 0000000..e69de29 -- Gitee From ecd6ae6d4cbb0b0eb33f63cd6a232fe536ba52f6 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Thu, 29 Apr 2021 10:19:12 +0800 Subject: [PATCH 03/25] update assignment-2/submission/19210680053/README.md. --- assignment-2/submission/19210680053/README.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index e69de29..9ca331f 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -0,0 +1,9 @@ +#实验报告 +###1,模型设计 +神经网络设计如下图所示 +###2,算子补充 +matmul: +Relu: +Log: +Softmax: +###3,mini_batch函数优化 -- Gitee From dff8e0110f08b708cac9ef0d8789eadaa745b9cb Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Thu, 29 Apr 2021 10:19:43 +0800 Subject: [PATCH 04/25] update assignment-2/submission/19210680053/README.md. --- assignment-2/submission/19210680053/README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 9ca331f..7183b76 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -1,9 +1,9 @@ -#实验报告 -###1,模型设计 +# 实验报告 +### 1,模型设计 神经网络设计如下图所示 -###2,算子补充 +### 2,算子补充 matmul: Relu: Log: Softmax: -###3,mini_batch函数优化 +### 3,mini_batch函数优化 -- Gitee From faaa4142894ef55ab0fd46f6b552606035349cfa Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Thu, 29 Apr 2021 10:20:05 +0800 Subject: [PATCH 05/25] update assignment-2/submission/19210680053/README.md. --- assignment-2/submission/19210680053/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 7183b76..2127b67 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -1,9 +1,9 @@ # 实验报告 -### 1,模型设计 +### 1.模型设计 神经网络设计如下图所示 -### 2,算子补充 +### 2.算子补充 matmul: Relu: Log: Softmax: -### 3,mini_batch函数优化 +### 3.mini_batch函数优化 -- Gitee From 0569a4d97276fb7df23843b3e1f4098d9078fab9 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Fri, 30 Apr 2021 14:26:46 +0800 Subject: [PATCH 06/25] update assignment-2/submission/19210680053/README.md. --- assignment-2/submission/19210680053/README.md | 42 ++++++++++++++++++- 1 file changed, 40 insertions(+), 2 deletions(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 2127b67..be78970 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -2,8 +2,46 @@ ### 1.模型设计 神经网络设计如下图所示 ### 2.算子补充 -matmul: -Relu: +####Matmul +$$ +**Forward** +h=X*W +$$ +**Backward** +$$ +\frac{\partial Y}{\partial X} = W^{T} +$$ + +$$ +\frac{\partial Y}{\partial W} = X^{T} +$$ +维度变化以及Python实现如下所示: +$$ +``` + """ + grad_y: shape(N, d') + w.T: shape(d', d) + """ + grad_x=np.matmul(grad_y, W.T) + """ + grad_y: shape(N, d') + x.T: shape(d, N) + """ + grad_W=np.matmul(x.T, grad_y) +``` +####Relu +$$ +**Forward** +Y=\begin{cases} +X&X\ge0\\\\ +0&\text{otherwise} +\end{cases} +$$ +**Backward** +\frac{\partial Y}{\partial X}=\begin{cases}1&X\ge0\\\\ +0&\text{otherwise} +\end{cases} +$$ Log: Softmax: ### 3.mini_batch函数优化 -- Gitee From 7966db3fb84c75f3504ac6c00eddaf83eaf031c1 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Fri, 30 Apr 2021 14:27:51 +0800 Subject: [PATCH 07/25] update assignment-2/submission/19210680053/README.md. --- assignment-2/submission/19210680053/README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index be78970..609a3c5 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -4,10 +4,10 @@ ### 2.算子补充 ####Matmul $$ -**Forward** +Forward h=X*W $$ -**Backward** +Backward $$ \frac{\partial Y}{\partial X} = W^{T} $$ @@ -30,14 +30,14 @@ $$ grad_W=np.matmul(x.T, grad_y) ``` ####Relu -$$ -**Forward** + +Forward Y=\begin{cases} X&X\ge0\\\\ 0&\text{otherwise} \end{cases} $$ -**Backward** +Backward \frac{\partial Y}{\partial X}=\begin{cases}1&X\ge0\\\\ 0&\text{otherwise} \end{cases} -- Gitee From cb7e91275bd07e488d972b570ec58408aeed1e1c Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Fri, 30 Apr 2021 14:28:31 +0800 Subject: [PATCH 08/25] update assignment-2/submission/19210680053/README.md. --- assignment-2/submission/19210680053/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 609a3c5..5676ade 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -2,7 +2,7 @@ ### 1.模型设计 神经网络设计如下图所示 ### 2.算子补充 -####Matmul +Matmul $$ Forward h=X*W @@ -29,7 +29,7 @@ $$ """ grad_W=np.matmul(x.T, grad_y) ``` -####Relu +Relu Forward Y=\begin{cases} -- Gitee From 9f85ff06eae314c63d67bfdfaba3178b06f3728a Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Fri, 30 Apr 2021 14:28:46 +0800 Subject: [PATCH 09/25] update assignment-2/submission/19210680053/README.md. --- assignment-2/submission/19210680053/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 5676ade..23bcee1 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -5,6 +5,7 @@ Matmul $$ Forward +$$ h=X*W $$ Backward -- Gitee From 555b033242eb0505e74155d4bc86f43d861cc301 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Fri, 30 Apr 2021 14:29:13 +0800 Subject: [PATCH 10/25] update assignment-2/submission/19210680053/README.md. --- assignment-2/submission/19210680053/README.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 23bcee1..7745180 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -2,12 +2,10 @@ ### 1.模型设计 神经网络设计如下图所示 ### 2.算子补充 -Matmul -$$ +Matmul//// Forward $$ -h=X*W -$$ +h=X*W//// Backward $$ \frac{\partial Y}{\partial X} = W^{T} -- Gitee From f5634d9d68c9ee9b44dadfa89bd17b8dfdf2b1db Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Fri, 30 Apr 2021 14:34:45 +0800 Subject: [PATCH 11/25] update relu --- assignment-2/submission/19210680053/README.md | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 7745180..3691dd4 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -2,20 +2,21 @@ ### 1.模型设计 神经网络设计如下图所示 ### 2.算子补充 -Matmul//// +**Matmul** + Forward $$ -h=X*W//// +h=X*W +$$ + Backward $$ \frac{\partial Y}{\partial X} = W^{T} $$ - $$ \frac{\partial Y}{\partial W} = X^{T} $$ 维度变化以及Python实现如下所示: -$$ ``` """ grad_y: shape(N, d') @@ -28,15 +29,17 @@ $$ """ grad_W=np.matmul(x.T, grad_y) ``` -Relu +**Relu** Forward +$$ Y=\begin{cases} X&X\ge0\\\\ 0&\text{otherwise} \end{cases} $$ Backward +$$ \frac{\partial Y}{\partial X}=\begin{cases}1&X\ge0\\\\ 0&\text{otherwise} \end{cases} -- Gitee From 0fc5d8ef11be0b6d89932bfd77a9c28e21e67c6c Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Fri, 30 Apr 2021 16:35:21 +0800 Subject: [PATCH 12/25] operator edied --- assignment-2/submission/19210680053/README.md | 105 +++++++++++++++++- 1 file changed, 104 insertions(+), 1 deletion(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 3691dd4..2771ae1 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -44,6 +44,109 @@ $$ 0&\text{otherwise} \end{cases} $$ -Log: +Python实现如下所示: +``` + def forward(self, x): + self.memory['x'] = x + return np.where(x > 0, x, np.zeros_like(x)) + + def backward(self, grad_y): + """ + grad_y: same shape as x + """ + x=self.memory['x'] + grad_x=grad_y*np.where(x>0,1,0) + return grad_x +``` +**Log** + +Forward +$$ +Y=Log(x+epsilon) +$$ +Backward +$$ +Y=1/(x+epsilon) +$$ +Python实现如下所示: +``` + def forward(self, x): + """ + x: shape(N, c) + """ + + out = np.log(x + self.epsilon) + self.memory['x'] = x + + return out + + def backward(self, grad_y): + + """ + grad_y: same shape as x + """ + x=self.memory['x'] + grad_x=grad_y*(1./(x+self.epsilon)) + return grad_x +``` Softmax: + +Forward +$$ +Y_i = \frac{e^{X_i}}{\sum_{k=1}^n e^{X_k}} +$$ + +Backward +$$ +\frac{\partial Y_i}{\partial X_j} = + \begin{cases} + Y_i \times (1 - Y_i) & i = j\\\\ + -Y_i \times Y_j & i \neq j + \end{cases} +$$ +Python实现如下所示: + +softmax的反向传播通过逐个元素判断求导进行实现 +``` + def forward(self, x): + """ + x: shape(N, c) + """ + ex = np.exp(x) + rowsum = np.sum(ex,axis=1) + rowsum = rowsum[:,np.newaxis] + softmax = ex / rowsum + self.memory['softmax'] = softmax + return softmax + + def backward(self, grad_y): + softmax = self.memory['softmax'] + # print(sumx.shape) + [ROWS, COLUMNS] = softmax.shape + grad_x = [] + grad_x=[[0 for i in range(COLUMNS)] for j in range(ROWS)] + for i in range(len(grad_x)): + for j in range(len(grad_x[0])): + for k in range(len(grad_x[0])): + if j == k: + + grad_x[i][j] += (1 - softmax[i][k]) * softmax[i][k] * grad_y[i][k] + else: + grad_x[i][j] += -softmax[i][j] * softmax[i][k] * grad_y[i][k] + grad_x = np.array(grad_x) +``` ### 3.mini_batch函数优化 +原有mini_batch方法是将元素打乱重排进行训练 分别将数据和标签储存进对应list 根据batch_size 从打乱的index中一次取出相应大小的数据 +Python实现如下所示: +``` +def mini_batch(dataset,batch_size=128): + data = [] + label = [] + for each in dataset: + data.append(np.array(each[0])) + label.append(each[1]) + data = np.array(data) + label = np.array(label) + index=data.shape[0] + index = list(np.random.permutation(index)) + return [(data[index[i:i + batch_size]], label[index[i:i + batch_size]]) for i in range(0, len(data), batch_size)] -- Gitee From 58449ac164562e205d8ff62936058f0e773a4b71 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Fri, 30 Apr 2021 16:35:52 +0800 Subject: [PATCH 13/25] huan --- assignment-2/submission/19210680053/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 2771ae1..1c208b0 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -137,6 +137,7 @@ softmax的反向传播通过逐个元素判断求导进行实现 ``` ### 3.mini_batch函数优化 原有mini_batch方法是将元素打乱重排进行训练 分别将数据和标签储存进对应list 根据batch_size 从打乱的index中一次取出相应大小的数据 + Python实现如下所示: ``` def mini_batch(dataset,batch_size=128): -- Gitee From d34a7a1939a8e29832561f9778c3b3ea49f96734 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Fri, 30 Apr 2021 16:37:03 +0800 Subject: [PATCH 14/25] cub --- assignment-2/submission/19210680053/README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 1c208b0..1367801 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -4,12 +4,12 @@ ### 2.算子补充 **Matmul** -Forward +**Forward** $$ h=X*W $$ -Backward +**Backward** $$ \frac{\partial Y}{\partial X} = W^{T} $$ @@ -31,14 +31,14 @@ $$ ``` **Relu** -Forward +**Forward** $$ Y=\begin{cases} X&X\ge0\\\\ 0&\text{otherwise} \end{cases} $$ -Backward +**Backward** $$ \frac{\partial Y}{\partial X}=\begin{cases}1&X\ge0\\\\ 0&\text{otherwise} @@ -64,7 +64,7 @@ Forward $$ Y=Log(x+epsilon) $$ -Backward +**Backward** $$ Y=1/(x+epsilon) $$ @@ -91,12 +91,12 @@ Python实现如下所示: ``` Softmax: -Forward +**Forward** $$ Y_i = \frac{e^{X_i}}{\sum_{k=1}^n e^{X_k}} $$ -Backward +**Backward** $$ \frac{\partial Y_i}{\partial X_j} = \begin{cases} -- Gitee From 1ca1ab6cc75933f66b7fc7d8e7e74113a635d582 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Fri, 30 Apr 2021 16:38:51 +0800 Subject: [PATCH 15/25] =?UTF-8?q?=E6=96=B0=E5=BB=BA=20img?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assignment-2/submission/19210680053/img/.keep | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assignment-2/submission/19210680053/img/.keep diff --git a/assignment-2/submission/19210680053/img/.keep b/assignment-2/submission/19210680053/img/.keep new file mode 100644 index 0000000..e69de29 -- Gitee From 29b82f5bc3206946a08692b7b38e34c52e54efa5 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Fri, 30 Apr 2021 16:40:59 +0800 Subject: [PATCH 16/25] Loss_mi b --- .../19210680053/loss_value mini batch.png | Bin 0 -> 12585 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assignment-2/submission/19210680053/loss_value mini batch.png diff --git a/assignment-2/submission/19210680053/loss_value mini batch.png b/assignment-2/submission/19210680053/loss_value mini batch.png new file mode 100644 index 0000000000000000000000000000000000000000..ab0658bf3f37b62a6bf629bdd9cb5b9a42dbad80 GIT binary patch literal 12585 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 Date: Fri, 30 Apr 2021 16:42:02 +0800 Subject: [PATCH 17/25] =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=96=87=E4=BB=B6=20as?= =?UTF-8?q?signment-2/submission/19210680053/loss=5Fvalue=20mini=20batch.p?= =?UTF-8?q?ng?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../19210680053/loss_value mini batch.png | Bin 12585 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 assignment-2/submission/19210680053/loss_value mini batch.png diff --git a/assignment-2/submission/19210680053/loss_value mini batch.png b/assignment-2/submission/19210680053/loss_value mini batch.png deleted file mode 100644 index ab0658bf3f37b62a6bf629bdd9cb5b9a42dbad80..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12585 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 Date: Fri, 30 Apr 2021 16:42:18 +0800 Subject: [PATCH 18/25] mini bat --- .../19210680053/img/loss_value mini batch.png | Bin 0 -> 12585 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assignment-2/submission/19210680053/img/loss_value mini batch.png diff --git a/assignment-2/submission/19210680053/img/loss_value mini batch.png b/assignment-2/submission/19210680053/img/loss_value mini batch.png new file mode 100644 index 0000000000000000000000000000000000000000..ab0658bf3f37b62a6bf629bdd9cb5b9a42dbad80 GIT binary patch literal 12585 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 Date: Sat, 1 May 2021 13:14:26 +0800 Subject: [PATCH 19/25] new edit --- assignment-2/submission/19210680053/README.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 1367801..a3c32f8 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -151,3 +151,14 @@ def mini_batch(dataset,batch_size=128): index=data.shape[0] index = list(np.random.permutation(index)) return [(data[index[i:i + batch_size]], label[index[i:i + batch_size]]) for i in range(0, len(data), batch_size)] +``` +### 4.实验结果 +**准确率如下** + +[0] Accuracy: 0.9367 + +[1] Accuracy: 0.9607 + +[2] Accuracy: 0.9687 + +![](./img/loss_value mini batch.jpg) \ No newline at end of file -- Gitee From 36e4286308977367d8342ef2a8e2fb8df4f5a873 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Sat, 1 May 2021 13:35:39 +0800 Subject: [PATCH 20/25] mini_batch from util --- .../19210680053/img/mini_batch_orig.png | Bin 0 -> 12684 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assignment-2/submission/19210680053/img/mini_batch_orig.png diff --git a/assignment-2/submission/19210680053/img/mini_batch_orig.png b/assignment-2/submission/19210680053/img/mini_batch_orig.png new file mode 100644 index 0000000000000000000000000000000000000000..c4225c0e01087cb4abe343c4c8d295cb35ec7e22 GIT binary patch literal 12684 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 Date: Sat, 1 May 2021 13:36:37 +0800 Subject: [PATCH 21/25] new info --- assignment-2/submission/19210680053/README.md | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index a3c32f8..3eff49c 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -129,14 +129,17 @@ softmax的反向传播通过逐个元素判断求导进行实现 for j in range(len(grad_x[0])): for k in range(len(grad_x[0])): if j == k: - grad_x[i][j] += (1 - softmax[i][k]) * softmax[i][k] * grad_y[i][k] else: grad_x[i][j] += -softmax[i][j] * softmax[i][k] * grad_y[i][k] grad_x = np.array(grad_x) ``` ### 3.mini_batch函数优化 -原有mini_batch方法是将元素打乱重排进行训练 分别将数据和标签储存进对应list 根据batch_size 从打乱的index中一次取出相应大小的数据 +原有mini_batch方法是将元素打乱重排进行训练 分别将数据和标签储存进对应list + +将index进行打乱 + +根据batch_size 从乱序index中一次取出相应大小的数据及标签进行训练 Python实现如下所示: ``` @@ -161,4 +164,12 @@ def mini_batch(dataset,batch_size=128): [2] Accuracy: 0.9687 -![](./img/loss_value mini batch.jpg) \ No newline at end of file +![](./img/loss_value%20mini%20batch.png) + +[0] Accuracy: 0.9441 + +[1] Accuracy: 0.9635 + +[2] Accuracy: 0.9721 + +![](./img/mini_batch_orig.png) \ No newline at end of file -- Gitee From 76a1f45befde3f551426ccdc6612cb1b478f7338 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Sat, 1 May 2021 13:39:41 +0800 Subject: [PATCH 22/25] updated_fully --- assignment-2/submission/19210680053/README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index 3eff49c..ff88aaf 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -158,6 +158,8 @@ def mini_batch(dataset,batch_size=128): ### 4.实验结果 **准确率如下** +使用**更新后的mini_batch函数** + [0] Accuracy: 0.9367 [1] Accuracy: 0.9607 @@ -166,10 +168,14 @@ def mini_batch(dataset,batch_size=128): ![](./img/loss_value%20mini%20batch.png) +使用**util.py中的mini_batch函数** + [0] Accuracy: 0.9441 [1] Accuracy: 0.9635 [2] Accuracy: 0.9721 -![](./img/mini_batch_orig.png) \ No newline at end of file +![](./img/mini_batch_orig.png) + +两者准确性基本相同 \ No newline at end of file -- Gitee From 960b2e1b7e33bf566d5024075bdfe0c1c4cbdac5 Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Sat, 1 May 2021 13:47:54 +0800 Subject: [PATCH 23/25] =?UTF-8?q?operator=E2=80=94model=5Ftrain?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../submission/19210680053/numpy_fnn.py | 214 ++++++++++++++++++ .../submission/19210680053/numpy_mnist.py | 57 +++++ 2 files changed, 271 insertions(+) create mode 100644 assignment-2/submission/19210680053/numpy_fnn.py create mode 100644 assignment-2/submission/19210680053/numpy_mnist.py diff --git a/assignment-2/submission/19210680053/numpy_fnn.py b/assignment-2/submission/19210680053/numpy_fnn.py new file mode 100644 index 0000000..34a4a69 --- /dev/null +++ b/assignment-2/submission/19210680053/numpy_fnn.py @@ -0,0 +1,214 @@ +import numpy as np + + +class NumpyOp: + + def __init__(self): + self.memory = {} + self.epsilon = 1e-12 + + +class Matmul(NumpyOp): + + def forward(self, x, W): + """ + x: shape(N, d) + w: shape(d, d') + """ + self.memory['x'] = x + self.memory['W'] = W + h = np.matmul(x, W) + return h + + def backward(self, grad_y): + """ + grad_y: shape(N, d') + """ + + + #################### + # code 1 # + #################### + x=self.memory['x'] + W=self.memory['W'] + """ + grad_y: shape(N, d') + w.T: shape(d', d) + """ + grad_x=np.matmul(grad_y, W.T) + """ + grad_y: shape(N, d') + x.T: shape(d, N) + """ + grad_W=np.matmul(x.T, grad_y) + + return grad_x, grad_W + + +class Relu(NumpyOp): + + def forward(self, x): + self.memory['x'] = x + return np.where(x > 0, x, np.zeros_like(x)) + + def backward(self, grad_y): + """ + grad_y: same shape as x + """ + #################### + # code 2 # + #################### + x=self.memory['x'] + grad_x=grad_y*np.where(x>0,1,0) + return grad_x + + +class Log(NumpyOp): + + def forward(self, x): + """ + x: shape(N, c) + """ + + out = np.log(x + self.epsilon) + self.memory['x'] = x + + return out + + def backward(self, grad_y): + + """ + grad_y: same shape as x + """ + #################### + # code 3 # + #################### + x=self.memory['x'] + grad_x=grad_y*(1./(x+self.epsilon)) + return grad_x + + +class Softmax(NumpyOp): + """ + softmax over last dimension + """ + + def forward(self, x): + """ + x: shape(N, c) + """ + #################### + # code 4 # + #################### +# self.memory['x'] = x +# exp_x=np.exp(x) +# softmax=np.exp(x)/np.sum(exp_x,axis=1) +# self.memory['softmax']=softmax + ex = np.exp(x) + rowsum = np.sum(ex,axis=1) + rowsum = rowsum[:,np.newaxis] + softmax = ex / rowsum + self.memory['softmax'] = softmax + return softmax + + def backward(self, grad_y): + """ + grad_y: same shape as x + """ + #################### + # code 5 # + #################### +# softmax = self.memory['softmax'] + + softmax = self.memory['softmax'] + # print(sumx.shape) + [ROWS, COLUMNS] = softmax.shape + grad_x = [] + # print(grad_y) +# grad_x=[[] for i in range(ROWS)] + grad_x=[[0 for i in range(COLUMNS)] for j in range(ROWS)] + for i in range(len(grad_x)): + for j in range(len(grad_x[0])): +# for j in range(m): +# out[i].append(0) + for k in range(len(grad_x[0])): + if j == k: + + grad_x[i][j] += (1 - softmax[i][k]) * softmax[i][k] * grad_y[i][k] + else: + grad_x[i][j] += -softmax[i][j] * softmax[i][k] * grad_y[i][k] + grad_x = np.array(grad_x) + + return grad_x +class NumpyLoss: + + def __init__(self): + self.target = None + + def get_loss(self, pred, target): + self.target = target + return (-pred * target).sum(axis=1).mean() + + def backward(self): + return -self.target / self.target.shape[0] + +class NumpyModel: + def __init__(self): + self.W1 = np.random.normal(size=(28 * 28, 256)) + self.W2 = np.random.normal(size=(256, 64)) + self.W3 = np.random.normal(size=(64, 10)) + + + # 以下算子会在 forward 和 backward 中使用 + self.matmul_1 = Matmul() + self.relu_1 = Relu() + self.matmul_2 = Matmul() + self.relu_2 = Relu() + self.matmul_3 = Matmul() + self.softmax = Softmax() + self.log = Log() + + # 以下变量需要在 backward 中更新 + self.x1_grad, self.W1_grad = None, None + self.relu_1_grad = None + self.x2_grad, self.W2_grad = None, None + self.relu_2_grad = None + self.x3_grad, self.W3_grad = None, None + self.softmax_grad = None + self.log_grad = None + + + def forward(self, x): + x = x.reshape(-1, 28 * 28) + + #################### + # code 6 # + #################### + + A1 = self.matmul_1.forward(x, self.W1) # shape(5, 4) + z1 = self.relu_1.forward(A1) + A2 = self.matmul_2.forward(z1, self.W2) + z2=self.relu_2.forward(A2) + A3=self.matmul_3.forward(z2,self.W3) + z3 = self.softmax.forward(A3) + R = self.log.forward(z3) + return R + + def backward(self, y): + #################### + # code 7 # + #################### + self.log_grad=self.log.backward(y) + self.soft_grad=self.softmax.backward(self.log_grad) + self.x3_grad,self.W3_grad=self.matmul_3.backward(self.soft_grad) + self.relu_2_grad=self.relu_2.backward(self.x3_grad) + self.x2_grad,self.W2_grad=self.matmul_2.backward(self.relu_2_grad) + self.relu_1_grad=self.relu_1.backward(self.x2_grad) + self.x1_grad,self.W1_grad=self.matmul_1.backward(self.relu_1_grad) + pass + + + def optimize(self, learning_rate): + self.W1 -= learning_rate * self.W1_grad + self.W2 -= learning_rate * self.W2_grad + self.W3 -= learning_rate * self.W3_grad diff --git a/assignment-2/submission/19210680053/numpy_mnist.py b/assignment-2/submission/19210680053/numpy_mnist.py new file mode 100644 index 0000000..73e8750 --- /dev/null +++ b/assignment-2/submission/19210680053/numpy_mnist.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +""" +Created on Wed Apr 28 22:11:32 2021 + +@author: hyt +""" + +import numpy as np +from numpy_fnn import NumpyModel, NumpyLoss +from utils import download_mnist, batch, get_torch_initialization, plot_curve, one_hot +def mini_batch(dataset,batch_size=128): + data = [] + label = [] + for each in dataset: + data.append(np.array(each[0])) + label.append(each[1]) + data = np.array(data) + label = np.array(label) + index=data.shape[0] + index = list(np.random.permutation(index)) + return [(data[index[i:i + batch_size]], label[index[i:i + batch_size]]) for i in range(0, len(data), batch_size)] + + +def numpy_run(): + train_dataset, test_dataset = download_mnist() + + model = NumpyModel() + numpy_loss = NumpyLoss() + model.W1, model.W2, model.W3 = get_torch_initialization() + + train_loss = [] + + epoch_number = 3 + learning_rate = 0.1 + + for epoch in range(epoch_number): + for x, y in mini_batch(train_dataset): + y = one_hot(y) + + y_pred = model.forward(x) +# y_pred = model.forward(x.numpy()) + loss = numpy_loss.get_loss(y_pred, y) + + model.backward(numpy_loss.backward()) + model.optimize(learning_rate) + + train_loss.append(loss.item()) + + x, y = batch(test_dataset)[0] + accuracy = np.mean((model.forward(x).argmax(axis=1) == y)) + print('[{}] Accuracy: {:.4f}'.format(epoch, accuracy)) + + plot_curve(train_loss) + + +if __name__ == "__main__": + numpy_run() \ No newline at end of file -- Gitee From 4521e549a2e4b59792bce2a1efe913fe3f5e74ae Mon Sep 17 00:00:00 2001 From: Yantong He <8850706+yantong-he@user.noreply.gitee.com> Date: Sat, 1 May 2021 20:24:21 +0800 Subject: [PATCH 24/25] smaller_batch --- .../submission/19210680053/img/sma_bat.png | Bin 0 -> 11674 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 assignment-2/submission/19210680053/img/sma_bat.png diff --git a/assignment-2/submission/19210680053/img/sma_bat.png b/assignment-2/submission/19210680053/img/sma_bat.png new file mode 100644 index 0000000000000000000000000000000000000000..a32722a6b75cbad3c5c8765cd4a6da9830e249ac GIT binary patch literal 11674 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 Date: Sat, 1 May 2021 20:25:16 +0800 Subject: [PATCH 25/25] update --- assignment-2/submission/19210680053/README.md | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/assignment-2/submission/19210680053/README.md b/assignment-2/submission/19210680053/README.md index ff88aaf..abdc546 100644 --- a/assignment-2/submission/19210680053/README.md +++ b/assignment-2/submission/19210680053/README.md @@ -178,4 +178,14 @@ def mini_batch(dataset,batch_size=128): ![](./img/mini_batch_orig.png) -两者准确性基本相同 \ No newline at end of file +经过比对,两者准确性基本相同 + +使用**更新后的mini_batch函数**,选取更小**batch** + +[0] Accuracy: 0.9594 + +[1] Accuracy: 0.9702 + +[2] Accuracy: 0.9771 + +![](./img/sma_bat.png) \ No newline at end of file -- Gitee