- Jumlah kolom A sama dengan jumlah baris kolom B
- Hasil perkalian adalah C yang memiliki dimensi baris A dan kolom B jika A adalah matriks kolom dan B adalah matriks baris.
- Hasil perkalian adalah skalar c jika B dikalikan A
Berikut ini adalah contoh dari perkalian matriks yang akan kita gunakan pada perkalian input dan weight.
/*
<MatrixMultiplication.java. The program multiplies 2 matrices.>
Copyright (C) <2016> <Joko Adianto>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ /**
*
* @author joko
*/
public class MatrixMultiplication {
/**
* @param p
* @param w
* @return double
*/
public static double getSum( double[] p, double[][]w ){
double o =0;
int k = p.length;
int j = 0;
for (j=0;j<k;j++){
o=o+p[j]*w[j][0];
}
return o;
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
int j,k;
double o=0;
double[] p = {1,2,3};
double[][] w = {{2}, {4}, {6}};
o=getSum(p,w);
System.out.println(o);
}
}
Pada contoh diatas p adalah array berdimesi 1 baris dan 3 kolom, sedangkan W adalah array berdimensi 3 baris dan 1 kolom. Jika dijalankan akan menampilkan sebuah skalar 28, jika ditambah dengan bias akan memberikan nilai 28.0 yang merupakan hasil perkalian matriks berbaris satu dan berkolom 3 dan matriks berbaris 3 tetapi berkolom 1.
Pada implementasi nantinya kita mungkin tidak menggunakan array-array seperti diatas, tetapi dapat menggunakan array 1 dimensi.Yang penting adalah pemahaman kita tentang penggunaan matriks untuk mengalikan sejumlah input dengan sejumlah weight, yang tentunya dimensinya harus cocok.
No comments:
Post a Comment