王俊傑de人工智慧實戰課 第2次作業

2022-05-18 23:41:49 字數 2702 閱讀 7296

專案內容

這個作業屬於哪個課程

北航人工智慧實戰課

這個作業的要求在**

第二次作業要求

我在這個課程的目標是

獲得機器學習相關的完整專案與學習經驗;通過與人工智慧行業的大牛們聊天了解行業不同方向的發展以便進行職業規劃;為轉cs積累基礎知識並獲得相關課程的成績

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

系統學習機器學習神經網路的演算法,踏出人工智慧的第一步!

作業正文…

【王俊傑de人工智慧實戰課】第2次作業

其他參考文獻…

微軟ai教育github

單獨建立函式方便修改以適用其他不同的函式

def z(w,b):  

x = 2*w+3*b

y = 2*b+1

z = x*y

return z

def delta(w,b,dz):

dz_db = x*2+y*3

dz_dw = y*2

db = dz/2/dz_db

dw = dz/2/dz_dw

return dw,db

反覆迭代,直至差值小於設定值

輸出包括第幾次迭代,本次迭代的差值,當前的z、w、b

w = 3  

b = 4

z0 = 150

diff_z = 0.00001

z = z(w,b)

dz = abs(z-z0)

i = 0

print(i,'th time\t difference of z is:',dz,'\ncurrent z is:',z,'\t current w is:',w,'\t current b is:',b)

while (dz>diff_z):

dw,db = delta(w,b,dz)

w-=dw

b-=db

z = z(w,b)

dz = abs(z-z0)

i+=1

print(i,'th time\t difference of z is:',dz,'\ncurrent z is:',z,'\t current w is:',w,'\t current b is:',b)

print('calculation finnished!')

print('final w is: ',w)

print('final b is: ',b)

print('final z is: ',z)

0 th time	 difference of z is: 12 

current z is: 162 current w is: 3 current b is: 4

1 th time difference of z is: 0.18140589569162557

current z is: 150.18140589569163 current w is: 2.6666666666666665 current b is: 3.9047619047619047

2 th time difference of z is: 0.005526139576176092

current z is: 150.00552613957618 current w is: 2.661627614008566 current b is: 3.903322175431019

3 th time difference of z is: 0.0001696432812252624

current z is: 150.00016964328123 current w is: 2.66147411013145 current b is: 3.903278317180414

4 th time difference of z is: 5.2089834525759215e-06

current z is: 150.00000520898345 current w is: 2.6614693978180823 current b is: 3.9032769708051664

calculation finnished!

final w is: 2.6614693978180823

final b is: 3.9032769708051664

final z is: 150.00000520898345

總共迭代4次

誤差為:5.2089834525759215e-06 < 1.0e-5

w為:2.6614693978180823

b為:3.9032769708051664

單變數的迭代次數為5次,雙變數迭代比其少1次

單變數的運算結果為w=2.661469, b=3.903277,與雙變數的運算結果相同,說明演算法正確性沒有問題

增加乙個變數一起反向傳播、梯度下降可以使得運算速度增加、運算次數減少,但變化不夠明顯,即效率還不是太高。

考慮到計算δb與δw時是將δz的誤差平分給二者的,這可能會造成δb相較於δw非常小,但仍與δw分的相同的誤差值,其實這種情況下效率最高的方法應該是δb分得的誤差比δw小。

根據這種思想,可以在分配δz誤差時,按照前一次的δb與δw的比值分,越大分的越多(第1次分的時候就按1/2計)。

王俊傑de人工智慧實戰課 第8次作業

專案內容 這個作業屬於哪個課程 北航人工智慧實戰課 這個作業的要求在 第三次作業要求 我在這個課程的目標是 獲得機器學習相關的完整專案與學習經驗 通過與人工智慧行業的大牛們聊天了解行業不同方向的發展以便進行職業規劃 為轉cs積累基礎知識並獲得相關課程的成績 這個作業在哪個具體方面幫助我實現目標 通過...

王俊傑de人工智慧實戰課 第6次作業

專案內容 這個作業屬於哪個課程 北航人工智慧實戰課 這個作業的要求在 第三次作業要求 我在這個課程的目標是 獲得機器學習相關的完整專案與學習經驗 通過與人工智慧行業的大牛們聊天了解行業不同方向的發展以便進行職業規劃 為轉cs積累基礎知識並獲得相關課程的成績 這個作業在哪個具體方面幫助我實現目標 對三...

人工智慧實戰2019 何崢 第6次作業

調節神經網路超引數 專案 內容 課程人工智慧實戰2019 作業要求 修改level3中的超參,訓練mnist資料集,令測試結果的準確度大於97 我的課程目標 掌握相關知識和技能,獲得專案經驗 本次作業對我的幫助 理解神經網路的基本原理,並掌握 實現的基本方法 作業正文 人工智慧實戰2019 何崢 第...