C#内卷积运算
b为卷积核
列举这种办法虽然简陋原始了点,但是很好用啊hhhhhh
数据是深度学习:卷积神经网络从入门到精通这本书31-32页的例题。
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
double[][] a = new double[3][];
a[0] = new double[3] { 1,2,3};
a[1]= new double[3] { 4,5,6};
a[2]= new double[3] { 7,8,9};
double[][] b = new double[2][];
b[0]= new double[2] { 2, 3 };
b[1]= new double[2] { 4, 5 };
double[][] c = new double[2][];
for(int x=0;x< 2;x++)
{
c[x] = new double[2];
}
for (int i=0;i< 2;i++)
{
for(int j=0;j< 2;j++)
{
c[i][j] = b[0][0] * a[i + 2-1 - 0][j + 2-1 - 0]+
b[0][1] * a[i+ 2-1-0][j+2-1-1]+
b[1][0] * a[i +2-1 - 1][j + 2-1 - 0]+
b[1][1] * a[i + 2-1 - 1][j + 2-1 - 1];
}
}
Console.WriteLine(c[0][0]);
Console.WriteLine(c[0][1]);
Console.WriteLine(c[1][0]);
Console.WriteLine(c[1][1]);
}
}
}