資料的運算
矩陣相乘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是矩陣,max(a)就是對每一列求最大值>> a = [1 2 3 8 7 6];
>> [val,ind] = max(a)
val = 8
ind = 4
對a中每個元素與4比較,1表示真,0表示假>> a = [1 2;6 3;4 8]
a = 1 2
6 3
4 8
>> [val,ind] = max(a)
val =
6 8
ind =
2 3
找出向量中大於4的元素的序列>> a = [1 2 3 8 7 6];
>> a > 4
ans =
0 0 0 1 1 1
魔方陣,所有行,列,對角線加起來都相等的矩陣>> find(a > 4)
ans =
4 5 6
r是行號,c是列號>> a = magic(3)
a = 8 1 6
3 5 7
4 9 2
sum(a) 把 向量a 中所有元素加起來,sum(a,1)將矩陣每列的元素相加,sum(a,2)將矩陣每行的元素相加,sum(sum(a.*eye(n)))將矩陣對角線的元素相加,副對角線元素相加我們先通過fliplr或flipud對單位對角矩陣進行翻轉再計算>> [r,c] = find(a>7)
r = 1
3c = 1
2
prod(a) 把 向量a 中所有元素相乘
floor(a) 是向下取整
ceil(a) 表示向上取整
對a和b逐個元素比較取最大值
max(a,,1) 這樣做會得到 每一列的最大值 這裡的1表示 取a矩陣第乙個維度的最大值>> 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,,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視...