2012-05-12 33 views
0

我想從昨晚開始這段代碼,但我無法理解此代碼在做什麼。其實我是matlab編程的初學者如何在matlab中使用此代碼用於人工智能

load('79.mat') 
trainingData=d79; 
colormap(gray); 
colormap(grey); 
x=reshape(d79(1234,:),28,28); 
y = x(:,28:-1:1); 
pcolor(y'); 

請幫助我理解這段代碼。 :/

回答

2

這很簡單。下面是一行一行地解釋:

  1. 加載從數據文件
  2. 會將加載數據到一個名爲trainingData
  3. 可變數據設置顏色表密謀
  4. 取的1234行加載的矩陣,將其轉換爲28×28的矩陣,並將其存儲在變量x中。例如,在較小的尺度上,[5 6 7 8]被轉換爲矩陣[5 7; 6 8]如果你想重塑那個矩陣爲2乘2。
  5. 顛倒x的列順序,並將其放入y。所以最後一列變成第一個,倒數第二個變成第二個,等等。
  6. 這是一個包含在y中的值的棋盤圖。

被修改以包括在線路5和6更詳細地:

的重塑行假定存在與數字1234的行,並有784(28 * 28),該行中的元素。它佔據了這一行,並且通過取前28個元素,使它們成爲新矩陣的第一列,然後取下28個元素,使它們成爲第二列,等等。倍。最終矩陣名稱爲x

對於y線,就像我說的,它只是反轉的x列,它把最後一列第一,第二,最後一列第二,依此類推,直到x的第一列是把作爲最後專欄y

+0

非常感謝你的兄弟。但詳細告訴我這兩行 x =重塑(d79(1234,:),28,28); y = x(:,28:-1:1); 如果你可以很容易 –

+0

編輯答案... – Ansari

+0

非常感謝你的兄弟爲你提供幫助 –