SVM untuk Regresi Ordinal

dokumen-dokumen yang mirip
SVM untuk Regresi. Machine Learning

Support Vector Machine

SVM untuk Ranking. Model Linear

Metode Kernel. Machine Learning

Neural Networks. Machine Learning

Model Linear untuk Klasifikasi

Radial Basis Function Networks

Model Linear untuk Regresi

BUKU RANCANGAN PEMBELAJARAN

BAB III LANDASAN TEORI. Definisi Peramalan adalah memperkiraan atau memproyeksikan sesuatu

Pengantar Support Vector Machine

KAJIAN KEMAMPUAN GENERALISASI SUPPORT VECTOR MACHINE DALAM PENGENALAN JENIS SPLICE SITES PADA BARISAN DNA

KLASIFIKASI WILAYAH DESA-PERDESAAN DAN DESA-PERKOTAAN WILAYAH KABUPATEN SEMARANG DENGAN SUPPORT VECTOR MACHINE (SVM)

SUPPORT VECTOR MACHINE (SVM)

BAB II DASAR TEORI. Pada bab ini akan dibahas teori-teori pendukung yang digunakan sebagai acuan dalam merancang algoritma.

UJI KINERJA LEARNING TO RANK DENGAN METODE SUPPORT VECTOR REGRESSION

g(x, y) = F 1 { f (u, v) F (u, v) k} dimana F 1 (F (u, v)) diselesaikan dengan: f (x, y) = 1 MN M + vy )} M 1 N 1

KLASIFIKASI LAMA STUDI MAHASISWA FSM UNIVERSITAS DIPONEGORO MENGGUNAKAN REGRESI LOGISTIK BINER DAN SUPPORT VECTOR MACHINE (SVM)

PREDIKSI INDEKS HARGA SAHAM GABUNGAN MENGGUNAKAN SUPPORT VECTOR REGRESSION (SVR) DENGAN ALGORITMA GRID SEARCH

1. Pendahuluan. 1.1 Latar Belakang

BAB II TINJAUAN PUSTAKA. operasi yang mampu menyelesaikan masalah optimasi sejak diperkenalkan di

KLASIFIKASI WILAYAH DESA-PERDESAAN DAN DESA-PERKOTAAN WILAYAH KABUPATEN SEMARANG DENGAN SUPPORT VECTOR MACHINE (SVM) ABSTRACT

PENERAPAN METODE KLASIFIKASI SUPPORT VECTOR MACHINE (SVM) PADA DATA AKREDITASI SEKOLAH DASAR (SD) DI KABUPATEN MAGELANG

BAB 2 LANDASAN TEORI

PRESENTASI TUGAS AKHIR IMPLEMENTASI PENGGABUNGAN ALGORITMA SUPPORT VECTOR MACHINE DAN SIMULATED ANNEALING PADA PERMASALAHAN KLASIFIKASI POLA

BAB II KAJIAN PUSTAKA. pemrograman nonlinear, fungsi konveks dan konkaf, pengali lagrange, dan

PENDETEKSIAN JENIS DAN KELAS AROMA DENGAN MENGGUNAKAN METODE ONE-VS-ONE DAN METODE ONE-VS-REST

Linear Discrimant Model

BAB II KAJIAN PUSTAKA

BAB 2 LANDASAN TEORI

BAB 2 OPTIMISASI KOMBINATORIAL. Masalah optimisasi merupakan suatu proses pencarian varibel bebas yang

BAB 2 TINJAUAN PUSTAKA. ini sehingga dapat dijadikan sebagai landasan berpikir dan akan mempermudah. dalam hal pembahasan hasil utama berikutnya.

ISSN SUPPORT VECTOR MACHINE PADA INFORMATION RETRIEVAL. Oleh....(I Ketut Purnamawan)

BAB I PENDAHULUAN. 1.1 Latar Belakang

Bab 1 PENDAHULUAN. 1.1 Latar Belakang

ANALISIS PERFORMANSI PERUSAHAAN SYARIAH DI BURSA EFEK INDONESIA (BEI) MENGGUNAKAN METODE DISCRIMINANT ANALYSIS DAN SUPPORT VECTOR MACHINE (SVM)

III KERANGKA PEMIKIRAN

BAB 2 KAJIAN PUSTAKA

2 BAB II LANDASAN TEORI

PENGGOLONGAN UANG KULIAH TUNGGAL MENGGUNAKAN SUPPORT VECTOR MACHINE

Pendahuluan : Evaluasi*

BAB II KAJIAN PUSTAKA. Pada bab ini akan diberikan landasan teori tentang optimasi, fungsi, turunan,

IMPLEMENTASI METODE MULTIPLE KERNEL SUPPORT VECTOR MACHINE UNTUK SELEKSI FITUR DARI DATA EKSPRESI GEN DENGAN STUDI KASUS LEUKIMIA DAN TUMOR USUS BESAR

BAB II KAJIAN TEORI. Pada bab ini akan dibahas mengenai beberapa definisi dan teori yang akan

Matrix Factorization. Machine Learning

SISTEM DETEKSI PENYAKIT DIABETES MENGGUNAKAN METODE SUPPORT VECTOR MACHINES

Perangkat Lunak - Weka*

BAB 2 LANDASAN TEORI

II. TINJAUAN PUSTAKA. Dalam proses penelitian untuk mengkaji karakteristik penduga GMM pada data

LAPORAN TUGAS AKHIR. Disusun oleh: Franky

BAB 1 PENDAHULUAN Latar Belakang

Jaringan syaraf dengan lapisan tunggal

KOMBINASI PERSYARATAN KARUSH KUHN TUCKER DAN METODE BRANCH AND BOUND PADA PEMROGRAMAN KUADRATIK KONVEKS BILANGAN BULAT MURNI

BAB 2 LANDASAN TEORI

ANALISIS SUPPORT VECTOR REGRESSION (SVR) DALAM MEMPREDIKSI KURS RUPIAH TERHADAP DOLLAR AMERIKA SERIKAT

PERAMALAN DENGAN MENGGUNAKAN ARTIFICIAL NEURAL NETWORK DAN SUPPORT VECTOR REGRESSION

PERAMALAN JUMLAH TAMU HOTEL DI KABUPATEN DEMAK MENGGUNAKAN METODE SUPPORT VECTOR REGRESSION

Pendahuluan* Data vs Informasi

BAB I PENDAHULUAN. Riset Operasi, dalam artian sempit merupakan penerapan dari model-model

Analisis Akurasi Support Vector Machine...

BAB III PEMBAHASAN. FRBFNN, Arsitektur FRBFNN, aplikasi FRBFNN untuk meramalkan kebutuhan

FUZZY LINIER PROGRAMMING UNTUK PEMILIHAN JENIS KENDARAAN DALAM MENGANTISIPASI KEMACETAN LALU LINTAS DI KOTA MEDAN

BAB II TINJAUAN PUSTAKA

PREDIKSI KEBANGKRUTAN PERUSAHAAN MENGGUNAKAN SUPPORT VECTOR MACHINE (SVM)

BAB 1 PENDAHULUAN. Persoalan keputusan sering diformulasikan sebagai. persoalan optimisasi, jadi dalam berbagai situasi, pengambil keputusan ingin

Bab 2 LANDASAN TEORI. 2.1 Pengantar Proses Stokastik

BAB 2 KAJIAN PUSTAKA. Menurut Asghar (2000), secara garis besar masalah optimisasi terbagi dalam beberapa tipe berikut:

BAB 2 KAJIAN PUS TAKA

PREDIKSI THD TEGANGAN SISTEM TENAGA LISTRIK MENGGUNAKAN SUPPORT VECTOR MACHINE DENGAN FUNGSI KERNEL GAUSSIAN RBF

BAB 3 METODE PENELITIAN

Analisis Perbandingan Sistem Pengenalan Rambu-Rambu Lalu Lintas Menggunakan Metode Generative Learning dan Support Vector Machine

Studi Kasus Klasifikasi Hutan

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

BAB III MODEL STATE-SPACE. dalam teori kontrol modern. Model state space dapat mengatasi keterbatasan dari

I PENDAHULUAN II LANDASAN TEORI

BAB II KAJIAN TEORI. yang diapit oleh dua kurung siku sehingga berbentuk empat persegi panjang atau

BAB II KAJIAN TEORI. Berikut diberikan landasan teori mengenai teori himpunan fuzzy, program

SKRIPSI. Oleh : PUSPHITA ANNA OCTAVIANI NIM PENERAPAN METODE KLASIFIKASI SUPPORT VECTOR MACHINE (SVM)

Jurnal Matematika Murni dan Terapan Epsilon Juni 2014 Vol. 8 No. 1 METODE KARMARKAR SEBAGAI ALTERNATIF PENYELESAIAN MASALAH PEMROGRAMAN LINEAR

BAB III ANALISIS DAN PENYELESAIAN MASALAH

Prediksi Financial Time Series Menggunakan Independent Component Analysis dan Support Vector Regression Studi Kasus : IHSG dan JII

BAB III REGRESI SPLINE = + dimana merupakan fungsi pemulus yang tidak spesifik, dengan adalah

KLASIFIKASI PENERIMA PROGRAM BERAS MISKIN (RASKIN) DI KABUPATEN WONOSOBO DENGAN METODE SUPPORT VECTOR MACHINE MENGGUNAKAN LibSVM SKRIPSI

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI. Pemrograman linear (PL) ialah salah satu teknik dari riset operasi untuk

BAB II LANDASAN TEORI. Dalam bab ini dibahas beberapa definisi dan konsep-konsep yang

BAB 2 OPTIMISASI KOMBINATORIAL

BAB II TINJAUAN PUSTAKA

BAB II LANDASAN TEORI. A. Sistem Persamaan Linear dan Sistem Pertidaksamaan Linear

BAB II KAJIAN TEORI. masalah fuzzy linear programming untuk optimasi hasil produksi pada bab

JURNAL TEKNIK POMITS Vol. 1, No. 1, (2012) 1-6 1

BAB 2 LANDASAN TEORI

1. Pendahuluan 1.1 Latar Belakang

IMPLEMENTASI PREDIKSI KEDALAMAN LAUT BERDASARKAN CITRA SATELIT MENGGUNAKAN SUPPORT VECTOR REGRESSION

BAB 2 LANDASAN TEORI

BAB III PEMBAHASAN. pemrograman nonlinear dan penerapannya dalam penetapan jumlah produksi

Prediksi Pergerakan Indeks Harga Saham Menggunakan Artificial Neural Network dan Support Vector Machine

DIAGNOSA KERUSAKAN BANTALAN BOLA MENGGUNAKAN METODE SUPPORT VECTOR MACHINE

BAB II LANDASAN TEORI

Transkripsi:

MMA10991 Topik Khusus - Machine Learning Dr. rer. nat. Hendri Murfi Intelligent Data Analysis (IDA) Group Departemen Matematika, Universitas Indonesia Depok 16424 Telp. +62-21-7862719/7863439, Fax. +62-21-7863439, Email. hendri@ui.ac.id Model Linear Model dasar yang akan digunakan adalah model linear, yaitu model yang merupakan kombinasi linear dari fungsi basis, yaitu: Dimana x = (x 1, x 2,..., x D ) T adalah variabel input, dan w = (w 0, w 1,..., w D ) T adalah parameter, φ(x) adalah fungsi basis, M adalah jumlah fungsi basis Pada banyak metode φ 0 (x) = 1, sehingga w 0 berfungsi sebagai bias Ada banyak pilihan yang mungkin untuk fungsi basis φ(x), misal fungsi polinomial, fungsi gaussian, fungsi sigmoidal, fungsi pemetaan, dll 2

Model Linear Kutukan Dimensi Model linear memiliki sifat-sifat yang penting baik dari aspek komputasi maupun analitik. Penggunaan model linear dengan pendekatan parametrik pada metode klasik memiliki keterbatasan pada aplikasi praktis disebabkan oleh kutukan dimensi (curse of dimensionality) y x, w =w 0 w 1 x w 2 x 2 w 3 x 3 1 D 3 untuk model beorde M, maka pertumbuhan jumlah parameter w proposional dengan D M 3 Model Linear Solusi Praktis Untuk menerapkan metode ini pada masalah skala besar, pendekatan umum yang dilakukan adalah membuat fungsi basis dapat beradaptasi dengan data pembelajaran, dan mengeset data pembelajaran tersebut sebagai pusat fungsi basis. Selanjutnya, memilih sebagian dari data pembelajaran tersebut selama proses training (nonparametrik). Dasarnya adalah bahwa data real biasanya memiliki sifat mulus, artinya perubahan sedikit pada data input hanya akan memberikan sedikit perubahan pada output Penggunaan fungsi kernel sebagai fungsi basis adalah salah satu contoh pendekatan seperti ini yang banyak digunakan saat ini. 4

Metode Kernel Fungsi Kernel: Definisi Fungsi kernel adalah suatu fungsi k yang mana untuk semua vektor input x,z akan memenuhi kondisi k(x,z) = φ(x) T φ(z) dimana φ(.) adalah fungsi pemetaan dari ruang input ke ruang fitur Dengan kata lain, fungsi kernel adalah fungsi perkalian dalam (inner product) pada ruang fitur. 5 Salah satu contoh fungsi kernel yang banyak digunakan adalah fungsi Gaussian, yaitu: k(x,x') = exp(- x-x' 2 / 2σ 2 ) dimana x' adalah inti yang biasanya dipilih dari data pembelajaran. Misal untuk data x=5 dengan target t=0.04, maka data tsb dapat digambarkan dengan fungsi basis sbb: y(x) = 0.04 * exp(- x-5 2 / 2σ 2 ) Metode Kernel Fungsi Kernel: Contoh 6

Metode Kernel Fungsi Kernel: Keuntungan Fungsi kernel memungkinkan kita untuk mengimplementasikan suatu model pada ruang dimensi lebih tinggi (ruang fitur) tanpa harus mendefinisikan fungsi pemetaan dari ruang input ke ruang fitur Sehingga, untuk kasus yang nonlinearly separable pada ruang input, diharapkan akan menjadi linearly separable pada ruang fitur Selanjutnya, kita dapat menggunakan hyperplane sebagai decision boundary secara efisien 7 Metode Kernel Fungsi Kernel: Penggunaan Secara umum, ada dua cara penggunaan metode kernel pada machine learning, yaitu: Penggunaan langsung, yaitu fungsi kernel digunakan sebagai fungsi basis dari model machine learning tersebut, contoh: radial basis function Penggunaan tidak langsung melalui kernel trick, yaitu merepresentasikan suatu model ke dalam representasi dual yang mengandung inner product dari fungsi pemetaan, contoh: support vector machine, kernel linear regression, kernel Perceptron, kernel PCA, dll

Klasifikasi Support Vector Machine Klasifikasi dan Regresi Diberikan data pembelajaran {x n, t n }, n = 1 sd N t n bernilai diskrit (kelas) berhingga tidak terurut (skala nominal) Permasalahan: menentukan decision boundary yang dapat mengklasifikasi data dengan benar Regresi t i bernilai kontinu (bilangan real) Permasalahan: menentukan fungsi regresi yang dapat memprediksi nilai data dengan benar 9 Support Vector Machine Regresi Ordinal Diberikan data pembelajaran {x n, t n }, n = 1 sd N Regresi Ordinal t n bernilai diskrit (kelas) berhingga seperti klasifikasi Terdapat urutan diantara elemen t n (skala ordinal) seperti regresi Permasalahan: menentukan fungsi regresi ordinal yang dapat mengklasifikasikan data dengan benar 10

Bentuk Umum Model linear yang digunakan sebagai fungsi regresi ordinal memiliki bentuk umum sbb: y(x) = w T φ(x) dimana x adalah vektor input, w adalah parameter bobot, dan φ(x) adalah fungsi pemetaan 11 Formulasi Masalah Diberikan data pembelajaran {x n, t n }, n = 1 sd N, dimana x n ϵ R D, dan t n ϵ {r 1, r 2,..., r P } adalah suatu skala ordinal. Permasalahan adalah menentukan fungsi y(x) sedemikian sehingga untuk sembarang pasangan data training (x i, t i ) dan (x j, t j ) maka y(x i ) > y(x j ) <==> t i > t j Contoh: Diberikan data training (x 1, 4), (x 2, 3), (x 3, 2), (x 4, 1), maka w 1 adalah fungsi yang benar 12

Formulasi Masalah Misal P adalah himpunan dari pasangan (i,j) dimana x i memiliki ranking yang lebih tinggi dari x j, yaitu P = {(i,j) : t i > t j } Contoh: dari contoh sebelumnya, maka P = {(1,2), (1,3), (1,4), (2,3), (2,4), (3,4)} Maka penentuan fungsi y(x) harus memenuhi kondisi berikut ini: i, j P : w T x i w T x j 13 Formulasi Masalah Asumsikan semua data dapat di ranking dengan benar (linearly rankable), maka jarak antara proyeksi dua data x i dan x j pada w adalah: Margin (δ i ) adalah jarak terdekat dari proyeksi dua data training pada vektor bobot w. Sehingga, memaksimumkan margin dapat dideskripsikan sbb: arg max w w T x i x j w { 1 w min [w T x i x j ]} i, j 14

Formulasi Masalah Solusi langsung dari masalah optimasi sebelumnya akan sangat kompleks, sehingga perlu dikonversi ke masalah yang ekivalen yang lebih mudah diselesaikan Salah satu metode adalah menggunakan bentuk kanonik, yaitu: w T x i x j =1 untuk data yang terdekat. Selanjutnya, semua data pembelajaran harus memenuhi kondisi berikut ini: w T x i x j 1 15 Formulasi Masalah Selanjutnya, masalah optimasi sebelumnya dapat disederhanakan menjadi memaksimum 1/ w yang ekivalen dengan meminimumkan w 2 Sehingga masalah optimasi-nya menjadi (bentuk primal) [1]: 1 arg min w 2 w 2 s.t i, j P : w T x i x j 1 Dengan kata lain, penentuan nilai parameter w menjadi masalah pemrograman kuadrat (quadratic programming), yaitu meminimumkan suatu fungsi kuadrat dengan syarat suatu pertidaksamaan linear 16

Soft Margin: Landasan Diberikan data pembelajaran {x n, t n }, n = 1 sd N, dimana x n ϵ R D, dan t n ϵ {r 1, r 2,..., r P } adalah suatu skala ordinal. Pada formulasi sebelumnya, semua data diasumsikan linearly rankable pada ruang fitur φ(x). Dalam aplikasi praktis, kondisi tersebut sering tidak dapat terpenuhi bahkan setelah data di transformasi ke ruang fitur φ(x). Masalah ini diatasi dengan membuat margin lunak (soft margin) yang memungkinkan beberapa data pada urutan yang salah 17 Soft Margin: Formulasi Masalah Untuk merealisasikan soft margin ini, diperkenalkan variabel slack, ξ ij 0, (i,j) ϵ P, dengan satu variabel slack untuk masingmasing pasangan data pembelajaran Variabel slack tersebut bernilai w T x i x j 1 ij Sehingga, ξ ij = 0 adalah pasangan data yang terletak pada margin atau diranking dengan benar, 0 < ξ ij 1 adalah pasangan data yang terletak didalam margin, dan ξ ij >1 adalah pasangan data yang salah ranking 18

Soft Margin: Formulasi Masalah Bentuk primal dari masalah optimasi untuk hard margin adalah: 1 arg min w 2 w 2 s.t i, j P : w T x i x j 1 sementara bentuk primal dari masalah optimasi untuk soft margin adalah: arg min w s.t. 1 2 w 2 C ij i, j P i, j P : w T x i x j 1 ij ij 0 dimana parameter C > 0 akan mengkontrol trade-off antara lebar margin (kapabilitas generalisasi) dan jumlah pasangan data training yang tertukar urutannya (kesalahan urutan) 19 Soft Margin: Formulasi Masalah Mentuk primal dari masalah optimasi untuk soft margin [1] adalah: arg min w s.t. 1 2 w 2 C ij i, j P i, j P : w T x i x j 1 ij ij 0 dimana parameter C > 0 akan mengkontrol trade-off antara lebar margin (kapabilitas generalisasi) dan jumlah pasangan data training yang tertukar urutannya (kesalahan urutan) Masalah optimisasi diatas tampak ekivalen dengan masalah optimisasi dari SVM untuk klasifikasi pada pasangan vektor jarak φ(x i ) - φ(x j ). Sehingga dapat diselesaikan dengan pendekatan yang digunakan oleh SVM untuk klasifikasi 20

Solusi Masalah: Lagrange Multipliers Untuk menyelesaikan pemrograman kuadrat tersebut, yaitu mencari titik stationer dari fungsi beberapa variabel dengan satu atau lebih kendala, digunakan perkalian Lagrange (Lagrange multipliers) a ij, µ ij 0 untuk membentuk fungsi Lagrangian (Lagrangian function) sbb: L w, a, = 1 2 w 2 C ij a ij {w T x i x j 1 ij } ij ij i, j P i, j P i, j P 21 Solusi Masalah: Lagrange Multipliers L w, a, = 1 2 w 2 C ij a ij {w T x i x j 1 ij } ij ij i, j P i, j P i, j P Dengan menurunkan L(w, a, µ) terhadap w sama dengan nol, maka: L w = w a ij x i x j = 0 i, j P w = a ij x i x j i, j P L ij = C a ij ij = 0 a ij = C ij 22

Solusi Masalah: Fungsi Kernel Substitusikan hasil turunan tsb ke persamaan Lagrangian, yaitu: L w, a, = 1 2 w 2 C ij a ij {w T x i x j 1 ij } ij ij i, j P i, j P i, j P sehingga menjadi: L a = 1 2 ij P uv P a ij a uv x i x j T x u x v ij P uv P = a ij 1 a ij P 2 ij a uv x i x j T x u x v ij P uv P = a ij 1 ij P 2 a ij a uv k x i x j, x u x v ij P uv P a ij a uv x i x j T x u x v a ij ij P 23 Solusi Masalah: Bentuk Dual Sehingga, bentuk dual dari masalah soft margin adalah: arg max a s.t. L a = ij P a ij 1 2 ij P 0 a ij C, ij P a ij a uv k x i x j, x u x v uv P 24

Solusi Masalah: Nilai Bobot Misal solusi dari pemrograman kuadrat bentuk dual tersebut adalah a *, maka: w = a ij x i x j ij P y x = w T x = a ij x i x j x = a ij k x i x j, x ij P ij P Hanya data dengan a ij* > 0 (support vectors) yang berperan pada fungsi regresi ordinal diatas, sehingga dapat ditulis menjadi: y x = a ij k x i x j, x ij S dimana S adalah himpunan pasangan indeks dari support vectors 25 Solusi Masalah: Karush-Kuhn-Tucker Karush-Kuhn-Tucker (KKT) conditions yang menyatakan bahwa solusi yang diperoleh adalah optimal, atau pada solusi tersebut variabel dan kendala dari bentuk dual bertemu, adalah sbb: a ij 0 y x ij 1 ij 0 a ij {y x ij 1 ij }= 0 ij 0 ij 0 ij ij = 0 [ KKT S1] [ KKT S2] [ KKT S3] [ KKT S4] [ KKT S5] [ KKT S6] 26

Solusi Masalah: Support Vectors Support vectors adalah data training dengan nilai a ij* > 0, maka dari [KKT-S3] w T x i x j =1 ij Jika a ij* < C, maka berdasarkan hasil turunan bahwa a ij = C μ ij maka μ ij > 0. Selanjutnya, berdasarkan [KKT-S6] μ ij ξ ij = 0 maka ξ ij = 0. Dengan kata lain adalah pasangan data training yang terletak pada margin Jika a ij* = C, maka μ ij = 0. Dari [KKT-S6] maka ξ ij 0. Dengan kata lain adalah pasangan data training yang terletak didalam margin (0 < ξ ij 1) atau salah ranking (ξ ij > 1) 27 Prediksi Data Baru Misal g(x) ϵ {r 1, r 2,..., r p } adalah skala ordinal, maka prediksi dari suatu data z adalah: Estimasi dari θ(r k ) diberikan oleh: dimana g z =r i y z [ r i 1, r i ] r k = y x 1 y x 2 2 x 1, x 2 = arg min x i, x j k [ y x i y x j ] k = { x i, x j t i =r k t j =r k 1 0 a ij C} 28

Algoritma & Perangkat Lunak Ada beberapa algoritma dan perangkat lunak yang telah dikembangkan untuk memecahkan masalah optimasi pada SVM untuk Regresi Ordinal, antara lain: SVM perf [2] (http://svmlight.joachims.org) 29 Referensi (1)R. Herbrich, T. Graepel, K. Obermayer. Large Margin Rank Boundaries for Ordinal Regression. Advances in Large Margin Classifiers, pp. 115-132, MIT Press, 2000 (2)T. Joachims. Training Linear SVMs in Linear Time. Proceeding of the ACM Conference on Knowledge Discovery and Data Mining, 2006