Banyak masalah memerlukan perkiraan probabilitas sebagai output. Regresi logistik kini mekanisme yang sangat efisien untuk menghitung probabilitas. Dalam praktik Anda dapat menggunakan probabilitas yang dikembalikan dalam salah satu dari dua cara:
Diterapkan "sebagaimana adanya". Misalnya, jika model prediksi spam mengambil email sebagai input dan output nilai
0.932
, ini menyiratkan probabilitas93.2%
yang email tersebut adalah spam.Dikonversi ke kategori biner seperti
True
atauFalse
,Spam
atauNot Spam
.
Modul ini berfokus pada penggunaan output model regresi logistik apa adanya. Di kolom Modul klasifikasi, Anda akan mempelajari cara mengonversi {i>output<i} ini menjadi kategori biner.
Fungsi sigmoid
Anda mungkin bertanya-tanya bagaimana model regresi logistik dapat memastikan mewakili probabilitas, yang selalu menghasilkan nilai antara 0 dan 1. Seperti terjadi, terdapat kelompok fungsi yang disebut fungsi logistik yang {i>outputnya<i} memiliki karakteristik yang sama. Fungsi logistik standar, yang dikenal sebagai fungsi sigmoid (sigmoid berarti "berbentuk s"), memiliki rumus:
\[f(x) = \frac{1}{1 + e^{-x}}\]
Gambar 1 menunjukkan grafik fungsi sigmoid yang sesuai.
![Kurva sigmoid (berbentuk s) yang diplot pada bidang koordinat Kartesius,
yang berpusat di titik asal.](https://developers.google.cn/static/machine-learning/crash-course/logistic-regression/images/sigmoid_function_with_axes.png?authuser=6&hl=id)
Seiring input, x
, meningkat, output fungsi sigmoid mendekati
tetapi tidak pernah mencapai 1
. Demikian pula, saat input menurun, nilai sigmoid
output fungsi mendekati tetapi tidak pernah mencapai 0
.
Klik di sini untuk mempelajari matematika lebih dalam di balik fungsi sigmoid
Tabel di bawah ini menunjukkan nilai {i> output<i} dari fungsi sigmoid untuk memasukkan nilai dalam rentang –7 hingga 7. Perhatikan seberapa cepat sigmoid mendekati 0 untuk menurunkan nilai input negatif, dan seberapa cepat mendekati sigmoid 1 untuk meningkatkan nilai input positif.
Namun, tidak peduli seberapa besar atau kecilnya nilai input, output selalu lebih besar dari 0 dan kurang dari 1.
Input | Output sigmoid |
---|---|
-7 | 0,001 |
-6 | 0,002 |
-5 | 0,007 |
-4 | 0,018 |
-3 | 0,047 |
-2 | 0,119 |
-1 | 0,269 |
0 | 0,50 |
1 | 0,731 |
2 | 0,881 |
3 | 0,952 |
4 | 0,982 |
5 | 0,993 |
6 | 0,997 |
7 | 0,999 |
Mentransformasi output linier menggunakan fungsi sigmoid
Persamaan berikut mewakili komponen linear logistik model regresi:
\[z = b + w_1x_1 + w_2x_2 + \ldots + w_Nx_N\]
dalam hal ini:
- z adalah output dari persamaan linear, yang juga disebut log peluang.
- b adalah biasnya.
- Nilai w adalah bobot model yang dipelajari.
- Nilai x adalah nilai fitur untuk contoh tertentu.
Untuk mendapatkan prediksi regresi logistik, nilai z kemudian diteruskan ke fungsi sigmoid, menghasilkan nilai (probabilitas) antara 0 dan 1:
\[y' = \frac{1}{1 + e^{-z}}\]
dalam hal ini:
- y' adalah output dari model regresi logistik.
- z adalah output linear (seperti yang dihitung dalam persamaan sebelumnya).
Klik di sini untuk mempelajari lebih lanjut log-peluang
Dalam persamaan $z = b + w_1x_1 + w_2x_2 + \ldots + w_Nx_N$, z disebut sebagai peluang log karena jika Anda memulai dengan fungsi sigmoid berikut (di mana $y$ adalah {i>output<i} dari logistik model regresi, yang mewakili probabilitas):
$$y = \frac{1}{1 + e^{-z}}$$
Kemudian, selesaikan untuk z:
$$ z = \log\left(\frac{y}{1-y}\right) $$
Lalu z didefinisikan sebagai log rasio probabilitas dari dua kemungkinan hasil: y dan 1 – y.
Gambar 2 mengilustrasikan bagaimana output linear ditransformasi menjadi regresi logistik output menggunakan kalkulasi ini.
![Kiri: Garis dengan titik (-7.5, –10), (-2.5, 0), dan (0, 5)
disorot. Kanan: Kurva sigmoid dengan transformasi yang sesuai
poin (-10, 0,00004), (0, 0,5), dan (5, 0,9933) disorot.](https://developers.google.cn/static/machine-learning/crash-course/logistic-regression/images/linear_to_logistic.png?authuser=6&hl=id)
Pada Gambar 2, persamaan linear menjadi input untuk fungsi sigmoid, yang melengkungkan garis lurus menjadi bentuk s. Perhatikan bahwa persamaan linear dapat menghasilkan nilai z yang sangat besar atau sangat kecil, tetapi output dari {i>function<i}, y', selalu antara 0 dan 1, eksklusif. Misalnya, oranye pada grafik sebelah kiri memiliki nilai z -10, tetapi fungsi sigmoid pada grafik kanan yang memetakan -10 ke y' sebesar 0,00004.
Latihan: Memeriksa pemahaman Anda
Model regresi logistik dengan tiga fitur memiliki bias dan bobot:
\[\begin{align} b &= 1 \\ w_1 &= 2 \\ w_2 &= -1 \\ w_3 &= 5 \end{align} \]
Dengan nilai input berikut:
\[\begin{align} x_1 &= 0 \\ x_2 &= 10 \\ x_3 &= 2 \end{align} \]
Jawablah dua pertanyaan berikut.
Seperti yang dihitung pada #1 di atas, log-peluang untuk nilai input adalah 1. Memasukkan nilai tersebut untuk z ke dalam fungsi sigmoid:
\(y = \frac{1}{1 + e^{-z}} = \frac{1}{1 + e^{-1}} = \frac{1}{1 + 0.367} = \frac{1}{1.367} = 0.731\)