Tujuan:
· Memahami konsep sains data dan kemampuannya
· Memahami konsep mesin pembelajaran dan jenis-jenisnya
· Mengetahui dan mampu menggunakan package dalam mesin pembelajaran
· Mampu membuat algoritma regresi sederhana
· Mampu membuat algoritma pengelompokkan sederhana
A. Sains Data
Ilmu data adalah istilah yang relatif baru. William S. Cleveland menciptakan
istilah pada tahun 2001 sebagai bagian dari makalah berjudul "Ilmu Data: Rencana
Aksi untuk Memperluas Bidang Teknis Statistik." Tidak sampai setahun kemudian
Dewan Internasional untuk Ilmu Pengetahuan benar-benar mengakui ilmu data dan
membuat komite untuk itu. Universitas Columbia mulai bertindak pada tahun 2003
dengan memulai publikasi Journal of Data Science.
Namun, dasar matematika di balik sains data berusia berabad-abad karena sains
data pada dasarnya adalah metode untuk melihat dan menganalisis statistik dan
probabilitas. Penggunaan penting pertama statistik sebagai sebuah istilah datang pada
1749, tetapi statistik tentu jauh lebih tua dari itu. Orang-orang telah menggunakan
statistik untuk mengenali pola selama ribuan tahun. Sebagai contoh, sejarawan
Thucydides (dalam History of the Peloponnesian War) menggambarkan bagaimana
orang Athena menghitung ketinggian dinding Platea pada abad kelima SM dengan
menghitung batu bata di bagian dinding yang belum diplester. Karena penghitungan
itu harus akurat, orang Athena mengambil hitungan rata-rata oleh beberapa tentara.
Seperti kebanyakan perdagangan kompleks saat ini, ilmuwan data membutuhkan
pengetahuan berbagai keterampilan untuk melakukan tugas yang diperlukan. Bahkan,
begitu banyak keterampilan yang berbeda diperlukan sehingga para ilmuwan data
sering bekerja dalam tim. Seseorang yang pandai mengumpulkan data mungkin
bekerja sama dengan seorang analis dan seseorang yang berbakat dalam menyajikan
informasi. Akan sulit untuk menemukan satu orang dengan semua keterampilan yang
diperlukan. Dengan mengingat hal ini, daftar berikut ini menjelaskan bidang di mana
seorang ilmuwan data dapat unggul (dengan lebih banyak kompetensi menjadi lebih
baik):
· Pengambilan data: Tidak masalah apa pun keterampilan matematika yang
Anda miliki jika Anda tidak dapat memperoleh data untuk dianalisis sejak
awal. Tindakan menangkap data dimulai dengan mengelola sumber data
menggunakan keterampilan manajemen basis data. Namun, data mentah tidak
terlalu berguna dalam banyak situasi - Anda juga harus memahami domain
data sehingga Anda dapat melihat data dan mulai merumuskan berbagai
pertanyaan untuk ditanyakan. Terakhir, Anda harus memiliki keterampilan
pemodelan data sehingga Anda memahami bagaimana data terhubung dan
apakah data terstruktur.
· Analisis: Setelah Anda memiliki data untuk dikerjakan dan memahami
kompleksitas data itu, Anda dapat mulai melakukan analisis terhadapnya.
Anda melakukan beberapa analisis menggunakan keterampilan alat statistik
dasar, seperti halnya yang dipelajari setiap orang di perguruan tinggi. Namun,
penggunaan trik dan algoritme matematika khusus dapat membuat pola dalam
data lebih jelas atau membantu Anda menarik kesimpulan yang tidak dapat
Anda gambar dengan meninjau data saja.
· Presentasi: Kebanyakan orang tidak memahami angka dengan baik. Mereka
tidak bisa melihat pola yang dilihat oleh ilmuwan data. Penting untuk
memberikan presentasi grafis dari pola-pola ini untuk membantu orang lain
memvisualisasikan apa arti angka-angka dan bagaimana menerapkannya
dengan cara yang bermakna. Lebih penting lagi, presentasi harus
menceritakan kisah tertentu sehingga dampak data tidak hilang.
B. Mesin Pembelajaran
Pembelajaran mesin adalah tentang mengekstraksi pengetahuan dari data. Ini
adalah bidang penelitian di persimpangan statistik, kecerdasan buatan, dan ilmu
komputer dan juga dikenal sebagai analitik prediktif atau pembelajaran statistik.
Penerapan metode pembelajaran mesin telah dalam beberapa tahun terakhir menjadi
bagian dalam kehidupan sehari-hari. Dari rekomendasi otomatis film mana yang akan
ditonton, makanan apa yang dipesan atau produk mana yang harus dibeli, hingga
radio online hasil personalisasi dan mengenali teman-teman Anda di foto Anda,
banyak situs web dan perangkat modern memiliki algoritma pembelajaran mesin pada
intinya. Ketika Anda melihat situs web yang kompleks seperti Facebook, Amazon,
atau Netflix, sangat mungkin bahwa setiap bagian situs berisi beberapa model
pembelajaran mesin.
Pada waktu awal aplikasi "cerdas", banyak sistem menggunakan aturan
handcoded keputusan "if" dan "else" untuk memproses data atau menyesuaikan input
pengguna. Pikirkan filter spam yang tugasnya memindahkan pesan email masuk yang
sesuai ke folder spam. Anda dapat membuat daftar hitam kata-kata yang akan
menghasilkan email yang ditandai sebagai spam. Ini akan menjadi contoh
penggunaan sistem aturan pakar yang dirancang untuk merancang aplikasi "cerdas".
Membuat aturan keputusan secara manual layak dilakukan untuk beberapa aplikasi,
terutama yang di mana manusia memiliki pemahaman yang baik tentang proses untuk
memodelkan. Namun, menggunakan aturan handcoded untuk membuat keputusan
memiliki dua kelemahan utama:
· Logika yang diperlukan untuk membuat keputusan adalah spesifik untuk satu
domain dan tugas. Mengubah tugas sedikit saja mungkin memerlukan
penulisan ulang seluruh sistem.
· Merancang aturan membutuhkan pemahaman yang mendalam tentang
bagaimana keputusan harus dibuat oleh seorang ahli.
Salah satu contoh kegagalan pendekatan handcoded ini adalah mendeteksi wajah
dalam gambar. Saat ini, setiap smartphone dapat mendeteksi wajah dalam sebuah
gambar. Namun, deteksi wajah adalah masalah yang belum terpecahkan hingga tahun
2001. Masalah utamanya adalah cara piksel (yang membentuk gambar di komputer)
"dirasakan" oleh komputer sangat berbeda dengan cara manusia memandang wajah. .
Perbedaan dalam representasi ini membuat manusia pada dasarnya mustahil untuk
membuat seperangkat aturan yang baik untuk menggambarkan apa yang membentuk
wajah dalam gambar digital. Namun, dengan menggunakan pembelajaran mesin,
hanya menghadirkan sebuah program dengan koleksi besar gambar wajah sudah
cukup untuk algoritma untuk menentukan karakteristik apa yang diperlukan untuk
mengidentifikasi wajah.
3. Pandas
Panda adalah perpustakaan Python untuk perselisihan dan analisis data.
Pandas dibangun di sekitar struktur data yang disebut DataFrame yang
dimodelkan setelah DataFrame R. Sederhananya, panda DataFrame adalah
sebuah tabel, mirip dengan lembar kerja Excel. Panda menyediakan beragam
metode untuk memodifikasi dan mengoperasikan tabel. Berbeda dengan
NumPy, yang mengharuskan semua entri dalam array memiliki tipe yang
sama, panda memungkinkan setiap kolom untuk memiliki tipe yang terpisah
(misalnya, bilangan bulat, tanggal, floating-point numbers, dan string).
4. Matplotlib
Matplotlib adalah perpustakaan perencanakan ilmiah utama di Python.
Matplotlib menyediakan fungsi untuk membuat visualisasi berkualitas
publikasi seperti diagram garis, histogram, plot sebar, dan sebagainya.
Memvisualisasikan data Anda dan berbagai aspek analisis Anda dapat
memberi Anda wawasan penting dan matplotlib akan digunakan untuk semua
visualisasi. Anda dapat menampilkan angka langsung di browser dengan
menggunakan% matplotlib notebook dan% inline perintah matplotlib.
Direkomendasikan untuk menggunakan% matplotlib notebook, yang
menyajikan lingkungan interaktif. Sebagai contoh, kode dibawag ini
menghasilkan plot seperti pada gambar.
Plot garis sederhana dari fungsi sinus menggunakan matplotlib
Dalam model regresi linear terdapat variabel tidak bebas (y) yang akan diprediksi dan
variabel bebas (x1, x2, dst). Variabel tidak bebas Y merupakan fungsi dari variable
bebas x1, x2, dst. Model regresi paling sederhana itu sendiri adalah :
y = β₀ + β₁x₁ + ℇ ,
dimana :
y = variabel yang akan diprediksi
x = variabel bebas
β₁ = koefisien kemiringan
β₀ = konstanta/nilai minimum
ℇ = estimasi eror
2. Install Package
Sebelum melakukan kodingan terhadap aplikasi linear sederhana, ada
beberapa package yang perlu diinstall. Cara untuk menginstall package-package
pada IDE Pycharm antara lain :
• Pilih File > Other Settings > Settings for New Project/Preferences for New
Projects.
• Pilih Project Interpreter > Klik “+”
• Ketik nama package yang ingin di download
Pemilihan jumlah kelompok untuk membagi data, atau disebut ‘K’ dilakukan
dengan membandingkan jumlah K dengan standar error yang muncul. titik
dimana nilai standar error tidak lagi menurun drastis dapat menjadi salah satu
metode pendekatan untuk menentukan nilai K atau jumlah kelompok paling
optimal.