{"id":3061,"date":"2023-07-19T09:55:30","date_gmt":"2023-07-19T09:55:30","guid":{"rendered":"https:\/\/statorials.org\/id\/menyerang-sungai\/"},"modified":"2023-07-19T09:55:30","modified_gmt":"2023-07-19T09:55:30","slug":"menyerang-sungai","status":"publish","type":"post","link":"https:\/\/statorials.org\/id\/menyerang-sungai\/","title":{"rendered":"Cara menggunakan smote untuk data tidak seimbang di r (dengan contoh)"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\"><span style=\"color: #000000;\">Seringkali saat bekerja dengan <a href=\"https:\/\/statorials.org\/id\/regresi-vs.-klasifikasi\/\" target=\"_blank\" rel=\"noopener\">algoritme klasifikasi<\/a> pembelajaran mesin, kelas dalam kumpulan data menjadi tidak seimbang.<\/span><\/span><\/p>\n<p> <span style=\"color: #000000;\">Misalnya:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">Kumpulan data yang berisi informasi tentang apakah pemain perguruan tinggi direkrut ke NBA atau tidak mungkin memiliki 98% pemain yang belum direkrut dan 2% sedang direkrut.<\/span><\/li>\n<li> <span style=\"color: #000000;\">Kumpulan data yang berisi informasi apakah pasien menderita kanker atau tidak mungkin berisi 99% pasien tanpa kanker dan hanya 1% yang mengidap kanker.<\/span><\/li>\n<li> <span style=\"color: #000000;\">Kumpulan data yang berisi informasi penipuan bank mungkin berisi 96% transaksi sah dan 4% transaksi penipuan.<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Karena kelas-kelas yang tidak seimbang ini, model prediktif yang Anda buat mungkin tidak berfungsi dengan baik pada kelas minoritas.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Parahnya lagi, kelas minoritas sering kali menjadi kelas yang paling ingin kita prediksi.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Salah satu cara untuk mengatasi masalah ketidakseimbangan ini adalah dengan menggunakan <strong>teknik pengambilan sampel berlebihan minoritas sintetik<\/strong> , yang sering disingkat <strong>SMOTE<\/strong> .<\/span><\/p>\n<p> <span style=\"color: #000000;\">Teknik ini melibatkan pembuatan dataset baru dengan melakukan oversampling observasi dari kelas minoritas, sehingga menghasilkan dataset dengan kelas yang lebih seimbang.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Cara termudah untuk menggunakan SMOTE di R adalah dengan menggunakan fungsi <strong>SMOTE()<\/strong> dari paket <strong>DMwR<\/strong> .<\/span><\/p>\n<p> <span style=\"color: #000000;\"><span style=\"color: #000000;\">Fungsi ini menggunakan sintaks dasar berikut:<\/span><\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong>SMOTE(form, data, perc. <span style=\"color: #3366ff;\">over<\/span> = <span style=\"color: #008000;\">200<\/span> , perc. <span style=\"color: #3366ff;\">under<\/span> = <span style=\"color: #008000;\">200<\/span> , ...)\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Emas:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\"><strong>form<\/strong> : Rumus yang menjelaskan model yang ingin Anda adaptasi<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>data<\/strong> : Nama bingkai data<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>perc.over<\/strong> : Angka yang menentukan berapa banyak kasus tambahan dari kelas minoritas yang dihasilkan<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>perc.under<\/strong> : Angka yang menentukan berapa banyak kasus tambahan dari kelas mayoritas yang dihasilkan<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Contoh berikut menunjukkan cara menggunakan fungsi ini dalam praktiknya.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Contoh: Cara menggunakan SMOTE di R<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Misalkan kita memiliki kumpulan data berikut dengan 100 <a href=\"https:\/\/statorials.org\/id\/pengamatan-dalam-statistik\/\" target=\"_blank\" rel=\"noopener\">observasi<\/a> di R dimana 90 memiliki kelas &#8220;Ya&#8221; dan 10 memiliki kelas &#8220;Tidak&#8221; untuk variabel respon:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#make this example reproducible\n<\/span>set. <span style=\"color: #3366ff;\">seed<\/span> ( <span style=\"color: #008000;\">0<\/span> )\n\n<span style=\"color: #008080;\">#create data frame with one response variable and two predictor variables\n<\/span>df &lt;- data. <span style=\"color: #3366ff;\">frame<\/span> (y=rep(as. <span style=\"color: #3366ff;\">factor<\/span> (c(' <span style=\"color: #ff0000;\">Yes<\/span> ', ' <span style=\"color: #ff0000;\">No<\/span> ')), times=c( <span style=\"color: #008000;\">90<\/span> , <span style=\"color: #008000;\">10<\/span> )),\n                 x1=rnorm( <span style=\"color: #008000;\">100<\/span> ),\n                 x2=rnorm( <span style=\"color: #008000;\">100<\/span> ))\n\n<span style=\"color: #008080;\">#view first six rows of data frame\n<\/span>head(df)\n\n    y x1 x2\n1 Yes 1.2629543 0.7818592\n2 Yes -0.3262334 -0.7767766\n3 Yes 1.3297993 -0.6159899\n4 Yes 1.2724293 0.0465803\n5 Yes 0.4146414 -1.1303858\n6 Yes -1.5399500 0.5767188\n \n<span style=\"color: #008080;\">#view distribution of response variable\n<\/span>table(df$y)\n\n Drowned \n 10 90<\/strong><\/pre>\n<p> <span style=\"color: #000000;\"><span style=\"color: #000000;\">Ini adalah contoh klasik dari dataset yang tidak seimbang karena variabel respon yang kita prediksi memiliki 90 observasi dengan kelas \u201cYa\u201d dan hanya 10 observasi dengan kelas \u201cTidak\u201d.<\/span><\/span><\/p>\n<p> <span style=\"color: #000000;\">Untuk membuat dataset yang lebih seimbang, kita dapat menggunakan fungsi <strong>SMOTE()<\/strong> dari paket <strong>DMwR<\/strong> :<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008000;\">library<\/span> ( <span style=\"color: #000000;\">DMwR)\n\n<\/span><span style=\"color: #008080;\">#use SMOTE to create new dataset that is more balanced\n<\/span>new_df &lt;- SMOTE(y ~ ., df, perc. <span style=\"color: #3366ff;\">over<\/span> = <span style=\"color: #008000;\">2000<\/span> , perc. <span style=\"color: #3366ff;\">under<\/span> = <span style=\"color: #008000;\">400<\/span> )\n\n<span style=\"color: #008080;\">#view distribution of response variable in new dataset\n<\/span>table(new_df$y)\n\n Drowned \n210,800\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Dataset yang dihasilkan berisi 210 observasi dengan kelas \u201cTidak\u201d dan 800 observasi dengan kelas \u201cYa\u201d.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Inilah tepatnya bagaimana fungsi SMOTE menghasilkan kumpulan data baru ini:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">Argumen <strong>perc.over<\/strong> menetapkan bahwa kami ingin menambahkan 2000\/100 (atau 20) kali jumlah observasi minoritas yang ada ke kumpulan data. Karena ada 10 observasi di kumpulan data asli, kami menambahkan 20*10 = <strong>200 observasi minoritas tambahan<\/strong> .<\/span><\/li>\n<li> <span style=\"color: #000000;\">Argumen <strong>perc.under<\/strong> menetapkan bahwa kami ingin membuat jumlah observasi mayoritas sama dengan 400\/100 (atau 4) kali jumlah observasi minoritas yang ditambahkan ke observasi minoritas yang ada. Karena 200 observasi minoritas tambahan ditambahkan, kami membuat jumlah observasi mayoritas sama dengan 200 * 4 = <strong>800 observasi mayoritas<\/strong> .<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Hasil akhirnya adalah dataset yang masih berisi lebih banyak kelas mayoritas, namun masih lebih seimbang dibandingkan dataset aslinya.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Anda sekarang dapat mengadaptasi algoritma klasifikasi pilihan Anda ke kumpulan data baru ini, yang seharusnya memiliki kinerja lebih baik pada kelas minoritas karena terdapat lebih banyak observasi dari kelas minoritas dalam kumpulan data baru ini.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>Catatan<\/strong> : Silakan bermain-main dengan argumen <strong>perc.over<\/strong> dan <strong>perc.under<\/strong> di fungsi SMOTE untuk mendapatkan kumpulan data yang sesuai dengan kebutuhan Anda.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Sumber daya tambahan<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Tutorial berikut menjelaskan cara melakukan tugas umum lainnya di R:<\/span><\/p>\n<p> <a href=\"https:\/\/statorials.org\/id\/tabel-ringkasan-di-r\/\" target=\"_blank\" rel=\"noopener\">Cara membuat tabel ringkasan di R<\/a><br \/> <a href=\"https:\/\/statorials.org\/id\/cara-menormalkan-data-di-r\/\" target=\"_blank\" rel=\"noopener\">Cara menormalkan data di R<\/a><br \/> <a href=\"https:\/\/statorials.org\/id\/menghapus-outlier-r\/\" target=\"_blank\" rel=\"noopener\">Cara menghilangkan outlier di R<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Seringkali saat bekerja dengan algoritme klasifikasi pembelajaran mesin, kelas dalam kumpulan data menjadi tidak seimbang. Misalnya: Kumpulan data yang berisi informasi tentang apakah pemain perguruan tinggi direkrut ke NBA atau tidak mungkin memiliki 98% pemain yang belum direkrut dan 2% sedang direkrut. Kumpulan data yang berisi informasi apakah pasien menderita kanker atau tidak mungkin berisi [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Cara Menggunakan SMOTE untuk Data Tidak Seimbang di R (dengan Contoh) - Statorials<\/title>\n<meta name=\"description\" content=\"Tutorial ini menjelaskan cara menggunakan SMOTE untuk data tidak seimbang di R, termasuk contoh lengkapnya.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/statorials.org\/id\/menyerang-sungai\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cara Menggunakan SMOTE untuk Data Tidak Seimbang di R (dengan Contoh) - Statorials\" \/>\n<meta property=\"og:description\" content=\"Tutorial ini menjelaskan cara menggunakan SMOTE untuk data tidak seimbang di R, termasuk contoh lengkapnya.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/id\/menyerang-sungai\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-19T09:55:30+00:00\" \/>\n<meta name=\"author\" content=\"Benjamin anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Ditulis oleh\" \/>\n\t<meta name=\"twitter:data1\" content=\"Benjamin anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/statorials.org\/id\/menyerang-sungai\/\",\"url\":\"https:\/\/statorials.org\/id\/menyerang-sungai\/\",\"name\":\"Cara Menggunakan SMOTE untuk Data Tidak Seimbang di R (dengan Contoh) - Statorials\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/id\/#website\"},\"datePublished\":\"2023-07-19T09:55:30+00:00\",\"dateModified\":\"2023-07-19T09:55:30+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81\"},\"description\":\"Tutorial ini menjelaskan cara menggunakan SMOTE untuk data tidak seimbang di R, termasuk contoh lengkapnya.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/id\/menyerang-sungai\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/id\/menyerang-sungai\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/id\/menyerang-sungai\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/statorials.org\/id\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cara menggunakan smote untuk data tidak seimbang di r (dengan contoh)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/statorials.org\/id\/#website\",\"url\":\"https:\/\/statorials.org\/id\/\",\"name\":\"Statorials\",\"description\":\"Panduan anda untuk kompetensi statistik!\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/statorials.org\/id\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"id\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81\",\"name\":\"Benjamin anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/statorials.org\/id\/#\/schema\/person\/image\/\",\"url\":\"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"contentUrl\":\"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"caption\":\"Benjamin anderson\"},\"description\":\"Halo, saya Benjamin, pensiunan profesor statistika yang menjadi guru Statorial yang berdedikasi. Dengan pengalaman dan keahlian yang luas di bidang statistika, saya ingin berbagi ilmu untuk memberdayakan mahasiswa melalui Statorials. Baca selengkapnya\",\"sameAs\":[\"http:\/\/statorials.org\/id\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Cara Menggunakan SMOTE untuk Data Tidak Seimbang di R (dengan Contoh) - Statorials","description":"Tutorial ini menjelaskan cara menggunakan SMOTE untuk data tidak seimbang di R, termasuk contoh lengkapnya.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/statorials.org\/id\/menyerang-sungai\/","og_locale":"id_ID","og_type":"article","og_title":"Cara Menggunakan SMOTE untuk Data Tidak Seimbang di R (dengan Contoh) - Statorials","og_description":"Tutorial ini menjelaskan cara menggunakan SMOTE untuk data tidak seimbang di R, termasuk contoh lengkapnya.","og_url":"https:\/\/statorials.org\/id\/menyerang-sungai\/","og_site_name":"Statorials","article_published_time":"2023-07-19T09:55:30+00:00","author":"Benjamin anderson","twitter_card":"summary_large_image","twitter_misc":{"Ditulis oleh":"Benjamin anderson","Estimasi waktu membaca":"3 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/statorials.org\/id\/menyerang-sungai\/","url":"https:\/\/statorials.org\/id\/menyerang-sungai\/","name":"Cara Menggunakan SMOTE untuk Data Tidak Seimbang di R (dengan Contoh) - Statorials","isPartOf":{"@id":"https:\/\/statorials.org\/id\/#website"},"datePublished":"2023-07-19T09:55:30+00:00","dateModified":"2023-07-19T09:55:30+00:00","author":{"@id":"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81"},"description":"Tutorial ini menjelaskan cara menggunakan SMOTE untuk data tidak seimbang di R, termasuk contoh lengkapnya.","breadcrumb":{"@id":"https:\/\/statorials.org\/id\/menyerang-sungai\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/id\/menyerang-sungai\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/id\/menyerang-sungai\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/statorials.org\/id\/"},{"@type":"ListItem","position":2,"name":"Cara menggunakan smote untuk data tidak seimbang di r (dengan contoh)"}]},{"@type":"WebSite","@id":"https:\/\/statorials.org\/id\/#website","url":"https:\/\/statorials.org\/id\/","name":"Statorials","description":"Panduan anda untuk kompetensi statistik!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/statorials.org\/id\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"id"},{"@type":"Person","@id":"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81","name":"Benjamin anderson","image":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/statorials.org\/id\/#\/schema\/person\/image\/","url":"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","contentUrl":"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","caption":"Benjamin anderson"},"description":"Halo, saya Benjamin, pensiunan profesor statistika yang menjadi guru Statorial yang berdedikasi. Dengan pengalaman dan keahlian yang luas di bidang statistika, saya ingin berbagi ilmu untuk memberdayakan mahasiswa melalui Statorials. Baca selengkapnya","sameAs":["http:\/\/statorials.org\/id"]}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"_links":{"self":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/posts\/3061"}],"collection":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/comments?post=3061"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/posts\/3061\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/media?parent=3061"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/categories?post=3061"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/tags?post=3061"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}