Psy*_*ped 0 c# artificial-intelligence class
我不确定我是否正确地问这个问题,所以请耐心等待.我目前正在尝试编程神经网络.下面是一些示例代码.
using System;
namespace Network
{
class BaseNeuron
{
public static void Main (string[] args)
{
public int Weight;
public void sendPulse()
{
}
public void receivePulse()
{
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
所以基本上,我希望能够创建BaseNeuron类的多个实例,每个"神经元"绑定到其他"神经元"以构成神经元网络.有没有办法做到这一点,而不必为每个神经元重复这段代码?
首先,您提供的代码中存在一些错误:
class BaseNeuron
{
public static void Main (string[] args)
{
public int Weight;
public void sendPulse()
{
}
public void receivePulse()
{
}
}
}
Run Code Online (Sandbox Code Playgroud)
它应该是:
class BaseNeuron
{
//class field
public int Weight;
//class method
public void SendPulse(/*Parameters ...*/)
{
//Do stuff
}
//class method
public void ReceivePulse(/*Parameters ...*/)
{
//Do stuff
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,Main它已经消失了.类通常没有Main方法,通常只是应用程序的入口点(程序运行时要执行的第一个函数).
基本上,每个类都是对象的模板,这意味着您可以使用关键字创建类的新实例new,如下所示:
//creating two seperate neurons
neuron1 = new BaseNeuron();
neuron2 = new BaseNeuron();
//Notice that each SendPulse is called on separate objects!
neuron1.SendPulse();
neuron2.SendPulse();
Run Code Online (Sandbox Code Playgroud)
我建议你阅读一些关于课程(可能在这里)的内容,以便更好地理解这是如何工作的.
好吧,现在我们已经找到了我们班级.你说我们想要创建一个由几个神经元组成的网络,这些神经元是上面类的实例.那么,你可能想要做的是:
class Program
{
public void Main(string[] args)
{
//the size of the network
int size = 5;
//create array of Neurons
BaseNeuron[] network = new BaseNeuron[size];
for(int i = 0; i < network.length; i++)
{
//actually create a new nueron (instantiate them)
network[i] = new BaseNeuron();
//link up neurons together, etc
}
}
}
Run Code Online (Sandbox Code Playgroud)
当然,实现取决于类的内部实现BaseNeuron.您还可能需要创建一个NeuralNetwork类来包含上述代码和相关函数.