Deskripsi
LIBLINEAR adalah pustaka C/C++ yang kuat dan efisien yang dirancang untuk tugas klasifikasi dan regresi linear skala besar. Pustaka ini sangat cocok untuk dataset yang berisi jutaan instance dan fitur, menjadikannya pilihan ideal untuk aplikasi di mana efisiensi komputasi sangat penting. Pustaka ini mendukung berbagai pengklasifikasi yang diregularisasi L1 dan L2, termasuk Support Vector Machines (SVM) linear dan regresi logistik (LR). Untuk pengklasifikasi yang diregularisasi L1, pustaka ini mendukung SVM linear dan regresi logistik. Sejak versi 1.9, pustaka ini juga menyertakan regresi support vector (SVR) yang diregularisasi L2 dengan loss L2 dan loss L1, dan sejak versi 2.40, support vector machine satu kelas yang diregularisasi L2.
Fitur utama LIBLINEAR meliputi kompatibilitasnya dengan format data dan pola penggunaan LIBSVM, sebuah solver SVM serbaguna. Pustaka ini menyediakan dukungan yang kuat untuk klasifikasi multi-kelas melalui strategi one-vs-the-rest dan metode Crammer & Singer. Untuk evaluasi dan pemilihan model, LIBLINEAR menawarkan kemampuan validasi silang dan pemilihan parameter otomatis. Pustaka ini juga dapat memberikan estimasi probabilitas untuk model regresi logistik dan memungkinkan penimbangan data yang tidak seimbang untuk meningkatkan kinerja pada dataset yang tidak seimbang.
LIBLINEAR sangat serbaguna, menawarkan antarmuka untuk bahasa pemrograman populer seperti MATLAB, Octave, Java, Python, dan Ruby. Instalasi disederhanakan melalui manajer paket seperti pip untuk Python dan vcpkg untuk C++. Pustaka ini diakui karena kecepatannya, telah memenangkan tantangan pembelajaran skala besar ICML 2008 (lintasan SVM linear) dan digunakan dalam solusi pemenang untuk KDD Cup 2010. Pustaka ini sangat efektif untuk aplikasi seperti klasifikasi dokumen di mana model linear berkinerja sebanding dengan model non-linear, secara signifikan mengurangi waktu pelatihan.
Pustaka ini dipelihara secara aktif, dengan versi terbaru yang berfokus pada peningkatan proses instalasi, perbaikan masalah antarmuka, dan peningkatan kinerja solver. Misalnya, versi 2.42 memperkenalkan peralihan langsung ke solver Newton primal ketika solver CD dual mencapai batas iterasi, dan versi 2.43 menambahkan dukungan untuk instalasi antarmuka Python melalui PyPI. Rilis terbaru, versi 2.50, mencakup pengaturan yang diperbarui untuk membangun wheel dan perbaikan kecil pada antarmuka Python. LIBLINEAR adalah proyek open-source, mendorong kontribusi dan pengembangan komunitas.
Fitur Inti LIBLINEAR
Mendukung SVM linear yang diregularisasi L2, SVM linear L1-loss, dan regresi logistik
Mencakup SVM linear L1-regularized dan regresi logistik (setelah v1.4)
Menawarkan regresi support vector (SVR) yang diregularisasi L2 dengan loss L2 dan L1 (setelah v1.9)
Mengimplementasikan support vector machine satu kelas yang diregularisasi L2 (setelah v2.40)
Menggunakan format data yang sama dan penggunaan yang serupa dengan LIBSVM
Mendukung klasifikasi multi-kelas menggunakan metode one-vs-the-rest dan Crammer & Singer
Menyediakan validasi silang untuk evaluasi model
Menampilkan pemilihan parameter otomatis
Mampu menghasilkan estimasi probabilitas untuk regresi logistik
Memungkinkan bobot untuk data yang tidak seimbang
Tersedia dengan antarmuka MATLAB, Octave, Java, Python, dan Ruby
Instalasi didukung melalui manajer paket seperti pip dan vcpkg
Dukungan multi-core untuk percepatan pelatihan yang signifikan pada sistem memori bersama
Memulai dengan LIBLINEAR
Instalasi: Instal melalui manajer paket (misalnya, `pip install -U liblinear-official` untuk Python, atau gunakan vcpkg untuk C++).
Persiapan Data: Format data Anda sesuai spesifikasi LIBLINEAR, mirip dengan LIBSVM.
Pelatihan Model: Gunakan alat baris perintah `train` atau antarmuka yang disediakan untuk melatih pengklasifikasi atau regressor linear.
Penyetelan Parameter: Gunakan fitur validasi silang dan pemilihan parameter otomatis untuk menemukan hyperparameter optimal.
Prediksi: Gunakan model yang dilatih untuk membuat prediksi pada instance data baru.
Integrasi: Integrasikan LIBLINEAR ke dalam aplikasi Anda menggunakan antarmuka bahasa yang tersedia (Python, Java, MATLAB, dll.).
Kasus Penggunaan LIBLINEAR
- Klasifikasi Dokumen
- Regresi Skala Besar
- Deteksi Spam
- Klasifikasi Fitur Gambar
- Sistem Rekomendasi
- Bioinformatika




