自己做網(wǎng)站頁(yè)面長(zhǎng)沙市seo百度關(guān)鍵詞
所謂的激活函數(shù),就是李宏毅老師講到的sigmoid函數(shù) 和 hard sigmoid函數(shù) ,ReLU函數(shù)那些
現(xiàn)在一點(diǎn)點(diǎn)慢慢探索,會(huì)成為日后想都做不到的經(jīng)歷,當(dāng)你啥也不會(huì)的時(shí)候,才是慢慢享受探索的過(guò)程。
有一說(shuō)一,用chatGPT分解代碼是真的香!
part1:初始文件處理
補(bǔ)充關(guān)于Shell命令的相關(guān)知識(shí)?
(1)
?
?
(2)
??
(3)
?(4)
?
關(guān)于sys這個(gè)標(biāo)準(zhǔn)庫(kù)的補(bǔ)充知識(shí):
?
?(5)
?
?(6)
這里定義了一個(gè)loadDataSet(fileName)的載入數(shù)據(jù)的函數(shù),參數(shù)是一個(gè)文件名, 下面一點(diǎn)點(diǎn)的分析這個(gè)函數(shù):
-首先:
定義了2個(gè)一維數(shù)組變量,dataMatrix就是用于存儲(chǔ)訓(xùn)練數(shù)據(jù)的東西,
labelMatrix就是用來(lái)存儲(chǔ)真實(shí)結(jié)果的數(shù)組
-然后:?
打開了一個(gè)文件,文件變量是fr
-之后:?
對(duì)這個(gè)文件的內(nèi)容逐行進(jìn)行處理,每一行的數(shù)據(jù)存儲(chǔ)到line變量中?
由于之后的regression函數(shù)代碼中調(diào)用的是這個(gè)文件中的數(shù)據(jù),這里提前查看一下是啥?
?
?就是4行數(shù)據(jù)吧,應(yīng)該就是之前的pm2.5相關(guān)的數(shù)據(jù)
-再者,這里就是,比如上面的那個(gè)data.txt中的數(shù)據(jù),一行有3個(gè)數(shù)據(jù)用"\t"制表符進(jìn)行分隔,結(jié)果就是這個(gè)3個(gè)數(shù)據(jù)作為curLine[]這個(gè)一維數(shù)組中的3個(gè)數(shù)據(jù),反正感覺python對(duì)于數(shù)據(jù)的處理很方便
?
?
?-之后,
?
?
?所以,每一行,前2個(gè)數(shù)據(jù)給到dataMat,dataMat中的元素都是2個(gè)元素的一維數(shù)組,最后一個(gè)元素放到labelMat中,labelMat中的元素都是1個(gè)元素的一維數(shù)組
?
最后,返回這2個(gè)數(shù)組即可
part2:定義一個(gè)函數(shù)
?
這個(gè)standRegres( , )函數(shù)有2個(gè)參數(shù),都是一維數(shù)組變量,之后轉(zhuǎn)換為numpy中的數(shù)據(jù)類型
?
?之后xTx就是矩陣xMat矩陣轉(zhuǎn)置乘xMat矩陣,但是,xMat本身是一個(gè)一維數(shù)組,我在想這個(gè)結(jié)果到底是一個(gè)N*N的矩陣呢?還是一個(gè)數(shù)值呢?先往下看看
?如果得到的矩陣的“行列式”的值是0,就直接返回了
?否則會(huì)計(jì)算一個(gè)ws,并且返回這個(gè)ws,我們來(lái)看看這個(gè)ws究竟是啥吧!
有點(diǎn)不理解這里的回歸系數(shù)是啥?先不管了?
part3:在最后的regression函數(shù)中:
(1)首先是調(diào)用loadDataSet函數(shù)獲取到data.txt中的數(shù)據(jù)并且規(guī)格化給到xMat和yMat,最后計(jì)算處ws這個(gè)回歸系數(shù)
?(2)感覺最后就是把這個(gè)回歸系數(shù)算出來(lái)了,就開始畫圖了,其實(shí)吧,我感覺整個(gè)的就干了一件事,就是這個(gè)“回歸系數(shù)”吧,就是那個(gè)直線的斜率,感覺上面就是高中的算了一個(gè)斜率,服了
?算了,還是解釋一下這里的畫圖過(guò)程吧:
?
?
也就是說(shuō),先畫出真實(shí)值的散點(diǎn)圖,然后,繪制一個(gè)由xMat和回歸系數(shù)ws得到的直線
?
?