{"id":1196,"date":"2023-07-27T08:14:05","date_gmt":"2023-07-27T08:14:05","guid":{"rendered":"https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/"},"modified":"2023-07-27T08:14:05","modified_gmt":"2023-07-27T08:14:05","slug":"regresi-puncak-dengan-python","status":"publish","type":"post","link":"https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/","title":{"rendered":"Regresi ridge dengan python (langkah demi langkah)"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\"><a href=\"https:\/\/statorials.org\/id\/regresi-punggungan\/\" target=\"_blank\" rel=\"noopener noreferrer\">Regresi ridge<\/a> adalah metode yang dapat kita gunakan untuk menyesuaikan model regresi ketika terdapat <a href=\"https:\/\/statorials.org\/id\/regresi-multikolinearitas\/\" target=\"_blank\" rel=\"noopener noreferrer\">multikolinearitas<\/a> dalam data.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Singkatnya, regresi kuadrat terkecil berupaya menemukan estimasi koefisien yang meminimalkan jumlah sisa kuadrat (RSS):<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>RSS = \u03a3(y <sub>saya<\/sub> \u2013 \u0177 <sub>saya<\/sub> )2<\/strong><\/span><\/p>\n<p> <span style=\"color: #000000;\">Emas:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\"><strong>\u03a3<\/strong> : Simbol Yunani yang berarti <em>jumlah<\/em><\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>y <sub>i<\/sub><\/strong> : nilai respon sebenarnya untuk observasi <sup>ke-i<\/sup><\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>\u0177 <sub>i<\/sub><\/strong> : Nilai respons yang diprediksi berdasarkan model regresi linier berganda<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Sebaliknya, regresi ridge berupaya meminimalkan hal-hal berikut:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>RSS + \u03bb\u03a3\u03b2 <sub>j<\/sub> <sup>2<\/sup><\/strong><\/span><\/p>\n<p> <span style=\"color: #000000;\">dimana <em>j<\/em> beralih dari 1 ke <em>p<\/em> variabel prediktor dan \u03bb \u2265 0.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Suku kedua dalam persamaan ini dikenal sebagai <em>penalti penarikan<\/em> . Dalam regresi ridge, kami memilih nilai \u03bb yang menghasilkan uji MSE (mean square error) serendah mungkin.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Tutorial ini memberikan contoh langkah demi langkah tentang cara melakukan regresi ridge dengan Python.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Langkah 1: Impor paket yang diperlukan<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Pertama, kita akan mengimpor paket yang diperlukan untuk melakukan regresi ridge dengan Python:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <span style=\"color: #000000;\"><strong><span style=\"color: #008000;\">import<\/span> pandas <span style=\"color: #008000;\">as<\/span> pd\n<span style=\"color: #008000;\">from<\/span> numpy <span style=\"color: #008000;\">import<\/span> arange\n<span style=\"color: #008000;\">from<\/span> sklearn. <span style=\"color: #3366ff;\">linear_model<\/span> <span style=\"color: #008000;\">import<\/span> Ridge\n<span style=\"color: #008000;\">from<\/span> sklearn. <span style=\"color: #3366ff;\">linear_model<\/span> <span style=\"color: #008000;\">import<\/span> RidgeCV\n<span style=\"color: #008000;\">from<\/span> sklearn. <span style=\"color: #3366ff;\">model_selection<\/span> <span style=\"color: #008000;\">import<\/span> RepeatedKFold<\/strong><\/span><\/pre>\n<h3> <span style=\"color: #000000;\"><strong>Langkah 2: Muat data<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Untuk contoh ini, kita akan menggunakan kumpulan data bernama <strong>mtcars<\/strong> , yang berisi informasi tentang 33 mobil berbeda. Kita akan menggunakan <strong>hp<\/strong> sebagai variabel respon dan variabel berikut sebagai prediktor:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">mpg<\/span><\/li>\n<li> <span style=\"color: #000000;\">berat<\/span><\/li>\n<li> <span style=\"color: #000000;\">kotoran<\/span><\/li>\n<li> <span style=\"color: #000000;\">qdetik<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Kode berikut menunjukkan cara memuat dan menampilkan kumpulan data ini:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <span style=\"color: #000000;\"><strong><span style=\"color: #008080;\">#define URL where data is located<\/span>\nurl = \"https:\/\/raw.githubusercontent.com\/Statorials\/Python-Guides\/main\/mtcars.csv\"\n\n<span style=\"color: #008080;\">#read in data<\/span>\ndata_full = pd. <span style=\"color: #3366ff;\">read_csv<\/span> (url)\n\n<span style=\"color: #008080;\">#select subset of data\n<\/span>data = data_full[[\"mpg\", \"wt\", \"drat\", \"qsec\", \"hp\"]]\n\n<span style=\"color: #008080;\">#view first six rows of data<\/span>\ndata[0:6]\n\n\tmpg wt drat qsec hp\n0 21.0 2.620 3.90 16.46 110\n1 21.0 2.875 3.90 17.02 110\n2 22.8 2.320 3.85 18.61 93\n3 21.4 3.215 3.08 19.44 110\n4 18.7 3,440 3.15 17.02 175\n5 18.1 3.460 2.76 20.22 105<\/strong><\/span><\/pre>\n<h3> <span style=\"color: #000000;\"><strong>Langkah 3: Sesuaikan Model Regresi Ridge<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Selanjutnya, kita akan menggunakan fungsi <a href=\"https:\/\/scikit-learn.org\/stable\/modules\/generated\/sklearn.linear_model.RidgeCV.html\" target=\"_blank\" rel=\"noopener noreferrer\">RidgeCV()<\/a> sklearn agar sesuai dengan model regresi ridge dan menggunakan fungsi <a href=\"https:\/\/scikit-learn.org\/stable\/modules\/generated\/sklearn.model_selection.RepeatedKFold.html\" target=\"_blank\" rel=\"noopener noreferrer\">RepeatedKFold()<\/a> untuk melakukan validasi silang k-fold guna menemukan nilai alpha optimal yang akan digunakan untuk istilah penalti.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><em><strong>Catatan:<\/strong> Istilah &#8220;alpha&#8221; digunakan sebagai pengganti &#8220;lambda&#8221; di Python.<\/em><\/span><\/p>\n<p> <span style=\"color: #000000;\">Untuk contoh ini, kita akan memilih k = 10 kali lipat dan mengulangi proses validasi silang sebanyak 3 kali.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Perhatikan juga bahwa RidgeCV() hanya menguji nilai alfa 0,1, 1, dan 10 secara default. Namun, kita dapat mengatur rentang alpha kita sendiri dari 0 hingga 1 dengan kelipatan 0,01:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <span style=\"color: #000000;\"><strong><span style=\"color: #008080;\">#define predictor and response variables\n<\/span>X = data[[\"mpg\", \"wt\", \"drat\", \"qsec\"]]\ny = data[\"hp\"]\n\n<span style=\"color: #008080;\">#define cross-validation method to evaluate model\n<\/span>cv = RepeatedKFold(n_splits= <span style=\"color: #008000;\">10<\/span> , n_repeats= <span style=\"color: #008000;\">3<\/span> , random_state= <span style=\"color: #008000;\">1<\/span> )\n\n<span style=\"color: #008080;\">#define model\n<\/span>model = RidgeCV(alphas= <span style=\"color: #3366ff;\">arange<\/span> (0, 1, 0.01), cv=cv, scoring=' <span style=\"color: #008000;\">neg_mean_absolute_error<\/span> ')\n\n<span style=\"color: #008080;\">#fit model\n<\/span>model. <span style=\"color: #3366ff;\">fit<\/span> (x,y)\n\n<span style=\"color: #008080;\">#display lambda that produced the lowest test MSE\n<\/span>print( <span style=\"color: #3366ff;\">model.alpha_<\/span> )\n\n0.99<\/strong><\/span><\/pre>\n<p> <span style=\"color: #000000;\">Nilai lambda yang meminimalkan MSE pengujian tersebut ternyata <strong>0,99<\/strong> .<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Langkah 4: Gunakan model untuk membuat prediksi<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Terakhir, kita dapat menggunakan model regresi ridge akhir untuk membuat prediksi tentang observasi baru. Misalnya, kode berikut menunjukkan cara mendefinisikan mobil baru dengan atribut berikut:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">mpg: 24<\/span><\/li>\n<li> <span style=\"color: #000000;\">berat: 2,5<\/span><\/li>\n<li> <span style=\"color: #000000;\">harga: 3,5<\/span><\/li>\n<li> <span style=\"color: #000000;\">qdetik: 18.5<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Kode berikut menunjukkan cara menggunakan model regresi ridge yang dipasang untuk memprediksi nilai <em>hp<\/em> dari observasi baru ini:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <span style=\"color: #000000;\"><strong><span style=\"color: #008080;\">#define new observation\n<span style=\"color: #000000;\">new = [24, 2.5, 3.5, 18.5]\n<\/span>\n#predict hp value using ridge regression model\n<span style=\"color: #000000;\">model. <span style=\"color: #3366ff;\">predict<\/span> ([new])\n\narray([104.16398018])\n<\/span><\/span><\/strong><\/span><\/pre>\n<p> <span style=\"color: #000000;\">Berdasarkan nilai yang dimasukkan, model memperkirakan mobil ini akan memiliki nilai <em>hp<\/em> sebesar <strong>104.16398018<\/strong> .<\/span><\/p>\n<p> <span style=\"color: #000000;\">Anda dapat menemukan kode Python lengkap yang digunakan dalam contoh ini <a href=\"https:\/\/github.com\/Statorials\/Python-Guides\/blob\/main\/ridge_regression.py\" target=\"_blank\" rel=\"noopener noreferrer\">di sini<\/a> .<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Regresi ridge adalah metode yang dapat kita gunakan untuk menyesuaikan model regresi ketika terdapat multikolinearitas dalam data. Singkatnya, regresi kuadrat terkecil berupaya menemukan estimasi koefisien yang meminimalkan jumlah sisa kuadrat (RSS): RSS = \u03a3(y saya \u2013 \u0177 saya )2 Emas: \u03a3 : Simbol Yunani yang berarti jumlah y i : nilai respon sebenarnya untuk observasi [&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>Regresi Ridge dengan Python (langkah demi langkah) - Statologi<\/title>\n<meta name=\"description\" content=\"Tutorial ini menjelaskan cara melakukan regresi ridge dengan Python, termasuk contoh langkah demi langkah.\" \/>\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\/regresi-puncak-dengan-python\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Regresi Ridge dengan Python (langkah demi langkah) - Statologi\" \/>\n<meta property=\"og:description\" content=\"Tutorial ini menjelaskan cara melakukan regresi ridge dengan Python, termasuk contoh langkah demi langkah.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-27T08:14:05+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\/regresi-puncak-dengan-python\/\",\"url\":\"https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/\",\"name\":\"Regresi Ridge dengan Python (langkah demi langkah) - Statologi\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/id\/#website\"},\"datePublished\":\"2023-07-27T08:14:05+00:00\",\"dateModified\":\"2023-07-27T08:14:05+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81\"},\"description\":\"Tutorial ini menjelaskan cara melakukan regresi ridge dengan Python, termasuk contoh langkah demi langkah.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/statorials.org\/id\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Regresi ridge dengan python (langkah demi langkah)\"}]},{\"@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":"Regresi Ridge dengan Python (langkah demi langkah) - Statologi","description":"Tutorial ini menjelaskan cara melakukan regresi ridge dengan Python, termasuk contoh langkah demi langkah.","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\/regresi-puncak-dengan-python\/","og_locale":"id_ID","og_type":"article","og_title":"Regresi Ridge dengan Python (langkah demi langkah) - Statologi","og_description":"Tutorial ini menjelaskan cara melakukan regresi ridge dengan Python, termasuk contoh langkah demi langkah.","og_url":"https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/","og_site_name":"Statorials","article_published_time":"2023-07-27T08:14:05+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\/regresi-puncak-dengan-python\/","url":"https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/","name":"Regresi Ridge dengan Python (langkah demi langkah) - Statologi","isPartOf":{"@id":"https:\/\/statorials.org\/id\/#website"},"datePublished":"2023-07-27T08:14:05+00:00","dateModified":"2023-07-27T08:14:05+00:00","author":{"@id":"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81"},"description":"Tutorial ini menjelaskan cara melakukan regresi ridge dengan Python, termasuk contoh langkah demi langkah.","breadcrumb":{"@id":"https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/id\/regresi-puncak-dengan-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/statorials.org\/id\/"},{"@type":"ListItem","position":2,"name":"Regresi ridge dengan python (langkah demi langkah)"}]},{"@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\/1196"}],"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=1196"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/posts\/1196\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/media?parent=1196"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/categories?post=1196"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/tags?post=1196"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}