સરળ રેખીય રીગ્રેસન વિશ્લેષણ

સરળ રેખીય રીગ્રેશન વિશ્લેષણ

સરળ રેખીય રીગ્રેશન એ એક આંકડાકીય તકનીક છે જેનો ઉપયોગ બે માત્રાત્મક ચલો વચ્ચેના સંબંધનું વિશ્લેષણ કરવા માટે થાય છે. આપણે જે ચલનું અનુમાન લગાવવાનો પ્રયાસ કરી રહ્યા છીએ તેને આશ્રિત અથવા પ્રતિભાવ ચલ કહેવામાં આવે છે, જ્યારે આગાહી કરવા માટે ઉપયોગમાં લેવાતા ચલને સ્વતંત્ર અથવા આગાહી કરનાર ચલ કહેવામાં આવે છે. સરળ રેખીય રીગ્રેશનમાં, આપણે આ બે ચલો વચ્ચેના સંબંધનું વર્ણન કરતી શ્રેષ્ઠ સીધી રેખા શોધવાનો પ્રયાસ કરીએ છીએ.

સરળ રેખીય રીગ્રેસનના મૂળભૂત ખ્યાલો

સરળ રેખીય રીગ્રેશન એ ધારણા પર આધારિત છે કે આશ્રિત ચલ \(Y\) અને સ્વતંત્ર ચલ \(X\) વચ્ચે રેખીય સંબંધ છે. સરળ રેખીય રીગ્રેશન મોડેલનું સામાન્ય સ્વરૂપ છે:

\[ વાય = \બીટા_0 + \બીટા_1 એક્સ + \એપ્સીલોન \]

ક્યાં:
– \( Y \) એ આશ્રિત ચલ છે.
– \( X \) એ સ્વતંત્ર ચલ છે.
– \( \beta_0 \) એ ઇન્ટરસેપ્ટ છે, જે \(Y\) નું મૂલ્ય છે જ્યારે \(X = 0\).
– \( \beta_1 \) એ ઢાળ અથવા ઢાળ છે, જે \(X\) માં દરેક એકમ ફેરફાર માટે \(Y\) માં સરેરાશ ફેરફાર છે.
– \( \epsilon \) એ ભૂલ અથવા શેષ શબ્દ છે જે \(Y\) માં પરિવર્તનશીલતા દર્શાવે છે જેને \(X\) દ્વારા સમજાવી શકાતું નથી.

સરળ રેખીય રીગ્રેશનનો ધ્યેય \(\beta_0\) અને \(\beta_1\) પરિમાણોનો અંદાજ કાઢવાનો છે જેથી મોડેલનો ઉપયોગ \(X\) ના મૂલ્ય સાથે સંકળાયેલ \(Y\) ના મૂલ્યની આગાહી કરવા માટે થઈ શકે.

ઓછામાં ઓછા ચોરસ પદ્ધતિ

સરળ રેખીય રીગ્રેશન મોડેલને ફિટ કરવા માટે સૌથી વધુ ઉપયોગમાં લેવાતી પદ્ધતિઓમાંની એક છે Least Squares પદ્ધતિ. આ પદ્ધતિનો હેતુ વાસ્તવિક અવલોકનો અને મોડેલ દ્વારા અનુમાનિત મૂલ્યો વચ્ચેના ઊભી વિચલનોના વર્ગોના સરવાળાને ઘટાડવાનો છે. ધારો કે આપણી પાસે n અવલોકનો છે જેમાં \(i = 1, 2, …, n\ માટે જોડીઓ \((x_i, y_i)\) હોય છે. જે કાર્યને ઓછું કરવાનું છે તે છે:

\[ S(\beta_0, \beta_1) = \sum_{i=1}^{n} (y_i – (\beta_0 + \beta_1 x_i))^2 \]

વાંચવું  નૃવંશશાસ્ત્રમાં આંકડા

આ ફંક્શનને ન્યૂનતમ કરતા \(\beta_0\) અને \(\beta_1\) શોધવા માટે, આપણે દરેક પરિમાણના સંદર્ભમાં \(S(\beta_0, \beta_1)\) ના આંશિક ડેરિવેટિવ્ઝ લઈએ છીએ અને આ ડેરિવેટિવ્ઝને શૂન્ય પર સેટ કરીએ છીએ. ગાણિતિક ગણતરી નીચે મુજબ સરળ બનાવી શકાય છે:

\[ \beta_1 = \frac{\sum_{i=1}^{n} (x_i – \bar{x})(y_i – \bar{y})}{\sum_{i=1}^{n} (x_i – \bar{x})^2} \]

\[ \beta_0 = \bar{y} - \beta_1 \bar{x} \]

ક્યાં:
– \(\bar{x}\) એ \(X\) ની સરેરાશ છે
– \(\bar{y}\) એ \(Y\) ની સરેરાશ છે

\(\beta_0\) અને \(\beta_1\) પરિમાણો પ્રાપ્ત કર્યા પછી, \(X\) ના દરેક મૂલ્ય માટે \(Y\) ના મૂલ્યની આગાહી કરવા માટે એક સરળ રેખીય રીગ્રેશન મોડેલનો ઉપયોગ કરી શકાય છે.

સરળ રેખીય રીગ્રેસનમાં ધારણાઓ

માન્ય અને વિશ્વસનીય પરિણામો માટે, સરળ રેખીય રીગ્રેસન ઘણી બાબતો ધારે છે:
1. રેખીયતા: આશ્રિત ચલ અને સ્વતંત્ર ચલ વચ્ચેનો સંબંધ રેખીય હોવો જોઈએ.
2. સ્વતંત્રતા: અવલોકનો એકબીજાથી સ્વતંત્ર હોવા જોઈએ.
3. હોમોસેડેસ્ટીસીટી: શેષ પરિવર્તનશીલતા સ્વતંત્ર ચલના મૂલ્યોની શ્રેણીમાં સ્થિર હોવી જોઈએ.
4. શેષ સામાન્યતા: શેષ (ભૂલો) સામાન્ય વિતરણને અનુસરવી જોઈએ.

જો આ ધારણાઓ પૂર્ણ ન થાય, તો સરળ રેખીય રીગ્રેશન મોડેલના પરિણામો અવિશ્વસનીય રહેશે અને સચોટ આગાહીઓ કરી શકશે નહીં.

રીગ્રેશન મોડેલ આકારણી

એક સરળ રેખીય રીગ્રેસન મોડેલે કેટલી સારી રીતે આગાહી કરી છે તેનું મૂલ્યાંકન કરવાની એક રીત એ છે કે નિર્ધારણના ગુણાંક (\(R^2\)) નો ઉપયોગ કરવો. નિર્ધારણનો ગુણાંક આશ્રિત ચલમાં પરિવર્તનશીલતાનું પ્રમાણ દર્શાવે છે જેને સ્વતંત્ર ચલોમાં પરિવર્તનશીલતા દ્વારા સમજાવી શકાય છે.

\[ R^2 = \frac{\sum_{i=1}^{n} (\hat{y}_i – \bar{y})^2}{\sum_{i=1}^{n} (y_i – \bar{y})^2} \]

ક્યાં:
– \(\hat{y}_i\) એ \(Y\) નું અનુમાનિત મૂલ્ય છે.
– \(y_i\) એ \(Y\) નું વાસ્તવિક મૂલ્ય છે.
– \(\bar{y}\) એ \(Y\) ના મૂલ્યોનો સરેરાશ છે.

\(R^2\) મૂલ્ય 0 થી 1 સુધીનું હોય છે. 1 ની નજીક \(R^2\) મૂલ્ય સૂચવે છે કે મોડેલ આશ્રિત ચલમાં મોટાભાગની પરિવર્તનશીલતાને સમજાવી શકે છે.

વાંચવું  નવા નિશાળીયા માટે આંકડા

પ્રોગ્રામિંગ ભાષામાં અમલીકરણ

સરળ રેખીય રીગ્રેશન અમલમાં મૂકવા માટે, આપણે વિવિધ આંકડાકીય સોફ્ટવેર અથવા પ્રોગ્રામિંગ ભાષાઓનો ઉપયોગ કરી શકીએ છીએ. નીચે પાયથોનમાં `scikit-learn` લાઇબ્રેરીનો ઉપયોગ કરીને અમલીકરણનું ઉદાહરણ છે:

"`અજગર
એનપી તરીકે નમ્પી આયાત કરો
matplotlib.pyplot plt તરીકે આયાત કરો
sklearn.linear_model માંથી LinearRegression આયાત કરો
sklearn.metrics import mean_squared_error, r2_score માંથી

ડેટા
X = np.array([[1], [2], [3], [4], [5]]).astype(np.float64)
y = np.array([1.5, 3.6, 3.5, 2.9, 5.5]).astype(np.float64)

મોડલ
મોડલ = લીનિયર રીગ્રેશન ()
model.fit (X, y)

અનુમાન
y_pred = model.predict (X)

ગુણાંક
બીટા_0 = મોડેલ.ઇન્ટરસેપ્ટ_
બીટા_1 = મોડેલ.કોફ_[0]

પ્રિન્ટ(f'ઇન્ટરસેપ્ટ: {beta_0}')
પ્રિન્ટ(f'સ્લોપ: {beta_1}')
પ્રિન્ટ(f'મીન સ્ક્વેર્ડ ભૂલ: {મીન_સ્ક્વેર્ડ_એરર(y, y_pred)}')
print(f'નિર્ધારણનો ગુણાંક (R^2): {r2_score(y, y_pred)}')

ડેટા પ્લોટ અને રીગ્રેશન લાઇન
plt.scatter(X, y, રંગ = 'વાદળી')
plt.plot(X, y_pred, રંગ = 'લાલ')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()
"`

ઉપરોક્ત ઉદાહરણમાં, આપણે પહેલા જરૂરી લાઇબ્રેરીઓ આયાત કરીએ છીએ, ડેટા \(X\) અને \(Y\) વ્યાખ્યાયિત કરીએ છીએ, અને પછી ડેટામાં મોડેલ ફિટ કરવા માટે `scikit-learn` માંથી `LinearRegression` ઑબ્જેક્ટનો ઉપયોગ કરીએ છીએ. એકવાર મોડેલ ફિટ થઈ જાય, પછી આપણે આગાહીઓ કરીએ છીએ અને ગુણાંકની ગણતરી કરીએ છીએ, તેમજ સરેરાશ વર્ગ ભૂલ અને નિર્ધારણના ગુણાંકની ગણતરી કરીએ છીએ. અંતે, આપણે ડેટા અને રીગ્રેશન રેખાનું પ્લોટ બનાવીએ છીએ.

કેસિમ્પુલન

સરળ રેખીય રીગ્રેશન એ એક શક્તિશાળી આંકડાકીય વિશ્લેષણ સાધન છે જેનો ઉપયોગ બે જથ્થાત્મક ચલો વચ્ચેના સંબંધને સમજાવવા માટે થાય છે. રેખીયતા, સ્વતંત્રતા, સમલૈંગિકતા અને સામાન્યતા વિશે કેટલીક મૂળભૂત ધારણાઓ સાથે, આપણે સ્વતંત્ર ચલોના મૂલ્યોના આધારે આશ્રિત ચલના મૂલ્યની આગાહી કરી શકીએ છીએ. લીસ્ટ સ્ક્વેર્સ પદ્ધતિ રીગ્રેશન રેખાને ફિટ કરવા અને શ્રેષ્ઠ પરિમાણો નક્કી કરવા માટે અસરકારક રીત પ્રદાન કરે છે. નિર્ધારણ ગુણાંક (R2) દ્વારા મોડેલ મૂલ્યાંકન આપણું મોડેલ કેટલું સારું પ્રદર્શન કરે છે તેની સમજ આપે છે.

જોકે સરળ રેખીય રીગ્રેશનમાં મર્યાદાઓ છે, જેમ કે ફક્ત બે ચલોને હેન્ડલ કરવામાં સક્ષમ હોવું અને ધારણાઓ જે પૂર્ણ કરવી આવશ્યક છે, આ તકનીક આંકડા અને ડેટા વિશ્લેષણમાં એક મહત્વપૂર્ણ પાયો રહે છે, અને વધુ જટિલ પદ્ધતિઓ તરફ આગળ વધતા પહેલા ચલો વચ્ચેના સંબંધને સમજવામાં ઘણીવાર પ્રથમ પગલા તરીકે ઉપયોગમાં લેવાય છે.

પ્રતિક્રિયા આપો