Dalam tutorial ini, anda akan belajar
- Regresi Linear sederhana
- Regresi Linear berganda
- Pemboleh ubah berterusan
- Regresi faktor
- Regresi bertahap
- Pembelajaran mesin
- Pembelajaran yang diselia
- Pembelajaran tanpa pengawasan
Regresi Linear sederhana
Regresi linier menjawab soalan mudah: Bolehkah anda mengukur hubungan yang tepat antara satu pemboleh ubah sasaran dan sekumpulan peramal?
Model probabilistik yang paling mudah adalah model garis lurus:
di mana
- y = Pemboleh ubah bersandar
- x = Pemboleh ubah bebas
= komponen ralat rawak
= memintas
= Pekali x
Pertimbangkan plot berikut:
Persamaannya ialah pintasan. Sekiranya x sama dengan 0, y akan sama dengan pintasan, 4.77. adalah cerun garisan. Ia memberitahu di mana bahagian y berubah apabila x berbeza.
Untuk mengira nilai optimum , anda menggunakan kaedah yang disebut Ordinary Least Squares (OLS) . Kaedah ini cuba mencari parameter yang meminimumkan jumlah kesalahan kuadrat, iaitu jarak menegak antara nilai y yang diramalkan dan nilai y yang sebenarnya. Perbezaannya dikenali sebagai istilah kesalahan .
Sebelum anda menganggar model, anda dapat menentukan sama ada hubungan linear antara y dan x masuk akal dengan membuat plot penyebaran.
Plot bersepah
Kami akan menggunakan set data yang sangat mudah untuk menjelaskan konsep regresi linear sederhana. Kami akan mengimport Purata Tinggi dan Berat untuk Wanita Amerika. Set data mengandungi 15 pemerhatian. Anda ingin mengukur sama ada Tinggi berkorelasi positif dengan berat.
library(ggplot2)path <- 'https://raw.githubusercontent.com/guru99-edu/R-Programming/master/women.csv'df <-read.csv(path)ggplot(df,aes(x=height, y = weight))+geom_point()
Pengeluaran:
Plot penyebaran menunjukkan kecenderungan umum untuk y meningkat apabila x meningkat. Pada langkah seterusnya, anda akan mengukur berapa banyak kenaikan untuk setiap tambahan.
Anggaran Kuadrat Kurang
Dalam regresi OLS yang sederhana, pengiraan mudah. Tujuannya adalah untuk tidak menunjukkan penurunan dalam tutorial ini. Anda hanya akan menulis formula.
Anda mahu menganggarkan:
Matlamat regresi OLS adalah untuk meminimumkan persamaan berikut:
di mana
merupakan nilai ramalan.
Penyelesaiannya
Perhatikan bahawa bermaksud nilai purata x
Penyelesaiannya
Di R, anda boleh menggunakan fungsi cov () dan var () untuk menganggar
beta <- cov(df$height, df$weight) / var (df$height)beta
Pengeluaran:
##[1] 3.45
alpha <- mean(df$weight) - beta * mean(df$height)alpha
Pengeluaran:
## [1] -87.51667
Pekali beta menunjukkan bahawa untuk setiap ketinggian tambahan, berat badan meningkat sebanyak 3.45.
Mengira persamaan linear sederhana secara manual tidak sesuai. R menyediakan fungsi yang sesuai untuk menganggarkan parameter ini. Anda akan melihat fungsi ini sebentar lagi. Sebelum itu, kami akan memperkenalkan cara mengira model regresi linear sederhana dengan tangan. Dalam perjalanan saintis data anda, anda tidak akan mengira model linear sederhana. Dalam kebanyakan keadaan, tugas regresi dilakukan pada banyak penganggar.
Regresi Linear berganda
Aplikasi analisis regresi yang lebih praktikal menggunakan model yang lebih kompleks daripada model garis lurus sederhana. Model probabilistik yang merangkumi lebih daripada satu pemboleh ubah bebas dipanggil model regresi berganda . Bentuk umum model ini adalah:
Dalam notasi matriks, anda boleh menulis semula model:
Pemboleh ubah bersandar y kini merupakan fungsi pemboleh ubah bebas k. Nilai pekali .
Kami secara ringkas memperkenalkan andaian yang kami buat mengenai kesalahan rawak OLS:
- Bererti sama dengan 0
- Varians sama dengan
- Taburan normal
- Kesalahan rawak bebas (dalam erti kata probabilistik)
Anda perlu menyelesaikannya , vektor pekali regresi yang meminimumkan jumlah ralat kuasa dua antara nilai y yang diramalkan dan sebenar.
Penyelesaian berbentuk tertutup adalah:
dengan:
- menunjukkan peralihan matriks X
menunjukkan matriks terbalik
Kami menggunakan set data mtcars. Anda sudah biasa dengan set data. Matlamat kami adalah untuk meramalkan batu per galon untuk sekumpulan ciri.
Pemboleh ubah berterusan
Buat masa ini, anda hanya akan menggunakan pemboleh ubah berterusan dan mengetepikan ciri kategori. Pemboleh ubah am adalah pemboleh ubah binari yang mengambil nilai 1 jika transmisi manual dan 0 untuk kereta automatik; vs juga pemboleh ubah binari.
library(dplyr)df <- mtcars % > %select(-c(am, vs, cyl, gear, carb))glimpse(df)
Pengeluaran:
## Observations: 32## Variables: 6## $ mpg21.0, 21.0, 22.8, 21.4, 18.7, 18.1, 14.3, 24.4, 22.8, 19… .## $ disp 160.0, 160.0, 108.0, 258.0, 360.0, 225.0, 360.0, 146.7, 1… ## $ hp 110, 110, 93, 110, 175, 105, 245, 62, 95, 123, 123, 180,… ## $ drat 3.90, 3.90, 3.85, 3.08, 3.15, 2.76, 3.21, 3.69, 3.92, 3.9… ## $ wt 2.620, 2.875, 2.320, 3.215, 3.440, 3.460, 3.570, 3.190, 3… ## $ qsec 16.46, 17.02, 18.61, 19.44, 17.02, 20.22, 15.84, 20.00, 2…
Anda boleh menggunakan fungsi lm () untuk menghitung parameter. Sintaks asas fungsi ini adalah:
lm(formula, data, subset)Arguments:-formula: The equation you want to estimate-data: The dataset used-subset: Estimate the model on a subset of the dataset
Ingatlah persamaan dengan bentuk berikut
di R
- Simbol = digantikan dengan ~
- Setiap x digantikan dengan nama pemboleh ubah
- Sekiranya anda mahu menjatuhkan pemalar, tambahkan -1 pada akhir formula
Contoh:
Anda ingin menganggarkan berat badan individu berdasarkan tinggi dan pendapatan mereka. Persamaannya adalah
Persamaan dalam R ditulis seperti berikut:
y ~ X1 + X2 +… + Xn # Dengan pintasan
Jadi untuk contoh kami:
- Timbang ~ tinggi + pendapatan
Objektif anda adalah untuk mengira batu per galon berdasarkan satu set pemboleh ubah. Persamaan untuk dianggarkan adalah:
Anda akan mengira regresi linier pertama anda dan menyimpan hasilnya dalam objek muat.
model <- mpg~.disp + hp + drat + wtfit <- lm(model, df)fit
Penjelasan Kod
- model <- mpg ~ . disp + hp + drat + wt: Simpan model untuk dianggarkan
- lm (model, df): Anggarkan model dengan kerangka data df
#### Call:## lm(formula = model, data = df)#### Coefficients:## (Intercept) disp hp drat wt## 16.53357 0.00872 -0.02060 2.01577 -4.38546## qsec## 0.64015
Hasilnya tidak memberikan maklumat yang mencukupi mengenai kualiti kesesuaian. Anda boleh mengakses lebih banyak butiran seperti kepentingan pekali, tahap kebebasan dan bentuk baki dengan fungsi ringkasan ().
summary(fit)
Pengeluaran:
## return the p-value and coefficient#### Call:## lm(formula = model, data = df)#### Residuals:## Min 1Q Median 3Q Max## -3.5404 -1.6701 -0.4264 1.1320 5.4996#### Coefficients:## Estimate Std. Error t value Pr(>|t|)## (Intercept) 16.53357 10.96423 1.508 0.14362## disp 0.00872 0.01119 0.779 0.44281## hp -0.02060 0.01528 -1.348 0.18936## drat 2.01578 1.30946 1.539 0.13579## wt -4.38546 1.24343 -3.527 0.00158 **## qsec 0.64015 0.45934 1.394 0.17523## ---## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1#### Residual standard error: 2.558 on 26 degrees of freedom## Multiple R-squared: 0.8489, Adjusted R-squared: 0.8199## F-statistic: 29.22 on 5 and 26 DF, p-value: 6.892e-10
Kesimpulan dari output jadual di atas
- Jadual di atas membuktikan bahawa terdapat hubungan negatif yang kuat antara wt dan jarak tempuh dan hubungan positif dengan drat.
- Hanya pembolehubah wt yang mempunyai kesan statistik pada mpg. Ingat, untuk menguji hipotesis dalam statistik, kami menggunakan:
- H0: Tiada kesan statistik
- H3: Ramalan mempunyai kesan yang bermakna pada y
- Sekiranya nilai p lebih rendah daripada 0.05, ini menunjukkan pemboleh ubahnya signifikan secara statistik
- R-kuasa dua disesuaikan: Varians dijelaskan oleh model. Dalam model anda, model tersebut menjelaskan 82 peratus varians y. R kuasa dua selalu antara 0 dan 1. Semakin tinggi semakin baik
Anda boleh menjalankan ujian ANOVA untuk menganggar kesan setiap ciri pada varians dengan fungsi anova ().
anova(fit)
Pengeluaran:
## Analysis of Variance Table#### Response: mpg## Df Sum Sq Mean Sq F value Pr(>F)## disp 1 808.89 808.89 123.6185 2.23e-11 ***## hp 1 33.67 33.67 5.1449 0.031854 *## drat 1 30.15 30.15 4.6073 0.041340 *## wt 1 70.51 70.51 10.7754 0.002933 **## qsec 1 12.71 12.71 1.9422 0.175233## Residuals 26 170.13 6.54## ---## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Cara yang lebih konvensional untuk menganggarkan prestasi model adalah dengan menunjukkan baki dengan ukuran yang berbeza.
Anda boleh menggunakan fungsi plot () untuk menunjukkan empat graf:
- Sisa vs Nilai terpasang
- Plot QQ normal: Kuartil Teoritis vs residu Standard
- Lokasi Skala: Nilai yang sesuai vs Akar kuadrat dari baki standard
- Residual vs Leverage: Leverage vs residual standard
Anda menambah kod par (mfrow = c (2,2)) sebelum plot (muat). Sekiranya anda tidak menambahkan baris kod ini, R meminta anda menekan perintah enter untuk memaparkan grafik seterusnya.
par(mfrow=(2,2))
Penjelasan Kod
- (mfrow = c (2,2)): kembalikan tetingkap dengan empat graf bersebelahan.
- 2 yang pertama menambahkan bilangan baris
- Yang kedua menambah bilangan lajur.
- Sekiranya anda menulis (mfrow = c (3,2)): anda akan membuat tetingkap 3 baris 2 lajur
plot(fit)
Pengeluaran:
Formula lm () mengembalikan senarai yang mengandungi banyak maklumat berguna. Anda boleh mengaksesnya dengan objek sesuai yang telah anda buat, diikuti dengan tanda $ dan maklumat yang ingin anda ekstrak.
- pekali: `pekali $ sesuai '
- baki: `muat $ baki '
- nilai dipasang: `muat $ muat.values`
Regresi faktor
Dalam anggaran model terakhir, anda mundur mpg pada pemboleh ubah berterusan sahaja. Sangat mudah untuk menambahkan pemboleh ubah faktor pada model. Anda menambahkan pemboleh ubah am pada model anda. Penting untuk memastikan pemboleh ubah adalah tahap faktor dan tidak berterusan.
df <- mtcars % > %mutate(cyl = factor(cyl),vs = factor(vs),am = factor(am),gear = factor(gear),carb = factor(carb))summary(lm(model, df))
Pengeluaran:
#### Call:## lm(formula = model, data = df)#### Residuals:## Min 1Q Median 3Q Max## -3.5087 -1.3584 -0.0948 0.7745 4.6251#### Coefficients:## Estimate Std. Error t value Pr(>|t|)## (Intercept) 23.87913 20.06582 1.190 0.2525## cyl6 -2.64870 3.04089 -0.871 0.3975## cyl8 -0.33616 7.15954 -0.047 0.9632## disp 0.03555 0.03190 1.114 0.2827## hp -0.07051 0.03943 -1.788 0.0939 .## drat 1.18283 2.48348 0.476 0.6407## wt -4.52978 2.53875 -1.784 0.0946 .## qsec 0.36784 0.93540 0.393 0.6997## vs1 1.93085 2.87126 0.672 0.5115## am1 1.21212 3.21355 0.377 0.7113## gear4 1.11435 3.79952 0.293 0.7733## gear5 2.52840 3.73636 0.677 0.5089## carb2 -0.97935 2.31797 -0.423 0.6787## carb3 2.99964 4.29355 0.699 0.4955## carb4 1.09142 4.44962 0.245 0.8096## carb6 4.47757 6.38406 0.701 0.4938## carb8 7.25041 8.36057 0.867 0.3995## ---## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1#### Residual standard error: 2.833 on 15 degrees of freedom## Multiple R-squared: 0.8931, Adjusted R-squared: 0.779## F-statistic: 7.83 on 16 and 15 DF, p-value: 0.000124
R menggunakan tahap faktor pertama sebagai kumpulan asas. Anda perlu membandingkan pekali kumpulan lain dengan kumpulan asas.
Regresi bertahap
Bahagian terakhir tutorial ini berkaitan dengan algoritma regresi bertahap. Tujuan algoritma ini adalah untuk menambah dan membuang calon yang berpotensi dalam model dan memastikan mereka yang mempunyai kesan yang signifikan terhadap pemboleh ubah bersandar. Algoritma ini bermakna apabila set data mengandungi senarai ramalan yang besar. Anda tidak perlu menambahkan dan membuang pemboleh ubah bebas secara manual. Regresi bertahap dibina untuk memilih calon terbaik yang sesuai dengan model.
Mari kita lihat bagaimana ia berfungsi. Anda menggunakan set data mtcars dengan pemboleh ubah berterusan hanya untuk ilustrasi pedagogi. Sebelum anda memulakan analisis, ada baiknya menetapkan variasi antara data dengan matriks korelasi. Perpustakaan GGally adalah lanjutan dari ggplot2.
Perpustakaan merangkumi fungsi yang berbeza untuk menunjukkan statistik ringkasan seperti korelasi dan pembahagian semua pemboleh ubah dalam matriks. Kami akan menggunakan fungsi ggscatmat, tetapi anda boleh merujuk sketsa untuk maklumat lebih lanjut mengenai perpustakaan GGally.
Sintaks asas untuk ggscatmat () adalah:
ggscatmat(df, columns = 1:ncol(df), corMethod = "pearson")arguments:-df: A matrix of continuous variables-columns: Pick up the columns to use in the function. By default, all columns are used-corMethod: Define the function to compute the correlation between variable. By default, the algorithm uses the Pearson formula
Anda memaparkan korelasi untuk semua pemboleh ubah anda dan memutuskan mana yang akan menjadi calon terbaik untuk langkah pertama regresi bertahap. Terdapat beberapa korelasi yang kuat antara pemboleh ubah anda dan pemboleh ubah bersandar, mpg.
library(GGally)df <- mtcars % > %select(-c(am, vs, cyl, gear, carb))ggscatmat(df, columns = 1: ncol(df))
Pengeluaran:
Regresi bertahap
Pemilihan pemboleh ubah adalah bahagian penting untuk menyesuaikan model. Regresi bertahap akan melakukan proses pencarian secara automatik. Untuk menganggarkan berapa banyak pilihan yang mungkin ada dalam set data, anda mengira dengan k adalah bilangan ramalan. Jumlah kemungkinan bertambah besar dengan bilangan pemboleh ubah bebas. Itulah sebabnya anda perlu melakukan carian automatik.
Anda perlu memasang pakej olsrr dari CRAN. Pakej ini belum tersedia di Anaconda. Oleh itu, anda memasangnya terus dari baris arahan:
install.packages("olsrr")
Anda boleh merancang semua subset kemungkinan dengan kriteria yang sesuai (iaitu kriteria R-square, R-square yang disesuaikan, Bayesian). Model dengan kriteria AIC terendah akan menjadi model terakhir.
library(olsrr)model <- mpg~.fit <- lm(model, df)test <- ols_all_subset(fit)plot(test)
Penjelasan Kod
- mpg ~ .: Bina model untuk membuat anggaran
- lm (model, df): Jalankan model OLS
- ols_all_subset (muat): Bina graf dengan maklumat statistik yang berkaitan
- plot (ujian): Plot graf
Pengeluaran:
Model regresi linear menggunakan ujian-t untuk menganggar kesan statistik pemboleh ubah tidak bersandar pada pemboleh ubah bersandar. Penyelidik menetapkan ambang maksimum pada 10 peratus, dengan nilai yang lebih rendah menunjukkan hubungan statistik yang lebih kuat. Strategi regresi bertahap dibina di sekitar ujian ini untuk menambah dan membuang calon yang berpotensi. Algoritma berfungsi seperti berikut:
- Langkah 1: Menurunkan semula setiap ramalan pada y secara berasingan. Yaitu, mundur x_1 pada y, x_2 pada y hingga x_n. Simpan nilai p dan simpan regresor dengan nilai p lebih rendah daripada ambang yang ditentukan (0.1 secara lalai). Peramal yang mempunyai arti lebih rendah daripada ambang akan ditambahkan ke model akhir. Sekiranya tiada pemboleh ubah yang mempunyai nilai p lebih rendah daripada ambang masuk, maka algoritma berhenti, dan anda mempunyai model akhir anda dengan pemalar sahaja.
- Langkah 2: Gunakan peramal dengan nilai p terendah dan tambahkan secara berasingan satu pemboleh ubah. Anda mengembalikan pemalar, peramal terbaik bagi langkah pertama dan pemboleh ubah ketiga. Anda menambah model bertahap, peramal baru dengan nilai yang lebih rendah daripada ambang masuk. Sekiranya tiada pemboleh ubah yang mempunyai nilai p lebih rendah daripada 0.1, maka algoritma berhenti, dan anda mempunyai model akhir anda dengan satu peramal sahaja. Anda mundur model bertahap untuk memeriksa kepentingan peramal terbaik langkah 1. Sekiranya lebih tinggi daripada ambang penghapusan, anda menyimpannya dalam model bertahap. Jika tidak, anda mengecualikannya.
- Langkah 3: Anda meniru langkah 2 pada model stepwise terbaik yang baru. Algoritma menambahkan peramal kepada model bertahap berdasarkan nilai masuk dan mengecualikan peramal dari model bertahap jika tidak memenuhi ambang pengecualian.
- Algoritma terus berjalan sehingga tidak ada pemboleh ubah yang dapat ditambahkan atau dikecualikan.
Anda boleh menjalankan algoritma dengan fungsi ols_stepwise () dari pakej olsrr.
ols_stepwise(fit, pent = 0.1, prem = 0.3, details = FALSE)arguments:
-fit: Model to fit. Need to use `lm()`before to run `ols_stepwise()-pent: Threshold of the p-value used to enter a variable into the stepwise model. By default, 0.1-prem: Threshold of the p-value used to exclude a variable into the stepwise model. By default, 0.3-details: Print the details of each step
Sebelum itu, kami menunjukkan kepada anda langkah algoritma. Berikut adalah jadual dengan pemboleh ubah bersandar dan bebas:
Pemboleh ubah bersandar |
Pemboleh ubah bebas |
---|---|
mpg |
pelupusan |
hp |
|
selendang |
|
wt |
|
qsec |
Mulakan
Sebagai permulaan, algoritma bermula dengan menjalankan model pada setiap pemboleh ubah bebas secara berasingan. Jadual menunjukkan nilai p untuk setiap model.
## [[1]]## (Intercept) disp## 3.576586e-21 9.380327e-10#### [[2]]## (Intercept) hp## 6.642736e-18 1.787835e-07#### [[3]]## (Intercept) drat## 0.1796390847 0.0000177624#### [[4]]## (Intercept) wt## 8.241799e-19 1.293959e-10#### [[5]## (Intercept) qsec## 0.61385436 0.01708199
Untuk memasuki model, algoritma menyimpan pemboleh ubah dengan nilai p terendah. Dari output di atas, ia adalah wt
Langkah 1
Pada langkah pertama, algoritma menjalankan mpg pada wt dan pemboleh ubah lain secara bebas.
## [[1]]## (Intercept) wt disp## 4.910746e-16 7.430725e-03 6.361981e-02#### [[2]]## (Intercept) wt hp## 2.565459e-20 1.119647e-06 1.451229e-03#### [[3]]## (Intercept) wt drat## 2.737824e-04 1.589075e-06 3.308544e-01#### [[4]]## (Intercept) wt qsec## 7.650466e-04 2.518948e-11 1.499883e-03
Setiap pemboleh ubah adalah calon yang berpotensi untuk memasuki model akhir. Walau bagaimanapun, algoritma hanya menyimpan pemboleh ubah dengan nilai p yang lebih rendah. Ternyata hp mempunyai nilai p yang lebih rendah daripada qsec. Oleh itu, hp memasuki model akhir
Langkah 2
Algoritma mengulangi langkah pertama tetapi kali ini dengan dua pemboleh ubah tidak bersandar pada model akhir.
## [[1]]## (Intercept) wt hp disp## 1.161936e-16 1.330991e-03 1.097103e-02 9.285070e-01#### [[2]]## (Intercept) wt hp drat## 5.133678e-05 3.642961e-04 1.178415e-03 1.987554e-01#### [[3]]## (Intercept) wt hp qsec## 2.784556e-03 3.217222e-06 2.441762e-01 2.546284e-01
Tiada pemboleh ubah yang memasuki model akhir mempunyai nilai p yang cukup rendah. Algoritma berhenti di sini; kita mempunyai model akhir:
#### Call:## lm(formula = mpg ~ wt + hp, data = df)#### Residuals:## Min 1Q Median 3Q Max## -3.941 -1.600 -0.182 1.050 5.854#### Coefficients:## Estimate Std. Error t value Pr(>|t|)## (Intercept) 37.22727 1.59879 23.285 < 2e-16 ***## wt -3.87783 0.63273 -6.129 1.12e-06 ***## hp -0.03177 0.00903 -3.519 0.00145 **## ---## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1#### Residual standard error: 2.593 on 29 degrees of freedom## Multiple R-squared: 0.8268, Adjusted R-squared: 0.8148## F-statistic: 69.21 on 2 and 29 DF, p-value: 9.109e-12
Anda boleh menggunakan fungsi ols_stepwise () untuk membandingkan hasilnya.
stp_s <-ols_stepwise(fit, details=TRUE)
Pengeluaran:
Algoritma menemui jalan penyelesaian setelah 2 langkah, dan mengembalikan output yang sama seperti yang sebelumnya.
Pada akhirnya, anda boleh mengatakan model dijelaskan oleh dua pemboleh ubah dan pintasan. Batu per galon berkorelasi negatif dengan Kuasa kuda dan Berat Kasar
## You are selecting variables based on p value… ## 1 variable(s) added… .## Variable Selection Procedure## Dependent Variable: mpg#### Stepwise Selection: Step 1#### Variable wt Entered#### Model Summary## --------------------------------------------------------------## R 0.868 RMSE 3.046## R-Squared 0.753 Coef. Var 15.161## Adj. R-Squared 0.745 MSE 9.277## Pred R-Squared 0.709 MAE 2.341## --------------------------------------------------------------## RMSE: Root Mean Square Error## MSE: Mean Square Error## MAE: Mean Absolute Error## ANOVA## --------------------------------------------------------------------## Sum of## Squares DF Mean Square F Sig.## --------------------------------------------------------------------## Regression 847.725 1 847.725 91.375 0.0000## Residual 278.322 30 9.277## Total 1126.047 31## --------------------------------------------------------------------#### Parameter Estimates## ----------------------------------------------------------------------------------------## model Beta Std. Error Std. Beta t Sig lower upper## ----------------------------------------------------------------------------------------## (Intercept) 37.285 1.878 19.858 0.000 33.450 41.120## wt -5.344 0.559 -0.868 -9.559 0.000 -6.486 -4.203## ----------------------------------------------------------------------------------------## 1 variable(s) added… ## Stepwise Selection: Step 2#### Variable hp Entered#### Model Summary## --------------------------------------------------------------## R 0.909 RMSE 2.593## R-Squared 0.827 Coef. Var 12.909## Adj. R-Squared 0.815 MSE 6.726## Pred R-Squared 0.781 MAE 1.901## --------------------------------------------------------------## RMSE: Root Mean Square Error## MSE: Mean Square Error## MAE: Mean Absolute Error## ANOVA## --------------------------------------------------------------------## Sum of## Squares DF Mean Square F Sig.## --------------------------------------------------------------------## Regression 930.999 2 465.500 69.211 0.0000## Residual 195.048 29 6.726## Total 1126.047 31## --------------------------------------------------------------------#### Parameter Estimates## ----------------------------------------------------------------------------------------## model Beta Std. Error Std. Beta t Sig lower upper## ----------------------------------------------------------------------------------------## (Intercept) 37.227 1.599 23.285 0.000 33.957 40.497## wt -3.878 0.633 -0.630 -6.129 0.000 -5.172 -2.584## hp -0.032 0.009 -0.361 -3.519 0.001 -0.050 -0.013## ----------------------------------------------------------------------------------------## No more variables to be added or removed.
Pembelajaran mesin
Pembelajaran mesin menjadi semakin meluas di kalangan saintis data dan digunakan dalam beratus-ratus produk yang anda gunakan setiap hari. Salah satu aplikasi ML pertama adalah penapis spam .
Berikut adalah aplikasi lain Pembelajaran Mesin-
- Pengenalan mesej spam yang tidak diingini dalam e-mel
- Segmentasi tingkah laku pelanggan untuk iklan yang disasarkan
- Pengurangan urus niaga kad kredit palsu
- Pengoptimuman penggunaan tenaga di bangunan rumah dan pejabat
- Pengecaman wajah
Pembelajaran yang diselia
Dalam pembelajaran yang diselia , data latihan yang anda berikan kepada algoritma merangkumi label.
Pengkelasan mungkin merupakan teknik pembelajaran yang diselia yang paling banyak digunakan. Salah satu tugas pengkelasan pertama yang ditangani oleh penyelidik adalah penapis spam. Objektif pembelajaran adalah untuk meramalkan sama ada e-mel diklasifikasikan sebagai spam atau ham (e-mel yang baik). Mesin tersebut, setelah melakukan latihan, dapat mengesan kelas e-mel.
Regresi biasanya digunakan dalam bidang pembelajaran mesin untuk meramalkan nilai berterusan. Tugas regresi dapat meramalkan nilai pemboleh ubah bersandar berdasarkan satu set pemboleh ubah bebas (juga disebut prediktor atau regresor). Sebagai contoh, regresi linier dapat meramalkan harga saham, ramalan cuaca, penjualan dan sebagainya.
Berikut adalah senarai beberapa algoritma pembelajaran yang diselia asas.
- Regresi linear
- Regresi logistik
- Jiran terdekat
- Mesin Vektor Sokongan (SVM)
- Pokok keputusan dan Hutan Rawak
- Rangkaian Neural
Pembelajaran tanpa pengawasan
Dalam pembelajaran tanpa pengawasan , data latihan tidak berlabel. Sistem cuba belajar tanpa rujukan. Berikut adalah senarai algoritma pembelajaran yang tidak diselia.
- K-bermaksud
- Analisis Kluster Hierarki
- Pemaksaan Harapan
- Penglihatan dan pengurangan dimensi
- Analisis Komponen Utama
- PCA Kernel
- Penyisipan Linear tempatan
Ringkasan
Regresi kuasa dua biasa boleh diringkaskan dalam jadual di bawah:
Perpustakaan |
Objektif |
Fungsi |
Hujah |
---|---|---|---|
pangkalan |
Hitung regresi linear |
lm () |
formula, data |
pangkalan |
Ringkaskan model |
ringkaskan () |
sesuai |
pangkalan |
Pekali ekstraksi |
pekali $ () $ | |
pangkalan |
Keluarkan sisa |
lm () $ baki | |
pangkalan |
Nilai pemasangan tepat |
lm () $ dipasang.nilai | |
olsrr |
Jalankan regresi bertahap |
ols_stepwise () |
muat, pent = 0.1, prem = 0.3, perincian = SALAH |
Catatan : Ingatlah untuk mengubah pemboleh ubah kategorik dalam faktor sebelum sesuai dengan model.