Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> प्रोग्रामिंग

रेखीय प्रतिगमन


डेटा बिंदुओं के दिए गए सेट से, रैखिक प्रतिगमन एक सीधी रेखा का समीकरण ढूंढता है। दिए गए बिंदु सीधी रेखा का अनुसरण करेंगे। इस सूत्र का उपयोग करके, हम अनुमान लगा सकते हैं कि किसी अन्य विशिष्ट बिंदु का मान क्या होगा, जो वर्तमान में सेट में मौजूद नहीं है।

कुछ डेटा बिंदुओं का उपयोग करके रैखिक प्रतिगमन समस्याओं को हल करने के लिए, हमें इन सूत्रों का पालन करना होगा:

रेखीय प्रतिगमन

यहाँ m और c क्रमशः ढाल और y-अवरोधन हैं। इन व्यंजकों का उपयोग करके, हम इस रूप में सीधी रेखा का समीकरण प्राप्त कर सकते हैं:=𝑚𝑥 + .

इनपुट और आउटपुट

Input:
The (x, y) coordinates of some points. {(1,3), (2,4), (3,5), (4,6), (5,8)}
Output:
The slope: 1.2 The Intercept: 1.6
The equation: y = 1.2x + 1.6

एल्गोरिदम

linReg(coord)

इनपुट: निर्देशांक बिंदुओं का दिया गया सेट।

आउटपुट: ढलान m और y-अवरोध c.

Begin
   for i := 1 to n, do
      sumX := sumX + coord[i,0]
      sumY := sumY + coord[i,1]
      sumXsq := sumXsq + (coord[i,0]*coord[i,0])
      sumXY := sumXY + (coord[i,0] * coord[i,1])
   done

   m := (n * sumXY – (sumX*sumY)) / (n * sumXsq – (sumX * sumX))
   c := (sumY / n) – (m * sumX)/n
End

उदाहरण

#include<iostream>
#include<cmath>
#define N 5
using namespace std;

void linReg(int coord[N][2], float &m, float &c) {
   float sx2 = 0, sx = 0, sxy = 0, sy = 0;
   for(int i = 0; i<N; i++) {
      sx += coord[i][0];    //sum of x
      sy += coord[i][1];   //sum of y

      sx2 += coord[i][0]*coord[i][0];      //sum of x^2
      sxy += coord[i][0]*coord[i][1];     //sum of x*y
   }

   // finding slope and intercept
   m = (N*sxy-(sx*sy))/(N*sx2-(sx*sx));
   c = (sy/N)-(m*sx)/N;
}

main() {
   // this 2d array holds coordinate points
   int point[N][2] = {{1,3},{2,4},{3,5},{4,6},{5,8}};
   float m, c;
   linReg(point, m, c);
   cout << "The slope: " << m << " The Intercept: " << c << endl;
   cout << "The equation: " << "y = "<< m <<"x + "<< c;
}

आउटपुट

The slope: 1.2 The Intercept: 1.6
The equation: y = 1.2x + 1.6

  1. पायथन में सहसंबंध और प्रतिगमन

    सहसंबंध कुछ सांख्यिकीय संबंधों को संदर्भित करता है जिसमें दो डेटा सेट के बीच निर्भरता शामिल होती है। जबकि रैखिक प्रतिगमन एक आश्रित चर और एक या अधिक स्वतंत्र चर के बीच संबंध स्थापित करने के लिए एक रैखिक दृष्टिकोण है। एक एकल स्वतंत्र चर को रैखिक प्रतिगमन कहा जाता है जबकि कई स्वतंत्र चर को एकाधिक प्रति

  1. PyTorch का उपयोग करके रैखिक प्रतिगमन?

    रैखिक प्रतिगमन के बारे में सरल रैखिक प्रतिगमन मूल बातें हमें दो सतत चर के बीच संबंध को समझने की अनुमति देता है। उदाहरण - x =स्वतंत्र चर वजन y =आश्रित चर ऊंचाई वाई =αx + β आइए एक प्रोग्राम के माध्यम से सरल रेखीय प्रतिगमन को समझते हैं - #सिंपल लीनियर रिग्रेशनआयात numpy as

  1. रूबी में रेखीय प्रतिगमन के साथ भविष्य की भविष्यवाणी करना

    कई विकल्प जो हम बनाते हैं वे संख्यात्मक संबंधों के इर्द-गिर्द घूमते हैं। हम कुछ खाद्य पदार्थ खाते हैं क्योंकि विज्ञान कहता है कि वे हमारे कोलेस्ट्रॉल को कम करते हैं हम अपनी शिक्षा को आगे बढ़ाते हैं क्योंकि हमारे वेतन में वृद्धि होने की संभावना है हम पड़ोस में एक घर खरीदते हैं जो हमें लगता है कि मू