chore(i18n): sync translations with latest source changes (chunk 1/1, 9 changes)

update-translations
localizeflow[bot] 2 weeks ago
parent 062d3669a9
commit ea617244af

@ -1,7 +1,7 @@
{
"1-Introduction/1-intro-to-ML/README.md": {
"original_hash": "69389392fa6346e0dfa30f664b7b6fec",
"translation_date": "2025-09-05T19:39:30+00:00",
"original_hash": "3a6394c6f5ce3f8aee8211e92eaf9ef0",
"translation_date": "2026-05-26T23:11:31+00:00",
"source_file": "1-Introduction/1-intro-to-ML/README.md",
"language_code": "id"
},
@ -240,8 +240,8 @@
"language_code": "id"
},
"5-Clustering/1-Visualize/README.md": {
"original_hash": "730225ea274c9174fe688b21d421539d",
"translation_date": "2025-09-05T19:14:02+00:00",
"original_hash": "08b00d9fbffc667a7fe7fc19ac00dfbd",
"translation_date": "2026-05-26T23:11:08+00:00",
"source_file": "5-Clustering/1-Visualize/README.md",
"language_code": "id"
},

@ -1,76 +1,76 @@
# Pengantar Pembelajaran Mesin
# Pengenalan pembelajaran mesin
## [Kuis Pra-Pelajaran](https://ff-quizzes.netlify.app/en/ml/)
## [Kuis sebelum kuliah](https://ff-quizzes.netlify.app/en/ml/)
---
[![ML untuk Pemula - Pengantar Pembelajaran Mesin untuk Pemula](https://img.youtube.com/vi/6mSx_KJxcHI/0.jpg)](https://youtu.be/6mSx_KJxcHI "ML untuk Pemula - Pengantar Pembelajaran Mesin untuk Pemula")
[![ML untuk pemula - Pengenalan Pembelajaran Mesin untuk Pemula](https://img.youtube.com/vi/6mSx_KJxcHI/0.jpg)](https://youtu.be/6mSx_KJxcHI "ML untuk pemula - Pengenalan Pembelajaran Mesin untuk Pemula")
> 🎥 Klik gambar di atas untuk video singkat yang membahas pelajaran ini.
Selamat datang di kursus pembelajaran mesin klasik untuk pemula! Baik Anda benar-benar baru dalam topik ini, atau seorang praktisi ML berpengalaman yang ingin menyegarkan pengetahuan di area tertentu, kami senang Anda bergabung dengan kami! Kami ingin menciptakan tempat awal yang ramah untuk studi ML Anda dan akan senang mengevaluasi, merespons, dan mengintegrasikan [masukan Anda](https://github.com/microsoft/ML-For-Beginners/discussions).
Selamat datang di kursus pembelajaran mesin klasik untuk pemula ini! Apakah Anda benar-benar baru dalam topik ini, atau seorang praktisi ML berpengalaman yang ingin menyegarkan pengetahuan di suatu bidang, kami senang Anda bergabung! Kami ingin menciptakan tempat awal yang ramah untuk studi ML Anda dan kami bersedia mengevaluasi, merespon, dan menggabungkan [masukan](https://github.com/microsoft/ML-For-Beginners/discussions) Anda.
[![Pengantar ML](https://img.youtube.com/vi/h0e2HAPTGF4/0.jpg)](https://youtu.be/h0e2HAPTGF4 "Pengantar ML")
[![Pengenalan ke ML](https://img.youtube.com/vi/h0e2HAPTGF4/0.jpg)](https://youtu.be/h0e2HAPTGF4 "Pengenalan ke ML")
> 🎥 Klik gambar di atas untuk video: John Guttag dari MIT memperkenalkan pembelajaran mesin
---
## Memulai dengan Pembelajaran Mesin
## Memulai dengan pembelajaran mesin
Sebelum memulai kurikulum ini, Anda perlu memastikan komputer Anda siap untuk menjalankan notebook secara lokal.
Sebelum memulai kurikulum ini, Anda perlu menyiapkan komputer Anda agar siap menjalankan notebook secara lokal.
- **Konfigurasikan komputer Anda dengan video ini**. Gunakan tautan berikut untuk mempelajari [cara menginstal Python](https://youtu.be/CXZYvNRIAKM) di sistem Anda dan [menyiapkan editor teks](https://youtu.be/EU8eayHWoZg) untuk pengembangan.
- **Pelajari Python**. Disarankan juga untuk memiliki pemahaman dasar tentang [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott), bahasa pemrograman yang berguna bagi ilmuwan data dan yang akan kita gunakan dalam kursus ini.
- **Pelajari Node.js dan JavaScript**. Kami juga menggunakan JavaScript beberapa kali dalam kursus ini saat membangun aplikasi web, jadi Anda perlu menginstal [node](https://nodejs.org) dan [npm](https://www.npmjs.com/), serta memiliki [Visual Studio Code](https://code.visualstudio.com/) untuk pengembangan Python dan JavaScript.
- **Buat akun GitHub**. Karena Anda menemukan kami di [GitHub](https://github.com), Anda mungkin sudah memiliki akun, tetapi jika belum, buatlah satu akun dan kemudian fork kurikulum ini untuk digunakan sendiri. (Jangan ragu untuk memberi kami bintang juga 😊)
- **Jelajahi Scikit-learn**. Kenali [Scikit-learn](https://scikit-learn.org/stable/user_guide.html), kumpulan pustaka ML yang akan kita referensikan dalam pelajaran ini.
- **Konfigurasikan mesin Anda dengan video ini**. Gunakan tautan berikut untuk belajar [cara menginstal Python](https://youtu.be/CXZYvNRIAKM) di sistem Anda dan [menyiapkan editor teks](https://youtu.be/EU8eayHWoZg) untuk pengembangan.
- **Belajar Python**. Disarankan juga untuk memiliki pemahaman dasar tentang [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott), bahasa pemrograman yang berguna bagi ilmuwan data yang kami gunakan di kursus ini.
- **Belajar Node.js dan JavaScript**. Kami juga menggunakan JavaScript beberapa kali dalam kursus ini saat membangun aplikasi web, jadi Anda perlu menginstal [node](https://nodejs.org) dan [npm](https://www.npmjs.com/), serta memiliki [Visual Studio Code](https://code.visualstudio.com/) untuk pengembangan baik Python maupun JavaScript.
- **Buat akun GitHub**. Karena Anda menemukan kami di [GitHub](https://github.com), mungkin Anda sudah memiliki akun, tapi jika belum, buatlah dan kemudian fork kurikulum ini untuk digunakan sendiri. (Jangan lupa untuk memberi bintang juga ya 😊)
- **Jelajahi Scikit-learn**. Biasakan diri Anda dengan [Scikit-learn](https://scikit-learn.org/stable/user_guide.html), kumpulan pustaka ML yang kami rujuk dalam pelajaran ini.
---
## Apa itu Pembelajaran Mesin?
## Apa itu pembelajaran mesin?
Istilah 'pembelajaran mesin' adalah salah satu istilah yang paling populer dan sering digunakan saat ini. Ada kemungkinan besar Anda pernah mendengar istilah ini setidaknya sekali jika Anda memiliki sedikit keterkaitan dengan teknologi, tidak peduli di bidang apa Anda bekerja. Namun, mekanisme pembelajaran mesin adalah misteri bagi kebanyakan orang. Bagi pemula pembelajaran mesin, subjek ini kadang-kadang bisa terasa membingungkan. Oleh karena itu, penting untuk memahami apa sebenarnya pembelajaran mesin itu, dan mempelajarinya langkah demi langkah melalui contoh praktis.
Istilah 'pembelajaran mesin' adalah salah satu istilah paling populer dan sering digunakan saat ini. Ada kemungkinan besar Anda pernah mendengar istilah ini setidaknya sekali jika Anda memiliki sedikit pengetahuan tentang teknologi, tidak peduli di bidang apa Anda bekerja. Namun mekanisme pembelajaran mesin adalah misteri bagi kebanyakan orang. Bagi pemula pembelajaran mesin, subjek ini kadang bisa terasa menakutkan. Oleh karena itu, penting untuk memahami apa sebenarnya pembelajaran mesin itu, dan mempelajarinya langkah demi langkah melalui contoh praktis.
---
## Kurva Hype
## Kurva hype
![ml hype curve](../../../../1-Introduction/1-intro-to-ML/images/hype.png)
![kurva hype ml](../../../../translated_images/id/hype.07183d711a17aafe.webp)
> Google Trends menunjukkan 'kurva hype' terbaru dari istilah 'pembelajaran mesin'
---
## Alam Semesta yang Misterius
## Dunia yang penuh misteri
Kita hidup di alam semesta yang penuh dengan misteri yang menakjubkan. Ilmuwan hebat seperti Stephen Hawking, Albert Einstein, dan banyak lainnya telah mendedikasikan hidup mereka untuk mencari informasi bermakna yang mengungkap misteri dunia di sekitar kita. Ini adalah kondisi manusia untuk belajar: seorang anak manusia belajar hal-hal baru dan mengungkap struktur dunia mereka tahun demi tahun saat mereka tumbuh dewasa.
Kita hidup di alam semesta yang penuh misteri menarik. Ilmuwan hebat seperti Stephen Hawking, Albert Einstein, dan banyak lainnya telah mendedikasikan hidup mereka untuk mencari informasi bermakna yang mengungkap misteri dunia di sekitar kita. Ini adalah kondisi manusia dalam belajar: anak manusia mempelajari hal baru dan mengungkap struktur dunia mereka tahun demi tahun saat tumbuh menjadi dewasa.
---
## Otak Anak
## Otak anak
Otak dan indra seorang anak merasakan fakta-fakta di sekitarnya dan secara bertahap mempelajari pola-pola tersembunyi dalam kehidupan yang membantu anak tersebut menyusun aturan logis untuk mengenali pola-pola yang telah dipelajari. Proses pembelajaran otak manusia membuat manusia menjadi makhluk hidup paling canggih di dunia ini. Belajar secara terus-menerus dengan menemukan pola-pola tersembunyi dan kemudian berinovasi berdasarkan pola-pola tersebut memungkinkan kita untuk menjadi lebih baik sepanjang hidup kita. Kapasitas belajar dan kemampuan berkembang ini terkait dengan konsep yang disebut [plastisitas otak](https://www.simplypsychology.org/brain-plasticity.html). Secara dangkal, kita dapat menarik beberapa kesamaan motivasi antara proses pembelajaran otak manusia dan konsep pembelajaran mesin.
Otak dan indra anak merasakan fakta lingkungan mereka dan secara bertahap mempelajari pola-pola tersembunyi kehidupan yang membantu anak membuat aturan logis untuk mengidentifikasi pola yang dipelajari. Proses belajar otak manusia menjadikan manusia makhluk hidup paling canggih di dunia ini. Belajar terus-menerus dengan menemukan pola tersembunyi kemudian berinovasi pada pola tersebut memungkinkan kita menjadi lebih baik sepanjang hidup kita. Kapasitas belajar dan kemampuan berkembang ini terkait dengan konsep yang disebut [plastisitas otak](https://www.simplypsychology.org/brain-plasticity.html). Secara kasat mata, kita bisa menarik beberapa kesamaan motivasi antara proses belajar otak manusia dan konsep pembelajaran mesin.
---
## Otak Manusia
## Otak manusia
[Otak manusia](https://www.livescience.com/29365-human-brain.html) merasakan hal-hal dari dunia nyata, memproses informasi yang dirasakan, membuat keputusan rasional, dan melakukan tindakan tertentu berdasarkan keadaan. Inilah yang kita sebut berperilaku secara cerdas. Ketika kita memprogram tiruan dari proses perilaku cerdas ke sebuah mesin, itu disebut kecerdasan buatan (AI).
[Otak manusia](https://www.livescience.com/29365-human-brain.html) menangkap hal dari dunia nyata, memproses informasi yang diterima, membuat keputusan rasional, dan melakukan tindakan tertentu berdasarkan keadaan. Inilah yang kita sebut berperilaku secara cerdas. Ketika kita memprogram tiruan dari proses perilaku cerdas tersebut ke mesin, itu disebut kecerdasan buatan (AI).
---
## Beberapa Terminologi
## Beberapa istilah
Meskipun istilah-istilah ini dapat membingungkan, pembelajaran mesin (ML) adalah subset penting dari kecerdasan buatan. **ML berkaitan dengan penggunaan algoritma khusus untuk menemukan informasi bermakna dan menemukan pola tersembunyi dari data yang dirasakan untuk mendukung proses pengambilan keputusan rasional**.
Meskipun istilahnya terkadang membingungkan, pembelajaran mesin (ML) adalah bagian penting dari kecerdasan buatan. **ML berhubungan dengan penggunaan algoritma khusus untuk menemukan informasi bermakna dan pola tersembunyi dari data yang diterima guna mendukung proses pengambilan keputusan rasional**.
---
## AI, ML, Pembelajaran Mendalam
## AI, ML, Deep Learning
![AI, ML, pembelajaran mendalam, ilmu data](../../../../1-Introduction/1-intro-to-ML/images/ai-ml-ds.png)
![AI, ML, deep learning, data science](../../../../translated_images/id/ai-ml-ds.537ea441b124ebf6.webp)
> Diagram yang menunjukkan hubungan antara AI, ML, pembelajaran mendalam, dan ilmu data. Infografik oleh [Jen Looper](https://twitter.com/jenlooper) terinspirasi oleh [grafik ini](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining)
> Diagram yang menunjukkan hubungan antara AI, ML, deep learning, dan data science. Infografis oleh [Jen Looper](https://twitter.com/jenlooper) terinspirasi dari [grafik ini](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining)
---
## Konsep yang Akan Dibahas
## Konsep yang akan dibahas
Dalam kurikulum ini, kita akan membahas hanya konsep inti pembelajaran mesin yang harus diketahui oleh pemula. Kita akan membahas apa yang kita sebut 'pembelajaran mesin klasik' terutama menggunakan Scikit-learn, pustaka yang sangat baik yang banyak digunakan oleh siswa untuk mempelajari dasar-dasarnya. Untuk memahami konsep yang lebih luas tentang kecerdasan buatan atau pembelajaran mendalam, pengetahuan dasar yang kuat tentang pembelajaran mesin sangat penting, dan kami ingin menyediakannya di sini.
Dalam kurikulum ini, kami akan membahas hanya konsep inti pembelajaran mesin yang harus diketahui pemula. Kami membahas apa yang kami sebut 'pembelajaran mesin klasik' terutama menggunakan Scikit-learn, pustaka yang banyak digunakan pelajar untuk mempelajari dasar-dasarnya. Untuk memahami konsep kecerdasan buatan atau deep learning yang lebih luas, pengetahuan dasar pembelajaran mesin yang kuat sangat penting, dan karenanya kami ingin menyediakannya di sini.
---
## Dalam Kursus Ini Anda Akan Belajar:
## Dalam kursus ini Anda akan belajar:
- konsep inti pembelajaran mesin
- sejarah ML
@ -81,63 +81,68 @@ Dalam kurikulum ini, kita akan membahas hanya konsep inti pembelajaran mesin yan
- teknik pemrosesan bahasa alami ML
- teknik peramalan deret waktu ML
- pembelajaran penguatan
- aplikasi dunia nyata untuk ML
- aplikasi nyata ML
---
## Apa yang Tidak Akan Dibahas
## Yang tidak akan kami bahas
- pembelajaran mendalam
- deep learning
- jaringan saraf
- AI
Untuk pengalaman belajar yang lebih baik, kami akan menghindari kompleksitas jaringan saraf, 'pembelajaran mendalam' - pembangunan model berlapis-lapis menggunakan jaringan saraf - dan AI, yang akan kita bahas dalam kurikulum yang berbeda. Kami juga akan menawarkan kurikulum ilmu data yang akan datang untuk fokus pada aspek tersebut dari bidang yang lebih besar ini.
Untuk pengalaman belajar yang lebih baik, kami akan menghindari kompleksitas jaringan saraf, 'deep learning' - pembuatan model berlapis menggunakan jaringan saraf - dan AI, yang akan kami bahas dalam kurikulum berbeda. Kami juga akan menawarkan kurikulum ilmu data yang akan datang untuk fokus pada aspek tersebut dari bidang yang lebih luas ini.
---
## Mengapa Mempelajari Pembelajaran Mesin?
## Mengapa mempelajari pembelajaran mesin?
Pembelajaran mesin, dari perspektif sistem, didefinisikan sebagai pembuatan sistem otomatis yang dapat mempelajari pola tersembunyi dari data untuk membantu dalam membuat keputusan yang cerdas.
Pembelajaran mesin, dari perspektif sistem, didefinisikan sebagai pembuatan sistem otomatis yang dapat mempelajari pola tersembunyi dari data untuk membantu membuat keputusan cerdas.
Motivasi ini secara longgar terinspirasi oleh bagaimana otak manusia mempelajari hal-hal tertentu berdasarkan data yang dirasakannya dari dunia luar.
Motivasi ini secara longgar terinspirasi dari bagaimana otak manusia mempelajari hal tertentu berdasarkan data yang diterimanya dari dunia luar.
✅ Pikirkan sejenak mengapa sebuah bisnis ingin mencoba menggunakan strategi pembelajaran mesin dibandingkan dengan membuat mesin berbasis aturan yang dikodekan secara manual.
✅ Pikirkan sejenak mengapa suatu bisnis ingin mencoba menggunakan strategi pembelajaran mesin dibandingkan membuat mesin berbasis aturan yang dikodekan keras.
---
## Aplikasi Pembelajaran Mesin
## Mengapa kualitas data penting
Aplikasi pembelajaran mesin sekarang hampir ada di mana-mana, dan sama melimpahnya dengan data yang mengalir di sekitar masyarakat kita, yang dihasilkan oleh ponsel pintar, perangkat yang terhubung, dan sistem lainnya. Mengingat potensi besar algoritma pembelajaran mesin mutakhir, para peneliti telah mengeksplorasi kemampuannya untuk menyelesaikan masalah kehidupan nyata yang multi-dimensi dan multi-disiplin dengan hasil yang sangat positif.
Data berkualitas tinggi meningkatkan performa model. Data yang buruk atau berisik dapat menyebabkan prediksi tidak akurat, bahkan ketika menggunakan algoritma pembelajaran mesin canggih.
---
## Contoh Penerapan ML
## Aplikasi pembelajaran mesin
**Anda dapat menggunakan pembelajaran mesin dalam berbagai cara**:
Aplikasi pembelajaran mesin sekarang hampir ada di mana-mana, dan sedemikian meluas seperti data yang mengalir di sekitar masyarakat kita, dihasilkan oleh ponsel pintar, perangkat terhubung, dan sistem lainnya. Mengingat potensi besar algoritma pembelajaran mesin mutakhir, para peneliti telah mengeksplorasi kemampuannya untuk menyelesaikan masalah nyata multidimensi dan multidisipliner dengan hasil positif yang besar.
- Untuk memprediksi kemungkinan penyakit dari riwayat medis atau laporan pasien.
- Untuk memanfaatkan data cuaca guna memprediksi peristiwa cuaca.
- Untuk memahami sentimen dari sebuah teks.
---
## Contoh penerapan ML
**Anda dapat menggunakan pembelajaran mesin dengan berbagai cara**:
- Untuk memprediksi kemungkinan penyakit dari riwayat atau laporan medis pasien.
- Untuk memanfaatkan data cuaca untuk memprediksi kejadian cuaca.
- Untuk memahami sentimen sebuah teks.
- Untuk mendeteksi berita palsu guna menghentikan penyebaran propaganda.
Keuangan, ekonomi, ilmu bumi, eksplorasi luar angkasa, teknik biomedis, ilmu kognitif, dan bahkan bidang humaniora telah mengadaptasi pembelajaran mesin untuk menyelesaikan masalah berat yang melibatkan pemrosesan data di domain mereka.
Bidang keuangan, ekonomi, ilmu bumi, eksplorasi luar angkasa, rekayasa biomedis, ilmu kognitif, dan bahkan bidang humaniora telah mengadopsi pembelajaran mesin untuk menyelesaikan masalah berat pemrosesan data dalam domain mereka.
---
## Kesimpulan
Pembelajaran mesin mengotomatisasi proses penemuan pola dengan menemukan wawasan bermakna dari data dunia nyata atau data yang dihasilkan. Ini telah terbukti sangat berharga dalam aplikasi bisnis, kesehatan, dan keuangan, di antara lainnya.
Pembelajaran mesin mengotomatisasi proses penemuan pola dengan menemukan wawasan bermakna dari data dunia nyata atau data yang dihasilkan. Ini terbukti sangat berharga dalam bisnis, kesehatan, dan aplikasi keuangan, antara lain.
Di masa depan, memahami dasar-dasar pembelajaran mesin akan menjadi keharusan bagi orang-orang dari berbagai bidang karena adopsinya yang luas.
Dalam waktu dekat, memahami dasar pembelajaran mesin akan menjadi keharusan bagi orang dari bidang apa pun karena adopsinya yang luas.
---
# 🚀 Tantangan
Gambarkan, di atas kertas atau menggunakan aplikasi online seperti [Excalidraw](https://excalidraw.com/), pemahaman Anda tentang perbedaan antara AI, ML, pembelajaran mendalam, dan ilmu data. Tambahkan beberapa ide tentang masalah yang baik untuk diselesaikan oleh masing-masing teknik ini.
Gambarlah, di atas kertas atau menggunakan aplikasi online seperti [Excalidraw](https://excalidraw.com/), pemahaman Anda tentang perbedaan antara AI, ML, deep learning, dan data science. Tambahkan beberapa ide masalah yang setiap teknik ini cocok untuk diselesaikan.
# [Kuis Pasca-Pelajaran](https://ff-quizzes.netlify.app/en/ml/)
# [Kuis setelah kuliah](https://ff-quizzes.netlify.app/en/ml/)
---
# Tinjauan & Studi Mandiri
# Ulasan & Belajar Mandiri
Untuk mempelajari lebih lanjut tentang bagaimana Anda dapat bekerja dengan algoritma ML di cloud, ikuti [Learning Path](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott) ini.
Untuk belajar lebih lanjut bagaimana Anda dapat bekerja dengan algoritma ML di cloud, ikuti [Jalur Pembelajaran](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott).
Ikuti [Learning Path](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott) tentang dasar-dasar ML.
Ikuti [Jalur Pembelajaran](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott) tentang dasar-dasar ML.
---
# Tugas
@ -146,5 +151,7 @@ Ikuti [Learning Path](https://docs.microsoft.com/learn/modules/introduction-to-m
---
**Penafian**:
Dokumen ini telah diterjemahkan menggunakan layanan penerjemahan AI [Co-op Translator](https://github.com/Azure/co-op-translator). Meskipun kami berusaha untuk memberikan hasil yang akurat, harap diketahui bahwa terjemahan otomatis mungkin mengandung kesalahan atau ketidakakuratan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang otoritatif. Untuk informasi yang bersifat kritis, disarankan menggunakan jasa penerjemahan profesional oleh manusia. Kami tidak bertanggung jawab atas kesalahpahaman atau penafsiran yang timbul dari penggunaan terjemahan ini.
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Penafian**:
Dokumen ini telah diterjemahkan menggunakan layanan terjemahan AI [Co-op Translator](https://github.com/Azure/co-op-translator). Meskipun kami berupaya untuk mencapai akurasi, harap diketahui bahwa terjemahan otomatis mungkin mengandung kesalahan atau ketidakakuratan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang sah. Untuk informasi penting, disarankan menggunakan terjemahan profesional oleh manusia. Kami tidak bertanggung jawab atas kesalahpahaman atau penafsiran yang keliru yang timbul dari penggunaan terjemahan ini.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,102 +1,101 @@
# Pengantar clustering
Clustering adalah jenis [Pembelajaran Tanpa Pengawasan](https://wikipedia.org/wiki/Unsupervised_learning) yang mengasumsikan bahwa dataset tidak memiliki label atau inputnya tidak dipasangkan dengan output yang telah ditentukan sebelumnya. Clustering menggunakan berbagai algoritma untuk memilah data yang tidak berlabel dan memberikan pengelompokan berdasarkan pola yang ditemukan dalam data tersebut.
Clustering adalah salah satu jenis [Pembelajaran Tak Terawasi](https://wikipedia.org/wiki/Unsupervised_learning) yang mengasumsikan bahwa sebuah dataset tidak berlabel atau bahwa inputnya tidak dipasangkan dengan output yang telah ditentukan. Ia menggunakan berbagai algoritma untuk menyortir data yang tidak berlabel dan memberikan pengelompokan sesuai pola yang ia temukan dalam data tersebut.
[![No One Like You oleh PSquare](https://img.youtube.com/vi/ty2advRiWJM/0.jpg)](https://youtu.be/ty2advRiWJM "No One Like You oleh PSquare")
[![No One Like You by PSquare](https://img.youtube.com/vi/ty2advRiWJM/0.jpg)](https://youtu.be/ty2advRiWJM "No One Like You by PSquare")
> 🎥 Klik gambar di atas untuk menonton video. Sambil mempelajari machine learning dengan clustering, nikmati beberapa lagu Dance Hall Nigeria - ini adalah lagu yang sangat populer dari tahun 2014 oleh PSquare.
> 🎥 Klik gambar di atas untuk video. Saat Anda belajar pembelajaran mesin dengan clustering, nikmati beberapa lagu Dance Hall Nigeria - ini adalah lagu yang sangat populer dari 2014 oleh PSquare.
## [Kuis sebelum kuliah](https://ff-quizzes.netlify.app/en/ml/)
## [Kuis pra-lecture](https://ff-quizzes.netlify.app/en/ml/)
### Pengantar
[Clustering](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) sangat berguna untuk eksplorasi data. Mari kita lihat apakah clustering dapat membantu menemukan tren dan pola dalam cara audiens Nigeria mengonsumsi musik.
[Clustering](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) sangat berguna untuk eksplorasi data. Mari kita lihat apakah ini bisa membantu menemukan tren dan pola dalam cara audiens Nigeria mengonsumsi musik.
✅ Luangkan waktu sejenak untuk memikirkan kegunaan clustering. Dalam kehidupan sehari-hari, clustering terjadi setiap kali Anda memiliki tumpukan cucian dan perlu memilah pakaian anggota keluarga 🧦👕👖🩲. Dalam data science, clustering terjadi saat mencoba menganalisis preferensi pengguna, atau menentukan karakteristik dari dataset yang tidak berlabel. Clustering, dalam beberapa hal, membantu memahami kekacauan, seperti laci kaus kaki.
✅ Luangkan waktu sebentar untuk memikirkan kegunaan clustering. Dalam kehidupan nyata, clustering terjadi setiap kali Anda memiliki tumpukan cucian dan perlu menyortir pakaian anggota keluarga Anda 🧦👕👖🩲. Dalam ilmu data, clustering terjadi ketika mencoba menganalisis preferensi pengguna, atau menentukan karakteristik dari dataset yang tidak berlabel. Clustering, dalam suatu cara, membantu mengerti kekacauan, seperti laci kaus kaki.
[![Pengantar ML](https://img.youtube.com/vi/esmzYhuFnds/0.jpg)](https://youtu.be/esmzYhuFnds "Pengantar Clustering")
[![Introduction to ML](https://img.youtube.com/vi/esmzYhuFnds/0.jpg)](https://youtu.be/esmzYhuFnds "Introduction to Clustering")
> 🎥 Klik gambar di atas untuk menonton video: John Guttag dari MIT memperkenalkan clustering.
> 🎥 Klik gambar di atas untuk video: John Guttag dari MIT memperkenalkan clustering
Dalam lingkungan profesional, clustering dapat digunakan untuk menentukan hal-hal seperti segmentasi pasar, misalnya menentukan kelompok usia mana yang membeli barang tertentu. Penggunaan lainnya adalah deteksi anomali, mungkin untuk mendeteksi penipuan dari dataset transaksi kartu kredit. Atau Anda mungkin menggunakan clustering untuk menentukan tumor dalam kumpulan pemindaian medis.
Dalam lingkungan profesional, clustering dapat digunakan untuk menentukan hal-hal seperti segmentasi pasar, menentukan kelompok usia mana yang membeli barang apa, misalnya. Penggunaan lain adalah deteksi anomali, misalnya untuk mendeteksi penipuan dari kumpulan data transaksi kartu kredit. Atau Anda bisa menggunakan clustering untuk menentukan tumor dalam sekumpulan scan medis.
Luangkan waktu sejenak untuk memikirkan bagaimana Anda mungkin pernah menemui clustering 'di dunia nyata', dalam konteks perbankan, e-commerce, atau bisnis.
Pikirkan sesaat bagaimana Anda mungkin pernah menjumpai clustering 'di lapangan', dalam perbankan, e-commerce, atau lingkungan bisnis.
> 🎓 Menariknya, analisis cluster berasal dari bidang Antropologi dan Psikologi pada tahun 1930-an. Bisakah Anda membayangkan bagaimana ini mungkin digunakan?
> 🎓 Menariknya, analisis cluster berasal dari bidang Antropologi dan Psikologi pada tahun 1930-an. Bisakah Anda membayangkan bagaimana penggunaannya?
Sebagai alternatif, Anda dapat menggunakannya untuk mengelompokkan hasil pencarian - misalnya berdasarkan tautan belanja, gambar, atau ulasan. Clustering berguna ketika Anda memiliki dataset besar yang ingin Anda kurangi dan analisis lebih mendalam, sehingga teknik ini dapat digunakan untuk mempelajari data sebelum model lain dibangun.
Sebagai alternatif, Anda bisa menggunakannya untuk mengelompokkan hasil pencarian - berdasarkan tautan belanja, gambar, atau ulasan, misalnya. Clustering berguna ketika Anda memiliki dataset besar yang ingin Anda kurangi dan pada dataset tersebut ingin melakukan analisis yang lebih mendetail, sehingga teknik ini dapat digunakan untuk mengenal data sebelum model lain dibangun.
✅ Setelah data Anda diorganisasi dalam cluster, Anda memberikan ID cluster, dan teknik ini dapat berguna untuk menjaga privasi dataset; Anda dapat merujuk pada titik data dengan ID cluster-nya, daripada dengan data yang lebih mengungkapkan. Bisakah Anda memikirkan alasan lain mengapa Anda merujuk pada ID cluster daripada elemen lain dari cluster untuk mengidentifikasinya?
Perdalam pemahaman Anda tentang teknik clustering dalam [modul pembelajaran ini](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott).
✅ Setelah data Anda terorganisir dalam cluster, Anda menetapkan id cluster padanya, dan teknik ini bisa berguna saat menjaga privasi dataset; Anda dapat merujuk ke titik data dengan id cluster, bukan dengan data yang lebih mengungkapkan identitas. Bisakah Anda memikirkan alasan lain mengapa Anda akan merujuk id cluster daripada elemen lain dari cluster untuk mengidentifikasinya?
Perdalam pemahaman Anda tentang teknik clustering di [modul Learn ini](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott)
## Memulai dengan clustering
[Scikit-learn menawarkan berbagai metode](https://scikit-learn.org/stable/modules/clustering.html) untuk melakukan clustering. Jenis yang Anda pilih akan bergantung pada kasus penggunaan Anda. Menurut dokumentasi, setiap metode memiliki berbagai manfaat. Berikut adalah tabel sederhana dari metode yang didukung oleh Scikit-learn dan kasus penggunaannya yang sesuai:
| Nama metode | Kasus penggunaan |
| :-------------------------- | :-------------------------------------------------------------------- |
| K-Means | tujuan umum, induktif |
| Affinity propagation | banyak, cluster tidak merata, induktif |
| Mean-shift | banyak, cluster tidak merata, induktif |
| Spectral clustering | sedikit, cluster merata, transduktif |
| Ward hierarchical clustering| banyak, cluster terbatas, transduktif |
| Agglomerative clustering | banyak, terbatas, jarak non-Euclidean, transduktif |
| DBSCAN | geometri tidak datar, cluster tidak merata, transduktif |
| OPTICS | geometri tidak datar, cluster tidak merata dengan kepadatan variabel, transduktif |
| Gaussian mixtures | geometri datar, induktif |
| BIRCH | dataset besar dengan outlier, induktif |
> 🎓 Cara kita membuat cluster sangat berkaitan dengan cara kita mengelompokkan titik data ke dalam grup. Mari kita bahas beberapa istilah:
[Scikit-learn menawarkan banyak metode](https://scikit-learn.org/stable/modules/clustering.html) untuk melakukan clustering. Jenis yang Anda pilih akan tergantung pada kasus penggunaan Anda. Menurut dokumentasi, setiap metode memiliki berbagai manfaat. Berikut tabel sederhana dari metode yang didukung oleh Scikit-learn dan kasus penggunaan yang sesuai:
| Nama Metode | Kasus Penggunaan |
| :--------------------------- | :-------------------------------------------------------------------- |
| K-Means | tujuan umum, induktif |
| Propagasi afinitas | banyak, cluster tidak merata, induktif |
| Mean-shift | banyak, cluster tidak merata, induktif |
| Clustering spektral | sedikit, cluster merata, transduktif |
| Clustering hierarki Ward | banyak, cluster terbatas, transduktif |
| Agglomerative clustering | banyak, terbatas, jarak non Euclidean, transduktif |
| DBSCAN | geometri tidak datar, cluster tidak rata, transduktif |
| OPTICS | geometri tidak datar, cluster tidak rata dengan kerapatan variabel, transduktif |
| Gaussian mixtures | geometri datar, induktif |
| BIRCH | dataset besar dengan outlier, induktif |
> 🎓 Cara kita membuat cluster sangat berkaitan dengan bagaimana kita mengumpulkan titik data ke dalam kelompok. Mari kita uraikan beberapa kosakata:
>
> 🎓 ['Transduktif' vs. 'Induktif'](https://wikipedia.org/wiki/Transduction_(machine_learning))
> 🎓 ['Transduktif' vs. 'induktif'](https://wikipedia.org/wiki/Transduction_(machine_learning))
>
> Inferensi transduktif berasal dari kasus pelatihan yang diamati yang dipetakan ke kasus uji tertentu. Inferensi induktif berasal dari kasus pelatihan yang dipetakan ke aturan umum yang kemudian diterapkan pada kasus uji.
> Inferensi transduktif berasal dari kasus pelatihan yang diamati yang memetakan ke kasus uji tertentu. Inferensi induktif berasal dari kasus pelatihan yang memetakan ke aturan umum yang baru kemudian diterapkan pada kasus uji.
>
> Contoh: Bayangkan Anda memiliki dataset yang hanya sebagian berlabel. Beberapa hal adalah 'rekaman', beberapa 'CD', dan beberapa kosong. Tugas Anda adalah memberikan label untuk yang kosong. Jika Anda memilih pendekatan induktif, Anda akan melatih model untuk mencari 'rekaman' dan 'CD', dan menerapkan label tersebut pada data yang tidak berlabel. Pendekatan ini akan kesulitan mengklasifikasikan hal-hal yang sebenarnya adalah 'kaset'. Pendekatan transduktif, di sisi lain, menangani data yang tidak diketahui ini lebih efektif karena bekerja untuk mengelompokkan item serupa bersama-sama dan kemudian menerapkan label ke grup. Dalam kasus ini, cluster mungkin mencerminkan 'benda musik bulat' dan 'benda musik persegi'.
> Contoh: Bayangkan Anda memiliki dataset yang hanya sebagian berlabel. Beberapa adalah 'rekaman', beberapa 'cd', dan beberapa kosong. Tugas Anda adalah memberikan label pada bagian kosong tersebut. Jika Anda memilih pendekatan induktif, Anda melatih model untuk mencari 'rekaman' dan 'cd', kemudian menerapkan label tersebut pada data yang tidak berlabel. Pendekatan ini akan kesulitan mengklasifikasikan sesuatu yang sebenarnya adalah 'kaset'. Sebaliknya pendekatan transduktif menangani data yang tidak dikenal ini lebih efektif karena bekerja untuk mengelompokkan item yang serupa bersama dan kemudian menerapkan label pada kelompok tersebut. Dalam kasus ini, cluster mungkin mencerminkan 'benda musik bulat' dan 'benda musik kotak'.
>
> 🎓 ['Geometri tidak datar' vs. 'datar'](https://datascience.stackexchange.com/questions/52260/terminology-flat-geometry-in-the-context-of-clustering)
>
> Berasal dari terminologi matematika, geometri tidak datar vs. datar mengacu pada pengukuran jarak antara titik-titik dengan metode geometris 'datar' ([Euclidean](https://wikipedia.org/wiki/Euclidean_geometry)) atau 'tidak datar' (non-Euclidean).
> Berasal dari terminologi matematika, geometri tidak datar vs. datar mengacu pada pengukuran jarak antara titik dengan menggunakan metode geometris 'datar' ([Euclidean](https://wikipedia.org/wiki/Euclidean_geometry)) atau 'tidak datar' (non-Euclidean).
>
>'Datar' dalam konteks ini mengacu pada geometri Euclidean (bagian dari geometri ini diajarkan sebagai geometri 'bidang'), dan tidak datar mengacu pada geometri non-Euclidean. Apa hubungannya geometri dengan machine learning? Nah, sebagai dua bidang yang berakar pada matematika, harus ada cara umum untuk mengukur jarak antara titik-titik dalam cluster, dan itu dapat dilakukan dengan cara 'datar' atau 'tidak datar', tergantung pada sifat data. [Jarak Euclidean](https://wikipedia.org/wiki/Euclidean_distance) diukur sebagai panjang segmen garis antara dua titik. [Jarak non-Euclidean](https://wikipedia.org/wiki/Non-Euclidean_geometry) diukur sepanjang kurva. Jika data Anda, saat divisualisasikan, tampaknya tidak ada di bidang, Anda mungkin perlu menggunakan algoritma khusus untuk menanganinya.
>'Datar' dalam konteks ini mengacu pada geometri Euclidean (bagian-bagiannya diajarkan sebagai geometri 'bidang'), dan tidak datar mengacu pada geometri non-Euclidean. Apa hubungannya geometri dengan pembelajaran mesin? Sebagai dua bidang yang berakar pada matematika, harus ada cara umum mengukur jarak antara titik dalam cluster, dan itu bisa dilakukan secara 'datar' atau 'tidak datar', tergantung sifat data. [Jarak Euclidean](https://wikipedia.org/wiki/Euclidean_distance) diukur sebagai panjang segmen garis antara dua titik. [Jarak non-Euclidean](https://wikipedia.org/wiki/Non-Euclidean_geometry) diukur sepanjang kurva. Jika data Anda, bila divisualisasikan, tampak tidak berada pada bidang datar, Anda mungkin perlu menggunakan algoritma khusus untuk menanganinya.
>
![Infografis Geometri Datar vs Tidak Datar](../../../../5-Clustering/1-Visualize/images/flat-nonflat.png)
![Flat vs Nonflat Geometry Infographic](../../../../translated_images/id/flat-nonflat.d1c8c6e2a96110c1.webp)
> Infografis oleh [Dasani Madipalli](https://twitter.com/dasani_decoded)
>
> 🎓 ['Jarak'](https://web.stanford.edu/class/cs345a/slides/12-clustering.pdf)
>
> Cluster didefinisikan oleh matriks jaraknya, misalnya jarak antara titik-titik. Jarak ini dapat diukur dengan beberapa cara. Cluster Euclidean didefinisikan oleh rata-rata nilai titik, dan memiliki 'centroid' atau titik pusat. Jarak diukur berdasarkan jarak ke centroid tersebut. Jarak non-Euclidean mengacu pada 'clustroid', titik yang paling dekat dengan titik lainnya. Clustroid pada gilirannya dapat didefinisikan dengan berbagai cara.
> Cluster didefinisikan oleh matriks jaraknya, misalnya jarak antar titik. Jarak ini bisa diukur dalam beberapa cara. Cluster Euclidean didefinisikan oleh rata-rata nilai titik, dan mengandung 'centroid' atau titik pusat. Jarak diukur dari titik ke centroid tersebut. Jarak non-Euclidean mengacu pada 'clustroid', titik yang paling dekat dengan titik lainnya. Clustroid sendiri dapat didefinisikan dengan berbagai cara.
>
> 🎓 ['Terbatas'](https://wikipedia.org/wiki/Constrained_clustering)
>
> [Clustering Terbatas](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) memperkenalkan pembelajaran 'semi-terawasi' ke dalam metode tanpa pengawasan ini. Hubungan antara titik-titik ditandai sebagai 'tidak boleh terhubung' atau 'harus terhubung' sehingga beberapa aturan dipaksakan pada dataset.
> [Clustering Terbatas](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) memperkenalkan pembelajaran 'semi-terawasi' ke dalam metode tak terawasi ini. Hubungan antar titik diberi label 'tidak dapat terhubung' atau 'harus-terhubung' sehingga beberapa aturan dipaksakan pada dataset.
>
>Contoh: Jika algoritma dibiarkan bebas pada kumpulan data yang tidak berlabel atau semi-berlabel, cluster yang dihasilkannya mungkin berkualitas buruk. Dalam contoh di atas, cluster mungkin mengelompokkan 'benda musik bulat' dan 'benda musik persegi' dan 'benda segitiga' dan 'kue'. Jika diberikan beberapa batasan, atau aturan untuk diikuti ("item harus terbuat dari plastik", "item harus dapat menghasilkan musik") ini dapat membantu 'membatasi' algoritma untuk membuat pilihan yang lebih baik.
>Contoh: Jika algoritma dibiarkan bebas pada sekumpulan data yang tidak berlabel atau semi-berlabel, cluster yang dihasilkannya mungkin berkualitas rendah. Dalam contoh di atas, cluster mungkin mengelompokkan 'benda musik bulat', 'benda musik kotak', 'benda segitiga', dan 'kue'. Jika diberikan beberapa batasan, atau aturan untuk diikuti ("item harus terbuat dari plastik", "item harus bisa menghasilkan musik") hal ini dapat membantu 'membatasi' algoritma untuk membuat pilihan yang lebih baik.
>
> 🎓 'Kepadatan'
>
> Data yang 'berisik' dianggap 'padat'. Jarak antara titik-titik dalam setiap cluster-nya mungkin, setelah diperiksa, lebih atau kurang padat, atau 'ramai' dan dengan demikian data ini perlu dianalisis dengan metode clustering yang sesuai. [Artikel ini](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) menunjukkan perbedaan antara menggunakan algoritma K-Means clustering vs. HDBSCAN untuk mengeksplorasi dataset yang berisik dengan kepadatan cluster yang tidak merata.
> Data yang 'bising' dianggap 'padat'. Jarak antara titik dalam masing-masing cluster dapat terbukti, setelah pemeriksaan, lebih atau kurang padat, atau 'ramai', sehingga data ini perlu dianalisa dengan metode clustering yang tepat. [Artikel ini](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) menunjukkan perbedaan antara menggunakan clustering K-Means vs. algoritma HDBSCAN untuk menjelajah dataset yang berisik dengan kepadatan cluster tidak rata.
## Algoritma clustering
Ada lebih dari 100 algoritma clustering, dan penggunaannya bergantung pada sifat data yang ada. Mari kita bahas beberapa yang utama:
Ada lebih dari 100 algoritma clustering, dan penggunaannya bergantung pada sifat data yang tersedia. Mari kita bahas beberapa yang utama:
- **Clustering hierarkis**. Jika sebuah objek diklasifikasikan berdasarkan kedekatannya dengan objek terdekat, bukan dengan yang lebih jauh, cluster terbentuk berdasarkan jarak anggotanya ke dan dari objek lain. Agglomerative clustering dari Scikit-learn bersifat hierarkis.
- **Clustering hierarki**. Jika sebuah objek diklasifikasikan berdasarkan kedekatannya dengan objek terdekat, bukan dengan yang lebih jauh, cluster terbentuk berdasarkan jarak anggota mereka ke dan dari objek lain. Agglomerative clustering di Scikit-learn bersifat hierarki.
![Infografis Clustering Hierarkis](../../../../5-Clustering/1-Visualize/images/hierarchical.png)
![Hierarchical clustering Infographic](../../../../translated_images/id/hierarchical.bf59403aa43c8c47.webp)
> Infografis oleh [Dasani Madipalli](https://twitter.com/dasani_decoded)
- **Clustering centroid**. Algoritma populer ini membutuhkan pilihan 'k', atau jumlah cluster yang akan dibentuk, setelah itu algoritma menentukan titik pusat cluster dan mengumpulkan data di sekitar titik tersebut. [K-means clustering](https://wikipedia.org/wiki/K-means_clustering) adalah versi clustering centroid yang populer. Pusat ditentukan oleh rata-rata terdekat, sehingga dinamakan demikian. Jarak kuadrat dari cluster diminimalkan.
- **Clustering centroid**. Algoritma populer ini memerlukan pemilihan 'k', atau jumlah cluster yang akan dibentuk, setelah itu algoritma menentukan titik pusat cluster dan mengumpulkan data di sekitarnya. [K-means clustering](https://wikipedia.org/wiki/K-means_clustering) adalah versi populer dari clustering centroid. Titik pusat ditentukan oleh rata-rata terdekat, jadi namanya demikian. Jarak kuadrat dari cluster diminimalkan.
![Infografis Clustering Centroid](../../../../5-Clustering/1-Visualize/images/centroid.png)
![Centroid clustering Infographic](../../../../translated_images/id/centroid.097fde836cf6c918.webp)
> Infografis oleh [Dasani Madipalli](https://twitter.com/dasani_decoded)
- **Clustering berbasis distribusi**. Berdasarkan pemodelan statistik, clustering berbasis distribusi berpusat pada menentukan probabilitas bahwa suatu titik data termasuk dalam cluster, dan menetapkannya sesuai. Metode campuran Gaussian termasuk dalam jenis ini.
- **Clustering berbasis distribusi**. Berdasarkan pemodelan statistik, clustering berbasis distribusi berfokus pada menentukan probabilitas bahwa sebuah titik data termasuk dalam cluster, dan menetapkannya sesuai. Metode campuran Gaussian termasuk tipe ini.
- **Clustering berbasis kepadatan**. Titik data ditetapkan ke cluster berdasarkan kepadatannya, atau pengelompokannya di sekitar satu sama lain. Titik data yang jauh dari grup dianggap sebagai outlier atau noise. DBSCAN, Mean-shift, dan OPTICS termasuk dalam jenis clustering ini.
- **Clustering berbasis kepadatan**. Titik data ditetapkan ke cluster berdasarkan kepadatannya, atau pengelompokan mereka satu sama lain. Titik data yang jauh dari kelompok dianggap outlier atau noise. DBSCAN, Mean-shift, dan OPTICS adalah jenis clustering ini.
- **Clustering berbasis grid**. Untuk dataset multi-dimensi, grid dibuat dan data dibagi di antara sel grid, sehingga membentuk cluster.
- **Clustering berbasis grid**. Untuk dataset multi-dimensi, dibuat sebuah grid dan data dibagi ke dalam sel-sel grid tersebut, sehingga membentuk cluster.
## Latihan - cluster data Anda
@ -110,7 +109,7 @@ Clustering sebagai teknik sangat terbantu oleh visualisasi yang tepat, jadi mari
!pip install seaborn
```
1. Tambahkan data lagu dari [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv). Muat dataframe dengan beberapa data tentang lagu-lagu tersebut. Bersiaplah untuk mengeksplorasi data ini dengan mengimpor pustaka dan mencetak data:
1. Tambahkan data lagu dari [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv). Buat dataframe dengan beberapa data tentang lagu-lagu tersebut. Bersiaplah untuk mengeksplorasi data ini dengan mengimpor pustaka dan menampilkan data:
```python
import matplotlib.pyplot as plt
@ -126,11 +125,11 @@ Clustering sebagai teknik sangat terbantu oleh visualisasi yang tepat, jadi mari
| --- | ------------------------ | ---------------------------- | ------------------- | ---------------- | ------------ | ------ | ---------- | ------------ | ------------ | ------ | ---------------- | -------- | -------- | ----------- | ------- | -------------- |
| 0 | Sparky | Mandy & The Jungle | Cruel Santino | alternative r&b | 2019 | 144000 | 48 | 0.666 | 0.851 | 0.42 | 0.534 | 0.11 | -6.699 | 0.0829 | 133.015 | 5 |
| 1 | shuga rush | EVERYTHING YOU HEARD IS TRUE | Odunsi (The Engine) | afropop | 2020 | 89488 | 30 | 0.71 | 0.0822 | 0.683 | 0.000169 | 0.101 | -5.64 | 0.36 | 129.993 | 3 |
| 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 |
| 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 |
| 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 |
| 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 |
| 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 |
| 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 |
1. Dapatkan informasi tentang dataframe dengan memanggil `info()`:
1. Dapatkan beberapa informasi tentang dataframe, dengan memanggil `info()`:
```python
df.info()
@ -164,7 +163,7 @@ Clustering sebagai teknik sangat terbantu oleh visualisasi yang tepat, jadi mari
memory usage: 66.4+ KB
```
1. Periksa ulang apakah ada nilai kosong dengan memanggil `isnull()` dan memastikan jumlahnya adalah 0:
1. Periksa kembali nilai null, dengan memanggil `isnull()` dan memverifikasi jumlahnya adalah 0:
```python
df.isnull().sum()
@ -209,9 +208,9 @@ Clustering sebagai teknik sangat terbantu oleh visualisasi yang tepat, jadi mari
| 75% | 2017 | 242098.5 | 31 | 0.8295 | 0.403 | 0.87575 | 0.000234 | 0.164 | -3.331 | 0.177 | 125.03925 | 4 |
| max | 2020 | 511738 | 73 | 0.966 | 0.954 | 0.995 | 0.91 | 0.811 | 0.582 | 0.514 | 206.007 | 5 |
> 🤔 Jika kita bekerja dengan clustering, metode tanpa pengawasan yang tidak memerlukan data berlabel, mengapa kita menunjukkan data ini dengan label? Pada fase eksplorasi data, label berguna, tetapi tidak diperlukan agar algoritma clustering dapat bekerja. Anda juga bisa menghapus header kolom dan merujuk data berdasarkan nomor kolom.
> 🤔 Jika kita bekerja dengan clustering, sebuah metode tanpa pengawasan yang tidak memerlukan data berlabel, mengapa kita menunjukkan data ini dengan label? Dalam fase eksplorasi data, label ini sangat berguna, tetapi mereka tidak diperlukan agar algoritma clustering dapat bekerja. Kamu juga bisa menghapus header kolom dan merujuk data berdasarkan nomor kolom.
Lihat nilai umum dari data. Perhatikan bahwa popularitas bisa bernilai '0', yang menunjukkan lagu-lagu yang tidak memiliki peringkat. Mari kita hapus nilai-nilai tersebut sebentar lagi.
Lihat nilai umum dari data. Perhatikan bahwa popularitas dapat bernilai '0', yang menunjukkan lagu yang tidak memiliki peringkat. Mari kita hapus nilai-nilai tersebut sebentar lagi.
1. Gunakan barplot untuk mengetahui genre yang paling populer:
@ -225,13 +224,13 @@ Lihat nilai umum dari data. Perhatikan bahwa popularitas bisa bernilai '0', yang
plt.title('Top genres',color = 'blue')
```
![most popular](../../../../5-Clustering/1-Visualize/images/popular.png)
![most popular](../../../../translated_images/id/popular.9c48d84b3386705f.webp)
✅ Jika Anda ingin melihat lebih banyak nilai teratas, ubah `[:5]` menjadi nilai yang lebih besar, atau hapus untuk melihat semuanya.
✅ Jika kamu ingin melihat nilai teratas lainnya, ubah jumlah `[:5]` ke nilai yang lebih besar, atau hapus agar bisa melihat semuanya.
Catatan, ketika genre teratas dijelaskan sebagai 'Missing', itu berarti Spotify tidak mengklasifikasikannya, jadi mari kita hilangkan.
Catatan, ketika genre teratas disebut sebagai 'Missing', itu berarti Spotify tidak mengklasifikasikannya, jadi mari kita hapus data tersebut.
1. Hilangkan data yang hilang dengan memfilternya:
1. Hilangkan data yang hilang dengan memfilternya
```python
df = df[df['artist_top_genre'] != 'Missing']
@ -242,11 +241,11 @@ Catatan, ketika genre teratas dijelaskan sebagai 'Missing', itu berarti Spotify
plt.title('Top genres',color = 'blue')
```
Sekarang periksa ulang genre:
Sekarang periksa kembali genre:
![most popular](../../../../5-Clustering/1-Visualize/images/all-genres.png)
![most popular](../../../../translated_images/id/all-genres.1d56ef06cefbfcd6.webp)
1. Tiga genre teratas mendominasi dataset ini. Mari kita fokus pada `afro dancehall`, `afropop`, dan `nigerian pop`, serta memfilter dataset untuk menghapus apa pun dengan nilai popularitas 0 (yang berarti tidak diklasifikasikan dengan popularitas dalam dataset dan dapat dianggap sebagai noise untuk tujuan kita):
1. Jauh lebih dominan tiga genre teratas dalam dataset ini. Mari kita fokus pada `afro dancehall`, `afropop`, dan `nigerian pop`, serta memfilter dataset untuk menghapus data dengan nilai popularitas 0 (artinya tidak diklasifikasikan dengan popularitas dalam dataset dan bisa dianggap sebagai noise untuk keperluan kita):
```python
df = df[(df['artist_top_genre'] == 'afro dancehall') | (df['artist_top_genre'] == 'afropop') | (df['artist_top_genre'] == 'nigerian pop')]
@ -266,21 +265,21 @@ Catatan, ketika genre teratas dijelaskan sebagai 'Missing', itu berarti Spotify
sns.heatmap(corrmat, vmax=.8, square=True)
```
![correlations](../../../../5-Clustering/1-Visualize/images/correlation.png)
![correlations](../../../../translated_images/id/correlation.a9356bb798f5eea5.webp)
Satu-satunya korelasi kuat adalah antara `energy` dan `loudness`, yang tidak terlalu mengejutkan, mengingat musik yang keras biasanya cukup energik. Selain itu, korelasi relatif lemah. Akan menarik untuk melihat apa yang dapat dilakukan algoritma clustering terhadap data ini.
Korelasi yang kuat hanya antara `energy` dan `loudness`, yang tidak mengherankan, mengingat musik keras biasanya cukup energik. Selain itu, korelasinya relatif lemah. Akan menarik untuk melihat apa yang bisa dibuat algoritma clustering dari data ini.
> 🎓 Perhatikan bahwa korelasi tidak menyiratkan sebab-akibat! Kita memiliki bukti korelasi tetapi tidak memiliki bukti sebab-akibat. [Sebuah situs web yang menghibur](https://tylervigen.com/spurious-correlations) memiliki beberapa visual yang menekankan poin ini.
> 🎓 Perlu dicatat bahwa korelasi tidak berarti sebab-akibat! Kita memiliki bukti korelasi tetapi bukan bukti sebab-akibat. Sebuah [situs web yang lucu](https://tylervigen.com/spurious-correlations) menampilkan visual yang menekankan poin ini.
Apakah ada konvergensi dalam dataset ini terkait popularitas lagu yang dirasakan dan danceability? Sebuah FacetGrid menunjukkan bahwa ada lingkaran konsentris yang sejajar, terlepas dari genre. Mungkinkah selera Nigeria berkumpul pada tingkat danceability tertentu untuk genre ini?
Apakah ada konvergensi dalam dataset ini terkait persepsi popularitas lagu dan danceability? FacetGrid menunjukkan lingkaran konsentris yang sejajar, terlepas dari genre. Mungkinkah selera masyarakat Nigeria berkumpul pada tingkat tertentu dari danceability untuk genre ini?
✅ Coba titik data yang berbeda (energy, loudness, speechiness) dan lebih banyak atau genre musik yang berbeda. Apa yang dapat Anda temukan? Lihat tabel `df.describe()` untuk melihat penyebaran umum dari titik data.
✅ Coba titik data yang berbeda (energy, loudness, speechiness) dan genre musik yang lebih banyak atau berbeda. Apa yang bisa kamu temukan? Lihat tabel `df.describe()` untuk mengetahui penyebaran umum titik data.
### Latihan - distribusi data
Apakah ketiga genre ini berbeda secara signifikan dalam persepsi danceability mereka, berdasarkan popularitas?
Apakah ketiga genre ini secara signifikan berbeda dalam persepsi danceability mereka, berdasarkan popularitasnya?
1. Periksa distribusi data dari tiga genre teratas kita untuk popularitas dan danceability di sepanjang sumbu x dan y tertentu.
1. Periksa distribusi data dari tiga genre teratas untuk popularitas dan danceability pada sumbu x dan y tertentu.
```python
sns.set_theme(style="ticks")
@ -292,13 +291,13 @@ Apakah ketiga genre ini berbeda secara signifikan dalam persepsi danceability me
)
```
Anda dapat menemukan lingkaran konsentris di sekitar titik konvergensi umum, menunjukkan distribusi titik.
Kamu bisa menemukan lingkaran konsentris di sekitar titik konvergensi umum, yang menunjukkan distribusi titik.
> 🎓 Perhatikan bahwa contoh ini menggunakan grafik KDE (Kernel Density Estimate) yang mewakili data menggunakan kurva kepadatan probabilitas kontinu. Ini memungkinkan kita untuk menafsirkan data saat bekerja dengan beberapa distribusi.
> 🎓 Perlu diketahui, contoh ini menggunakan grafik KDE (Kernel Density Estimate) yang mewakili data menggunakan kurva kepadatan probabilitas kontinu. Ini memungkinkan kita menginterpretasikan data ketika bekerja dengan berbagai distribusi.
Secara umum, ketiga genre ini sejajar secara longgar dalam hal popularitas dan danceability. Menentukan cluster dalam data yang sejajar secara longgar ini akan menjadi tantangan:
Secara umum, ketiga genre tersebut sejajar longgar dalam hal popularitas dan danceability. Menentukan klaster dalam data yang longgar sejajar ini akan menjadi tantangan:
![distribution](../../../../5-Clustering/1-Visualize/images/distribution.png)
![distribution](../../../../translated_images/id/distribution.9be11df42356ca95.webp)
1. Buat scatter plot:
@ -308,25 +307,25 @@ Apakah ketiga genre ini berbeda secara signifikan dalam persepsi danceability me
.add_legend()
```
Scatterplot dari sumbu yang sama menunjukkan pola konvergensi yang serupa
Scatterplot pada sumbu yang sama menunjukkan pola konvergensi yang serupa
![Facetgrid](../../../../5-Clustering/1-Visualize/images/facetgrid.png)
![Facetgrid](../../../../translated_images/id/facetgrid.9b2e65ce707eba1f.webp)
Secara umum, untuk clustering, Anda dapat menggunakan scatterplot untuk menunjukkan cluster data, jadi menguasai jenis visualisasi ini sangat berguna. Dalam pelajaran berikutnya, kita akan menggunakan data yang telah difilter ini dan menggunakan clustering k-means untuk menemukan grup dalam data ini yang tampaknya tumpang tindih dengan cara yang menarik.
Secara umum, untuk clustering, kamu bisa menggunakan scatterplot untuk menunjukkan klaster data, jadi menguasai jenis visualisasi ini sangat berguna. Pada pelajaran berikutnya, kita akan menggunakan data yang sudah difilter ini dan menggunakan clustering k-means untuk menemukan kelompok dalam data yang tampak tumpang tindih dengan cara yang menarik.
---
## 🚀Tantangan
Sebagai persiapan untuk pelajaran berikutnya, buatlah diagram tentang berbagai algoritma clustering yang mungkin Anda temukan dan gunakan dalam lingkungan produksi. Masalah apa yang coba diatasi oleh clustering?
Sebagai persiapan untuk pelajaran berikutnya, buatlah bagan tentang berbagai algoritma clustering yang mungkin kamu temukan dan gunakan dalam lingkungan produksi. Masalah seperti apa yang coba diatasi oleh clustering?
## [Kuis setelah pelajaran](https://ff-quizzes.netlify.app/en/ml/)
## [Kuis pasca kuliah](https://ff-quizzes.netlify.app/en/ml/)
## Tinjauan & Studi Mandiri
## Tinjauan & Belajar Mandiri
Sebelum Anda menerapkan algoritma clustering, seperti yang telah kita pelajari, ada baiknya memahami sifat dataset Anda. Baca lebih lanjut tentang topik ini [di sini](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html)
Sebelum kamu menerapkan algoritma clustering, seperti yang telah kita pelajari, ada baiknya memahami sifat datasetmu. Baca lebih lanjut tentang topik ini [di sini](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html)
[Artikel yang bermanfaat ini](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) menjelaskan berbagai cara algoritma clustering berperilaku, mengingat bentuk data yang berbeda.
[Artikel yang berguna ini](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) memandu kamu melalui berbagai cara bagaimana algoritma clustering berbeda berperilaku, mengingat bentuk data yang berbeda.
## Tugas
@ -334,5 +333,7 @@ Sebelum Anda menerapkan algoritma clustering, seperti yang telah kita pelajari,
---
**Penafian**:
Dokumen ini telah diterjemahkan menggunakan layanan penerjemahan AI [Co-op Translator](https://github.com/Azure/co-op-translator). Meskipun kami berusaha untuk memberikan hasil yang akurat, harap diingat bahwa terjemahan otomatis mungkin mengandung kesalahan atau ketidakakuratan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang otoritatif. Untuk informasi yang bersifat kritis, disarankan menggunakan jasa penerjemahan profesional oleh manusia. Kami tidak bertanggung jawab atas kesalahpahaman atau penafsiran yang keliru yang timbul dari penggunaan terjemahan ini.
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Penafian**:
Dokumen ini telah diterjemahkan menggunakan layanan terjemahan AI [Co-op Translator](https://github.com/Azure/co-op-translator). Meskipun kami berupaya untuk mencapai akurasi, harap diketahui bahwa terjemahan otomatis mungkin mengandung kesalahan atau ketidakakuratan. Dokumen asli dalam bahasa aslinya harus dianggap sebagai sumber yang sah. Untuk informasi penting, disarankan menggunakan terjemahan profesional oleh manusia. Kami tidak bertanggung jawab atas kesalahpahaman atau penafsiran yang keliru yang timbul dari penggunaan terjemahan ini.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,7 +1,7 @@
{
"1-Introduction/1-intro-to-ML/README.md": {
"original_hash": "69389392fa6346e0dfa30f664b7b6fec",
"translation_date": "2025-09-05T19:39:56+00:00",
"original_hash": "3a6394c6f5ce3f8aee8211e92eaf9ef0",
"translation_date": "2026-05-26T23:12:46+00:00",
"source_file": "1-Introduction/1-intro-to-ML/README.md",
"language_code": "ms"
},
@ -240,8 +240,8 @@
"language_code": "ms"
},
"5-Clustering/1-Visualize/README.md": {
"original_hash": "730225ea274c9174fe688b21d421539d",
"translation_date": "2025-09-05T19:14:54+00:00",
"original_hash": "08b00d9fbffc667a7fe7fc19ac00dfbd",
"translation_date": "2026-05-26T23:12:22+00:00",
"source_file": "5-Clustering/1-Visualize/README.md",
"language_code": "ms"
},

@ -1,6 +1,6 @@
# Pengenalan kepada pembelajaran mesin
## [Kuiz sebelum kuliah](https://ff-quizzes.netlify.app/en/ml/)
## [Kuis pra-kerja](https://ff-quizzes.netlify.app/en/ml/)
---
@ -8,7 +8,7 @@
> 🎥 Klik imej di atas untuk video pendek yang menerangkan pelajaran ini.
Selamat datang ke kursus ini tentang pembelajaran mesin klasik untuk pemula! Sama ada anda benar-benar baru dalam topik ini, atau seorang pengamal ML berpengalaman yang ingin menyegarkan pengetahuan dalam bidang tertentu, kami gembira anda menyertai kami! Kami ingin mencipta tempat permulaan yang mesra untuk kajian ML anda dan akan gembira untuk menilai, memberi maklum balas, dan menggabungkan [maklum balas](https://github.com/microsoft/ML-For-Beginners/discussions) anda.
Selamat datang ke kursus pembelajaran mesin klasik untuk pemula! Sama ada anda benar-benar baru dalam topik ini, atau seorang pengamal ML berpengalaman yang ingin mengasah semula bidang tertentu, kami gembira anda sertai kami! Kami ingin mewujudkan tempat permulaan mesra untuk kajian ML anda dan kami sedia menilai, memberi respons, dan menggabungkan [maklum balas](https://github.com/microsoft/ML-For-Beginners/discussions) anda.
[![Pengenalan kepada ML](https://img.youtube.com/vi/h0e2HAPTGF4/0.jpg)](https://youtu.be/h0e2HAPTGF4 "Pengenalan kepada ML")
@ -17,62 +17,62 @@ Selamat datang ke kursus ini tentang pembelajaran mesin klasik untuk pemula! Sam
---
## Memulakan pembelajaran mesin
Sebelum memulakan kurikulum ini, anda perlu menyediakan komputer anda dan bersedia untuk menjalankan notebook secara tempatan.
Sebelum memulakan kurikulum ini, anda perlu menyediakan komputer anda dan sedia untuk menjalankan buku nota secara tempatan.
- **Konfigurasikan mesin anda dengan video ini**. Gunakan pautan berikut untuk belajar [cara memasang Python](https://youtu.be/CXZYvNRIAKM) dalam sistem anda dan [menyediakan editor teks](https://youtu.be/EU8eayHWoZg) untuk pembangunan.
- **Belajar Python**. Adalah disyorkan untuk mempunyai pemahaman asas tentang [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott), bahasa pengaturcaraan yang berguna untuk saintis data yang kami gunakan dalam kursus ini.
- **Belajar Node.js dan JavaScript**. Kami juga menggunakan JavaScript beberapa kali dalam kursus ini semasa membina aplikasi web, jadi anda perlu mempunyai [node](https://nodejs.org) dan [npm](https://www.npmjs.com/) dipasang, serta [Visual Studio Code](https://code.visualstudio.com/) tersedia untuk pembangunan Python dan JavaScript.
- **Buat akaun GitHub**. Oleh kerana anda menemui kami di [GitHub](https://github.com), anda mungkin sudah mempunyai akaun, tetapi jika tidak, buat satu dan kemudian fork kurikulum ini untuk digunakan sendiri. (Jangan lupa beri kami bintang juga 😊)
- **Konfigurasikan mesin anda dengan video-video ini**. Gunakan pautan berikut untuk belajar [cara memasang Python](https://youtu.be/CXZYvNRIAKM) di sistem anda dan [menyediakan editor teks](https://youtu.be/EU8eayHWoZg) untuk pembangunan.
- **Belajar Python**. Adalah disyorkan juga mempunyai pemahaman asas tentang [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott), bahasa pengaturcaraan yang berguna untuk saintis data yang kami gunakan dalam kursus ini.
- **Belajar Node.js dan JavaScript**. Kami juga menggunakan JavaScript beberapa kali dalam kursus ini semasa membina aplikasi web, jadi anda perlu memasang [node](https://nodejs.org) dan [npm](https://www.npmjs.com/), serta mempunyai [Visual Studio Code](https://code.visualstudio.com/) untuk pembangunan Python dan JavaScript.
- **Buat akaun GitHub**. Oleh kerana anda telah menemui kami di [GitHub](https://github.com), anda mungkin sudah mempunyai akaun, tetapi jika tidak, buat satu dan kemudian forke kurikulum ini untuk digunakan sendiri. (Sila beri kami bintang juga 😊)
- **Terokai Scikit-learn**. Biasakan diri dengan [Scikit-learn](https://scikit-learn.org/stable/user_guide.html), satu set perpustakaan ML yang kami rujuk dalam pelajaran ini.
---
## Apa itu pembelajaran mesin?
## Apakah pembelajaran mesin?
Istilah 'pembelajaran mesin' adalah salah satu istilah yang paling popular dan sering digunakan hari ini. Terdapat kemungkinan besar anda pernah mendengar istilah ini sekurang-kurangnya sekali jika anda mempunyai sedikit pengetahuan tentang teknologi, tidak kira bidang kerja anda. Walau bagaimanapun, mekanik pembelajaran mesin adalah misteri bagi kebanyakan orang. Bagi pemula pembelajaran mesin, subjek ini kadangkala boleh terasa mengelirukan. Oleh itu, adalah penting untuk memahami apa sebenarnya pembelajaran mesin, dan mempelajarinya langkah demi langkah, melalui contoh praktikal.
Istilah 'pembelajaran mesin' adalah salah satu istilah paling popular dan kerap digunakan hari ini. Ada kemungkinan besar anda pernah mendengar istilah ini sekurang-kurangnya sekali jika anda mempunyai sedikit pengetahuan tentang teknologi, tidak kira bidang apa yang anda ceburi. Namun, mekanik pembelajaran mesin adalah misteri bagi kebanyakan orang. Bagi pemula pembelajaran mesin, subjek ini kadang-kadang boleh terasa menakutkan. Oleh itu, adalah penting untuk memahami apa sebenarnya pembelajaran mesin, dan belajar mengenainya langkah demi langkah, melalui contoh praktikal.
---
## Kurva hype
## Lengkung kegembiraan
![kurva hype ml](../../../../1-Introduction/1-intro-to-ML/images/hype.png)
![lengkung kegembiraan ml](../../../../translated_images/ms/hype.07183d711a17aafe.webp)
> Google Trends menunjukkan 'kurva hype' terkini istilah 'pembelajaran mesin'
> Google Trends menunjukkan 'lengkung kegembiraan' terbaru untuk istilah 'pembelajaran mesin'
---
## Alam semesta yang misteri
Kita hidup dalam alam semesta yang penuh dengan misteri yang menarik. Saintis hebat seperti Stephen Hawking, Albert Einstein, dan ramai lagi telah mendedikasikan hidup mereka untuk mencari maklumat bermakna yang membongkar misteri dunia di sekeliling kita. Ini adalah keadaan manusia untuk belajar: seorang kanak-kanak manusia belajar perkara baru dan membongkar struktur dunia mereka tahun demi tahun semasa mereka membesar menjadi dewasa.
Kita hidup dalam alam semesta penuh misteri yang mempesonakan. Saintis hebat seperti Stephen Hawking, Albert Einstein, dan lain-lain telah mendedikasikan hidup mereka untuk mencari maklumat bermakna yang membuka misteri dunia di sekitar kita. Ini adalah sifat manusia dalam pembelajaran: seorang anak manusia belajar perkara baru dan membuka susunan dunia mereka tahun demi tahun semasa mereka berkembang menjadi dewasa.
---
## Otak kanak-kanak
Otak dan deria seorang kanak-kanak memerhatikan fakta-fakta di sekeliling mereka dan secara beransur-ansur mempelajari corak tersembunyi kehidupan yang membantu kanak-kanak itu mencipta peraturan logik untuk mengenal pasti corak yang dipelajari. Proses pembelajaran otak manusia menjadikan manusia makhluk hidup yang paling canggih di dunia ini. Belajar secara berterusan dengan menemui corak tersembunyi dan kemudian berinovasi berdasarkan corak tersebut membolehkan kita menjadi lebih baik sepanjang hayat kita. Keupayaan pembelajaran dan kemampuan berkembang ini berkaitan dengan konsep yang dipanggil [keplastikan otak](https://www.simplypsychology.org/brain-plasticity.html). Secara luaran, kita boleh menarik beberapa persamaan motivasi antara proses pembelajaran otak manusia dan konsep pembelajaran mesin.
Otak dan deria kanak-kanak merasakan fakta persekitarannya dan secara beransur-ansur belajar corak tersembunyi kehidupan yang membantu kanak-kanak itu merangka peraturan logik untuk mengenal pasti corak yang dipelajari. Proses pembelajaran otak manusia menjadikan manusia makhluk hidup paling canggih di dunia ini. Pembelajaran berterusan dengan menemui corak tersembunyi dan kemudian berinovasi pada corak itu membolehkan kita memperbaiki diri sepanjang hayat kita. Keupayaan pembelajaran dan evolusi ini berkaitan dengan konsep yang dipanggil [plastisiti otak](https://www.simplypsychology.org/brain-plasticity.html). Secara luaran, kita boleh menggambarkan persamaan motivasi antara proses pembelajaran otak manusia dan konsep pembelajaran mesin.
---
## Otak manusia
[Otak manusia](https://www.livescience.com/29365-human-brain.html) memerhatikan perkara dari dunia nyata, memproses maklumat yang diperhatikan, membuat keputusan rasional, dan melakukan tindakan tertentu berdasarkan keadaan. Inilah yang kita panggil berkelakuan secara pintar. Apabila kita memprogramkan tiruan proses tingkah laku pintar kepada mesin, ia dipanggil kecerdasan buatan (AI).
[Otak manusia](https://www.livescience.com/29365-human-brain.html) merasakan perkara dari dunia nyata, memproses maklumat yang dirasakan, membuat keputusan rasional, dan melaksanakan tindakan tertentu berdasarkan keadaan. Inilah yang kita panggil berkelakuan secara cerdas. Apabila kita memprogramkan simulasi proses tingkah laku cerdas kepada mesin, ia dipanggil kecerdasan buatan (AI).
---
## Beberapa istilah
Walaupun istilah-istilah ini boleh mengelirukan, pembelajaran mesin (ML) adalah subset penting dalam kecerdasan buatan. **ML berkaitan dengan penggunaan algoritma khusus untuk mencari maklumat bermakna dan menemui corak tersembunyi daripada data yang diperhatikan untuk menyokong proses membuat keputusan secara rasional**.
Walaupun istilah ini boleh mengelirukan, pembelajaran mesin (ML) adalah subset penting bagi kecerdasan buatan. **ML berkaitan dengan menggunakan algoritma khusus untuk menemui maklumat bermakna dan mencari corak tersembunyi daripada data yang dirasakan untuk menyokong proses membuat keputusan rasional**.
---
## AI, ML, Pembelajaran Mendalam
![AI, ML, pembelajaran mendalam, sains data](../../../../1-Introduction/1-intro-to-ML/images/ai-ml-ds.png)
![AI, ML, pembelajaran mendalam, sains data](../../../../translated_images/ms/ai-ml-ds.537ea441b124ebf6.webp)
> Diagram menunjukkan hubungan antara AI, ML, pembelajaran mendalam, dan sains data. Infografik oleh [Jen Looper](https://twitter.com/jenlooper) yang diilhamkan oleh [grafik ini](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining)
> Rajah yang menunjukkan hubungan antara AI, ML, pembelajaran mendalam, dan sains data. Grafik oleh [Jen Looper](https://twitter.com/jenlooper) diilhamkan oleh [grafik ini](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining)
---
## Konsep yang akan dibincangkan
## Konsep yang akan dibahas
Dalam kurikulum ini, kita akan membincangkan hanya konsep asas pembelajaran mesin yang mesti diketahui oleh pemula. Kami membincangkan apa yang kami panggil 'pembelajaran mesin klasik' terutamanya menggunakan Scikit-learn, perpustakaan yang sangat baik yang digunakan oleh ramai pelajar untuk mempelajari asas-asas. Untuk memahami konsep yang lebih luas tentang kecerdasan buatan atau pembelajaran mendalam, pengetahuan asas yang kukuh tentang pembelajaran mesin adalah sangat penting, dan kami ingin menawarkannya di sini.
Dalam kurikulum ini, kami akan membahas hanya konsep teras pembelajaran mesin yang mesti diketahui oleh pemula. Kami membahas apa yang kami panggil 'pembelajaran mesin klasik' terutamanya menggunakan Scikit-learn, perpustakaan hebat yang digunakan oleh ramai pelajar untuk belajar asas. Untuk memahami konsep luas kecerdasan buatan atau pembelajaran mendalam, pengetahuan asas pembelajaran mesin sangat penting, dan kami ingin menawarkan pengetahuan ini di sini.
---
## Dalam kursus ini anda akan belajar:
- konsep asas pembelajaran mesin
- konsep teras pembelajaran mesin
- sejarah ML
- ML dan keadilan
- teknik regresi ML
@ -81,70 +81,77 @@ Dalam kurikulum ini, kita akan membincangkan hanya konsep asas pembelajaran mesi
- teknik pemprosesan bahasa semula jadi ML
- teknik ramalan siri masa ML
- pembelajaran pengukuhan
- aplikasi dunia nyata untuk ML
- aplikasi dunia nyata bagi ML
---
## Apa yang tidak akan dibincangkan
## Apa yang tidak akan dibahas
- pembelajaran mendalam
- rangkaian neural
- jaringan neural
- AI
Untuk pengalaman pembelajaran yang lebih baik, kami akan mengelakkan kerumitan rangkaian neural, 'pembelajaran mendalam' - pembinaan model berlapis-lapis menggunakan rangkaian neural - dan AI, yang akan kami bincangkan dalam kurikulum yang berbeza. Kami juga akan menawarkan kurikulum sains data yang akan datang untuk memberi fokus kepada aspek tersebut dalam bidang yang lebih besar ini.
Untuk pengalaman pembelajaran yang lebih baik, kami akan menghindari kerumitan jaringan neural, 'pembelajaran mendalam' - pembinaan model berlapis menggunakan jaringan neural - dan AI yang akan kami bahas dalam kurikulum lain. Kami juga akan menawarkan kurikulum sains data yang akan datang untuk menumpukan pada aspek bidang yang lebih luas ini.
---
## Mengapa belajar pembelajaran mesin?
Pembelajaran mesin, dari perspektif sistem, didefinisikan sebagai penciptaan sistem automatik yang dapat mempelajari corak tersembunyi dari data untuk membantu membuat keputusan pintar.
Pembelajaran mesin, dari perspektif sistem, didefinisikan sebagai penciptaan sistem automatik yang dapat belajar corak tersembunyi dari data untuk membantu dalam membuat keputusan yang cerdas.
Motivasi ini secara longgar diilhamkan oleh bagaimana otak manusia mempelajari perkara tertentu berdasarkan data yang diperhatikan dari dunia luar.
Motivasi ini secara longgar diilhamkan oleh cara otak manusia belajar perkara tertentu berdasarkan data yang diperoleh dari dunia luar.
✅ Fikirkan sejenak mengapa sesebuah perniagaan ingin menggunakan strategi pembelajaran mesin berbanding mencipta enjin berasaskan peraturan yang dikodkan secara keras.
✅ Fikirkan seketika mengapa perniagaan ingin cuba menggunakan strategi pembelajaran mesin berbanding dengan mencipta enjin berasaskan peraturan keras.
---
## Mengapa kualiti data penting
Data berkualiti tinggi meningkatkan prestasi model. Data yang buruk atau berisik boleh mengakibatkan ramalan yang tidak tepat, walaupun menggunakan algoritma pembelajaran mesin yang canggih.
---
## Aplikasi pembelajaran mesin
Aplikasi pembelajaran mesin kini hampir di mana-mana, dan sama meluasnya dengan data yang mengalir di sekitar masyarakat kita, yang dihasilkan oleh telefon pintar, peranti yang disambungkan, dan sistem lain. Memandangkan potensi besar algoritma pembelajaran mesin terkini, penyelidik telah meneroka keupayaannya untuk menyelesaikan masalah kehidupan nyata yang pelbagai dimensi dan pelbagai disiplin dengan hasil yang sangat positif.
Aplikasi pembelajaran mesin kini hampir di mana-mana, dan sebati dengan data yang mengalir di sekitar masyarakat kita, dihasilkan oleh telefon pintar, peranti bersambung, dan sistem lain. Dengan mempertimbangkan potensi besar algoritma pembelajaran mesin terkini, para penyelidik telah meneroka kemampuan mereka untuk menyelesaikan masalah kehidupan sebenar yang multidimensi dan multidisiplin dengan hasil positif yang hebat.
---
## Contoh ML yang diterapkan
## Contoh penggunaan ML
**Anda boleh menggunakan pembelajaran mesin dalam pelbagai cara**:
**Anda boleh menggunakan pembelajaran mesin dalam banyak cara**:
- Untuk meramalkan kemungkinan penyakit daripada sejarah perubatan atau laporan pesakit.
- Untuk memanfaatkan data cuaca bagi meramalkan kejadian cuaca.
- Untuk meramalkan kemungkinan penyakit berdasarkan sejarah perubatan atau laporan pesakit.
- Untuk memanfaatkan data cuaca bagi meramalkan peristiwa cuaca.
- Untuk memahami sentimen dalam teks.
- Untuk mengesan berita palsu bagi menghentikan penyebaran propaganda.
Kewangan, ekonomi, sains bumi, penerokaan angkasa, kejuruteraan bioperubatan, sains kognitif, dan bahkan bidang dalam kemanusiaan telah menyesuaikan pembelajaran mesin untuk menyelesaikan masalah berat pemprosesan data dalam domain mereka.
Kewangan, ekonomi, sains bumi, eksplorasi angkasa, kejuruteraan bioperubatan, sains kognitif, dan bidang kemanusiaan juga telah mengadaptasi pembelajaran mesin untuk menyelesaikan masalah berat yang melibatkan pemprosesan data dalam bidang masing-masing.
---
## Kesimpulan
Pembelajaran mesin mengautomasi proses penemuan corak dengan mencari wawasan bermakna daripada data dunia nyata atau data yang dihasilkan. Ia telah membuktikan dirinya sangat berharga dalam aplikasi perniagaan, kesihatan, dan kewangan, antara lain.
Pembelajaran mesin mengautomasi proses penemuan corak dengan menjumpai wawasan bermakna dari data dunia nyata atau yang dijana. Ia telah membuktikan nilai tinggi dalam aplikasi perniagaan, kesihatan, dan kewangan, antara lain.
Dalam masa terdekat, memahami asas pembelajaran mesin akan menjadi keperluan bagi orang dari mana-mana bidang kerana penerimaannya yang meluas.
Pada masa akan datang, memahami asas pembelajaran mesin akan menjadi keperluan untuk orang dari mana-mana bidang kerana penerimaannya yang meluas.
---
# 🚀 Cabaran
Lukiskan, di atas kertas atau menggunakan aplikasi dalam talian seperti [Excalidraw](https://excalidraw.com/), pemahaman anda tentang perbezaan antara AI, ML, pembelajaran mendalam, dan sains data. Tambahkan beberapa idea tentang masalah yang sesuai untuk diselesaikan oleh setiap teknik ini.
Lukis, di atas kertas atau menggunakan aplikasi dalam talian seperti [Excalidraw](https://excalidraw.com/), kefahaman anda tentang perbezaan antara AI, ML, pembelajaran mendalam, dan sains data. Tambah beberapa idea masalah yang sesuai diselesaikan oleh setiap teknik ini.
# [Kuiz selepas kuliah](https://ff-quizzes.netlify.app/en/ml/)
# [Kuis pasca-kerja](https://ff-quizzes.netlify.app/en/ml/)
---
# Ulasan & Kajian Kendiri
# Ulasan & Belajar Sendiri
Untuk mengetahui lebih lanjut tentang cara anda boleh bekerja dengan algoritma ML di awan, ikuti [Laluan Pembelajaran](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott).
Untuk mengetahui lebih lanjut tentang bagaimana anda boleh bekerja dengan algoritma ML di awan, ikuti [Laluan Pembelajaran](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott).
Ikuti [Laluan Pembelajaran](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott) tentang asas-asas ML.
Ambil [Laluan Pembelajaran](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott) mengenai asas ML.
---
# Tugasan
[Mulakan](assignment.md)
[Mulakan dan jalankan](assignment.md)
---
**Penafian**:
Dokumen ini telah diterjemahkan menggunakan perkhidmatan terjemahan AI [Co-op Translator](https://github.com/Azure/co-op-translator). Walaupun kami berusaha untuk memastikan ketepatan, sila ambil perhatian bahawa terjemahan automatik mungkin mengandungi kesilapan atau ketidaktepatan. Dokumen asal dalam bahasa asalnya harus dianggap sebagai sumber yang berwibawa. Untuk maklumat yang kritikal, terjemahan manusia profesional adalah disyorkan. Kami tidak bertanggungjawab atas sebarang salah faham atau salah tafsir yang timbul daripada penggunaan terjemahan ini.
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Penafian**:
Dokumen ini telah diterjemahkan menggunakan perkhidmatan terjemahan AI [Co-op Translator](https://github.com/Azure/co-op-translator). Walaupun kami berusaha untuk ketepatan, sila ambil maklum bahawa terjemahan automatik mungkin mengandungi kesilapan atau ketidaktepatan. Dokumen asal dalam bahasa asalnya harus dianggap sebagai sumber yang sahih. Untuk maklumat penting, terjemahan oleh manusia profesional adalah disyorkan. Kami tidak bertanggungjawab terhadap sebarang salah faham atau salah tafsir yang timbul daripada penggunaan terjemahan ini.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,106 +1,105 @@
# Pengenalan kepada pengelompokan
Pengelompokan adalah sejenis [Pembelajaran Tanpa Pengawasan](https://wikipedia.org/wiki/Unsupervised_learning) yang mengandaikan bahawa dataset tidak berlabel atau inputnya tidak dipadankan dengan output yang telah ditentukan. Ia menggunakan pelbagai algoritma untuk menyusun data yang tidak berlabel dan menyediakan kumpulan berdasarkan corak yang dikenalpasti dalam data.
Pengelompokan adalah satu jenis [Pembelajaran Tanpa Penyelia](https://wikipedia.org/wiki/Unsupervised_learning) yang menganggap bahawa set data tidak berlabel atau inputnya tidak dipadankan dengan output yang telah ditetapkan. Ia menggunakan pelbagai algoritma untuk menyusun data tanpa label dan memberikan pengelompokan mengikut corak yang dikesan dalam data tersebut.
[![No One Like You oleh PSquare](https://img.youtube.com/vi/ty2advRiWJM/0.jpg)](https://youtu.be/ty2advRiWJM "No One Like You oleh PSquare")
> 🎥 Klik imej di atas untuk video. Sambil anda belajar pembelajaran mesin dengan pengelompokan, nikmati beberapa lagu Dance Hall Nigeria - ini adalah lagu yang sangat popular dari tahun 2014 oleh PSquare.
> 🎥 Klik imej di atas untuk video. Semasa anda belajar pembelajaran mesin dengan pengelompokan, nikmati beberapa trek Dance Hall Nigeria - ini adalah lagu yang sangat dinilai dari tahun 2014 oleh PSquare.
## [Kuiz sebelum kuliah](https://ff-quizzes.netlify.app/en/ml/)
## [Kuiz pra-ceramah](https://ff-quizzes.netlify.app/en/ml/)
### Pengenalan
[Pengelompokan](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) sangat berguna untuk penerokaan data. Mari kita lihat jika ia boleh membantu mengenal pasti trend dan corak dalam cara penonton Nigeria menikmati muzik.
[Pengelompokan](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) sangat berguna untuk penerokaan data. Mari kita lihat jika ia dapat membantu menemui tren dan corak dalam cara penonton Nigeria mengkonsumsi muzik.
✅ Luangkan masa untuk memikirkan kegunaan pengelompokan. Dalam kehidupan sebenar, pengelompokan berlaku apabila anda mempunyai timbunan pakaian dan perlu menyusun pakaian ahli keluarga anda 🧦👕👖🩲. Dalam sains data, pengelompokan berlaku apabila cuba menganalisis pilihan pengguna, atau menentukan ciri-ciri dataset yang tidak berlabel. Pengelompokan, dalam satu cara, membantu memahami kekacauan, seperti laci stokin.
✅ Luangkan masa sebentar untuk memikirkan kegunaan pengelompokan. Dalam kehidupan sebenar, pengelompokan berlaku setiap kali anda mempunyai timbunan pakaian kotor dan perlu menyusun pakaian ahli keluarga anda 🧦👕👖🩲. Dalam sains data, pengelompokan berlaku apabila cuba menganalisis keutamaan pengguna, atau menentukan ciri-ciri mana-mana set data tanpa label. Pengelompokan, secara tidak langsung, membantu memberi makna kepada kekacauan, seperti laci stoking.
[![Pengenalan kepada ML](https://img.youtube.com/vi/esmzYhuFnds/0.jpg)](https://youtu.be/esmzYhuFnds "Pengenalan kepada Pengelompokan")
> 🎥 Klik imej di atas untuk video: John Guttag dari MIT memperkenalkan pengelompokan
Dalam persekitaran profesional, pengelompokan boleh digunakan untuk menentukan perkara seperti segmentasi pasaran, menentukan kumpulan umur yang membeli barangan tertentu, sebagai contoh. Kegunaan lain adalah pengesanan anomali, mungkin untuk mengesan penipuan daripada dataset transaksi kad kredit. Atau anda mungkin menggunakan pengelompokan untuk mengenal pasti tumor dalam sekumpulan imbasan perubatan.
Dalam persekitaran profesional, pengelompokan boleh digunakan untuk menentukan perkara seperti segmentasi pasaran, menentukan kumpulan umur yang membeli barang apa, contohnya. Satu kegunaan lain adalah pengesanan anomali, contohnya untuk mengesan penipuan daripada set data transaksi kad kredit. Atau anda mungkin menggunakan pengelompokan untuk menentukan tumor dalam siri imbasan perubatan.
Luangkan masa untuk memikirkan bagaimana anda mungkin pernah menemui pengelompokan 'di alam nyata', dalam perbankan, e-dagang, atau perniagaan.
Fikirkan sebentar tentang bagaimana anda mungkin telah menemui pengelompokan 'di alam nyata', dalam persekitaran perbankan, e-dagang, atau perniagaan.
> 🎓 Menariknya, analisis pengelompokan berasal dari bidang Antropologi dan Psikologi pada tahun 1930-an. Bolehkah anda bayangkan bagaimana ia mungkin digunakan?
> 🎓 Menariknya, analisis kluster berasal daripada bidang Antropologi dan Psikologi pada tahun 1930-an. Bolehkah anda bayangkan bagaimana ia mungkin telah digunakan?
Sebagai alternatif, anda boleh menggunakannya untuk mengelompokkan hasil carian - seperti pautan membeli-belah, imej, atau ulasan, sebagai contoh. Pengelompokan berguna apabila anda mempunyai dataset yang besar yang ingin anda kurangkan dan pada dataset tersebut anda ingin melakukan analisis yang lebih terperinci, jadi teknik ini boleh digunakan untuk mempelajari data sebelum model lain dibina.
Sebagai alternatif, anda boleh menggunakannya untuk mengelompokkan hasil carian - mengikut pautan membeli-belah, imej, atau ulasan, misalnya. Pengelompokan berguna apabila anda mempunyai set data besar yang ingin anda kurangkan dan pada mana anda ingin melakukan analisis lebih terperinci, jadi teknik ini boleh digunakan untuk memahami data sebelum model lain dibina.
✅ Setelah data anda diatur dalam kelompok, anda memberikan Id kelompok, dan teknik ini boleh berguna apabila ingin menjaga privasi dataset; anda boleh merujuk kepada titik data dengan Id kelompoknya, dan bukannya data yang lebih mendedahkan. Bolehkah anda memikirkan sebab lain mengapa anda merujuk kepada Id kelompok dan bukannya elemen lain dalam kelompok untuk mengenal pasti data?
✅ Setelah data anda disusun dalam kluster, anda memberi ID kluster, dan teknik ini boleh berguna untuk menjaga privasi set data; anda boleh merujuk kepada titik data melalui ID kluster, bukan melalui data yang lebih mendedahkan yang boleh dikenal pasti. Bolehkah anda fikirkan sebab lain mengapa anda akan merujuk kepada ID kluster dan bukan elemen lain dalam kluster untuk mengenalinya?
Perdalam pemahaman anda tentang teknik pengelompokan dalam [modul pembelajaran ini](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott)
Perdalam pemahaman anda tentang teknik pengelompokan dalam [modul Pembelajaran](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott)
## Memulakan dengan pengelompokan
## Memulakan pengelompokan
[Scikit-learn menawarkan pelbagai kaedah](https://scikit-learn.org/stable/modules/clustering.html) untuk melakukan pengelompokan. Jenis yang anda pilih akan bergantung pada kes penggunaan anda. Menurut dokumentasi, setiap kaedah mempunyai pelbagai manfaat. Berikut adalah jadual ringkas kaedah yang disokong oleh Scikit-learn dan kes penggunaan yang sesuai:
[Scikit-learn menawarkan pelbagai jenis](https://scikit-learn.org/stable/modules/clustering.html) kaedah untuk melakukan pengelompokan. Jenis yang anda pilih bergantung pada kes penggunaan anda. Menurut dokumentasi, setiap kaedah mempunyai pelbagai faedah. Berikut adalah jadual ringkas kaedah-kaedah yang disokong oleh Scikit-learn dan kes penggunaan yang sesuai:
| Nama kaedah | Kes penggunaan |
| :--------------------------- | :-------------------------------------------------------------------- |
| K-Means | tujuan umum, induktif |
| Affinity propagation | banyak, kelompok tidak sekata, induktif |
| Mean-shift | banyak, kelompok tidak sekata, induktif |
| Spectral clustering | sedikit, kelompok sekata, transduktif |
| Ward hierarchical clustering | banyak, kelompok terhad, transduktif |
| Agglomerative clustering | banyak, terhad, jarak bukan Euclidean, transduktif |
| DBSCAN | geometri tidak rata, kelompok tidak sekata, transduktif |
| OPTICS | geometri tidak rata, kelompok tidak sekata dengan ketumpatan berubah, transduktif |
| Gaussian mixtures | geometri rata, induktif |
| BIRCH | dataset besar dengan outlier, induktif |
> 🎓 Cara kita mencipta kelompok banyak berkaitan dengan cara kita mengumpulkan titik data ke dalam kumpulan. Mari kita jelaskan beberapa istilah:
| Penyebaran keakraban | banyak, kluster tidak sekata, induktif |
| Mean-shift | banyak, kluster tidak sekata, induktif |
| Pengelompokan spektral | sedikit, kluster sekata, transduktif |
| Pengelompokan hierarki Ward | banyak, kluster terhad, transduktif |
| Pengelompokan aglomeratif | banyak, terhad, jarak bukan Euclidean, transduktif |
| DBSCAN | geometri tidak rata, kluster tidak sekata, transduktif |
| OPTICS | geometri tidak rata, kluster tidak sekata dengan ketumpatan berubah-ubah, transduktif |
| Campuran Gaussian | geometri rata, induktif |
| BIRCH | set data besar dengan nilai luar, induktif |
> 🎓 Cara kita mencipta kluster banyak bergantung pada cara kita mengumpulkan titik data ke dalam kumpulan. Mari kita jelaskan beberapa istilah:
>
> 🎓 ['Transduktif' vs. 'Induktif'](https://wikipedia.org/wiki/Transduction_(machine_learning))
> 🎓 ['Transduktif' vs. 'induktif'](https://wikipedia.org/wiki/Transduction_(machine_learning))
>
> Inferens transduktif diperoleh daripada kes latihan yang diperhatikan yang memetakan kepada kes ujian tertentu. Inferens induktif diperoleh daripada kes latihan yang memetakan kepada peraturan umum yang hanya kemudian digunakan pada kes ujian.
> Inferens transduktif diperoleh daripada kes latihan yang diperhatikan yang dipadankan dengan kes ujian tertentu. Inferens induktif diperoleh daripada kes latihan yang dipadankan dengan peraturan umum yang kemudiannya hanya digunakan untuk kes ujian.
>
> Contoh: Bayangkan anda mempunyai dataset yang hanya sebahagiannya berlabel. Beberapa perkara adalah 'rekod', beberapa 'cd', dan beberapa kosong. Tugas anda adalah memberikan label untuk yang kosong. Jika anda memilih pendekatan induktif, anda akan melatih model mencari 'rekod' dan 'cd', dan menerapkan label tersebut pada data yang tidak berlabel. Pendekatan ini akan menghadapi kesukaran mengklasifikasikan perkara yang sebenarnya 'kaset'. Pendekatan transduktif, sebaliknya, menangani data yang tidak diketahui ini dengan lebih berkesan kerana ia berfungsi untuk mengelompokkan item serupa bersama-sama dan kemudian menerapkan label pada kumpulan. Dalam kes ini, kelompok mungkin mencerminkan 'benda muzik bulat' dan 'benda muzik segi empat'.
> Contoh: Bayangkan anda mempunyai set data yang hanya sebahagiannya berlabel. Sesetengah perkara adalah 'rekod', sesetengah 'cd', dan sesetengah kosong. Tugas anda adalah memberi label kepada yang kosong. Jika anda memilih pendekatan induktif, anda akan melatih model mencari 'rekod' dan 'cd', dan menggunakan label itu pada data tanpa label anda. Pendekatan ini akan menghadapi kesukaran mengklasifikasikan perkara yang sebenarnya adalah 'kaset'. Pendekatan transduktif pula mengendalikan data tidak diketahui ini dengan lebih berkesan kerana ia berusaha mengelompokkan item yang serupa bersama dan kemudian menerapkan label pada kumpulan tersebut. Dalam kes ini, kluster mungkin mencerminkan 'benda muzik bulat' dan 'benda muzik segi empat'.
>
> 🎓 ['Geometri tidak rata' vs. 'rata'](https://datascience.stackexchange.com/questions/52260/terminology-flat-geometry-in-the-context-of-clustering)
> 🎓 ['Geometri bukan rata' vs. 'rata'](https://datascience.stackexchange.com/questions/52260/terminology-flat-geometry-in-the-context-of-clustering)
>
> Berasal daripada istilah matematik, geometri tidak rata vs. rata merujuk kepada ukuran jarak antara titik dengan cara 'rata' ([Euclidean](https://wikipedia.org/wiki/Euclidean_geometry)) atau 'tidak rata' (bukan Euclidean).
> Berasal dari istilah matematik, geometri bukan rata vs. rata merujuk kepada ukuran jarak antara titik sama ada dengan kaedah geometri 'rata' ([Euclidean](https://wikipedia.org/wiki/Euclidean_geometry)) atau 'bukan rata' (bukan Euclidean).
>
>'Rata' dalam konteks ini merujuk kepada geometri Euclidean (bahagian daripadanya diajar sebagai geometri 'dataran'), dan tidak rata merujuk kepada geometri bukan Euclidean. Apa kaitan geometri dengan pembelajaran mesin? Nah, sebagai dua bidang yang berakar dalam matematik, mesti ada cara umum untuk mengukur jarak antara titik dalam kelompok, dan itu boleh dilakukan dengan cara 'rata' atau 'tidak rata', bergantung pada sifat data. [Jarak Euclidean](https://wikipedia.org/wiki/Euclidean_distance) diukur sebagai panjang segmen garis antara dua titik. [Jarak bukan Euclidean](https://wikipedia.org/wiki/Non-Euclidean_geometry) diukur sepanjang lengkung. Jika data anda, yang divisualisasikan, nampaknya tidak wujud pada dataran, anda mungkin perlu menggunakan algoritma khusus untuk menanganinya.
> 'Rata' dalam konteks ini merujuk kepada geometri Euclidean (bahagian daripadanya diajar sebagai geometri 'datar'), dan bukan rata merujuk kepada geometri bukan Euclidean. Apa kaitan geometri dengan pembelajaran mesin? Sebagai dua bidang yang berakar dalam matematik, mesti ada cara umum untuk mengukur jarak antara titik dalam kluster, dan itu boleh dilakukan secara 'rata' atau 'bukan rata', bergantung pada sifat data. [Jarak Euclidean](https://wikipedia.org/wiki/Euclidean_distance) diukur sebagai panjang segmen garis antara dua titik. [Jarak bukan Euclidean](https://wikipedia.org/wiki/Non-Euclidean_geometry) diukur sepanjang lengkungan. Jika data anda, apabila divisualisasikan, nampak seolah-olah tidak wujud pada satah, anda mungkin perlu menggunakan algoritma khas untuk mengendalikannya.
>
![Infografik Geometri Rata vs Tidak Rata](../../../../5-Clustering/1-Visualize/images/flat-nonflat.png)
![Infografik Geometri Rata vs Bukan Rata](../../../../translated_images/ms/flat-nonflat.d1c8c6e2a96110c1.webp)
> Infografik oleh [Dasani Madipalli](https://twitter.com/dasani_decoded)
>
> 🎓 ['Jarak'](https://web.stanford.edu/class/cs345a/slides/12-clustering.pdf)
>
> Kelompok ditentukan oleh matriks jaraknya, contohnya jarak antara titik. Jarak ini boleh diukur dengan beberapa cara. Kelompok Euclidean ditentukan oleh purata nilai titik, dan mengandungi 'centroid' atau titik tengah. Jarak diukur dengan jarak ke centroid tersebut. Jarak bukan Euclidean merujuk kepada 'clustroid', titik yang paling dekat dengan titik lain. Clustroid pula boleh ditentukan dengan pelbagai cara.
> Kluster ditakrifkan oleh matriks jarak mereka, contohnya jarak antara titik. Jarak ini boleh diukur dalam beberapa cara. Kluster Euclidean ditakrifkan oleh purata nilai titik, dan mengandungi 'pusat' atau titik tengah. Jarak diukur dengan jarak ke pusat itu. Jarak Non-Euclidean merujuk kepada 'klustroid', titik yang paling dekat dengan titik-titik lain. Klustroid pula boleh ditakrifkan dalam pelbagai cara.
>
> 🎓 ['Terhad'](https://wikipedia.org/wiki/Constrained_clustering)
> 🎓 ['Berkekangan'](https://wikipedia.org/wiki/Constrained_clustering)
>
> [Pengelompokan Terhad](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) memperkenalkan pembelajaran 'semi-supervised' ke dalam kaedah tanpa pengawasan ini. Hubungan antara titik ditandai sebagai 'tidak boleh dihubungkan' atau 'mesti dihubungkan' jadi beberapa peraturan dipaksa pada dataset.
> [Pengelompokan Berkekangan](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) memperkenalkan pembelajaran 'semi-terawas' ke dalam kaedah tanpa penyelia ini. Hubungan antara titik ditandakan sebagai 'tidak boleh pautkan' atau 'mesti pautkan' supaya beberapa peraturan dipaksa ke atas set data.
>
>Contoh: Jika algoritma dilepaskan pada sekumpulan data yang tidak berlabel atau separa berlabel, kelompok yang dihasilkannya mungkin berkualiti rendah. Dalam contoh di atas, kelompok mungkin mengelompokkan 'benda muzik bulat' dan 'benda muzik segi empat' dan 'benda segi tiga' dan 'kuih'. Jika diberikan beberapa kekangan, atau peraturan untuk diikuti ("item mesti diperbuat daripada plastik", "item perlu dapat menghasilkan muzik") ini boleh membantu 'mengekang' algoritma untuk membuat pilihan yang lebih baik.
> Contoh: Jika algoritma dibebaskan pada set data tanpa label atau setengah berlabel, kluster yang dihasilkannya mungkin berkualiti rendah. Dalam contoh di atas, kluster mungkin mengelompokkan 'benda muzik bulat', 'benda muzik segi empat', 'benda segitiga' dan 'biskut'. Jika diberikan beberapa kekangan, atau peraturan untuk diikuti ("barang mesti diperbuat daripada plastik", "barang mesti boleh menghasilkan muzik") ini boleh membantu 'mengkekang' algoritma supaya membuat pilihan yang lebih baik.
>
> 🎓 'Ketumpatan'
>
> Data yang 'berisik' dianggap 'padat'. Jarak antara titik dalam setiap kelompoknya mungkin terbukti, pada pemeriksaan, lebih atau kurang padat, atau 'sesak' dan oleh itu data ini perlu dianalisis dengan kaedah pengelompokan yang sesuai. [Artikel ini](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) menunjukkan perbezaan antara menggunakan pengelompokan K-Means vs. algoritma HDBSCAN untuk meneroka dataset berisik dengan ketumpatan kelompok yang tidak sekata.
> Data yang 'berbunyi bising' dianggap 'padat'. Jarak antara titik dalam setiap kluster mungkin, selepas pemeriksaan, lebih atau kurang padat, atau 'sesak' dan data ini perlu dianalisis dengan kaedah pengelompokan yang sesuai. [Artikel ini](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) menunjukkan perbezaan antara menggunakan pengelompokan K-Means vs. algoritma HDBSCAN untuk meneroka set data bising dengan ketumpatan kluster yang tidak sekata.
## Algoritma pengelompokan
Terdapat lebih daripada 100 algoritma pengelompokan, dan penggunaannya bergantung pada sifat data yang ada. Mari kita bincangkan beberapa yang utama:
- **Pengelompokan hierarki**. Jika objek diklasifikasikan berdasarkan jaraknya dengan objek berdekatan, dan bukannya dengan objek yang lebih jauh, kelompok dibentuk berdasarkan jarak anggotanya ke dan dari objek lain. Pengelompokan agglomeratif Scikit-learn adalah hierarki.
- **Pengelompokan hierarki**. Jika objek diklasifikasikan berdasarkan kedekatannya dengan objek berhampiran, bukan dengan yang lebih jauh, kluster dibentuk berdasarkan jarak ahli kepada dan daripada objek lain. Pengelompokan aglomeratif Scikit-learn adalah hierarki.
![Infografik Pengelompokan Hierarki](../../../../5-Clustering/1-Visualize/images/hierarchical.png)
![Infografik pengelompokan hierarki](../../../../translated_images/ms/hierarchical.bf59403aa43c8c47.webp)
> Infografik oleh [Dasani Madipalli](https://twitter.com/dasani_decoded)
- **Pengelompokan centroid**. Algoritma popular ini memerlukan pilihan 'k', atau bilangan kelompok untuk dibentuk, selepas itu algoritma menentukan titik tengah kelompok dan mengumpulkan data di sekitar titik tersebut. [Pengelompokan K-means](https://wikipedia.org/wiki/K-means_clustering) adalah versi pengelompokan centroid yang popular. Pusat ditentukan oleh purata terdekat, maka namanya. Jarak kuadrat dari kelompok diminimumkan.
- **Pengelompokan pusat**. Algoritma popular ini memerlukan pemilihan 'k', atau bilangan kluster untuk dibentuk, selepas itu algoritma menentukan titik pusat kluster dan mengumpul data di sekeliling titik itu. [Pengelompokan K-means](https://wikipedia.org/wiki/K-means_clustering) adalah versi popular pengelompokan pusat. Pusat ditentukan oleh min paling dekat, maka namanya. Jarak kuasa dua daripada kluster diminimumkan.
![Infografik Pengelompokan Centroid](../../../../5-Clustering/1-Visualize/images/centroid.png)
![Infografik pengelompokan pusat](../../../../translated_images/ms/centroid.097fde836cf6c918.webp)
> Infografik oleh [Dasani Madipalli](https://twitter.com/dasani_decoded)
- **Pengelompokan berdasarkan pengedaran**. Berdasarkan pemodelan statistik, pengelompokan berdasarkan pengedaran berpusat pada menentukan kebarangkalian bahawa titik data tergolong dalam kelompok, dan menetapkannya dengan sewajarnya. Kaedah campuran Gaussian tergolong dalam jenis ini.
- **Pengelompokan berdasarkan taburan**. Berasaskan pemodelan statistik, pengelompokan berdasarkan taburan menumpukan pada menentukan kebarangkalian bahawa titik data tergolong dalam kluster, dan menetapkannya mengikut itu. Kaedah campuran Gaussian tergolong dalam jenis ini.
- **Pengelompokan berdasarkan ketumpatan**. Titik data ditetapkan kepada kelompok berdasarkan ketumpatannya, atau pengelompokan di sekeliling satu sama lain. Titik data yang jauh dari kumpulan dianggap sebagai outlier atau bunyi. DBSCAN, Mean-shift dan OPTICS tergolong dalam jenis pengelompokan ini.
- **Pengelompokan berdasarkan ketumpatan**. Titik data ditetapkan ke kluster berdasarkan ketumpatan mereka, atau pengelompokan mereka di sekitar satu sama lain. Titik data yang jauh dari kumpulan dianggap sebagai nilai luar atau bunyi bising. DBSCAN, Mean-shift dan OPTICS tergolong dalam jenis pengelompokan ini.
- **Pengelompokan berdasarkan grid**. Untuk dataset multi-dimensi, grid dibuat dan data dibahagikan di antara sel grid, dengan itu mencipta kelompok.
- **Pengelompokan berasaskan grid**. Untuk set data berbilang dimensi, grid dicipta dan data dibahagikan di antara sel-sel grid, lalu mencipta kluster.
## Latihan - kelompokkan data anda
## Latihan - kelompokan data anda
Pengelompokan sebagai teknik sangat dibantu oleh visualisasi yang baik, jadi mari kita mulakan dengan memvisualisasikan data muzik kita. Latihan ini akan membantu kita memutuskan kaedah pengelompokan mana yang paling berkesan digunakan untuk sifat data ini.
Pengelompokan sebagai teknik sangat dibantu oleh visualisasi yang betul, jadi mari kita mula dengan memvisualisasikan data muzik kita. Latihan ini akan membantu kita memutuskan kaedah pengelompokan mana yang paling sesuai digunakan untuk sifat data ini.
1. Buka fail [_notebook.ipynb_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/1-Visualize/notebook.ipynb) dalam folder ini.
@ -110,7 +109,7 @@ Pengelompokan sebagai teknik sangat dibantu oleh visualisasi yang baik, jadi mar
!pip install seaborn
```
1. Tambahkan data lagu dari [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv). Muatkan dataframe dengan beberapa data tentang lagu-lagu tersebut. Bersiaplah untuk meneroka data ini dengan mengimport perpustakaan dan memaparkan data:
1. Lampirkan data lagu dari [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv). Muatkan dataframe dengan beberapa data tentang lagu-lagu tersebut. Bersedia untuk meneroka data ini dengan mengimport perpustakaan dan memaparkan data:
```python
import matplotlib.pyplot as plt
@ -120,17 +119,17 @@ Pengelompokan sebagai teknik sangat dibantu oleh visualisasi yang baik, jadi mar
df.head()
```
Periksa beberapa baris pertama data:
Semak beberapa baris pertama data:
| | nama | album | artis | genre_teratas_artis | tarikh_keluar | panjang | populariti | keboleh_menari | keakustikan | tenaga | instrumentalness | keliveness | kekuatan | keboleh_bersuara | tempo | tanda_masa |
| --- | ------------------------ | ---------------------------- | ------------------- | ------------------- | ------------- | ------- | ---------- | -------------- | ----------- | ------ | ---------------- | ---------- | -------- | ---------------- | ------- | -------------- |
| 0 | Sparky | Mandy & The Jungle | Cruel Santino | alternative r&b | 2019 | 144000 | 48 | 0.666 | 0.851 | 0.42 | 0.534 | 0.11 | -6.699 | 0.0829 | 133.015 | 5 |
| 1 | shuga rush | EVERYTHING YOU HEARD IS TRUE | Odunsi (The Engine) | afropop | 2020 | 89488 | 30 | 0.71 | 0.0822 | 0.683 | 0.000169 | 0.101 | -5.64 | 0.36 | 129.993 | 3 |
| 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 |
| 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 |
| 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 |
| | name | album | artist | artist_top_genre | release_date | length | popularity | danceability | acousticness | energy | instrumentalness | liveness | loudness | speechiness | tempo | time_signature |
| --- | ------------------------ | ---------------------------- | ------------------- | ---------------- | ------------ | ------ | ---------- | ------------ | ------------ | ------ | ---------------- | -------- | -------- | ----------- | ------- | -------------- |
| 0 | Sparky | Mandy & The Jungle | Cruel Santino | alternative r&b | 2019 | 144000 | 48 | 0.666 | 0.851 | 0.42 | 0.534 | 0.11 | -6.699 | 0.0829 | 133.015 | 5 |
| 1 | shuga rush | EVERYTHING YOU HEARD IS TRUE | Odunsi (The Engine) | afropop | 2020 | 89488 | 30 | 0.71 | 0.0822 | 0.683 | 0.000169 | 0.101 | -5.64 | 0.36 | 129.993 | 3 |
| 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 |
| 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 |
| 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 |
1. Dapatkan maklumat tentang dataframe dengan memanggil `info()`:
1. Dapatkan sedikit maklumat mengenai dataframe, dengan memanggil `info()`:
```python
df.info()
@ -164,13 +163,13 @@ Pengelompokan sebagai teknik sangat dibantu oleh visualisasi yang baik, jadi mar
memory usage: 66.4+ KB
```
1. Periksa semula nilai null dengan memanggil `isnull()` dan pastikan jumlahnya adalah 0:
1. Semak semula untuk nilai null, dengan memanggil `isnull()` dan mengesahkan jumlahnya adalah 0:
```python
df.isnull().sum()
```
Nampak baik:
Nampak bagus:
```output
name 0
@ -192,7 +191,7 @@ Pengelompokan sebagai teknik sangat dibantu oleh visualisasi yang baik, jadi mar
dtype: int64
```
1. Huraikan data:
1. Huraikan data tersebut:
```python
df.describe()
@ -209,9 +208,9 @@ Pengelompokan sebagai teknik sangat dibantu oleh visualisasi yang baik, jadi mar
| 75% | 2017 | 242098.5 | 31 | 0.8295 | 0.403 | 0.87575 | 0.000234 | 0.164 | -3.331 | 0.177 | 125.03925 | 4 |
| max | 2020 | 511738 | 73 | 0.966 | 0.954 | 0.995 | 0.91 | 0.811 | 0.582 | 0.514 | 206.007 | 5 |
> 🤔 Jika kita bekerja dengan pengelompokan, kaedah tanpa pengawasan yang tidak memerlukan data berlabel, mengapa kita menunjukkan data ini dengan label? Dalam fasa penerokaan data, ia berguna, tetapi ia tidak diperlukan untuk algoritma pengelompokan berfungsi. Anda juga boleh membuang tajuk lajur dan merujuk data mengikut nombor lajur.
> 🤔 Jika kita bekerja dengan pengelompokan, sebuah kaedah tanpa penyeliaan yang tidak memerlukan data berlabel, mengapa kita menunjukkan data ini dengan label? Dalam fasa penerokaan data, ia sangat membantu, tetapi tidak perlu untuk algoritma pengelompokan berfungsi. Anda juga boleh mengeluarkan tajuk lajur dan merujuk kepada data mengikut nombor lajur.
Lihat nilai umum data. Perhatikan bahawa populariti boleh menjadi '0', yang menunjukkan lagu-lagu yang tidak mempunyai ranking. Mari kita buang nilai-nilai tersebut sebentar lagi.
Lihat nilai umum data. Perhatikan bahawa populariti boleh menjadi '0', yang menunjukkan lagu yang tiada kedudukan. Mari kita keluarkan yang tersebut sebentar lagi.
1. Gunakan barplot untuk mengetahui genre yang paling popular:
@ -225,11 +224,11 @@ Lihat nilai umum data. Perhatikan bahawa populariti boleh menjadi '0', yang menu
plt.title('Top genres',color = 'blue')
```
![most popular](../../../../5-Clustering/1-Visualize/images/popular.png)
![most popular](../../../../translated_images/ms/popular.9c48d84b3386705f.webp)
✅ Jika anda ingin melihat lebih banyak nilai teratas, ubah top `[:5]` kepada nilai yang lebih besar, atau buang untuk melihat semuanya.
✅ Jika anda ingin melihat lebih banyak nilai teratas, ubah top `[:5]` ke nilai yang lebih besar, atau keluarkan ia untuk melihat semua.
Perhatikan, apabila genre teratas digambarkan sebagai 'Missing', itu bermaksud Spotify tidak mengklasifikasikannya, jadi mari kita buang data tersebut.
Perhatikan, apabila genre teratas digambarkan sebagai 'Missing', itu bermaksud Spotify tidak mengklasifikasikannya, jadi mari kita buang ia.
1. Buang data yang hilang dengan menapisnya keluar
@ -242,11 +241,11 @@ Perhatikan, apabila genre teratas digambarkan sebagai 'Missing', itu bermaksud S
plt.title('Top genres',color = 'blue')
```
Sekarang periksa semula genre:
Sekarang semak semula genre:
![most popular](../../../../5-Clustering/1-Visualize/images/all-genres.png)
![most popular](../../../../translated_images/ms/all-genres.1d56ef06cefbfcd6.webp)
1. Tiga genre teratas jelas mendominasi dataset ini. Mari kita fokus pada `afro dancehall`, `afropop`, dan `nigerian pop`, serta tapis dataset untuk membuang apa-apa dengan nilai populariti 0 (bermaksud ia tidak diklasifikasikan dengan populariti dalam dataset dan boleh dianggap sebagai gangguan untuk tujuan kita):
1. Setakat ini, tiga genre teratas menguasai dataset ini. Mari kita fokus pada `afro dancehall`, `afropop`, dan `nigerian pop`, tambahan pula tapis dataset untuk mengeluarkan apa-apa dengan nilai populariti 0 (bermaksud ia tidak diklasifikasikan dengan populariti dalam dataset dan boleh dianggap sebagai gangguan untuk tujuan kita):
```python
df = df[(df['artist_top_genre'] == 'afro dancehall') | (df['artist_top_genre'] == 'afropop') | (df['artist_top_genre'] == 'nigerian pop')]
@ -258,7 +257,7 @@ Perhatikan, apabila genre teratas digambarkan sebagai 'Missing', itu bermaksud S
plt.title('Top genres',color = 'blue')
```
1. Lakukan ujian pantas untuk melihat jika data berkorelasi dengan cara yang sangat kuat:
1. Lakukan ujian pantas untuk melihat jika data berkorelasi dalam cara yang sangat kuat:
```python
corrmat = df.corr(numeric_only=True)
@ -266,21 +265,21 @@ Perhatikan, apabila genre teratas digambarkan sebagai 'Missing', itu bermaksud S
sns.heatmap(corrmat, vmax=.8, square=True)
```
![correlations](../../../../5-Clustering/1-Visualize/images/correlation.png)
![correlations](../../../../translated_images/ms/correlation.a9356bb798f5eea5.webp)
Satu-satunya korelasi kuat adalah antara `energy` dan `loudness`, yang tidak terlalu mengejutkan, memandangkan muzik yang kuat biasanya cukup bertenaga. Selain itu, korelasi agak lemah. Ia akan menarik untuk melihat apa yang algoritma pengelompokan dapat buat dengan data ini.
Satu-satunya korelasi kuat adalah antara `energy` dan `loudness`, yang tidak menghairankan, memandangkan muzik kuat biasanya cukup bertenaga. Selain itu, korelasi agak lemah. Menarik untuk melihat apa yang boleh algoritma pengelompokan buat dengan data ini.
> 🎓 Perhatikan bahawa korelasi tidak bermaksud sebab-akibat! Kita mempunyai bukti korelasi tetapi tiada bukti sebab-akibat. [Laman web yang menghiburkan](https://tylervigen.com/spurious-correlations) mempunyai beberapa visual yang menekankan perkara ini.
> 🎓 Perhatikan bahawa korelasi tidak bermaksud kausaliti! Kita mempunyai bukti korelasi tetapi tiada bukti kausaliti. Sebuah [laman web yang menghiburkan](https://tylervigen.com/spurious-correlations) mempunyai beberapa visual yang menekankan perkara ini.
Adakah terdapat penumpuan dalam dataset ini sekitar populariti lagu dan kebolehmenariannya? Grid Facet menunjukkan terdapat lingkaran sepusat yang sejajar, tanpa mengira genre. Mungkinkah citarasa Nigeria berkumpul pada tahap kebolehmenarian tertentu untuk genre ini?
Adakah terdapat sebarang konvergensi dalam dataset ini mengenai populariti yang dirasai oleh lagu dan tarian? FacetGrid menunjukkan terdapat bulatan berserenjang yang sejajar, tanpa mengira genre. Adakah mungkin citarasa Nigeria bertemu pada tahap tarian tertentu untuk genre ini?
✅ Cuba titik data yang berbeza (energy, loudness, speechiness) dan lebih banyak atau genre muzik yang berbeza. Apa yang boleh anda temui? Lihat jadual `df.describe()` untuk melihat penyebaran umum titik data.
✅ Cuba titik data berbeza (energy, loudness, speechiness) dan lebih banyak atau berbeza genre muzik. Apa yang anda boleh temui? Lihat jadual `df.describe()` untuk melihat taburan umum titik data.
### Latihan - pengedaran data
### Latihan - taburan data
Adakah tiga genre ini berbeza secara signifikan dalam persepsi kebolehmenarian mereka, berdasarkan populariti?
Adakah ketiga-tiga genre ini berbeza dengan ketara dalam persepsi tarian mereka berdasarkan populariti?
1. Periksa pengedaran data tiga genre teratas kita untuk populariti dan kebolehmenarian di sepanjang paksi x dan y yang diberikan.
1. Periksa taburan data untuk ketiga-tiga genre teratas bagi populariti dan tarian sepanjang paksi x dan y yang diberikan.
```python
sns.set_theme(style="ticks")
@ -292,13 +291,13 @@ Adakah tiga genre ini berbeza secara signifikan dalam persepsi kebolehmenarian m
)
```
Anda boleh menemui lingkaran sepusat di sekitar titik penumpuan umum, menunjukkan pengedaran titik.
Anda boleh menemui bulatan berserenjang di sekitar titik konvergensi umum, menunjukkan taburan titik.
> 🎓 Perhatikan bahawa contoh ini menggunakan graf KDE (Kernel Density Estimate) yang mewakili data menggunakan lengkung ketumpatan kebarangkalian berterusan. Ini membolehkan kita mentafsir data apabila bekerja dengan pelbagai pengedaran.
> 🎓 Perhatikan bahawa contoh ini menggunakan graf KDE (Kernel Density Estimate) yang mewakili data menggunakan lengkung ketumpatan kebarangkalian berterusan. Ini membolehkan kita mentafsir data apabila bekerja dengan taburan berganda.
Secara umum, tiga genre ini sejajar secara longgar dari segi populariti dan kebolehmenarian. Menentukan kelompok dalam data yang sejajar secara longgar ini akan menjadi cabaran:
Secara amnya, ketiga-tiga genre tersebut selari secara longgar dari segi populariti dan tarian. Menentukan kluster dalam data yang selaras secara longgar ini akan menjadi cabaran:
![distribution](../../../../5-Clustering/1-Visualize/images/distribution.png)
![distribution](../../../../translated_images/ms/distribution.9be11df42356ca95.webp)
1. Buat plot taburan:
@ -308,31 +307,33 @@ Adakah tiga genre ini berbeza secara signifikan dalam persepsi kebolehmenarian m
.add_legend()
```
Plot taburan paksi yang sama menunjukkan corak penumpuan yang serupa
Scatterplot bagi paksi yang sama menunjukkan corak konvergensi yang serupa
![Facetgrid](../../../../5-Clustering/1-Visualize/images/facetgrid.png)
![Facetgrid](../../../../translated_images/ms/facetgrid.9b2e65ce707eba1f.webp)
Secara umum, untuk pengelompokan, anda boleh menggunakan plot taburan untuk menunjukkan kelompok data, jadi menguasai jenis visualisasi ini sangat berguna. Dalam pelajaran seterusnya, kita akan mengambil data yang telah ditapis ini dan menggunakan pengelompokan k-means untuk menemui kelompok dalam data ini yang kelihatan bertindih dengan cara yang menarik.
Secara umum, untuk pengelompokan, anda boleh menggunakan scatterplots untuk menunjukkan kluster data, jadi menguasai jenis visualisasi ini sangat berguna. Dalam pelajaran seterusnya, kita akan menggunakan data yang telah ditapis ini dan menggunakan pengelompokan k-means untuk menemui kumpulan dalam data ini yang nampaknya bertindih dengan cara yang menarik.
---
## 🚀Cabaran
Sebagai persediaan untuk pelajaran seterusnya, buat carta tentang pelbagai algoritma pengelompokan yang mungkin anda temui dan gunakan dalam persekitaran pengeluaran. Masalah jenis apa yang cuba diselesaikan oleh pengelompokan?
Sebagai persiapan untuk pelajaran seterusnya, buat carta tentang pelbagai algoritma pengelompokan yang mungkin anda temui dan gunakan dalam persekitaran produksi. Apakah jenis masalah yang cuba diselesaikan oleh pengelompokan?
## [Kuiz selepas kuliah](https://ff-quizzes.netlify.app/en/ml/)
## Kajian & Pembelajaran Kendiri
## Ulasan & Pembelajaran Sendiri
Sebelum anda menggunakan algoritma pengelompokan, seperti yang telah kita pelajari, adalah idea yang baik untuk memahami sifat dataset anda. Baca lebih lanjut tentang topik ini [di sini](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html)
Sebelum anda menerapkan algoritma pengelompokan, seperti yang telah kita pelajari, adalah idea yang baik untuk memahami sifat dataset anda. Baca lebih lanjut tentang topik ini [di sini](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html)
[Artikel yang berguna ini](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) menerangkan cara pelbagai algoritma pengelompokan berfungsi, berdasarkan bentuk data yang berbeza.
[Artikel yang berguna ini](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) membimbing anda melalui pelbagai cara bagaimana algoritma pengelompokan berkelakuan, mengikut bentuk data yang berbeza.
## Tugasan
[Selidik visualisasi lain untuk pengelompokan](assignment.md)
[Penyelidikan visualisasi lain untuk pengelompokan](assignment.md)
---
**Penafian**:
Dokumen ini telah diterjemahkan menggunakan perkhidmatan terjemahan AI [Co-op Translator](https://github.com/Azure/co-op-translator). Walaupun kami berusaha untuk memastikan ketepatan, sila ambil perhatian bahawa terjemahan automatik mungkin mengandungi kesilapan atau ketidaktepatan. Dokumen asal dalam bahasa asalnya harus dianggap sebagai sumber yang berwibawa. Untuk maklumat yang kritikal, terjemahan manusia profesional adalah disyorkan. Kami tidak bertanggungjawab atas sebarang salah faham atau salah tafsir yang timbul daripada penggunaan terjemahan ini.
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Penafian**:
Dokumen ini telah diterjemahkan menggunakan perkhidmatan terjemahan AI [Co-op Translator](https://github.com/Azure/co-op-translator). Walaupun kami berusaha untuk ketepatan, sila ambil maklum bahawa terjemahan automatik mungkin mengandungi kesilapan atau ketidaktepatan. Dokumen asal dalam bahasa asalnya harus dianggap sebagai sumber yang sahih. Untuk maklumat penting, terjemahan oleh manusia profesional adalah disyorkan. Kami tidak bertanggungjawab terhadap sebarang salah faham atau salah tafsir yang timbul daripada penggunaan terjemahan ini.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,7 +1,7 @@
{
"1-Introduction/1-intro-to-ML/README.md": {
"original_hash": "69389392fa6346e0dfa30f664b7b6fec",
"translation_date": "2025-09-05T18:18:45+00:00",
"original_hash": "3a6394c6f5ce3f8aee8211e92eaf9ef0",
"translation_date": "2026-05-26T23:14:16+00:00",
"source_file": "1-Introduction/1-intro-to-ML/README.md",
"language_code": "tl"
},
@ -240,8 +240,8 @@
"language_code": "tl"
},
"5-Clustering/1-Visualize/README.md": {
"original_hash": "730225ea274c9174fe688b21d421539d",
"translation_date": "2025-09-05T18:14:20+00:00",
"original_hash": "08b00d9fbffc667a7fe7fc19ac00dfbd",
"translation_date": "2026-05-26T23:13:46+00:00",
"source_file": "5-Clustering/1-Visualize/README.md",
"language_code": "tl"
},

@ -4,77 +4,77 @@
---
[![ML para sa mga baguhan - Panimula sa Machine Learning para sa mga Baguhan](https://img.youtube.com/vi/6mSx_KJxcHI/0.jpg)](https://youtu.be/6mSx_KJxcHI "ML para sa mga baguhan - Panimula sa Machine Learning para sa mga Baguhan")
[![ML for beginners - Introduction to Machine Learning for Beginners](https://img.youtube.com/vi/6mSx_KJxcHI/0.jpg)](https://youtu.be/6mSx_KJxcHI "ML for beginners - Introduction to Machine Learning for Beginners")
> 🎥 I-click ang imahe sa itaas para sa isang maikling video na tumatalakay sa araling ito.
> 🎥 I-click ang larawan sa itaas para sa isang maikling video na nagpapaliwanag ng araling ito.
Maligayang pagdating sa kursong ito tungkol sa klasikong machine learning para sa mga baguhan! Kung ikaw ay ganap na bago sa paksang ito, o isang bihasang practitioner ng ML na nais mag-refresh ng kaalaman, masaya kaming makasama ka! Layunin naming lumikha ng isang magiliw na panimulang lugar para sa iyong pag-aaral ng ML at ikalulugod naming suriin, tumugon, at isama ang iyong [feedback](https://github.com/microsoft/ML-For-Beginners/discussions).
Maligayang pagdating sa kursong ito tungkol sa klasikal na machine learning para sa mga nagsisimula! Kung ikaw ay ganap na bago sa paksang ito, o isang may karanasang practitioner ng ML na nais mag-refresh sa isang bahagi, ikinalulugod naming makasama ka! Nais naming lumikha ng isang magiliw na panimulang lugar para sa iyong pag-aaral ng ML at malugod naming tatanggapin, sasagutin, at isasama ang iyong [feedback](https://github.com/microsoft/ML-For-Beginners/discussions).
[![Panimula sa ML](https://img.youtube.com/vi/h0e2HAPTGF4/0.jpg)](https://youtu.be/h0e2HAPTGF4 "Panimula sa ML")
[![Introduction to ML](https://img.youtube.com/vi/h0e2HAPTGF4/0.jpg)](https://youtu.be/h0e2HAPTGF4 "Introduction to ML")
> 🎥 I-click ang imahe sa itaas para sa isang video: Ipinakikilala ni John Guttag ng MIT ang machine learning
> 🎥 I-click ang larawan sa itaas para sa isang video: Ipinakilala ni John Guttag ng MIT ang machine learning
---
## Pagsisimula sa machine learning
Bago simulan ang kurikulum na ito, kailangan mong ihanda ang iyong computer upang magpatakbo ng mga notebook nang lokal.
Bago simulan ang kurikulum na ito, kailangan mong maayos na ma-set up ang iyong computer at handa nang magpatakbo ng mga notebook nang lokal.
- **I-configure ang iyong makina gamit ang mga video na ito**. Gamitin ang mga sumusunod na link upang matutunan [kung paano mag-install ng Python](https://youtu.be/CXZYvNRIAKM) sa iyong sistema at [mag-setup ng text editor](https://youtu.be/EU8eayHWoZg) para sa development.
- **Matutong Python**. Inirerekomenda rin na magkaroon ng pangunahing kaalaman sa [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott), isang programming language na kapaki-pakinabang para sa mga data scientist na ginagamit natin sa kursong ito.
- **Matutong Node.js at JavaScript**. Gagamit din tayo ng JavaScript sa ilang bahagi ng kursong ito kapag gumagawa ng mga web app, kaya kailangan mong magkaroon ng [node](https://nodejs.org) at [npm](https://www.npmjs.com/) na naka-install, pati na rin ang [Visual Studio Code](https://code.visualstudio.com/) para sa parehong Python at JavaScript development.
- **Gumawa ng GitHub account**. Dahil natagpuan mo kami dito sa [GitHub](https://github.com), maaaring mayroon ka nang account, ngunit kung wala pa, gumawa ng isa at i-fork ang kurikulum na ito upang magamit sa iyong sarili. (Huwag kalimutang magbigay ng star 😊)
- **Galugarin ang Scikit-learn**. Magkaroon ng kaalaman sa [Scikit-learn](https://scikit-learn.org/stable/user_guide.html), isang set ng ML libraries na binabanggit natin sa mga araling ito.
- **I-configure ang iyong makina gamit ang mga video na ito**. Gamitin ang mga sumusunod na link upang matutunan [paano mag-install ng Python](https://youtu.be/CXZYvNRIAKM) sa iyong sistema at [mag-setup ng text editor](https://youtu.be/EU8eayHWoZg) para sa pag-develop.
- **Matutong Python**. Inirerekomenda rin na magkaroon ng pangunahing kaalaman sa [Python](https://docs.microsoft.com/learn/paths/python-language/?WT.mc_id=academic-77952-leestott), isang programming language na kapaki-pakinabang para sa mga data scientist na ginagamit namin sa kurso na ito.
- **Matutong Node.js at JavaScript**. Ginagamit din namin ang JavaScript ng ilang beses sa kursong ito kapag bumubuo ng mga web app, kaya kakailanganin mong may naka-install na [node](https://nodejs.org) at [npm](https://www.npmjs.com/), pati na rin ang [Visual Studio Code](https://code.visualstudio.com/) na magagamit para sa pareho, Python at JavaScript na pag-develop.
- **Gumawa ng GitHub account**. Dahil nahanap mo kami dito sa [GitHub](https://github.com), maaaring mayroon ka nang account, ngunit kung wala pa, gumawa ng isa at pagkatapos ay i-fork ang kurikulum na ito upang magamit para sa sarili mo. (Malaya kang bigyan kami ng star, rin 😊)
- **Suriin ang Scikit-learn**. Pamilyarhin ang iyong sarili sa [Scikit-learn](https://scikit-learn.org/stable/user_guide.html), isang set ng ML libraries na tinutukoy namin sa mga araling ito.
---
## Ano ang machine learning?
Ang terminong 'machine learning' ay isa sa mga pinakasikat at madalas gamitin na termino sa kasalukuyan. Malaki ang posibilidad na narinig mo na ang terminong ito kahit isang beses kung may kaalaman ka sa teknolohiya, anuman ang larangan mo. Gayunpaman, ang mekanika ng machine learning ay misteryo para sa karamihan. Para sa isang baguhan sa machine learning, maaaring nakakatakot ang paksa. Kaya mahalagang maunawaan kung ano talaga ang machine learning, at matutunan ito nang paunti-unti, sa pamamagitan ng mga praktikal na halimbawa.
Ang terminong 'machine learning' ay isa sa mga pinakapopular at madalas gamitin na salita ngayon. May malaking posibilidad na narinig mo na ang terminong ito kahit isang beses kung meron kang kaalaman tungkol sa teknolohiya, kahit anong larangan pa ang iyong pinagtatrabahuhan. Gayunpaman, ang mekaniks ng machine learning ay isang misteryo sa karamihan ng tao. Para sa isang baguhan sa machine learning, maaaring minsan ay nakakalito ang paksa. Kaya mahalagang maintindihan kung ano talaga ang machine learning, at pag-aralan ito nang paunti-unti, sa pamamagitan ng mga praktikal na halimbawa.
---
## Ang hype curve
## The hype curve
![ml hype curve](../../../../1-Introduction/1-intro-to-ML/images/hype.png)
![ml hype curve](../../../../translated_images/tl/hype.07183d711a17aafe.webp)
> Ipinapakita ng Google Trends ang kamakailang 'hype curve' ng terminong 'machine learning'
---
## Isang misteryosong uniberso
Namumuhay tayo sa isang uniberso na puno ng mga kamangha-manghang misteryo. Ang mga dakilang siyentipiko tulad nina Stephen Hawking, Albert Einstein, at marami pang iba ay naglaan ng kanilang buhay sa paghahanap ng makabuluhang impormasyon upang matuklasan ang mga misteryo ng mundo sa paligid natin. Ito ang kalagayan ng tao sa pag-aaral: ang isang bata ay natututo ng mga bagong bagay at natutuklasan ang istruktura ng kanilang mundo taon-taon habang sila ay lumalaki.
Tayo ay naninirahan sa isang uniberso na puno ng mga kamangha-manghang misteryo. Ang mga dakilang siyentipiko tulad nina Stephen Hawking, Albert Einstein, at marami pang iba ay naglaan ng kanilang mga buhay upang maghanap ng makabuluhang impormasyon na nagsisiwalat ng mga misteryo ng mundong nakapalibot sa atin. Ito ang kalagayan ng tao sa pagkatuto: ang isang bata ay natututo ng mga bagong bagay at nadidiskubre ang istruktura ng kanilang mundo taon-taon habang lumalaki sila tungo sa pagiging adulto.
---
## Ang utak ng bata
Ang utak at pandama ng isang bata ay nakikita ang mga katotohanan sa kanilang paligid at unti-unting natututo ng mga nakatagong pattern ng buhay na tumutulong sa bata na bumuo ng mga lohikal na tuntunin upang makilala ang mga natutunang pattern. Ang proseso ng pag-aaral ng utak ng tao ang dahilan kung bakit ang tao ang pinaka-sopistikadong nilalang sa mundo. Ang patuloy na pag-aaral sa pamamagitan ng pagtuklas ng mga nakatagong pattern at pagkatapos ay paglikha ng mga inobasyon mula sa mga pattern na ito ay nagbibigay-daan sa atin na patuloy na pagbutihin ang ating sarili sa buong buhay natin. Ang kakayahan sa pag-aaral at pag-evolve na ito ay may kaugnayan sa konsepto na tinatawag na [brain plasticity](https://www.simplypsychology.org/brain-plasticity.html). Sa pangkalahatan, maaari nating iguhit ang ilang motivational na pagkakatulad sa pagitan ng proseso ng pag-aaral ng utak ng tao at mga konsepto ng machine learning.
Ang utak at mga pandama ng isang bata ay tumatanggap ng mga katotohanan ng kanilang paligid at unti-unting natututo ng mga nakatagong pattern ng buhay na tumutulong sa bata na gumawa ng mga lohikal na patakaran upang makilala ang mga natutunang pattern. Ang proseso ng pagkatuto ng utak ng tao ay ginagawang pinaka-sopistikadong nilalang ang mga tao sa mundong ito. Ang patuloy na pagkatuto sa pamamagitan ng pagtuklas ng mga nakatagong pattern at pagkatapos ay pag-innovate sa mga pattern na iyon ay nagpapahintulot sa atin na pagbutihin ang ating sarili habang buhay. Ang kapasidad na ito sa pagkatuto at umuusbong na kakayahan ay kaugnay ng isang konsepto na tinatawag na [brain plasticity](https://www.simplypsychology.org/brain-plasticity.html). Sa pangkalahatan, makakagawa tayo ng ilang motibasyonal na pagkakatulad sa pagitan ng proseso ng pagkatuto ng utak ng tao at mga konsepto ng machine learning.
---
## Ang utak ng tao
Ang [utak ng tao](https://www.livescience.com/29365-human-brain.html) ay nakikita ang mga bagay mula sa totoong mundo, pinoproseso ang nakitang impormasyon, gumagawa ng makatuwirang desisyon, at gumaganap ng mga tiyak na aksyon batay sa mga sitwasyon. Ito ang tinatawag nating matalinong pag-uugali. Kapag pinrograma natin ang isang imitasyon ng matalinong proseso ng pag-uugali sa isang makina, ito ay tinatawag na artificial intelligence (AI).
Ang [utak ng tao](https://www.livescience.com/29365-human-brain.html) ay tumatanggap ng mga bagay mula sa tunay na mundo, pinoproseso ang natanggap na impormasyon, gumagawa ng mga makatwirang desisyon, at nagsasagawa ng ilang kilos batay sa mga kalagayan. Ito ang tinatawag nating matalinong pag-uugali. Kapag nagprograma tayo ng isang kaparehong proseso ng intelihenteng pag-uugali sa isang makina, ito ay tinatawag na artificial intelligence (AI).
---
## Ilang terminolohiya
Bagama't maaaring malito ang mga termino, ang machine learning (ML) ay isang mahalagang subset ng artificial intelligence. **Ang ML ay nakatuon sa paggamit ng mga espesyal na algorithm upang matuklasan ang makabuluhang impormasyon at hanapin ang mga nakatagong pattern mula sa nakitang data upang suportahan ang proseso ng makatuwirang paggawa ng desisyon**.
Bagaman maaaring malito sa mga termino, ang machine learning (ML) ay isang mahalagang bahagi ng artificial intelligence. **Ang ML ay nakatuon sa paggamit ng mga espesyal na algorithm upang tuklasin ang makabuluhang impormasyon at hanapin ang mga nakatagong pattern mula sa natanggap na datos upang patunayan ang proseso ng makatwirang paggawa ng desisyon**.
---
## AI, ML, Deep Learning
![AI, ML, deep learning, data science](../../../../1-Introduction/1-intro-to-ML/images/ai-ml-ds.png)
![AI, ML, deep learning, data science](../../../../translated_images/tl/ai-ml-ds.537ea441b124ebf6.webp)
> Isang diagram na nagpapakita ng mga relasyon sa pagitan ng AI, ML, deep learning, at data science. Infographic ni [Jen Looper](https://twitter.com/jenlooper) na inspirasyon mula sa [graphic na ito](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining)
> Isang diagram na nagpapakita ng ugnayan ng AI, ML, deep learning, at data science. Infographic ni [Jen Looper](https://twitter.com/jenlooper) na hango sa [graphic na ito](https://softwareengineering.stackexchange.com/questions/366996/distinction-between-ai-ml-neural-networks-deep-learning-and-data-mining)
---
## Mga konseptong tatalakayin
Sa kurikulum na ito, tatalakayin natin ang mga pangunahing konsepto ng machine learning na dapat malaman ng isang baguhan. Tatalakayin natin ang tinatawag na 'klasikong machine learning' gamit ang Scikit-learn, isang mahusay na library na ginagamit ng maraming estudyante upang matutunan ang mga pangunahing kaalaman. Upang maunawaan ang mas malawak na konsepto ng artificial intelligence o deep learning, mahalaga ang matibay na pundasyon sa machine learning, kaya nais naming ibigay ito dito.
Sa kurikulum na ito, tatalakayin lamang namin ang mga pangunahing konsepto ng machine learning na kailangang malaman ng isang baguhan. Tatalakayin namin ang tinatawag naming 'klasikal na machine learning' gamit ang Scikit-learn, isang napakahusay na library na ginagamit ng maraming estudyante upang matutunan ang mga batayan. Upang maunawaan ang mas malalawak na konsepto ng artificial intelligence o deep learning, mahalaga ang matibay na pundasyon sa machine learning, kaya nais naming ialok ito dito.
---
## Sa kursong ito matututunan mo:
## Sa kursong ito matututuhan mo:
- mga pangunahing konsepto ng machine learning
- ang kasaysayan ng ML
- ML at pagiging patas
- pangunahing mga konsepto ng machine learning
- kasaysayan ng ML
- ML at katarungan
- mga teknik sa regression ML
- mga teknik sa classification ML
- mga teknik sa clustering ML
@ -84,67 +84,74 @@ Sa kurikulum na ito, tatalakayin natin ang mga pangunahing konsepto ng machine l
- mga aplikasyon ng ML sa totoong mundo
---
## Ano ang hindi natin tatalakayin
## Hindi namin tatalakayin
- deep learning
- neural networks
- AI
Upang magkaroon ng mas mahusay na karanasan sa pag-aaral, iiwasan natin ang mga komplikasyon ng neural networks, 'deep learning' - ang paggawa ng mga modelong may maraming layer gamit ang neural networks - at AI, na tatalakayin natin sa ibang kurikulum. Mag-aalok din kami ng paparating na kurikulum sa data science upang mag-focus sa aspeto ng mas malawak na larangan na ito.
Para sa mas mahusay na karanasan sa pag-aaral, iiwasan namin ang mga komplikasyon ng neural networks, 'deep learning' - maraming-layer na pagbuo ng modelo gamit ang neural networks - at AI, na tatalakayin namin sa ibang kurikulum. Magbibigay din kami ng paparating na data science curriculum na nakatuon sa aspetong iyon ng mas malawak na larangang ito.
---
## Bakit mag-aral ng machine learning?
Ang machine learning, mula sa perspektibo ng sistema, ay tinutukoy bilang paglikha ng mga automated na sistema na maaaring matuto ng mga nakatagong pattern mula sa data upang makatulong sa paggawa ng matalinong desisyon.
Mula sa pananaw ng sistema, ang machine learning ay tinutukoy bilang paglikha ng mga automated na sistema na kayang matuto ng mga nakatagong pattern mula sa datos upang makatulong sa paggawa ng intelihenteng mga desisyon.
Ang motibasyong ito ay maluwag na inspirasyon ng kung paano natututo ang utak ng tao ng ilang bagay batay sa data na nakikita nito mula sa labas ng mundo.
Ang motibasyong ito ay maluwag na hango sa paraan ng pagkatuto ng utak ng tao ng ilang bagay batay sa datos na natatanggap nito mula sa labas ng mundo.
✅ Mag-isip ng isang minuto kung bakit maaaring nais ng isang negosyo na gumamit ng mga estratehiya sa machine learning kumpara sa paggawa ng isang hard-coded na rules-based engine.
✅ Mag-isip ng Sandali kung bakit gustong gamitin ng isang negosyo ang mga estratehiya ng machine learning kaysa gumawa ng mga mahigpit at hard-coded na patakaran.
---
## Bakit mahalaga ang kalidad ng datos
Pinapabuti ng mataas na kalidad ng datos ang performans ng modelo. Ang mahinang o maingay na datos ay maaaring magdulot ng maling prediksyon, kahit na gamit ang mga sopistikadong algoritmo ng machine learning.
---
## Mga aplikasyon ng machine learning
Ang mga aplikasyon ng machine learning ay halos nasa lahat ng lugar ngayon, at kasing laganap ng data na dumadaloy sa ating mga lipunan, na nabuo ng ating mga smartphone, mga konektadong device, at iba pang sistema. Isinasaalang-alang ang napakalaking potensyal ng mga makabagong machine learning algorithm, sinisiyasat ng mga mananaliksik ang kanilang kakayahan upang lutasin ang mga multi-dimensional at multi-disciplinary na totoong problema na may magagandang positibong resulta.
Ang mga aplikasyon ng machine learning ay halos nasa lahat ng dako na ngayon, kasingkalat ng datos na dumadaloy sa ating mga lipunan, na nilikha ng mga smart phone, mga nakakonektang aparato, at iba pang mga sistema. Isinasaalang-alang ang malaking potensyal ng mga state-of-the-art na machine learning algorithm, patuloy na tinatalakay ng mga mananaliksik ang kanilang kakayahan upang lutasin ang mga multidimensyonal at multidisiplinaryong mga problema sa totoong buhay nang may magagandang resulta.
---
## Mga halimbawa ng applied ML
**Maraming paraan upang magamit ang machine learning**:
**Maraming paraan kung paano magagamit ang machine learning**:
- Upang mahulaan ang posibilidad ng sakit mula sa kasaysayan ng medikal ng isang pasyente o mga ulat.
- Upang gamitin ang data ng panahon upang mahulaan ang mga kaganapan sa panahon.
- Upang maunawaan ang damdamin ng isang teksto.
- Upang matukoy ang pekeng balita upang mapigilan ang pagkalat ng propaganda.
- Upang hulaan ang posibilidad ng sakit mula sa medikal na kasaysayan o ulat ng isang pasyente.
- Upang gamitin ang datos ng panahon upang hulaan ang mga pangyayari sa panahon.
- Upang maunawaan ang sentimento ng isang teksto.
- Upang matuklasan ang mga pekeng balita upang pigilan ang pagkalat ng propaganda.
Ang finance, economics, earth science, space exploration, biomedical engineering, cognitive science, at maging ang mga larangan sa humanities ay nag-aangkop ng machine learning upang lutasin ang mga mahihirap na problema sa pagproseso ng data sa kanilang larangan.
Ang pananalapi, ekonomiks, agham ng lupa, eksplorasyon ng kalawakan, biomedical engineering, cognitive science, at maging ang mga larangan sa humanities ay nagtanggap ng machine learning upang lutasin ang mga mabibigat na problema sa pagproseso ng datos ng kanilang larangan.
---
## Konklusyon
Ang machine learning ay nag-aautomat ng proseso ng pagtuklas ng pattern sa pamamagitan ng paghahanap ng makabuluhang mga insight mula sa totoong mundo o generated na data. Napatunayan nitong napakahalaga sa negosyo, kalusugan, at mga aplikasyon sa pananalapi, bukod sa iba pa.
Ang machine learning ay nag-automate ng proseso ng pagtuklas ng pattern sa pamamagitan ng paghahanap ng makabuluhang impormasyon mula sa tunay na datos o nabuo na datos. Napatunayang napakahalaga nito sa negosyo, kalusugan, at mga aplikasyon sa pananalapi, at iba pa.
Sa malapit na hinaharap, ang pag-unawa sa mga pangunahing kaalaman ng machine learning ay magiging mahalaga para sa mga tao mula sa anumang larangan dahil sa malawakang paggamit nito.
Sa malapit na hinaharap, ang pag-unawa sa mga batayan ng machine learning ay magiging isang kailangan para sa mga tao mula sa anumang larangan dahil sa malawak na paglaganap nito.
---
# 🚀 Hamon
Gumuhit, sa papel o gamit ang isang online na app tulad ng [Excalidraw](https://excalidraw.com/), ng iyong pag-unawa sa mga pagkakaiba sa pagitan ng AI, ML, deep learning, at data science. Magdagdag ng ilang ideya ng mga problemang mahusay na malulutas ng bawat isa sa mga teknik na ito.
Gumuhit, sa papel o gamit ang isang online app tulad ng [Excalidraw](https://excalidraw.com/), ng iyong pag-unawa sa mga pagkakaiba ng AI, ML, deep learning, at data science. Magdagdag ng ilang ideya ng mga problema na magaling lutasin ng bawat isa sa mga teknik na ito.
# [Post-lecture quiz](https://ff-quizzes.netlify.app/en/ml/)
---
# Review & Self Study
# Review at Pag-aaral sa Sarili
Upang matutunan pa kung paano ka maaaring magtrabaho gamit ang mga ML algorithm sa cloud, sundan ang [Learning Path](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott).
Upang matutunan pa kung paano ka maaaring makipagtrabaho sa ML algorithms sa cloud, sundan ang [Learning Path](https://docs.microsoft.com/learn/paths/create-no-code-predictive-models-azure-machine-learning/?WT.mc_id=academic-77952-leestott).
Kumuha ng [Learning Path](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott) tungkol sa mga pangunahing kaalaman ng ML.
Dumalo sa isang [Learning Path](https://docs.microsoft.com/learn/modules/introduction-to-machine-learning/?WT.mc_id=academic-77952-leestott) tungkol sa mga batayan ng ML.
---
# Takdang-Aralin
[Simulan ang pag-aaral](assignment.md)
[Simulan at tumakbo](assignment.md)
---
**Paunawa**:
Ang dokumentong ito ay isinalin gamit ang AI translation service na [Co-op Translator](https://github.com/Azure/co-op-translator). Bagama't sinisikap naming maging tumpak, tandaan na ang mga awtomatikong pagsasalin ay maaaring maglaman ng mga pagkakamali o hindi pagkakatugma. Ang orihinal na dokumento sa kanyang katutubong wika ang dapat ituring na opisyal na pinagmulan. Para sa mahalagang impormasyon, inirerekomenda ang propesyonal na pagsasalin ng tao. Hindi kami mananagot sa anumang hindi pagkakaunawaan o maling interpretasyon na dulot ng paggamit ng pagsasaling ito.
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Pagtatanggi**:
Ang dokumentong ito ay isinalin gamit ang serbisyo ng AI translation na [Co-op Translator](https://github.com/Azure/co-op-translator). Bagama't nagsusumikap kami para sa katumpakan, pakatandaan na ang awtomatikong pagsasalin ay maaaring maglaman ng mga pagkakamali o hindi pagkakatugma. Ang orihinal na dokumento sa orihinal nitong wika ang dapat ituring na pangunahing sanggunian. Para sa mahahalagang impormasyon, inirerekomenda ang propesyonal na pagsasalin ng tao. Hindi kami mananagot sa anumang maling pagkakaintindi o maling interpretasyon na nagmula sa paggamit ng pagsasaling ito.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->

@ -1,116 +1,115 @@
# Panimula sa clustering
Ang clustering ay isang uri ng [Unsupervised Learning](https://wikipedia.org/wiki/Unsupervised_learning) na ipinapalagay na ang dataset ay walang label o ang mga input nito ay hindi tumutugma sa mga pre-defined na output. Gumagamit ito ng iba't ibang algorithm upang suriin ang unlabeled na data at magbigay ng mga pangkat batay sa mga pattern na natutuklasan nito sa data.
Ang clustering ay isang uri ng [Unsupervised Learning](https://wikipedia.org/wiki/Unsupervised_learning) na ipinagpapalagay na ang isang dataset ay walang label o ang mga input nito ay hindi tumutugma sa mga paunang natukoy na output. Gumagamit ito ng iba't ibang mga algorithm upang ayusin ang mga unlabeled na data at magbigay ng mga grupo ayon sa mga pattern na nakikita nito sa data.
[![No One Like You by PSquare](https://img.youtube.com/vi/ty2advRiWJM/0.jpg)](https://youtu.be/ty2advRiWJM "No One Like You by PSquare")
> 🎥 I-click ang imahe sa itaas para sa isang video. Habang nag-aaral ka ng machine learning gamit ang clustering, mag-enjoy sa ilang Nigerian Dance Hall tracks - ito ay isang highly rated na kanta mula 2014 ng PSquare.
> 🎥 I-click ang larawan sa itaas para sa isang video. Habang nag-aaral ka ng machine learning gamit ang clustering, mag-enjoy sa ilang Nigerian Dance Hall tracks - ito ay isang mataas na na-rating na kanta mula 2014 ng PSquare.
## [Pre-lecture quiz](https://ff-quizzes.netlify.app/en/ml/)
### Panimula
Ang [Clustering](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) ay napaka-kapaki-pakinabang para sa paggalugad ng data. Tingnan natin kung makakatulong ito sa pagtuklas ng mga trend at pattern sa paraan ng pagkonsumo ng musika ng mga Nigerian audience.
[Clustering](https://link.springer.com/referenceworkentry/10.1007%2F978-0-387-30164-8_124) ay napaka-kapaki-pakinabang para sa paggalugad ng data. Tingnan natin kung makakatulong ito upang matuklasan ang mga trend at pattern sa paraan ng pagkonsumo ng musika ng mga Nigerian audience.
✅ Maglaan ng isang minuto upang pag-isipan ang mga gamit ng clustering. Sa totoong buhay, nangyayari ang clustering tuwing mayroon kang tambak ng labahan at kailangang ayusin ang mga damit ng iyong pamilya 🧦👕👖🩲. Sa data science, nangyayari ang clustering kapag sinusubukang suriin ang mga kagustuhan ng isang user, o tukuyin ang mga katangian ng anumang unlabeled dataset. Sa isang paraan, ang clustering ay tumutulong upang maunawaan ang kaguluhan, tulad ng drawer ng medyas.
✅ Maglaan ng isang minuto upang pag-isipan ang mga gamit ng clustering. Sa tunay na buhay, nangyayari ang clustering tuwing may bunton ka ng labada at kailangan mong ayusin ang mga damit ng iyong mga kapamilya 🧦👕👖🩲. Sa data science, nangyayari ang clustering kapag sinusubukang suriin ang mga hilig ng isang gumagamit, o tukuyin ang mga katangian ng anumang unlabeled na dataset. Sa isang paraan, tumutulong ang clustering na maunawaan ang kaguluhan, tulad ng drawer ng medyas.
[![Introduction to ML](https://img.youtube.com/vi/esmzYhuFnds/0.jpg)](https://youtu.be/esmzYhuFnds "Introduction to Clustering")
> 🎥 I-click ang imahe sa itaas para sa isang video: Ipinakikilala ni John Guttag ng MIT ang clustering
> 🎥 I-click ang larawan sa itaas para sa isang video: Inilalarawan ni John Guttag ng MIT ang clustering
Sa isang propesyonal na setting, maaaring gamitin ang clustering upang matukoy ang segmentation ng merkado, tulad ng pagtukoy kung anong mga age group ang bumibili ng mga partikular na produkto. Isa pang gamit ay ang anomaly detection, halimbawa upang matukoy ang pandaraya mula sa dataset ng mga transaksyon sa credit card. Maaari mo ring gamitin ang clustering upang matukoy ang mga tumor sa batch ng mga medical scan.
Sa isang propesyonal na setting, maaaring gamitin ang clustering upang tukuyin ang mga bagay tulad ng segmentasyon ng merkado, pagtukoy kung anong pangkat ng edad ang bumibili ng anong mga item, halimbawa. Isa pang gamit ay ang pagtuklas ng anomalya, marahil para tuklasin ang pandaraya mula sa isang dataset ng mga transaksyon sa credit card. O maaari mong gamitin ang clustering upang tukuyin ang mga tumor sa isang batch ng mga medikal na scan.
✅ Maglaan ng isang minuto upang pag-isipan kung paano mo maaaring naranasan ang clustering 'sa totoong buhay', sa isang banking, e-commerce, o business setting.
✅ Mag-isip ng isang minuto kung paano mo maaaring naranasan ang clustering 'sa totoong buhay', sa banking, e-commerce, o business na setting.
> 🎓 Nakakatuwa, ang cluster analysis ay nagmula sa mga larangan ng Anthropology at Psychology noong 1930s. Maiisip mo ba kung paano ito ginamit noon?
> 🎓 Kapansin-pansin, nagmula ang cluster analysis sa mga larangan ng Antropolohiya at Sikolohiya noong 1930s. Maiisip mo ba kung paano ito ginamit noon?
Bukod dito, maaari mo itong gamitin para sa pag-grupo ng mga resulta ng paghahanap - tulad ng mga shopping link, imahe, o review, halimbawa. Kapaki-pakinabang ang clustering kapag mayroon kang malaking dataset na nais mong bawasan at kung saan nais mong magsagawa ng mas detalyadong pagsusuri, kaya ang teknik na ito ay maaaring gamitin upang matuto tungkol sa data bago bumuo ng iba pang mga modelo.
Bilang alternatibo, maaari mo itong gamitin para sa pangkat ng mga resulta ng paghahanap - sa pamamagitan ng mga link sa pamimili, mga imahe, o mga pagsusuri, halimbawa. Kapaki-pakinabang ang clustering kapag mayroon kang malaking dataset na nais mong paliitin at kung saan nais mong magsagawa ng mas detalyadong pagsusuri, kaya maaaring gamitin ang teknik na ito upang matuto tungkol sa data bago gumawa ng ibang mga modelo.
✅ Kapag ang iyong data ay nakaayos na sa mga cluster, maaari kang magtalaga ng cluster Id dito, at ang teknik na ito ay maaaring maging kapaki-pakinabang sa pagpapanatili ng privacy ng dataset; maaari mong tukuyin ang isang data point sa pamamagitan ng cluster id nito, sa halip na sa pamamagitan ng mas nakakapagpakilalang data. Maiisip mo ba ang iba pang dahilan kung bakit mas gugustuhin mong tukuyin ang isang cluster Id kaysa sa iba pang elemento ng cluster upang kilalanin ito?
Palalimin ang iyong pag-unawa sa mga clustering techniques sa [Learn module](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott)
✅ Kapag naayos mo na ang iyong data sa mga cluster, bibigyan mo ito ng cluster Id, at maaaring maging kapaki-pakinabang ang teknik na ito sa pagpapanatili ng privacy ng sebuah dataset; maaari kang tumukoy sa isang data point gamit ang cluster id nito, sa halip na sa mga mas nagpapakilalang data. Maiisip mo ba ang iba pang mga dahilan kung bakit mo tatawagin ang isang cluster Id kaysa sa iba pang mga elemento ng cluster upang tukuyin ito?
Palalimin ang iyong pagkaunawa sa mga teknik ng clustering sa [Learn module](https://docs.microsoft.com/learn/modules/train-evaluate-cluster-models?WT.mc_id=academic-77952-leestott)
## Pagsisimula sa clustering
[Ang Scikit-learn ay nag-aalok ng malawak na hanay](https://scikit-learn.org/stable/modules/clustering.html) ng mga pamamaraan upang magsagawa ng clustering. Ang uri na pipiliin mo ay depende sa iyong use case. Ayon sa dokumentasyon, bawat pamamaraan ay may iba't ibang benepisyo. Narito ang isang pinasimpleng talahanayan ng mga pamamaraan na sinusuportahan ng Scikit-learn at ang kanilang naaangkop na mga use case:
[Inaalok ng Scikit-learn ang malawak na hanay](https://scikit-learn.org/stable/modules/clustering.html) ng mga pamamaraan upang magsagawa ng clustering. Ang pipiliin mo ay depende sa iyong use case. Ayon sa dokumentasyon, bawat pamamaraan ay may iba't ibang benepisyo. Narito ang isang pinasimpleng talahanayan ng mga metodong sinusuportahan ng Scikit-learn at angkop na mga gamit:
| Pangalan ng Pamamaraan | Use case |
| Pangalan ng Metodo | Gamit |
| :--------------------------- | :--------------------------------------------------------------------- |
| K-Means | pangkalahatang layunin, inductive |
| Affinity propagation | marami, hindi pantay na mga cluster, inductive |
| Mean-shift | marami, hindi pantay na mga cluster, inductive |
| Spectral clustering | kaunti, pantay na mga cluster, transductive |
| Ward hierarchical clustering | marami, constrained na mga cluster, transductive |
| Agglomerative clustering | marami, constrained, non Euclidean distances, transductive |
| DBSCAN | non-flat geometry, hindi pantay na mga cluster, transductive |
| OPTICS | non-flat geometry, hindi pantay na mga cluster na may variable density, transductive |
| Gaussian mixtures | flat geometry, inductive |
| K-Means | pangkalahatang gamit, inductive |
| Affinity propagation | marami, hindi pantay na cluster, inductive |
| Mean-shift | marami, hindi pantay na cluster, inductive |
| Spectral clustering | kakaunti, pantay na cluster, transductive |
| Ward hierarchical clustering | marami, may mga limitasyong cluster, transductive |
| Agglomerative clustering | marami, may limitasyon, non Euclidean distances, transductive |
| DBSCAN | hindi patag na geometry, hindi pantay na cluster, transductive |
| OPTICS | hindi patag na geometry, hindi pantay na cluster na may variable density, transductive |
| Gaussian mixtures | patag na geometry, inductive |
| BIRCH | malaking dataset na may outliers, inductive |
> 🎓 Ang paraan ng paglikha natin ng mga cluster ay may kinalaman sa kung paano natin pinagsasama-sama ang mga data point sa mga grupo. Tuklasin natin ang ilang bokabularyo:
> 🎓 Paano tayo gumagawa ng mga cluster ay malaki ang kinalaman sa kung paano natin pinagsasama-sama ang mga data point sa mga grupo. Tatalakayin natin ang ilang bokabularyo:
>
> 🎓 ['Transductive' vs. 'inductive'](https://wikipedia.org/wiki/Transduction_(machine_learning))
>
> Ang transductive inference ay nagmumula sa mga naobserbahang training cases na tumutugma sa mga partikular na test cases. Ang inductive inference ay nagmumula sa mga training cases na tumutugma sa mga pangkalahatang panuntunan na pagkatapos ay inilalapat sa mga test cases.
>
> Halimbawa: Isipin na mayroon kang dataset na bahagyang may label. Ang ilan ay 'records', ang ilan ay 'cds', at ang ilan ay blangko. Ang iyong trabaho ay magbigay ng label para sa mga blangko. Kung pipili ka ng inductive approach, magte-train ka ng model na naghahanap ng 'records' at 'cds', at ilalapat ang mga label na iyon sa iyong unlabeled na data. Ang approach na ito ay mahihirapan sa pag-classify ng mga bagay na aktwal na 'cassettes'. Ang transductive approach, sa kabilang banda, ay mas epektibong humahawak sa hindi kilalang data dahil gumagana ito upang mag-grupo ng mga magkatulad na item at pagkatapos ay maglalapat ng label sa isang grupo. Sa kasong ito, maaaring magpakita ang mga cluster ng 'bilog na musical things' at 'parisukat na musical things'.
> Ang transductive inference ay nagmula sa mga naobserbahang training cases na tumutugma sa mga tiyak na test cases. Ang inductive inference ay nagmula sa mga training cases na tumutugma sa mga pangkalahatang patakaran na pagkatapos lamang ay inilalapat sa mga test cases.
>
> Isang halimbawa: Isipin mo na mayroon kang dataset na bahagyang may label lamang. Ang ilang bagay ay 'records', ang ilan ay 'cds', at ang ilan ay walang label. Ang iyong trabaho ay magbigay ng mga label para sa mga walang label. Kung pipiliin mo ang inductive na paraan, magsasanay ka ng modelo na naghahanap ng 'records' at 'cds', at ilalapat mo ang mga label na iyon sa iyong unlabeled na data. Magkakaroon ito ng problema sa pag-uri ng mga bagay na talagang 'cassettes'. Ang transductive na paraan, sa kabilang banda, ay mas epektibong humahawak sa di-kilalang data habang nagsisikap maggrupo ng magkatulad na mga item at pagkatapos ay maglagay ng label sa isang grupo. Sa kasong ito, ang mga cluster ay maaaring kumatawan sa 'mga bilog na musikang bagay' at 'mga parisukat na musikang bagay'.
>
> 🎓 ['Non-flat' vs. 'flat' geometry](https://datascience.stackexchange.com/questions/52260/terminology-flat-geometry-in-the-context-of-clustering)
>
> Nagmula sa terminolohiyang matematika, ang non-flat vs. flat geometry ay tumutukoy sa pagsukat ng distansya sa pagitan ng mga punto sa pamamagitan ng 'flat' ([Euclidean](https://wikipedia.org/wiki/Euclidean_geometry)) o 'non-flat' (non-Euclidean) na mga geometrical na pamamaraan.
>
>'Flat' sa kontekstong ito ay tumutukoy sa Euclidean geometry (ang ilang bahagi nito ay itinuturo bilang 'plane' geometry), at ang non-flat ay tumutukoy sa non-Euclidean geometry. Ano ang kinalaman ng geometry sa machine learning? Bilang dalawang larangan na nakaugat sa matematika, dapat mayroong karaniwang paraan upang sukatin ang distansya sa pagitan ng mga punto sa mga cluster, at maaaring gawin ito sa 'flat' o 'non-flat' na paraan, depende sa kalikasan ng data. [Euclidean distances](https://wikipedia.org/wiki/Euclidean_distance) ay sinusukat bilang haba ng segment ng linya sa pagitan ng dalawang punto. [Non-Euclidean distances](https://wikipedia.org/wiki/Non-Euclidean_geometry) ay sinusukat sa kahabaan ng kurba. Kung ang iyong data, kapag na-visualize, ay tila hindi umiiral sa isang plane, maaaring kailanganin mong gumamit ng specialized algorithm upang hawakan ito.
> Nagmula sa terminolohiyang matematika, ang non-flat vs. flat na geometry ay tumutukoy sa pagsukat ng distansya sa pagitan ng mga punto gamit ang 'flat' ([Euclidean](https://wikipedia.org/wiki/Euclidean_geometry)) o 'non-flat' (non-Euclidean) na mga pamamaraan ng geometry.
>
>'Flat' sa kontekstong ito ay tumutukoy sa Euclidean geometry (na bahagi nito ay tinuturo bilang 'plane' geometry), at ang non-flat ay tumutukoy sa non-Euclidean geometry. Ano ang kinalaman ng geometry sa machine learning? Bilang dalawang larangan na naka-ugat sa matematika, dapat mayroong karaniwang paraan upang sukatin ang distansya sa pagitan ng mga punto sa mga cluster, at magagawa iyon sa paraang 'flat' o 'non-flat', depende sa likas ng data. Ang [Euclidean distances](https://wikipedia.org/wiki/Euclidean_distance) ay sinusukat bilang haba ng linya sa pagitan ng dalawang punto. Ang [Non-Euclidean distances](https://wikipedia.org/wiki/Non-Euclidean_geometry) ay sinusukat sa kahabaan ng isang kurba. Kung ang iyong data, kapag na-visualize, ay tila hindi umiiral sa isang eroplano, maaaring kailanganin mong gumamit ng isang espesyal na algorithm upang hawakan ito.
>
![Flat vs Nonflat Geometry Infographic](../../../../5-Clustering/1-Visualize/images/flat-nonflat.png)
![Flat vs Nonflat Geometry Infographic](../../../../translated_images/tl/flat-nonflat.d1c8c6e2a96110c1.webp)
> Infographic ni [Dasani Madipalli](https://twitter.com/dasani_decoded)
>
> 🎓 ['Distances'](https://web.stanford.edu/class/cs345a/slides/12-clustering.pdf)
>
> Ang mga cluster ay tinutukoy ng kanilang distance matrix, halimbawa ang mga distansya sa pagitan ng mga punto. Ang distansya ay maaaring sukatin sa ilang paraan. Ang mga Euclidean cluster ay tinutukoy ng average ng mga halaga ng punto, at naglalaman ng 'centroid' o gitnang punto. Ang mga distansya ay sinusukat sa pamamagitan ng distansya sa centroid na iyon. Ang mga non-Euclidean distances ay tumutukoy sa 'clustroids', ang punto na pinakamalapit sa iba pang mga punto. Ang mga clustroids naman ay maaaring tukuyin sa iba't ibang paraan.
> Ang mga cluster ay tinutukoy ng kanilang distance matrix, halimbawa ang mga distansya sa pagitan ng mga punto. Ang distansyang ito ay maaaring sukatin sa ilang paraan. Ang mga Euclidean cluster ay tinutukoy ng average ng mga halaga ng punto, at mayroong 'centroid' o gitnang punto. Ang mga distansya ay sinusukat mula sa distansya patungo sa centroid na iyon. Ang mga non-Euclidean distances ay tumutukoy sa mga 'clustroids', ang punto na pinakamalapit sa ibang mga punto. Ang mga clustroid ay maaaring tukuyin sa iba't ibang paraan.
>
> 🎓 ['Constrained'](https://wikipedia.org/wiki/Constrained_clustering)
>
> [Constrained Clustering](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) ay nagpapakilala ng 'semi-supervised' learning sa unsupervised na pamamaraang ito. Ang mga relasyon sa pagitan ng mga punto ay minarkahan bilang 'cannot link' o 'must-link' kaya ang ilang mga panuntunan ay ipinapataw sa dataset.
> Ang [Constrained Clustering](https://web.cs.ucdavis.edu/~davidson/Publications/ICDMTutorial.pdf) ay naglalagay ng 'semi-supervised' learning sa pamamaraang unsupervised na ito. Ang mga relasyon sa pagitan ng mga punto ay minamarkahan bilang 'cannot link' o 'must-link' kaya may ilang mga patakaran na ipinapataw sa dataset.
>
>Halimbawa: Kung ang isang algorithm ay pinakawalan sa batch ng unlabeled o semi-labelled na data, ang mga cluster na nabuo nito ay maaaring hindi maganda ang kalidad. Sa halimbawa sa itaas, maaaring mag-grupo ang mga cluster ng 'bilog na musical things' at 'parisukat na musical things' at 'triangular things' at 'cookies'. Kung bibigyan ng ilang constraints, o mga panuntunan na susundin ("ang item ay dapat gawa sa plastic", "ang item ay kailangang makagawa ng musika") makakatulong ito upang 'pigilan' ang algorithm na gumawa ng mas mahusay na mga pagpipilian.
> Isang halimbawa: Kung hayagan mong pinakawalan ang isang algorithm sa isang batch ng unlabeled o semi-labeled na data, maaaring maging mababa ang kalidad ng mga cluster na nilikha nito. Sa halimbawa sa itaas, ang mga cluster ay maaaring maggrupo ng 'mga bilog na musikang bagay' at 'mga parisukat na musikang bagay' at 'mga tatsulok na bagay' at mga 'cookies'. Kung bibigyan ng mga constraints, o patakaran na sundin ("ang item ay dapat gawa sa plastik", "ang item ay kailangang makalikha ng musika") makakatulong ito upang 'limitahan' ang algorithm upang gumawa ng mas mahusay na mga pagpipilian.
>
> 🎓 'Density'
>
> Ang data na 'noisy' ay itinuturing na 'dense'. Ang mga distansya sa pagitan ng mga punto sa bawat isa sa mga cluster nito ay maaaring magpakita, sa pagsusuri, na mas siksik o 'crowded' kaya ang data na ito ay kailangang suriin gamit ang naaangkop na clustering method. [Ang artikulong ito](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) ay nagpapakita ng pagkakaiba sa pagitan ng paggamit ng K-Means clustering vs. HDBSCAN algorithms upang galugarin ang isang noisy dataset na may hindi pantay na cluster density.
> Ang data na 'maingay' ay itinuturing na 'dense'. Ang mga distansya sa pagitan ng mga punto sa bawat cluster nito ay maaaring masuri, upang malaman kung masikip o 'siksikan' ang mga ito kaya ang data na ito ay kailangang i-analyze gamit ang angkop na pamamaraan ng clustering. [Itong artikulo](https://www.kdnuggets.com/2020/02/understanding-density-based-clustering.html) ay nagpapakita ng pagkakaiba sa paggamit ng K-Means clustering kumpara sa HDBSCAN algorithms upang tuklasin ang isang maingay na dataset na may hindi pantay na density ng cluster.
## Mga clustering algorithm
Mayroong higit sa 100 clustering algorithms, at ang kanilang paggamit ay nakadepende sa kalikasan ng data na hawak. Talakayin natin ang ilan sa mga pangunahing uri:
Mayroong mahigit 100 clustering algorithm, at ang paggamit nito ay depende sa uri ng data na hawak. Talakayin natin ang ilan sa mga pangunahing ito:
- **Hierarchical clustering**. Kung ang isang object ay na-classify batay sa kalapitan nito sa isang kalapit na object, sa halip na sa mas malayong object, ang mga cluster ay nabubuo batay sa distansya ng mga miyembro nito sa iba pang mga object. Ang agglomerative clustering ng Scikit-learn ay hierarchical.
- **Hierarchical clustering**. Kapag ang isang bagay ay kinilala ayon sa pagiging malapit nito sa ibang bagay na malapit, sa halip na sa isang bagay na malayo, nabubuo ang mga cluster base sa distansya ng kanilang mga kasapi papunta at mula sa ibang mga bagay. Ang agglomerative clustering ng Scikit-learn ay hierarchical.
![Hierarchical clustering Infographic](../../../../5-Clustering/1-Visualize/images/hierarchical.png)
![Hierarchical clustering Infographic](../../../../translated_images/tl/hierarchical.bf59403aa43c8c47.webp)
> Infographic ni [Dasani Madipalli](https://twitter.com/dasani_decoded)
- **Centroid clustering**. Ang sikat na algorithm na ito ay nangangailangan ng pagpili ng 'k', o ang bilang ng mga cluster na bubuuin, pagkatapos nito ay tinutukoy ng algorithm ang gitnang punto ng isang cluster at kinukuha ang data sa paligid ng puntong iyon. Ang [K-means clustering](https://wikipedia.org/wiki/K-means_clustering) ay isang sikat na bersyon ng centroid clustering. Ang gitna ay tinutukoy ng pinakamalapit na mean, kaya ang pangalan. Ang squared distance mula sa cluster ay pinapaliit.
- **Centroid clustering**. Ang kilalang algorithm na ito ay nangangailangan ng pagpili ng 'k', o ang bilang ng mga cluster na bubuuin, kung saan tinutukoy ng algorithm ang punto ng sentro ng cluster at kinokolekta ang data sa paligid ng puntong iyon. Ang [K-means clustering](https://wikipedia.org/wiki/K-means_clustering) ay isang kilalang bersyon ng centroid clustering. Ang sentro ay tinutukoy ng pinakamalapit na mean, kaya ang pangalan. Ang squared distance mula sa cluster ay minimal.
![Centroid clustering Infographic](../../../../5-Clustering/1-Visualize/images/centroid.png)
![Centroid clustering Infographic](../../../../translated_images/tl/centroid.097fde836cf6c918.webp)
> Infographic ni [Dasani Madipalli](https://twitter.com/dasani_decoded)
- **Distribution-based clustering**. Batay sa statistical modeling, ang distribution-based clustering ay nakatuon sa pagtukoy ng posibilidad na ang isang data point ay kabilang sa isang cluster, at itinalaga ito nang naaayon. Ang Gaussian mixture methods ay kabilang sa ganitong uri.
- **Distribution-based clustering**. Nakabatay sa statistical modeling, ang distribution-based clustering ay nakatuon sa pagtukoy ng posibilidad na ang isang data point ay kabilang sa isang cluster, at pagkatapos ay itinalaga ito nang naaayon. Kasama sa uri na ito ang Gaussian mixture methods.
- **Density-based clustering**. Ang mga data point ay itinalaga sa mga cluster batay sa kanilang density, o ang kanilang pag-grupo sa paligid ng isa't isa. Ang mga data point na malayo sa grupo ay itinuturing na outliers o noise. Ang DBSCAN, Mean-shift, at OPTICS ay kabilang sa ganitong uri ng clustering.
- **Density-based clustering**. Ang mga data point ay itinalaga sa mga cluster base sa kanilang density, o sa kanilang pagsasama-sama. Ang mga punto na malayo sa grupo ay tinuturing na outliers o ingay. Kabilang sa uri na ito ng clustering ang DBSCAN, Mean-shift, at OPTICS.
- **Grid-based clustering**. Para sa multi-dimensional datasets, isang grid ang nilikha at ang data ay hinahati sa mga cell ng grid, kaya't nabubuo ang mga cluster.
- **Grid-based clustering**. Para sa multi-dimensional na mga dataset, nagagawa ang isang grid at hinahati ang data sa mga cell ng grid, kaya nabubuo ang mga cluster.
## Ehersisyo - i-cluster ang iyong data
Ang clustering bilang isang teknik ay lubos na natutulungan ng tamang visualization, kaya't magsimula tayo sa pag-visualize ng ating music data. Ang ehersisyong ito ay makakatulong sa atin na magpasya kung alin sa mga pamamaraan ng clustering ang pinaka-epektibong gamitin para sa kalikasan ng data na ito.
Malaki ang naitutulong ng clustering bilang isang teknik kapag may maayos na visualization, kaya magsimula tayo sa pag-visualize ng ating data ng musika. Tutulungan tayo ng ehersisyong ito na magpasya kung alin sa mga pamamaraan ng clustering ang pinakamainam gamitin para sa uri ng data na ito.
1. Buksan ang [_notebook.ipynb_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/1-Visualize/notebook.ipynb) file sa folder na ito.
1. Buksan ang file na [_notebook.ipynb_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/1-Visualize/notebook.ipynb) sa folder na ito.
1. I-import ang `Seaborn` package para sa mahusay na data visualization.
1. I-import ang `Seaborn` package para sa magandang data visualization.
```python
!pip install seaborn
```
1. I-append ang song data mula sa [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv). Mag-load ng dataframe na may ilang data tungkol sa mga kanta. Maghanda upang galugarin ang data na ito sa pamamagitan ng pag-import ng mga library at pag-dump ng data:
1. Idagdag ang data ng mga kanta mula sa [_nigerian-songs.csv_](https://github.com/microsoft/ML-For-Beginners/blob/main/5-Clustering/data/nigerian-songs.csv). Mag-load ng dataframe na may ilang data tungkol sa mga kanta. Maghanda upang suriin ang data na ito sa pamamagitan ng pag-import ng mga library at pag-check ng data:
```python
import matplotlib.pyplot as plt
@ -122,15 +121,15 @@ Ang clustering bilang isang teknik ay lubos na natutulungan ng tamang visualizat
Tingnan ang unang ilang linya ng data:
| | name | album | artist | artist_top_genre | release_date | length | popularity | danceability | acousticness | energy | instrumentalness | liveness | loudness | speechiness | tempo | time_signature |
| --- | ------------------------ | ---------------------------- | ------------------- | ---------------- | ------------ | ------ | ---------- | ------------ | ------------ | ------ | ---------------- | -------- | -------- | ----------- | ------- | -------------- |
| 0 | Sparky | Mandy & The Jungle | Cruel Santino | alternative r&b | 2019 | 144000 | 48 | 0.666 | 0.851 | 0.42 | 0.534 | 0.11 | -6.699 | 0.0829 | 133.015 | 5 |
| 1 | shuga rush | EVERYTHING YOU HEARD IS TRUE | Odunsi (The Engine) | afropop | 2020 | 89488 | 30 | 0.71 | 0.0822 | 0.683 | 0.000169 | 0.101 | -5.64 | 0.36 | 129.993 | 3 |
| 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 |
| 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 |
| 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 |
| | pangalan | album | artist | artist_top_genre | release_date | haba | kasikatan | danceability | acousticness | enerhiya | instrumentalness | liveness | loudness | speechiness | tempo | time_signature |
| --- | ------------------------ | ---------------------------- | ------------------- | ---------------- | ------------ | ------ | ---------- | ------------ | ------------ | -------- | ---------------- | -------- | -------- | ----------- | ------- | -------------- |
| 0 | Sparky | Mandy & The Jungle | Cruel Santino | alternative r&b | 2019 | 144000 | 48 | 0.666 | 0.851 | 0.42 | 0.534 | 0.11 | -6.699 | 0.0829 | 133.015 | 5 |
| 1 | shuga rush | EVERYTHING YOU HEARD IS TRUE | Odunsi (The Engine) | afropop | 2020 | 89488 | 30 | 0.71 | 0.0822 | 0.683 | 0.000169 | 0.101 | -5.64 | 0.36 | 129.993 | 3 |
| 2 | LITT! | LITT! | AYLØ | indie r&b | 2018 | 207758 | 40 | 0.836 | 0.272 | 0.564 | 0.000537 | 0.11 | -7.127 | 0.0424 | 130.005 | 4 |
| 3 | Confident / Feeling Cool | Enjoy Your Life | Lady Donli | nigerian pop | 2019 | 175135 | 14 | 0.894 | 0.798 | 0.611 | 0.000187 | 0.0964 | -4.961 | 0.113 | 111.087 | 4 |
| 4 | wanted you | rare. | Odunsi (The Engine) | afropop | 2018 | 152049 | 25 | 0.702 | 0.116 | 0.833 | 0.91 | 0.348 | -6.044 | 0.0447 | 105.115 | 4 |
1. Kunin ang ilang impormasyon tungkol sa dataframe, gamit ang `info()`:
1. Kumuha ng ilang impormasyon tungkol sa dataframe, pagtawag sa `info()`:
```python
df.info()
@ -164,7 +163,7 @@ Ang clustering bilang isang teknik ay lubos na natutulungan ng tamang visualizat
memory usage: 66.4+ KB
```
1. Siguraduhing walang null values, sa pamamagitan ng pagtawag sa `isnull()` at pag-verify na ang kabuuan ay 0:
1. I-double-check ang mga null values, sa pamamagitan ng pagtawag sa `isnull()` at pagsusuri na ang sum ay 0:
```python
df.isnull().sum()
@ -209,11 +208,11 @@ Ang clustering bilang isang teknik ay lubos na natutulungan ng tamang visualizat
| 75% | 2017 | 242098.5 | 31 | 0.8295 | 0.403 | 0.87575 | 0.000234 | 0.164 | -3.331 | 0.177 | 125.03925 | 4 |
| max | 2020 | 511738 | 73 | 0.966 | 0.954 | 0.995 | 0.91 | 0.811 | 0.582 | 0.514 | 206.007 | 5 |
> 🤔 Kung ang clustering ay isang unsupervised method na hindi nangangailangan ng labeled data, bakit natin ipinapakita ang data na may labels? Sa yugto ng pagsusuri ng data, ito ay kapaki-pakinabang, ngunit hindi ito kinakailangan para gumana ang clustering algorithms. Maaari mong alisin ang mga column headers at tukuyin ang data sa pamamagitan ng column number.
> 🤔 Kung tayo ay nagtatrabaho gamit ang clustering, isang unsupervised na pamamaraan na hindi nangangailangan ng labeled data, bakit ipinapakita natin ang data na ito na may mga labels? Sa yugto ng paggalugad ng data, ito ay kapaki-pakinabang, ngunit hindi ito kinakailangan para gumana ang mga clustering algorithm. Maaari mo ring tanggalin ang mga column headers at tukuyin ang data batay sa numero ng column.
Tingnan ang pangkalahatang halaga ng data. Tandaan na ang popularity ay maaaring '0', na nagpapakita ng mga kanta na walang ranking. Alisin natin ang mga ito sa lalong madaling panahon.
Tingnan ang mga pangkalahatang halaga ng data. Tandaan na ang popularity ay maaaring '0', na nagpapakita ng mga kanta na walang ranggo. Tanggalin natin ang mga iyon sa lalong madaling panahon.
1. Gumamit ng barplot upang malaman ang pinakasikat na genres:
1. Gumamit ng barplot upang malaman ang pinaka-popular na mga genre:
```python
import seaborn as sns
@ -225,13 +224,13 @@ Tingnan ang pangkalahatang halaga ng data. Tandaan na ang popularity ay maaaring
plt.title('Top genres',color = 'blue')
```
![most popular](../../../../5-Clustering/1-Visualize/images/popular.png)
![most popular](../../../../translated_images/tl/popular.9c48d84b3386705f.webp)
✅ Kung nais mong makita ang mas maraming top values, palitan ang top `[:5]` sa mas malaking halaga, o alisin ito upang makita ang lahat.
✅ Kung nais mong makita ang mas maraming top values, palitan ang top `[:5]` ng mas malaking halaga, o alisin ito upang makita ang lahat.
Tandaan, kapag ang top genre ay inilarawan bilang 'Missing', nangangahulugan ito na hindi ito na-classify ng Spotify, kaya alisin natin ito.
Tandaan, kapag ang top genre ay inilalarawan bilang 'Missing', ibig sabihin nito ay hindi na-classify ng Spotify ang genre, kaya't alisin natin ito.
1. Alisin ang nawawalang data sa pamamagitan ng pag-filter nito
1. Alisin ang mga nawawalang data sa pamamagitan ng pag-filter nito
```python
df = df[df['artist_top_genre'] != 'Missing']
@ -242,11 +241,11 @@ Tandaan, kapag ang top genre ay inilarawan bilang 'Missing', nangangahulugan ito
plt.title('Top genres',color = 'blue')
```
Ngayon muling suriin ang mga genres:
Ngayon, suriin muli ang mga genre:
![most popular](../../../../5-Clustering/1-Visualize/images/all-genres.png)
![most popular](../../../../translated_images/tl/all-genres.1d56ef06cefbfcd6.webp)
1. Sa ngayon, ang tatlong nangungunang genres ang nangingibabaw sa dataset na ito. Mag-focus tayo sa `afro dancehall`, `afropop`, at `nigerian pop`, at karagdagang i-filter ang dataset upang alisin ang anumang may 0 popularity value (na nangangahulugang hindi ito na-classify na may popularity sa dataset at maaaring ituring na noise para sa ating layunin):
1. Sa ngayon, nangingibabaw ang tatlong nangungunang genre sa dataset na ito. Magpokus tayo sa `afro dancehall`, `afropop`, at `nigerian pop`, dagdag pang i-filter ang dataset upang alisin ang anumang may 0 na popularidad (na nangangahulugang hindi ito na-classify na may popularidad sa dataset at maaaring ituring na ingay para sa ating layunin):
```python
df = df[(df['artist_top_genre'] == 'afro dancehall') | (df['artist_top_genre'] == 'afropop') | (df['artist_top_genre'] == 'nigerian pop')]
@ -258,7 +257,7 @@ Tandaan, kapag ang top genre ay inilarawan bilang 'Missing', nangangahulugan ito
plt.title('Top genres',color = 'blue')
```
1. Gumawa ng mabilis na pagsusuri upang makita kung ang data ay may malakas na correlation:
1. Gumawa ng mabilis na pagsusuri upang tingnan kung ang data ay may matibay na ugnayan sa anumang partikular na paraan:
```python
corrmat = df.corr(numeric_only=True)
@ -266,21 +265,21 @@ Tandaan, kapag ang top genre ay inilarawan bilang 'Missing', nangangahulugan ito
sns.heatmap(corrmat, vmax=.8, square=True)
```
![correlations](../../../../5-Clustering/1-Visualize/images/correlation.png)
![correlations](../../../../translated_images/tl/correlation.a9356bb798f5eea5.webp)
Ang tanging malakas na correlation ay sa pagitan ng `energy` at `loudness`, na hindi masyadong nakakagulat, dahil ang malakas na musika ay karaniwang mas energetic. Bukod dito, ang correlations ay medyo mahina. Magiging interesante ang makita kung ano ang magagawa ng clustering algorithm sa data na ito.
Ang tanging malakas na ugnayan ay sa pagitan ng `energy` at `loudness`, na hindi nakakagulat, dahil ang maingay na musika ay karaniwang masigla. Sa ibang bagay, mahina ang mga ugnayan. Magiging interesante kung ano ang maaaring makuha ng clustering algorithm mula sa data na ito.
> 🎓 Tandaan na ang correlation ay hindi nangangahulugan ng causation! Mayroon tayong patunay ng correlation ngunit walang patunay ng causation. Ang [nakakatawang web site](https://tylervigen.com/spurious-correlations) ay may mga visual na nag-eemphasize sa puntong ito.
> 🎓 Tandaan na ang correlation ay hindi nangangahulugang causation! May patunay tayo ng correlation ngunit walang patunay ng causation. Isang [nakakatuwang web site](https://tylervigen.com/spurious-correlations) ang nagpapakita ng mga visual na nagdidiin dito.
Mayroon bang convergence sa dataset na ito sa paligid ng perceived popularity at danceability ng isang kanta? Ang isang FacetGrid ay nagpapakita na may mga concentric circles na nagkakatugma, anuman ang genre. Posible kaya na ang mga Nigerian tastes ay nagkakatugma sa isang tiyak na antas ng danceability para sa genre na ito?
Mayroon bang convergence sa dataset na ito tungkol sa inaakalang popularidad ng kanta at danceability? Ipinapakita ng isang FacetGrid na may mga concentric circle na nag-aayos, kahit ano pa man ang genre. Maaaring ang Nigerian na panlasa ay nagtatagpo sa isang tiyak na antas ng danceability para sa genre na ito?
✅ Subukan ang iba't ibang datapoints (energy, loudness, speechiness) at mas marami o iba't ibang musical genres. Ano ang maaari mong matuklasan? Tingnan ang `df.describe()` table upang makita ang pangkalahatang spread ng data points.
✅ Subukan ang iba't ibang datapoints (energy, loudness, speechiness) at mas marami o iba't ibang musikang genre. Ano ang maaari mong matuklasan? Tingnan ang `df.describe()` table para makita ang pangkalahatang pagkakalat ng mga data point.
### Ehersisyo - distribusyon ng data
### Pagsasanay - pamamahagi ng data
Ang tatlong genres ba na ito ay makabuluhang naiiba sa perception ng kanilang danceability, base sa kanilang popularity?
Malaki ba ang pagkakaiba ng tatlong genre na ito sa persepsyon ng kanilang danceability, batay sa kanilang popularidad?
1. Suriin ang distribusyon ng data ng ating top three genres para sa popularity at danceability sa isang ibinigay na x at y axis.
1. Suriin ang pamamahagi ng data ng ating tatlong nangungunang genre para sa popularity at danceability sa isang ibinigay na x at y axis.
```python
sns.set_theme(style="ticks")
@ -292,13 +291,13 @@ Ang tatlong genres ba na ito ay makabuluhang naiiba sa perception ng kanilang da
)
```
Maaari kang makakita ng concentric circles sa paligid ng isang pangkalahatang punto ng convergence, na nagpapakita ng distribusyon ng mga puntos.
Makikita mo ang mga concentric circle sa paligid ng isang pangkalahatang punto ng convergence, na nagpapakita ng pamamahagi ng mga punto.
> 🎓 Tandaan na ang halimbawang ito ay gumagamit ng isang KDE (Kernel Density Estimate) graph na kumakatawan sa data gamit ang isang tuloy-tuloy na probability density curve. Pinapayagan nito tayong ma-interpret ang data kapag nagtatrabaho sa maraming distribusyon.
> 🎓 Tandaan na ang halimbawang ito ay gumagamit ng KDE (Kernel Density Estimate) graph na kumakatawan sa data gamit ang isang tuloy-tuloy na kurba ng probabilidad. Pinapahintulutan nito tayo na mag-interpret ng data kapag nagtatrabaho sa maraming pamamahagi.
Sa pangkalahatan, ang tatlong genres ay maluwag na nagkakatugma sa kanilang popularity at danceability. Ang pagtukoy ng clusters sa maluwag na data na ito ay magiging hamon:
Sa pangkalahatan, ang tatlong genre ay bahagyang nagkakatugma sa aspeto ng kanilang popularity at danceability. Ang pagtukoy ng mga cluster sa ganitong bahagyang nagkakatugmang data ay magiging hamon:
![distribution](../../../../5-Clustering/1-Visualize/images/distribution.png)
![distribution](../../../../translated_images/tl/distribution.9be11df42356ca95.webp)
1. Gumawa ng scatter plot:
@ -310,29 +309,31 @@ Ang tatlong genres ba na ito ay makabuluhang naiiba sa perception ng kanilang da
Ang scatterplot ng parehong axes ay nagpapakita ng katulad na pattern ng convergence
![Facetgrid](../../../../5-Clustering/1-Visualize/images/facetgrid.png)
![Facetgrid](../../../../translated_images/tl/facetgrid.9b2e65ce707eba1f.webp)
Sa pangkalahatan, para sa clustering, maaari mong gamitin ang scatterplots upang ipakita ang clusters ng data, kaya ang pag-master ng ganitong uri ng visualization ay napaka-kapaki-pakinabang. Sa susunod na aralin, gagamitin natin ang filtered data na ito at gagamit ng k-means clustering upang matuklasan ang mga grupo sa data na ito na tila nag-o-overlap sa mga interesanteng paraan.
Sa pangkalahatan, para sa clustering, maaari mong gamitin ang scatterplots upang ipakita ang mga cluster ng data, kaya ang pag-master sa ganitong uri ng visualization ay napaka-kapaki-pakinabang. Sa susunod na aralin, gagamitin natin ang na-filter na data na ito at gamitin ang k-means clustering upang tuklasin ang mga grupo sa data na mukhang nag-o-overlap sa mga kawili-wiling paraan.
---
## 🚀Hamunin
## 🚀Hamón
Bilang paghahanda para sa susunod na aralin, gumawa ng chart tungkol sa iba't ibang clustering algorithms na maaari mong matuklasan at gamitin sa isang production environment. Anong mga uri ng problema ang sinusubukang tugunan ng clustering?
Bilang paghahanda para sa susunod na aralin, gumawa ng isang tsart tungkol sa iba't ibang clustering algorithm na maaari mong tuklasin at gamitin sa isang production environment. Anong uri ng mga problema ang sinusubukang lutasin ng clustering?
## [Post-lecture quiz](https://ff-quizzes.netlify.app/en/ml/)
## Review at Pag-aaral ng Sarili
## Review & Sariling Pag-aaral
Bago ka mag-apply ng clustering algorithms, tulad ng natutunan natin, magandang ideya na maunawaan ang likas na katangian ng iyong dataset. Magbasa pa tungkol sa paksang ito [dito](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html)
Bago mo ilapat ang clustering algorithms, gaya ng ating natutunan, magandang ideya na maunawaan ang kalikasan ng iyong dataset. Magbasa pa tungkol sa paksang ito [dito](https://www.kdnuggets.com/2019/10/right-clustering-algorithm.html)
[Ang kapaki-pakinabang na artikulong ito](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) ay naglalakad sa iyo sa iba't ibang paraan kung paano kumikilos ang iba't ibang clustering algorithms, base sa iba't ibang hugis ng data.
[Ang kapaki-pakinabang na artikulong ito](https://www.freecodecamp.org/news/8-clustering-algorithms-in-machine-learning-that-all-data-scientists-should-know/) ay naglalakad sa iyo sa iba't ibang paraan ng pag-uugali ng iba't ibang clustering algorithm, batay sa iba't ibang hugis ng data.
## Takdang-Aralin
[Mag-research ng iba pang visualizations para sa clustering](assignment.md)
[Mag-research tungkol sa iba pang visualizations para sa clustering](assignment.md)
---
**Paunawa**:
Ang dokumentong ito ay isinalin gamit ang AI translation service na [Co-op Translator](https://github.com/Azure/co-op-translator). Bagama't sinisikap naming maging tumpak, pakitandaan na ang mga awtomatikong pagsasalin ay maaaring maglaman ng mga pagkakamali o hindi pagkakatugma. Ang orihinal na dokumento sa kanyang katutubong wika ang dapat ituring na opisyal na sanggunian. Para sa mahalagang impormasyon, inirerekomenda ang propesyonal na pagsasalin ng tao. Hindi kami mananagot sa anumang hindi pagkakaunawaan o maling interpretasyon na maaaring magmula sa paggamit ng pagsasaling ito.
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Pagtatanggi**:
Ang dokumentong ito ay isinalin gamit ang serbisyo ng AI translation na [Co-op Translator](https://github.com/Azure/co-op-translator). Bagama't nagsusumikap kami para sa katumpakan, pakatandaan na ang awtomatikong pagsasalin ay maaaring maglaman ng mga pagkakamali o hindi pagkakatugma. Ang orihinal na dokumento sa orihinal nitong wika ang dapat ituring na pangunahing sanggunian. Para sa mahahalagang impormasyon, inirerekomenda ang propesyonal na pagsasalin ng tao. Hindi kami mananagot sa anumang maling pagkakaintindi o maling interpretasyon na nagmula sa paggamit ng pagsasaling ito.
<!-- CO-OP TRANSLATOR DISCLAIMER END -->
Loading…
Cancel
Save