{"id":2566,"date":"2025-09-14T15:13:43","date_gmt":"2025-09-14T15:13:43","guid":{"rendered":"https:\/\/kuliahrobot.com\/krc\/?p=2566"},"modified":"2025-09-14T15:32:12","modified_gmt":"2025-09-14T15:32:12","slug":"machine-learning-penyakit-diabetes-pima-dataset","status":"publish","type":"post","link":"https:\/\/kuliahrobot.com\/krc\/machine-learning-penyakit-diabetes-pima-dataset\/","title":{"rendered":"Machine Learning Penyakit Diabetes Pima Dataset"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"2566\" class=\"elementor elementor-2566\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b3721ef e-flex e-con-boxed e-con e-parent\" data-id=\"b3721ef\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f166164 elementor-widget elementor-widget-text-editor\" data-id=\"f166164\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p data-start=\"286\" data-end=\"545\"><strong>Machine Learning (ML) adalah salah satu cabang kecerdasan buatan (Artificial Intelligence\/AI) yang mampu membantu manusia dalam mengambil keputusan berdasarkan data. Salah satu penerapan yang sering dijadikan contoh adalah klasifikasi penyakit diabetes.\u00a0<\/strong><strong>Dengan memanfaatkan data kesehatan pasien seperti usia, kadar gula darah, tekanan darah, dan faktor lainnya, kita dapat melatih model machine learning untuk memprediksi apakah seseorang berisiko terkena diabetes atau tidak.<\/strong><\/p><p><strong>Proyek ini sangat cocok untuk pemula karena:<\/strong><\/p><ol data-start=\"825\" data-end=\"1105\"><li data-start=\"825\" data-end=\"885\"><p data-start=\"828\" data-end=\"885\"><strong>Dataset sudah tersedia secara umum dan mudah digunakan.<\/strong><\/p><\/li><li data-start=\"886\" data-end=\"999\"><p data-start=\"889\" data-end=\"999\"><strong>Prosesnya sederhana, namun sudah mencakup konsep dasar data preprocessing, training, dan evaluasi model.<\/strong><\/p><\/li><li data-start=\"1000\" data-end=\"1105\"><p data-start=\"1003\" data-end=\"1105\"><strong>Bisa dijalankan secara gratis menggunakan Google Colab, tanpa perlu instalasi software tambahan.<\/strong><\/p><\/li><\/ol><p data-start=\"1107\" data-end=\"1303\"><strong>Melalui tutorial ini, kita akan mempelajari langkah demi langkah membangun model klasifikasi penyakit diabetes, mulai dari menyiapkan data, membuat model, hingga mengevaluasi hasil prediksi.<\/strong><\/p><p data-start=\"1107\" data-end=\"1303\"><strong>\u00a0<\/strong><\/p><p><strong>Langkah-Langkah di Google Colab<\/strong><\/p><p><strong>1. Import Library yang Dibutuhkan<\/strong>\u00a0<\/p><div class=\"overflow-y-auto p-4\" dir=\"ltr\"><p><strong><code class=\"whitespace-pre! language-python\"><code class=\"whitespace-pre! language-python\"><span class=\"hljs-keyword\">import<\/span> pandas <span class=\"hljs-keyword\">as<\/span> pd<br \/><span class=\"hljs-keyword\">import<\/span> numpy <span class=\"hljs-keyword\">as<\/span> np<br \/><span class=\"hljs-keyword\">import<\/span> matplotlib.pyplot <span class=\"hljs-keyword\">as<\/span> plt<br \/><span class=\"hljs-keyword\">import<\/span> seaborn <span class=\"hljs-keyword\">as<\/span> sns<\/code><\/code><\/strong><\/p><p><strong><span class=\"hljs-keyword\">from<\/span> sklearn.model_selection <span class=\"hljs-keyword\">import<\/span> train_test_split<\/strong><br \/><strong><span class=\"hljs-keyword\">from<\/span> sklearn.preprocessing <span class=\"hljs-keyword\">import<\/span> StandardScaler<\/strong><br \/><strong><span class=\"hljs-keyword\">from<\/span> sklearn.linear_model <span class=\"hljs-keyword\">import<\/span> LogisticRegression<\/strong><br \/><strong><span class=\"hljs-keyword\">from<\/span> sklearn.metrics <span class=\"hljs-keyword\">import<\/span> accuracy_score, classification_report, confusion_matrix<\/strong><\/p><\/div><hr data-start=\"1736\" data-end=\"1739\" \/><p data-start=\"1741\" data-end=\"1760\"><strong>2. Load Dataset<\/strong><\/p><p><strong>Dataset Pima Indians Diabetes bisa diambil langsung dari GitHub.<\/strong><\/p><div class=\"sticky top-9\"><div class=\"absolute end-0 bottom-0 flex h-9 items-center pe-2\"><div class=\"bg-token-bg-elevated-secondary text-token-text-secondary flex items-center gap-4 rounded-sm px-2 font-sans text-xs\">\u00a0<\/div><\/div><\/div><div class=\"overflow-y-auto p-4\" dir=\"ltr\"><p><strong><code class=\"whitespace-pre! language-python\"><code class=\"whitespace-pre! language-python\">url = <span class=\"hljs-string\">\"https:\/\/raw.githubusercontent.com\/plotly\/datasets\/master\/diabetes.csv\"<\/span><br \/>data = pd.read_csv(url)<\/code><\/code><\/strong><\/p><p><strong><span class=\"hljs-comment\"># Tampilkan 5 baris pertama<\/span><\/strong><br \/><strong>data.head()<\/strong><\/p><\/div><hr data-start=\"1990\" data-end=\"1993\" \/><p data-start=\"1995\" data-end=\"2017\"><strong>3. Eksplorasi Data<\/strong><\/p><div class=\"sticky top-9\"><div class=\"absolute end-0 bottom-0 flex h-9 items-center pe-2\"><div class=\"bg-token-bg-elevated-secondary text-token-text-secondary flex items-center gap-4 rounded-sm px-2 font-sans text-xs\">\u00a0<\/div><\/div><\/div><div class=\"overflow-y-auto p-4\" dir=\"ltr\"><p><strong><code class=\"whitespace-pre! language-python\"><code class=\"whitespace-pre! language-python\"><span class=\"hljs-built_in\">print<\/span>(data.info())<br \/><span class=\"hljs-built_in\">print<\/span>(data.describe())<\/code><\/code><\/strong><\/p><p><strong><span class=\"hljs-comment\"># Heatmap korelasi antar fitur<\/span><\/strong><br \/><strong>sns.heatmap(data.corr(), annot=<span class=\"hljs-literal\">True<\/span>, cmap=<span class=\"hljs-string\">&#8220;coolwarm&#8221;<\/span>)<\/strong><br \/><strong>plt.show()<\/strong><\/p><\/div><hr data-start=\"2172\" data-end=\"2175\" \/><p data-start=\"2177\" data-end=\"2208\"><strong>4. Pisahkan Fitur dan Label<\/strong><\/p><div class=\"sticky top-9\"><div class=\"absolute end-0 bottom-0 flex h-9 items-center pe-2\"><div class=\"bg-token-bg-elevated-secondary text-token-text-secondary flex items-center gap-4 rounded-sm px-2 font-sans text-xs\">\u00a0<\/div><\/div><\/div><div class=\"overflow-y-auto p-4\" dir=\"ltr\"><p><strong><code class=\"whitespace-pre! language-python\"><code class=\"whitespace-pre! language-python\">X = data.drop(<span class=\"hljs-string\">\"Outcome\"<\/span>, axis=<span class=\"hljs-number\">1<\/span>)   <span class=\"hljs-comment\"># Fitur (input)<\/span><br \/>y = data[<span class=\"hljs-string\">\"Outcome\"<\/span>]                <span class=\"hljs-comment\"># Label (0 = tidak diabetes, 1 = diabetes)<\/span><\/code><\/code><\/strong><\/p><p><strong><span class=\"hljs-comment\"># Split data untuk training dan testing<\/span><\/strong><br \/><strong>X_train, X_test, y_train, y_test = train_test_split(<\/strong><br \/><strong>X, y, test_size=<span class=\"hljs-number\">0.2<\/span>, random_state=<span class=\"hljs-number\">42<\/span><\/strong><br \/><strong>)<\/strong><\/p><\/div><hr data-start=\"2490\" data-end=\"2493\" \/><p data-start=\"2495\" data-end=\"2518\"><strong>5. Normalisasi Data<\/strong><\/p><div class=\"sticky top-9\"><div class=\"absolute end-0 bottom-0 flex h-9 items-center pe-2\"><div class=\"bg-token-bg-elevated-secondary text-token-text-secondary flex items-center gap-4 rounded-sm px-2 font-sans text-xs\">\u00a0<\/div><\/div><\/div><div class=\"overflow-y-auto p-4\" dir=\"ltr\"><strong><code class=\"whitespace-pre! language-python\">scaler = StandardScaler()<br \/>X_train = scaler.fit_transform(X_train)<br \/>X_test = scaler.transform(X_test)<br \/><\/code><\/strong><\/div><hr data-start=\"2634\" data-end=\"2637\" \/><p data-start=\"2639\" data-end=\"2673\"><strong>6. Buat Model Machine Learning<\/strong><\/p><p><strong>Contoh sederhana menggunakan Logistic Regression:<\/strong><\/p><div class=\"sticky top-9\"><div class=\"absolute end-0 bottom-0 flex h-9 items-center pe-2\"><div class=\"bg-token-bg-elevated-secondary text-token-text-secondary flex items-center gap-4 rounded-sm px-2 font-sans text-xs\">\u00a0<\/div><\/div><\/div><div class=\"overflow-y-auto p-4\" dir=\"ltr\"><p><strong><code class=\"whitespace-pre! language-python\"><code class=\"whitespace-pre! language-python\">model = LogisticRegression()<br \/>model.fit(X_train, y_train)<\/code><\/code><\/strong><\/p><p><strong>y_pred = model.predict(X_test)<\/strong><\/p><\/div><hr data-start=\"2834\" data-end=\"2837\" \/><p data-start=\"2839\" data-end=\"2860\"><strong>7. Evaluasi Model<\/strong><\/p><div class=\"sticky top-9\"><div class=\"absolute end-0 bottom-0 flex h-9 items-center pe-2\"><div class=\"bg-token-bg-elevated-secondary text-token-text-secondary flex items-center gap-4 rounded-sm px-2 font-sans text-xs\">\u00a0<\/div><\/div><\/div><div class=\"overflow-y-auto p-4\" dir=\"ltr\"><p><strong><code class=\"whitespace-pre! language-python\"><code class=\"whitespace-pre! language-python\"><span class=\"hljs-built_in\">print<\/span>(<span class=\"hljs-string\">\"Akurasi:\"<\/span>, accuracy_score(y_test, y_pred))<br \/><span class=\"hljs-built_in\">print<\/span>(<span class=\"hljs-string\">\"\\nClassification Report:\\n\"<\/span>, classification_report(y_test, y_pred))<\/code><\/code><\/strong><\/p><p><strong><span class=\"hljs-comment\"># Confusion Matrix<\/span><\/strong><br \/><strong>sns.heatmap(confusion_matrix(y_test, y_pred), annot=<span class=\"hljs-literal\">True<\/span>, fmt=<span class=\"hljs-string\">&#8216;d&#8217;<\/span>, cmap=<span class=\"hljs-string\">&#8220;Blues&#8221;<\/span>)<\/strong><br \/><strong>plt.xlabel(<span class=\"hljs-string\">&#8220;Predicted&#8221;<\/span>)<\/strong><br \/><strong>plt.ylabel(<span class=\"hljs-string\">&#8220;Actual&#8221;<\/span>)<\/strong><br \/><strong>plt.show()<\/strong><\/p><\/div><hr data-start=\"3158\" data-end=\"3161\" \/><p data-start=\"3163\" data-end=\"3189\"><strong><img decoding=\"async\" class=\"emoji\" role=\"img\" draggable=\"false\" src=\"https:\/\/s.w.org\/images\/core\/emoji\/16.0.1\/svg\/1f4ca.svg\" alt=\"\ud83d\udcca\" \/> Hasil &amp; Kesimpulan<\/strong><\/p><ul data-start=\"3191\" data-end=\"3489\"><li data-start=\"3191\" data-end=\"3269\"><p data-start=\"3193\" data-end=\"3269\"><strong>Model mampu memberikan akurasi sekitar 75\u201380% (tergantung data split).<\/strong><\/p><\/li><li data-start=\"3270\" data-end=\"3392\"><p data-start=\"3272\" data-end=\"3392\"><strong>Kita bisa melihat metrik precision, recall, dan f1-score untuk mengetahui performa model pada masing-masing kelas.<\/strong><\/p><\/li><li data-start=\"3393\" data-end=\"3489\"><p data-start=\"3395\" data-end=\"3489\"><strong>Visualisasi confusion matrix membantu memahami seberapa banyak prediksi benar dan salah.<\/strong><\/p><\/li><\/ul><p data-start=\"3491\" data-end=\"3560\"><strong>Sebagai latihan tambahan, kamu bisa mencoba algoritma lain seperti:<\/strong><\/p><ul data-start=\"3561\" data-end=\"3626\"><li data-start=\"3561\" data-end=\"3589\"><p data-start=\"3563\" data-end=\"3589\"><strong><code data-start=\"3563\" data-end=\"3587\">RandomForestClassifier<\/code><\/strong><\/p><\/li><li data-start=\"3590\" data-end=\"3616\"><p data-start=\"3592\" data-end=\"3616\"><strong><code data-start=\"3592\" data-end=\"3614\">KNeighborsClassifier<\/code><\/strong><\/p><\/li><li data-start=\"3617\" data-end=\"3626\"><p data-start=\"3619\" data-end=\"3626\"><strong><code data-start=\"3619\" data-end=\"3624\">SVC<\/code><\/strong><\/p><\/li><\/ul><p data-start=\"3628\" data-end=\"3735\">\u00a0<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Machine Learning (ML) adalah salah satu cabang kecerdasan buatan (Artificial Intelligence\/AI) yang mampu membantu manusia dalam mengambil keputusan berdasarkan data. Salah satu penerapan yang sering dijadikan contoh adalah klasifikasi penyakit diabetes.\u00a0Dengan memanfaatkan data kesehatan pasien seperti usia, kadar gula darah, tekanan darah, dan faktor lainnya, kita dapat melatih model machine learning untuk memprediksi apakah seseorang [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2566","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/kuliahrobot.com\/krc\/wp-json\/wp\/v2\/posts\/2566","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kuliahrobot.com\/krc\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kuliahrobot.com\/krc\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kuliahrobot.com\/krc\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/kuliahrobot.com\/krc\/wp-json\/wp\/v2\/comments?post=2566"}],"version-history":[{"count":7,"href":"https:\/\/kuliahrobot.com\/krc\/wp-json\/wp\/v2\/posts\/2566\/revisions"}],"predecessor-version":[{"id":2584,"href":"https:\/\/kuliahrobot.com\/krc\/wp-json\/wp\/v2\/posts\/2566\/revisions\/2584"}],"wp:attachment":[{"href":"https:\/\/kuliahrobot.com\/krc\/wp-json\/wp\/v2\/media?parent=2566"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kuliahrobot.com\/krc\/wp-json\/wp\/v2\/categories?post=2566"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kuliahrobot.com\/krc\/wp-json\/wp\/v2\/tags?post=2566"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}