|
1-Amaliy mashg`ulot
|
Sana | 28.03.2024 | Hajmi | 0.49 Mb. | | #179871 |
Bog'liq 1-amaliy Payva.nd jarayinlari nazariya
MUHAMMAD AL-XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALAR UNIVERSITETI
KOMPYUTER INJINIRINGI FAKULTETI
213-20_guruh talabasi Sohibov Sardorning
Mashinali o'qitishga kirish (IML002-2) fanidan
1-Amaliy mashg`ulot.
Chiziqli regressiya tushunchasi. y=wx funksiyadagi Gradient (og`irlik) qiymatini topish. Gradient pastlash grafigi va Loss grafigini xosil qilish.
C++ da tuzilgan dastur:
1)
#include
#include
using namespace std;
int main(){
int n;
cout<<"x va y ga nechta qiymat kiritmoqchisiz: ";
cin>>n;
double x[n], y[n], r;
for(int i=0; i cout<<"x"< cin>>x[i];
}
for(int i=0; i cout<<"y"< cin>>y[i];
}
cout<<"w ga nechta qiymat kiritmoqchisiz :";
int m,l;
cin>>m;
double w[m];
for(int i=0; i cout<<"w"< cin>>w[i];
}
for(int j=0; j double s=0;
for(int i=0; i r=pow((w[j]*x[i]-y[i]),2);
if(r==0) l=w[j];
s+=r;
}
cout< }
cout< for(int i=0; i cout< }
double k;
cout<<"qiymatni kiriting:";
cin>>k;
cout<<"y="< return 0;
}
2)
#include
#include
using namespace std;
int main(){
int n, m;
cout<<"x va y ga nechta qiymat kiritmoqchisiz: ";
cin>>n;
double x[n], y[n], r=0, w0, a;
for(int i=0; i cout<<"x"< cin>>x[i];
}
for(int i=0; i cout<<"y"< cin>>y[i];
}
cout<<"w0=";
cin>>w0;
cout<<"alfa=";
cin>>a;
cout<<"kombinatsiyalar sonini kiriting=";
cin>>m;
double w[m];
w[0]=w0;
for(int j=1; j r=0;
for(int i=0; i w[j]=w[j-1]-2*a*x[i]*(w[j-1]*x[i]-y[i])/n;
r+=pow((w[j]*x[i]-y[i]),2)/n;
}
if(r<0.01) cout< }
cout< for(int j=1; j r=0;
for(int i=0; i w[j]=w[j-1]-2*a*x[i]*(w[j-1]*x[i]-y[i])/n;
r+=pow((w[j]*x[i]-y[i]),2)/n;
}
if(r<0.01) cout< }
return 0;
}
Ikkinchi darajali polynomial regressiya tushunchasi. y=w1x 2+w2x noma’lum koeffitsientlarni toppish. Loss grafigini chiqarish.
C++ da tuzilgan dastur:
#include
#include
using namespace std;
int main(){
int n, m;
cout<<"x va y ga nechta qiymat kiritmoqchisiz: ";
cin>>n;
double x[n], y[n], r, w01, w02, a;
for(int i=0; i cout<<"x"< cin>>x[i];
}
for(int i=0; i cout<<"y"< cin>>y[i];
}
cout<<"w01=";
cin>>w01;
cout<<"w02=";
cin>>w02;
cout<<"alfa=";
cin>>a;
cout<<"kombinatsiyalar sonini kiriting=";
cin>>m;
double w1[m], w2[m];
w1[0]=w01;
w2[0]=w02;
for(int i=1; i r=0;
for(int j=0; j w1[i]=w1[i-1]-2*a*x[j]*x[j]*(w1[i-1]*x[j]*x[j]+w2[i-1]*x[j]-y[j])/2;
w2[i]=w2[i-1]-2*a*x[j]*(w1[i-1]*x[j]*x[j]+w2[i-1]*x[j]-y[j])/2;
r+=pow((w1[i-1]*x[j]*x[j]+w2[i-1]*x[j]-y[j]),2)/n;
}
if(r<1) cout< }
return 0;
}
|
| |