Apa perbedaan antara deteksi outlier dan deteksi anomali?

8

Saya ingin mengetahui perbedaan dalam hal aplikasi (mis. Mana yang merupakan deteksi penipuan kartu kredit?) Dan dalam hal teknik yang digunakan.

Makalah contoh yang mendefinisikan tugas akan diterima.

Martin Thoma
sumber
Apakah Anda sudah melihat ini? stats.stackexchange.com/questions/189664/… . Sepertinya jawaban untuk pertanyaan Anda ada di sana.
moh
@Moh saya sudah melihatnya dan saya pikir jawabannya tidak terlalu jelas. Inilah mengapa saya meminta aplikasi dan teknik untuk dimasukkan dalam jawaban atas pertanyaan saya.
Martin Thoma
Terutama sepertinya tidak ada konsensus jika kedua istilah tersebut memiliki arti yang berbeda atau tidak. Mari kita lihat apakah komunitas ini menemukan sumber daya konsensus / otoritatif.
Martin Thoma

Jawaban:

7

Secara fundamental tidak ada perbedaan. Katakanlah Anda memiliki data dan Anda ingin membangun modelnya. Seperti namanya, pemodelan adalah tentang menemukan model, yaitu representasi data Anda yang disederhanakan. Pada gilirannya, kita dapat melihat model sebagai proses mendasar yang menghasilkan data Anda di tempat pertama, ditambah beberapa kebisingan. Dari sudut pandang itu, data yang Anda lihat dihasilkan oleh model - dan kita dapat mengatakan bahwa beberapa titik yang Anda lihat lebih kecil kemungkinannya dihasilkan oleh model Anda daripada yang lain.

Misalnya, jika Anda membangun model regresi linier, poin yang jauh dari garis regresi cenderung dihasilkan oleh model. Itulah yang dimaksud orang ketika mereka berbicara tentang 'residu' dalam bahasa statistik normal. Ini juga disebut kemungkinan data.

Poin data yang memiliki kemungkinan rendah, sesuai dengan model yang Anda buat, adalah anomali atau outlier. Dari sudut pandang pembuatan model, mereka adalah hal yang sama.

Bahasa sehari-hari, orang menggunakan istilah 'outlier' yang berarti "sesuatu yang harus saya hapus dari dataset sehingga tidak condong model saya saya sedang membangun", biasanya karena mereka memiliki firasat bahwa ada sesuatu yang salah dengan data dan model yang ingin mereka bangun seharusnya tidak perlu memperhitungkannya. Pencari sering dianggap sebagai penghalang untuk membangun model yang menggambarkan data secara keseluruhan - hanya karena model tersebut JUGA akan mencoba menjelaskan pencilan, yang bukan yang diinginkan oleh praktisi.

Di sisi lain, Anda dapat menggunakan fakta bahwa model juga memberikan kemungkinan untuk setiap titik data untuk keuntungan Anda - mungkin membangun model yang menggambarkan tren yang lebih sederhana dalam data, dan kemudian secara aktif mencari nilai yang ada atau baru yang memiliki kemungkinan rendah. Inilah yang orang maksud ketika mereka mengatakan 'anomali'. Jika tujuan Anda adalah mendeteksi anomali, terutama dalam data baru, ini adalah hal yang hebat. Pencilan satu orang adalah anomali orang lain!

tom
sumber
7

(Saya sebenarnya ingin menulis ini sebagai jawaban untuk pertanyaan yang divalidasi Cross: Perbedaan antara Anomali dan Outlier , tetapi pertanyaannya terlindungi - saya pikir menjawabnya di sini harus baik-baik saja, meskipun visibilitasnya lebih rendah)

Orang-orang kadang-kadang berpendapat bahwa tidak ada perbedaan antara pencilan dan anomali dengan mengutip Charu Aggarwal, penulis Buku "Analisis Pencilan" - khususnya, pernyataan ini:

Pencilan juga disebut sebagai ketidaknormalan , ketidaksesuaian , penyimpangan , atau anomali dalam penambangan data dan literatur statistik.

(Sumber: "Analisis Pencilan" (Springer), Charu Aggarwal, 2017, http://charuaggarwal.net/outlierbook.pdf )

Namun, pernyataan ini tidak menyiratkan bahwa outlier dan anomali adalah hal yang sama - analog dengan mengatakan bahwa "Anjing kadang-kadang disebut sebagai hewan" tidak berarti bahwa mereka adalah hal yang sama.

Sulit untuk memberikan definisi formal tentang persyaratan tersebut. The Wikipedia Halaman tentang outlier mengacu pada halaman Wikipedia tentang deteksi anomali dan sebaliknya, dan mereka berdua mengandung banyak kemungkinan definisi dan interpretasi dari istilah. Keadaan menjadi lebih buruk karena definisi domain khusus dan bahasa sehari-hari, di mana tampaknya cukup ketika dua orang dari bidang yang sama secara kasar mengetahui apa yang dibicarakan orang lain ...

Namun, Varun Chandola mencoba memberikan makna yang lebih tepat untuk istilah "anomali" dalam survei deteksi anomali. Khususnya, ia mengklasifikasikan anomali menjadi tiga kategori:

  • Anomali poin: Sebuah instance data individu dapat dianggap sebagai anomali sehubungan dengan sisa data
  • Anomali Kontekstual: Jika instance data anomali dalam konteks tertentu (tetapi tidak sebaliknya)
  • Anomali Kolektif: Jika kumpulan instance data terkait tidak normal sehubungan dengan seluruh kumpulan data

(Dirangkum dari "Anomaly Detection - A Survey", Varun Chandola et al, ACM Computing Survey 2009, http://cucis.ece.northwestern.edu/projects/DMS/publications/AnomalyDetection.pdf )


Di sini, istilah "anomali titik" tampaknya paling dekat dengan apa yang saya anggap sebagai definisi yang mungkin dari kata "outlier". Dan ini sejalan dengan pernyataan Aggarwal: Pencilan adalah anomali. Tetapi tidak setiap anomali adalah pencilan.

(Yang terakhir mungkin tergantung pada definisi kata outlier. Tentu saja, seseorang dapat mendefinisikannya pada tingkat meta, dan mengatakan bahwa outlier adalah apa pun yang terdeteksi oleh algoritma (atau model) outlier tertentu. Tetapi sebagian besar definisi yang Saya temui sejauh ini didasarkan pada semacam "jarak", "perbedaan", atau "perbedaan" dari "mayoritas" elemen data lainnya. Kedengarannya masuk akal ...)

Contoh: Mungkin ada beberapa titik data:

14.5, 14.2, 14.4, 14.4, 14.4, 14.4, 14.4, 14.4, 14.4, 14.3, 14.2, 14.6

Seseorang dapat menghitung rata-rata dan standar deviasi dan akan mengalami kesulitan berdebat mengapa salah satu dari poin-poin ini harus menjadi "pencilan".

Untuk urutan titik data seperti ini

14.5, 14.2, 14.4, 14.4, -64564.4, 14.4, 14.4, 14.4, 14.4, 14.3, 14.2, 14.6

melihat "pencilan" seharusnya mudah.

Namun, dengan asumsi bahwa urutan pertama menggambarkan, misalnya, rata-rata suhu di luar setiap hari, fakta bahwa persis suhu rata-rata yang sama dari14.4 derajat diukur selama seminggu penuh tentunya dapat dianggap sebagai "anomali".

(Mungkin "anomali kolektif" menurut definisi di atas, tapi saya tidak akan berdebat tentang itu ...)


Meskipun saya bingung ketika berdebat tentang makna yang tepat atau intuitif dari istilah-istilah tertentu (karena saya bukan ahli ilmu data atau penutur asli bahasa Inggris), ini akan berarti bahwa "anomali" adalah istilah yang jauh lebih luas daripada "outlier". ". Tapi mungkin komunitas ilmu data hanya dalam proses memilah definisi yang tepat dari istilah-istilah ini.

Memperbarui:

Mungkin firasat saya tentang arti harfiah dari kata-kata tertentu salah. Tetapi bagi saya, kata "outlier" tampaknya mengatakan "berbaring di suatu tempat di luar (atau jauh dari) sesuatu (berdasarkan ukuran jarak)". Dalam pengertian itu, huruf 14.4s dalam contoh pertama bukanlah "outlier" per se. Tapi tentu saja, hal-hal menjadi rumit dengan sangat cepat di sini: Orang dapat membayangkan model untuk data yang berisi jumlah hari berturut-turut dengan suhu yang sama (seperti dalam pengkodean run run ). Menghitung model ini untuk data yang diberikan akan menghasilkan

1 * 14.5
1 * 14.2
7 * 14.4
1 * 14.3
1 * 14.2
1 * 14.6

di mana nilai 7 tidak memiliki jarak yang besar (perbedaan) dengan nilai-nilai lain dalam model. Jadi "anomali kolektif" selama 7 hari berturut-turut dengan suhu yang sama telah berubah menjadi "titik anomali" oleh transformasi ini.

Marco13
sumber
Sangat informatif. Apa yang menahan kita dari menggunakan "pencilan poin", "pencilan kontekstual", dan "pencilan kolektif"? Saya pikir tidak ada yang memaksa perbedaan.
Esmailian
@Esmailian Saya pikir perbedaan antara "outlier" dan "anomali" bisa masuk akal. Tetapi memberikan definisi yang tepat dari masing-masing istilah ini yang berlaku dalam setiap konteks bisa sulit (atau mungkin tidak mungkin). Saya menambahkan Pembaruan singkat yang menunjukkan apa interpretasi / definisi saya dari kata "outlier" itu, dan betapa sulitnya untuk menerapkan definisi seperti itu dengan ketat ...
Marco13
Masalahnya adalah bahwa ini adalah interpretasi subyektif. Jika Anda bisa menggarisbawahi perbedaannya dengan kutipan yang tepat, itu akan jauh lebih membantu.
Kode Paus
@CodePope Apa sebenarnya rujukan ini? Saya menambahkan empat "kutipan", dalam hal ini, tetapi menunjukkan bahwa bahkan definisi yang paling banyak digunakan tidak jelas dan kadang-kadang bahkan saling bertentangan.
Marco13
Tentu saja, Anda menambahkan empat kutipan, tetapi tidak satu pun dari mereka mengatakan bahwa ada perbedaan antara pencilan dan anomali atau bahwa pencilan adalah subelement dari anomali. Selain itu, tidak ada kutipan dan makalah lain yang saya baca setuju dengan interpretasi Anda bahwa outlier adalah anomali poin. Ini adalah intuisi umum bahwa outlier adalah poin tunggal, tetapi ini bukan definisi formal yang menyiratkan. Sebagai contoh: "Pengamatan (atau subset pengamatan) yang tampaknya tidak konsisten dengan sisa set data itu." (Barnet dan Lewis - 1994)
Code Paus
0

Sebuah outlier adalah titik data yang keluar dari biasa relatif.

Sebuah anomali adalah kasus khusus dari outlier, mereka bisa memiliki informasi khusus / berguna atau alasan.

jatin gupta
sumber