簡體   English   中英

Octave / MatLab中矩陣的梯度函數

[英]Gradient function on a matrix in Octave/MatLab

我正在嘗試在Octave / Matlab中實現梯度下降算法。 我正好有一個名為errors 201x201矩陣,我假設它對應於2個輸入變量函數f(x, y) 當與imagesc顯示時,矩陣給出了一個很好的漸變圖像,但是當我計算[dx, dy] = gradient(errors)時,我感到困惑。 我獲得dxdy均為二維矩陣(201x201),而不是簡單的矢量。 我假設,因為我們計算的是關於x(分別為y),y(分別為x)的偏導數,所以它將從運算結果中消失。 盡管我覺得我對函數梯度的工作原理有足夠的了解,但是我很確定我會丟失一些東西。 預先感謝您的答復。

在此處輸入圖片說明

漸變存在於一個點。 您的gradient表達式正在評估所有201x201點的(數字)漸變。

因此,例如,在點(3,4)處的errors梯度為向量[dx(3,4), dy(3,4)]

此示例可能會有所幫助: https : //www.mathworks.com/help/matlab/ref/gradient.html#bvhqkfr請注意, gradient返回的信息如何足以繪制gradient的整個矢量場。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM