Regresi logistik secara mendalam

Feb 01 2023
Regresi logistik, fungsi aktivasi, derivasi, matematika
Teknik statistik yang disukai untuk mengatasi masalah klasifikasi dalam pembelajaran mesin adalah regresi logistik. Regresi logistik adalah metode untuk memprediksi hasil biner, seperti "ya" atau "tidak" atau "benar" atau "salah", berlawanan dengan regresi linier, yang digunakan untuk memprediksi hasil yang berkelanjutan.
Overwiev regresi logistik

Teknik statistik yang disukai untuk mengatasi masalah klasifikasi dalam pembelajaran mesin adalah regresi logistik. Regresi logistik adalah metode untuk memprediksi hasil biner, seperti "ya" atau "tidak" atau "benar" atau "salah", berlawanan dengan regresi linier, yang digunakan untuk memprediksi hasil yang berkelanjutan. Fungsi logistik, yang mengubah setiap input dengan nilai riil menjadi angka antara 0 dan 1, berfungsi sebagai dasar model regresi logistik. Kami akan memberikan penjelasan menyeluruh tentang regresi logistik dalam posting ini, meliputi dasar matematika dan turunannya. Pertama, kita akan mulai dengan fungsi sigmoid dan kemudian kita akan membahas tentang model regresi logistik. Namun, jika Anda ingin mengetahui lebih lanjut tentang fungsi aktivasi, lihat artikel ini.

Fungsi Aktivasi dalam Pembelajaran Mesin

Fungsi sigmoid

Ekspresi matematis yang disebut fungsi sigmoid mengubah input bernilai nyata apa pun menjadi angka antara 0 dan 1 dan juga dikenal sebagai fungsi logistik. Fungsi sigmoid dapat didefinisikan sebagai berikut:

Fungsi sigmoid

Di mana:

  • z menunjukkan garis klasifikasi yang menyerupai regresi linier,
  • e adalah basis logaritma natural.

Dalam jaringan saraf tiruan, fungsi sigmoid sering digunakan sebagai fungsi aktivasi. Berdasarkan input dan bobotnya, output neuron ditentukan oleh fungsi aktivasi dalam jaringan saraf. Jaringan saraf banyak digunakan dalam pembelajaran mesin tetapi kami tidak akan membahasnya di artikel ini. Jika Anda ingin mempelajari lebih lanjut, silakan lihat artikel ini ( akan diposting ).

Model Regresi Logistik

Model regresi logistik membuat prediksi tentang kemungkinan hasil biner (benar/salah atau ya/tidak) berdasarkan satu atau lebih fitur input menggunakan fungsi logistik. Probabilitas yang diproyeksikan dari kelas positif diwakili oleh output fungsi logistik, yang berkisar dari 0 hingga 1. Pengamatan kemudian diklasifikasikan sebagai positif jika probabilitas yang diprediksi melebihi ambang batas, yang biasanya ditetapkan pada 0,5, untuk menentukan prediksi. kelas. Dengan mengurangi kemungkinan log negatif dari data, yang mencerminkan perbedaan antara probabilitas yang diantisipasi dan label kelas aktual, koefisien model regresi logistik dioptimalkan. Fungsi biaya untuk regresi logistik sering disebut kerugian lintas-entropi biner.

Fungsi kesalahan lintas-entropi biner

Fungsi kerugian umum dalam pembelajaran mesin, terutama untuk masalah klasifikasi biner, adalah fungsi kesalahan lintas-entropi biner. Ini menghitung perbedaan antara label sebenarnya dari variabel target biner dan probabilitas yang diantisipasi. Dalam klasifikasi biner, tujuannya adalah untuk memprediksi kemungkinan variabel target yang diberikan serangkaian fitur. Variabel target hanya dapat mengambil dua nilai, seperti 0 dan 1. Fungsi kesalahan lintas-entropi biner didefinisikan sebagai berikut:

Fungsi kesalahan lintas-entropi biner

Di mana:

  • y_n adalah probabilitas yang diprediksi untuk kelas positif,
  • t_n adalah label sebenarnya, baik 0 atau 1,
  • dan J adalah fungsi tujuan yang kita coba minimalkan atau maksimalkan z e.

Namun demikian, kami akan menggunakan turunan parsial dari fungsi kesalahan lintas-entropi biner sehubungan dengan parameter untuk menentukan koefisien model regresi logistik untuk nilai optimal. Mari kita mulai dengan menurunkan sebagian fungsi biaya untuk menemukan nilai optimal dari bobot regresi logistik. Kita bisa mulai dengan menentukan turunan J terhadap y_n. Setelah itu, kita dapat menemukan turunan dari y_n sehubungan dengan input fungsi sigmoid, yang berfungsi sebagai fungsi aktivasi regresi logistik, dan kemudian kita dapat menurunkan turunan dari a sehubungan dengan bobotnya.

Derivasi fungsi biaya sehubungan dengan parameter w

Setelah itu, kita dapat memperoleh ekspresi untuk menentukan nilai ideal istilah bias, di mana bias biasanya ditetapkan ke 1. Selain itu, bias dapat dimasukkan ke dalam bobot dengan menyertakan nilai 1.

Derivasi fungsi biaya sehubungan dengan parameter b

Setelah mendapatkan ekspresi dari parameter pencarian, kita dapat beralih ke implementasi dalam bahasa pemrograman python.

import numpy as np

N = 100

def sigmoid_function(an):
    return 1/(1 + np.exp(-an))

def binary_cross_entropy(T, Y):
    E = 0
    for i in range(len(T)):
        if T[i] == 1:
            E -= np.log(Y[i])
        else:
            E -= np.log(1 - Y[i])
    return E

#short overwiev of updating process of w's
learning_rate = 0.01
for i in range(N):
    # gradient descent weight udpate
    w += learning_rate * Xb.T.dot(Y - T)

    # recalculate Y
    Y = sigmoid(Xb.dot(w))

from sklearn.linear_model import LogisticRegression

clf = LogisticRegression(random_state=0).fit(X, y)
clf.predict_proba(X)
clf.score(X, y)

Menambahkan istilah penalti juga memungkinkan fungsi biaya dimodifikasi. Overfitting dapat dicegah dalam regresi logistik dan regresi linier melalui regularisasi. Istilah ini mendorong koefisien untuk memiliki besaran kecil, mengurangi dampaknya terhadap prediksi model. Penalti untuk regularisasi L1, juga disebut Lasso, sama dengan nilai absolut dari koefisien, tetapi penalti untuk regularisasi L2, juga disebut Ridge, sama dengan kuadrat dari koefisien. Kedua metode regularisasi ini adalah tipikal dan kami akan membahas dua metode regularisasi ini di artikel selanjutnya ( akan diposting ).

Klasifikasi multi-kelas

Masalah klasifikasi multi-kelas, di mana hasilnya dapat memiliki lebih dari dua nilai, dapat ditangani dengan menggunakan perpanjangan regresi logistik. Biasanya, beberapa model regresi logistik biner dilatih, satu untuk setiap kelas, menggunakan metode satu lawan semua atau satu lawan satu. Peramalan kemudian dibuat untuk kelas dengan probabilitas antisipasi tertinggi.

Keterbatasan

Karena fakta bahwa regresi logistik menggunakan model linier, mungkin tidak cocok untuk data ketika terdapat korelasi rumit antara variabel independen dan hasil biner. Selain itu, regresi logistik tidak menawarkan estimasi varian dari probabilitas yang diprediksi, yang penting untuk memahami dan menilai model.

Jika Anda menyukai artikelnya, pastikan untuk mengikuti saya untuk mengetahui artikel baru saya.