Professional Documents
Culture Documents
Sciences
BURAK ECE
PROJECT ADVISOR
Asst.Prof.Dr. Hasan Hseyin elik
ok Katmanl A Modelinin Yaps
Ara Katman: Ara katmanlar girdi katmanndan gelen bilgileri ileyerek bir sonraki
katmana gnderir. ok katmanl bir ada birden fazla ara katman ve her katmanda
birden fazla proses eleman bulunabilir.
Bir kt katmannda birden fazla proses eleman olabilir. Her proses eleman bir
nceki katmanda bulunan btn proses elemanlarna baldr. Her proses
elemannn bir kts vardr.
An renebilmesi iin eitim seti ad verilen ve rneklerden oluan bir sete ihtiya
vardr. Bu set iinde her rnek iin an hem girdiler hem de o girdiler iin an
retmesi gereken ktlar belirlenmitir.
Ara katmandaki her proses eleman girdi katmanndaki btn proses elemanlarndan
gelen bilgileri balant arlklarnn (A1,A2,....) etkisi ile alr. nce ara katmandaki
proses elemanlarna gelen net girdi
u forml kullanlarak hesaplanr:
Burada k. girdi elemann j. ara katman elemanna balayan balantnn arlk
deerini gstermektedir. j. ara katman elemannn kts ise bu net girdinin aktivasyon
fonksiyonundan geirilmesiyle hesaplanr.
Toplam hatay en azlamak iin bu hatann kendisine neden olan proses elemanlarna
datlmas gerekmektedir.
eklinde hesaplanacaktr.
Girdi katman ile ara katman arasndaki arlklarn deiimi Ai ile gsterilirse deiim
miktar:
Bylece an arlklarnn hepsi deitirilmi olacaktr. Bir iterasyon hem ileri hem de
geriye doru hesaplamalar yaplarak tamamlanm olacaktr.
TextView tv,tv2;
EditText et,et2,et3;
Button startbutton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView) findViewById(R.id.text1);
tv2 = (TextView) findViewById(R.id.text2);
et = (EditText) findViewById(R.id.editText2);
et2 = (EditText) findViewById(R.id.editText3);
et3 = (EditText) findViewById(R.id.editText4);
startbutton = (Button) findViewById(R.id.startbutton);
startbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
stringBuilder.append(status);
double net1,net2;
double dAa11,dAa12,dBc11;
double dAi11,dAi12,dAi21,dAi22;
double dBa11,dBa12;
double E,Error;
double[] output;
double[] err;
int i;
dAi11 = 0;
dAi12 = 0;
dAi21 = 0;
dAi22 = 0;
Aa11 = 0.164732;
Aa12 = 0.752621;
dAa11 = 0;
dAa12 = 0;
Ba11 = 0.341332;
Ba12 = -0.115223;
Bc11 = -0.993423;
dBa11 = 0;
dBa12 = 0;
dBc11 = 0;
treshold = 1;
E = t - y;
output[j] = y;
err[j] = E;
j++;
double sigma1,sigma1a,sigma2a;
sigma1 = y*(1-y)*E;
dAa11 = lamda*sigma1*c1+alpha*dAa11;
dAa12 = lamda*sigma1*c2+alpha*dAa12;
dBc11 = lamda*sigma1+alpha*dBc11;
sigma1a = c1*(1-c1)*sigma1*Aa11;
sigma2a = c2*(1-c2)*sigma1*Aa12;
dAi11 = lamda*sigma1a*ex.x1+alpha*dAi11;
dAi12 = lamda*sigma1a*ex.x1+alpha*dAi12;
dAi21 = lamda*sigma1a*ex.x2+alpha*dAi21;
dAi22 = lamda*sigma1a*ex.x2+alpha*dAi22;
dBa11 = lamda*treshold*sigma1a;
dBa12 = lamda*treshold*sigma2a;
if(Math.abs(E) <Error){
break;
}
stringBuilder.append("\n");
}
String finalString = stringBuilder.toString();
return finalString;
}
class Example{
int x1, x2;
double o;
Example(int x1, int x2, double o){
this.x1 = x1;
this.x2 = x2;
this.o = o;
}
}