Transformasi Fitur pada Input data


22

Saya sedang membaca tentang solusi untuk tantangan OTTO Kaggle ini dan solusi tempat pertama tampaknya menggunakan beberapa transformasi untuk input data X, misalnya Log (X + 1), sqrt (X + 3/8), dll. Apakah ada pedoman umum tentang kapan menerapkan transformasi jenis apa ke berbagai pengklasifikasi?

Saya mengerti konsep normalisasi mean-var dan min-max. Namun, untuk transformasi di atas, tebakan saya adalah bahwa Log dan Sqrt digunakan untuk mengompresi rentang dinamis data. Dan pergeseran x-axis hanya untuk memasukkan kembali data. Namun, penulis memilih untuk menggunakan metode normalisasi yang berbeda untuk input X yang sama ketika memasukkan ke dalam pengklasifikasi berbeda. Ada ide?


1
Tidak tahu apa yang mungkin menyarankan formula semacam itu, tetapi Anda mungkin ingin melihat transformasi kotak-cox, yang menyarankan eksponen untuk variabel.
anymous.asker

Jawaban:


19

Kami menyukai bentuk normal

Dalam sebagian besar kasus, kami berusaha membuat mereka bertindak seperti biasa. Ini bukan sudut pandang pengklasifikasian tetapi tampilan ekstraksi fiturnya!

Transformasi yang mana ?

Kriteria utama dalam memilih transformasi adalah: apa yang berhasil dengan data? Seperti yang ditunjukkan oleh contoh di atas, penting untuk mempertimbangkan juga dua pertanyaan.

Apa yang masuk akal secara fisik (biologis, ekonomi, apa pun), misalnya dalam hal membatasi perilaku karena nilai menjadi sangat kecil atau sangat besar? Pertanyaan ini sering mengarah pada penggunaan logaritma.

Bisakah kita menjaga dimensi dan unit tetap sederhana dan nyaman? Jika memungkinkan, kami lebih memilih skala pengukuran yang mudah dipikirkan.

Akar kubus volume dan akar kuadrat dari suatu daerah keduanya memiliki dimensi panjang, sejauh ini jauh dari masalah rumit, transformasi seperti itu dapat menyederhanakannya. Timbal balik biasanya memiliki unit sederhana, seperti yang disebutkan sebelumnya. Namun, sering kali, unit yang agak rumit adalah pengorbanan yang harus dilakukan.

Kapan Menggunakan Apa ?

Transformasi yang paling berguna dalam analisis data pengantar adalah timbal balik, logaritma, akar pangkat tiga, akar kuadrat, dan kuadrat. Dalam apa yang berikut, bahkan ketika tidak ditekankan, seharusnya transformasi hanya digunakan pada rentang di mana mereka menghasilkan bilangan real (terbatas) sebagai hasil.

  • Timbal Balik : Timbal balik, x ke 1 / x, dengan saudara kandungnya, timbal balik negatif, x hingga -1 / x, adalah transformasi yang sangat kuat dengan efek drastis pada bentuk distribusi. Itu tidak bisa diterapkan ke nilai nol. Meskipun dapat diterapkan ke nilai negatif, itu tidak berguna kecuali semua nilai positif. Kebalikan dari suatu rasio seringkali dapat ditafsirkan semudah rasio itu sendiri: Contoh:
    • kepadatan populasi (orang per unit area) menjadi area per orang
    • orang per dokter menjadi dokter per orang
    • tingkat erosi menjadi waktu untuk mengikis kedalaman unit

(Dalam praktiknya, kami mungkin ingin melipatgandakan atau membagi hasil pengambilan resiprokal dengan beberapa konstanta, seperti 1000 atau 10000, untuk mendapatkan angka yang mudah dikelola, tetapi itu sendiri tidak berpengaruh pada kemiringan atau linearitas.)

Timbal balik membalikkan urutan di antara nilai-nilai dari tanda yang sama: terbesar menjadi terkecil, dll. Timbal balik negatif mempertahankan ketertiban di antara nilai-nilai dari tanda yang sama.


  • Logaritma : Logaritma, x log 10 x, atau x log ex atau ln x, atau x log 2 x, adalah transformasi yang kuat dengan efek besar pada bentuk distribusi. Ini biasanya digunakan untuk mengurangi kemiringan kanan dan seringkali sesuai untuk variabel yang diukur. Itu tidak dapat diterapkan ke nilai nol atau negatif. Satu unit pada skala logaritmik berarti perkalian dengan basis logaritma yang digunakan. Pertumbuhan atau penurunan eksponensial.

    • y=aexp(bx)

lny=lna+bxx=0y=aexp(0)=a sehingga a adalah jumlah atau jumlah ketika x = 0. Jika a dan b> 0, maka y tumbuh pada laju yang lebih cepat dan lebih cepat (misalnya bunga majemuk atau pertumbuhan populasi yang tidak diperiksa), sedangkan jika a> 0 dan b <0, y menurun pada laju yang lebih lambat dan lebih lambat (mis. peluruhan radioaktif).


  • Fungsi daya :
  • y=axblogy=loga+blogx
    x=0b>0

  • y=axb=0

    • Pertimbangkan rasio y = p / q di mana p dan q keduanya positif dalam praktiknya.
  • Contohnya adalah:

    • Laki-laki / perempuan
    • Tanggungan / Pekerja
    • Panjang hilir / panjang Downvalley
  • Maka y adalah suatu tempat antara 0 dan tak terbatas, atau dalam kasus terakhir, antara 1 dan tak hingga. Jika p = q, maka y = 1. Definisi seperti itu sering mengarah pada data yang miring, karena ada batas bawah yang jelas dan tidak ada batas atas yang jelas. Logaritma, bagaimanapun, yaitu

  • log y = log p / q = log p - log q, berada di antara -infinity dan infinity dan p = q berarti log y = 0. Karenanya logaritma rasio seperti itu kemungkinan akan lebih terdistribusi secara simetris.


  • Root cube: Root cube, x 1/3 . Ini adalah transformasi yang cukup kuat dengan efek substansial pada bentuk distribusi: ini lebih lemah daripada logaritma. Ini juga digunakan untuk mengurangi kemiringan yang benar, dan memiliki keuntungan yang dapat diterapkan pada nilai nol dan negatif. Perhatikan bahwa akar kubus volume memiliki satuan panjang. Ini biasanya diterapkan pada data curah hujan.

    • Penerapan nilai negatif memerlukan catatan khusus. Pertimbangkan
      (2) (2) (2) = 8 dan (-2) (- 2) (- 2) = -8. Contoh-contoh ini menunjukkan bahwa
      akar pangkat tiga dari angka negatif memiliki tanda negatif dan nilai
      absolut yang sama dengan akar pangkat tiga dari angka positif yang setara. Properti serupa dimiliki oleh root lain yang kekuatannya merupakan
      kebalikan dari bilangan bulat positif ganjil (kekuatan 1/3, 1/5, 1/7, dll.)

    • Properti ini agak halus. Misalnya, ubah daya hanya smidgen dari 1/3, dan kami tidak dapat lagi mendefinisikan hasilnya sebagai produk dengan tepat tiga istilah. Namun, properti itu ada untuk dieksploitasi jika berguna.


  • x(1/2)

  • x2

    y=a+bx+cx2



    kuadratik biasanya digunakan semata-mata karena mereka dapat meniru
    hubungan dalam wilayah data. Di luar wilayah itu mereka mungkin
    berperilaku sangat buruk, karena mereka mengambil nilai-nilai besar yang sewenang-wenang untuk nilai-nilai ekstrim x, dan kecuali intersep a dibatasi menjadi 0, mereka mungkin berperilaku tidak realistis dekat dengan asal.
    • (x)2x2


terima kasih untuk kirimannya. sangat membantu. dapatkah Anda menambahkannya dengan beberapa contoh dan angka yang menggambarkan bagaimana ia mengubah data asli menjadi data yang dapat dipisahkan?
Mvkt

1
@ svk: Saya baru saja diformat dengan cara yang bisa dimengerti, saya pikir hadi adalah orang yang menulis jawabannya. Jika tebakan saya benar, dia mungkin telah menyalin dari beberapa buku. Mari kita lihat apakah dia membalas / menyarankan sesuatu. Lain akan menulis jawaban
Toros91

2
seperti @ Toros91 katakan, Ini adalah kombinasi dari berbagai sumber, saya sangat merekomendasikan untuk melihat Cara Memenangkan Kompetisi Ilmu Data: Belajar dari Top Kagglers dan juga stata docs
hadi gharibi

alrite. walaupun bisa salah satu dari kalian tolong memposting beberapa contoh kode dalam python atau matlab tentang bagaimana mengubah sumbu x menjadi sq.root atau skala akar kubus. matlab memiliki plot loglog untuk skala log. tetapi untuk skala lain, akan sangat membantu untuk memiliki plot dengan sumbu yang ditransformasikan ini
Mvkt

1

Yang spesifik ini bisa menjadi heuristik murni. Untuk gambar meskipun ini cukup standar: ubah RGB ke BGR dan kurangi rata-rata dari setiap piksel. Ini digunakan di semua kontes / dataset seperti Imagenet, Pascal VOC, MS COCO. Alasannya adalah bahwa jaringan disajikan dengan dataset standar, karena semua gambar bisa sangat berbeda.


0

Sama di sini - tidak tahu, belum pernah melihat ini sebelumnya. Saya kira mereka mencoba berbagai transformasi dan memilih yang paling berhasil. Karena dalam laporan mereka mengatakan bahwa beberapa transformasi lain juga akan baik-baik saja.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.