人工智慧實戰 第二次作業 陳澤寅

2022-06-02 21:21:10 字數 2640 閱讀 7649

專案內容

課程人工智慧實戰2019

作業要求

作業我在這個課程的目標是

了解人工智慧理論,提公升coding能力

這個作業在哪個具體方面幫助我實現目標

通過學習神經網路反向傳播演算法更好地鞏固自己的ai基礎

\[\frac}}=\frac}} \cdot \frac}}+\frac}}\cdot\frac}}=y \cdot 3+x \cdot 2=3y+2x

$$\]

\frac}}=\frac}} \cdot \frac}}+\frac}}\cdot\frac}}=y \cdot 2+x \cdot 0 = 2y

\[所以,在每次迭代中,要重新計算下面兩個值:

\]\delta b=\frac

\[\]

\delta w=\frac

\[但是由於$

\delta b$和$\delta\omega$都對$\delta z$造成一半的影響,因此我們這裡的公式應該改成

\]\delta b=\frac

\[\]

\delta w=\frac

\[然後每次更新$b$和$\omega,z$的值,迴圈迭代,直到$z -150\leq 10^-5$

### **實現(每次均更新$\delta b$和$\delta \omega$)

```# -*-coding:utf-8-*-

from numpy import *

target = 150.0

w = 3.0

b = 4.0

z = 162

min = 1e-5;

print(z)

iter_count = 0

while ((abs(150 - z)) > min):

iter_count +=1

x = 2 * w + 3 * b

y = 2 * b + 1

z = x * y

delta_b = ((z - 150) / ((2 * x + 3 * y)*2))

delta_w = ((z - 150) / ((2 * y)*2))

w = w - delta_w

b = b - delta_b

print("loop: %d, w = %.8f, b = %.8f, z = %.8f, error = %.8f"%(iter_count,w,b,z,abs(150-z)));

print("final result:loop = %d, w = %.8f, b = %.8f,z = %.8f,error = %.8f"%(iter_count,w,b,z,abs(z-150)));

```###執行結果

```loop: 1, w = 2.66666667, b = 3.90476190, z = 162.00000000, error = 12.00000000

loop: 2, w = 2.66151866, b = 3.90326327, z = 150.18140590, error = 0.18140590

loop: 3, w = 2.66151740, b = 3.90326291, z = 150.00004434, error = 0.00004434

loop: 4, w = 2.66151740, b = 3.90326291, z = 150.00000000, error = 0.00000000

final result:loop = 4, w = 2.66151740, b = 3.90326291,z = 150.00000000,error = 0.00000000

```###當我們在反向傳播過程中認為$\delta b$和$\delta \omega$的值保持不變

``` delta_b = ((z - 150) / ((63)*2))

delta_w = ((z - 150) / ((18)*2))

```###執行結果

```loop: 1, w = 2.66666667, b = 3.90476190, z = 162.00000000, error = 12.00000000

loop: 2, w = 2.66162761, b = 3.90332218, z = 150.18140590, error = 0.18140590

loop: 3, w = 2.66147411, b = 3.90327832, z = 150.00552614, error = 0.00552614

loop: 4, w = 2.66146940, b = 3.90327697, z = 150.00016964, error = 0.00016964

loop: 5, w = 2.66146925, b = 3.90327693, z = 150.00000521, error = 0.00000521

final result:loop = 5, w = 2.66146925, b = 3.90327693,z = 150.00000521,error = 0.00000521

```---

###比較與分析

* 我們可以看到,上面兩種方法都能夠在有限次迭代中達到想要的結果,但是第一種明顯效果更好,速度也更快,因為神經網路的反饋是實時的,也就是說引數的影響會直接作用於下一輪迭代,這也能使神經網路調整引數的速度更加快。因此我們需要在每次迭代時先更新引數的值,後計算下一輪的資料。\]

人工智慧實戰 第八次作業 陳澤寅

專案 內容課程 人工智慧實戰2019 作業要求 作業要求 我在這個課程的目標是 了解人工智慧理論,提公升coding能力 這個作業在哪個具體方面幫助我實現目標 理解演算法本質,提公升創新思維,理解cnn模型 答 當我們的輸入是乙個合法輸入的時候,通過判別模型得到的結果應該是有乙個類別的概率很大,其餘...

人工智慧實戰 第七次作業 陳澤寅

專案 內容課程 人工智慧實戰2019 作業要求 作業要求 我在這個課程的目標是 了解人工智慧理論,提公升coding能力 這個作業在哪個具體方面幫助我實現目標 理解演算法本質,提公升創新思維 點遊戲的分析 這個遊戲雖說是隨機性為主,但還是需要一定的技巧以及對過去趨勢的分析,雖然很多玩家可能會故意給出...

第二次作業 個人專案實戰

2,psp2.1 personal software process stages 預估耗時 分鐘 planning 計畫20 estimate 估計這個任務需要多少時間 20development 開發490 analysis 需求分析 包括學習新技術 60 design spec 生成設計文件 ...