深度學習之Octave使用三

2021-08-20 14:58:32 字數 2107 閱讀 7228

資料的運算

矩陣相乘a*b

矩陣點乘c = a.*b(a的每個元素與b中對應的元素相乘,cij = aij*bij)

矩陣a.^2,a中每個元素平方

矩陣1./a,將a中每個元素取倒數

矩陣log(a),將a中每個元素進行求對數運算

矩陣exp(a),將a中每個元素,以e為底,以這些元素為冪的運算

矩陣abs(a),將a中每個元素取絕對值

v = [1;2;3],則v+1的結果和v+ones(length(v),1)的結果是一樣的

a'表示a的轉置

max(a)取向量中最大的元素

>> a = [1 2 3 8 7 6];

>> [val,ind] = max(a)

val = 8

ind = 4

如果a是矩陣,max(a)就是對每一列求最大值

>> a = [1 2;6 3;4 8]

a = 1 2

6 3

4 8

>> [val,ind] = max(a)

val =

6 8

ind =

2 3

對a中每個元素與4比較,1表示真,0表示假

>> a = [1 2 3 8 7 6];

>> a > 4

ans =

0 0 0 1 1 1

找出向量中大於4的元素的序列

>> find(a > 4)

ans =

4 5 6

魔方陣,所有行,列,對角線加起來都相等的矩陣

>> a = magic(3)

a = 8 1 6

3 5 7

4 9 2

r是行號,c是列號

>> [r,c] = find(a>7)

r = 1

3c = 1

2

sum(a) 把 向量a 中所有元素加起來,sum(a,1)將矩陣每列的元素相加,sum(a,2)將矩陣每行的元素相加,sum(sum(a.*eye(n)))將矩陣對角線的元素相加,副對角線元素相加我們先通過fliplr或flipud對單位對角矩陣進行翻轉再計算

prod(a) 把 向量a 中所有元素相乘

floor(a) 是向下取整

ceil(a) 表示向上取整

對a和b逐個元素比較取最大值

>> a = rand(3)

a = 0.36764 0.27279 0.64418

0.53047 0.97042 0.69824

0.31572 0.19123 0.38600

>> b = rand(3)

b = 0.421460 0.690191 0.769081

0.020380 0.662891 0.671919

0.591809 0.902464 0.751770

>> max(a,b)

ans =

0.42146 0.69019 0.76908

0.53047 0.97042 0.69824

0.59181 0.90246 0.75177

max(a,,1) 這樣做會得到 每一列的最大值 這裡的1表示 取a矩陣第乙個維度的最大值

max(a,,2) 這將得到每一行的最大值

>> max(a,,1)

ans =

0.53047 0.97042 0.69824

>> max(a,,2)

ans =

0.64418

0.97042

0.38600

fliplr 矩陣的左右翻轉

flipud 矩陣的上下翻轉

pinv,矩陣的偽逆,在矩陣不可逆的時候用它

inv,矩陣的逆,在矩陣可逆時用它比用pinv快

參考資料

深度學習(三)

1 在調整超引數時,其中最終要的是 其次是動量 隱藏層單元以及mini batch,之後還可以調整層數跟學習率衰減 2 在深度學習中,隨機選擇引數的值可能更好一些,因為事先並不知道哪個引數相對比較重要,另乙個比較重要的原則是從粗略到精細,到大體確定了超引數的範圍,再在這個範圍內進行隨機取值,獲得更加...

深度學習筆記(三 之反向傳播

老規矩 妹妹鎮樓 得到損失函式以後,我們要根據損失函式來優化我們的模型,即優化w引數,更新w引數,使得損失值越低越好。這是反向傳播的過程。那麼,我們如何來優化w引數呢?這裡,我們就要計算每個w引數對於最終的損失值的重要程度。若某個w引數越大,損失值也越大,則說明應該將w引數減小。若某個w引數越大,損...

深度學習(三) PyCharm安裝和使用

最常用的配置項莫過於project interpreter了。通過該模組可以配置使用哪個python庫,也可以操作python庫中的所有元件,可以說非常關鍵。下圖中為python環境配置,之前介紹過使用的是anaconda,所以在這裡可以選擇使用了哪個conda映象。在python console視...