Data Scientist Learning Path |
di sini.
Kita telah merilis Data Science Curriculum v2.0Daftar Isi
- Apa itu Data Science dan Siapa itu Data Scientist?
- Apa yang dilakukan oleh seorang Data Scientist?
- Apa saja yang harus dikuasai oleh seorang Data Scientist?
- Learning Path Menjadi Data Scientist
- Data Scientist Toolbox
- Daftar Course
- 1. Pemrograman Menggunakan Python
- 2. Analisis dan Visualisasi Data Menggunakan Tableau
- 3. Teknik Visualisasi Data Menggunakan Google Data Studio
- 4. Pengolahan Database Menggunakan SQL
- 5. Probabilitas dan Statistika
- 6. Matematika Untuk Machine Learning
- 7. Data Wrangling
- 8. Teori Sampling
- 9. Machine Learning
- 10. Deep Learning
Apa itu Data Science dan Siapa itu Data Scientist?
Semua orang sedang membicarakan Data Science saat ini. Hal itu wajar sejak rilisnya suatu artikel Harvard Business Review (HBR) yang menobatkan Data Scientist sebagai "The Sexiest Job of the 21st Century" pada tahun 2012 silam. Tidak lama setelah itu pula menjamur berbagai Massive Open Online Course (MOOC), konten artikel, video, podcast, serta pelatihan tentang Data Science.
Lalu, apa itu sebenarnya Data Science? Dan siapakah Data Scientist?
Data Science bisa dikatakan sebagai perpaduan antara ilmu komputer, statistika/matematika, dan domain expert tertentu. Ada suatu lelucon yang bahkan mengilustrasikan seorang Data Scientist sebagai seseorang yang lebih paham statistika lebih baik dari computer scientist dan yang lebih paham computer science daripada seorang statistician. Dalam bukunya, Data Science from Scratch, Joel Grus menitikberatkan Data Scientist sebagai seorang yang mengekstrasi insights dari messy data yang sangat besar saat ini di dunia digital.
Tidak jauh berbeda pula dengan yang didefinisikan juga dalam buku Data Science Handbook karangan John D. Kelleher dan Brendan Tierney yang mengatakan bahwa Data Science merupakan ilmu mencakup seperangkat prinsip, definisi masalah, algoritma, dan proses untuk mengekstraksi non-obvius dan useful patterns dari suatu kumpulan data yang besar.
Meskipun saat ini pada beberapa kasus di industri, boundary seorang dikatakan seorang Data Scientist juga tidak seberapa jelas. Beberapa ada yang mirip dengan jobdesk seorang Machine Learning Engineer seperti membuat suatu model prediksi dan ada pula yang lebih cenderung melakukan analisis dan ekstraksi insights dan membuat laporan.
Masih belum paham definisi di atas? Langsung cek artikel-artikel di bawah ini.
- What Is Data Science, and What Does a Data Scientist Do?
- Introduction: What Is Data Science? (Doing Data Science by Cathy O'Neil, Rachel Schutt)
- What is data science? by Matthew Brett
- What on earth is data science? by Cassie Kozyrkov
- A New Definition of Data Science in Academic Programs by Thu Vu
Apa yang dilakukan oleh seorang Data Scientist?
- Melakukan analisis terhadap data
- Mengekstraksi suatu insight dari data
- Melakukan pemodelan (machine learning/deep learning) terhadap data untuk menemukan pola/pattern
Apa saja yang harus dikuasai seorang Data Scientist?
- Ilmu statistika, stokastik, dan probabilitas
- Ilmu aljabar linier dan multivariate calculus
- Teknik visualisasi data
- Teknik storytelling
- Domain expert tertentu (sesuai dengan case problem)
- Machine learning
- Deep Learning
Learning Path Menjadi Data Scientist
Path untuk menjadi Data Science Expert
Data Scientist Toolbox
- Bahasa pemrograman: Python/R
- Coding environment:
- Visualization Software
- Library
- Visualisasi:
- Dataframe processing:
- Machine Learning:
- Deep Learning framework:
Daftar Course
1. Pemrograman Menggunakan Python
Mengapa ini penting?
Bayangkan bagaimana kita bisa memvisualisasikan data 3-dimensi atau lebih menggunakan software yang telah tersedia di pasaran? Tidak semua software menyediakan fitur ini. Dari situlah programming menjadi penting. Programming berperan sebagai jembatan seorang data scientist untuk berkomunikasi dengan komputer sehingga memungkinkan mereka untuk dapat mengekseskusi berbagai perintah yg diinginkan secara custom. Sebagai contoh seperti di bawah ini
- Melakukan Exploratory Data Analysis (EDA) menggunakan Pandas & Maptlotlib
- Melakukan training model dengan Scikit-learn
Apa saja yang akan dipelajari?
Course ini mempelajari mengenai dasar-dasar pemrograman menggunakan Python untuk pemrosesan data. Skill dasar untuk menulis program menggunakan Python untuk Data Science seperti syntax dasar, operasi matematika dasar, logika, looping, struktur data, dan mengolah database menggunakan Python.
Bagaimana mempelajari ini?
📚 Rekomendasi Textbook
- Python Data Science Handbook
- Automate the Boring Stuff with Python
- Python for Everybody: Exploring Data in Python 3
Rekomendasi Referensi Lain
- Tutorial Python, Kelas Terbuka [Youtube]: Tutorial Python dari dasar sampai advanced
- Tutorial Python, Sekolah Koding [Youtube]: Tutorial Python untuk pemula, membahas materi Python dari cara menginstal Python hingga membuat fungsi
- Python for Everybody, Dr. Charles "Chuck" Russell Severance [Website] [Youtube]: Tutorial Python dari pengenalan hingga aplikasi untuk visualisasi dan pengolahan database
- Pythonic: Belajar Tips dan Tricks Pemrograman Python, Indonesia Belajar [Youtube]: playlist ini sesuai bagi yang pernah belajar Python namun membutuhkan tips dan tricks yang lebih dalam guna meningkatkan skill programming di Python.
Topics
1.1 Python Dasar
Materi
- Memahami syntax dasar
- Operasi matematika
- Looping
1.2 Struktur Data Python
Materi
- Memahami string, list, dictionary, tuple, set
- Integer, float dalam Python
1.3 Menggunakan Python Untuk Akses Database
Materi
- Memahami cara untuk mengakses data txt atau xlsx menggunakan Python
1.4 Visualisasi menggunakan Python
Materi
- Dapat memvisualisasikan data menggunakan matplotlib, searborn, dll
2. Analisis dan Visualisasi Data Menggunakan Tableau
Course ini mempelajari tentang bagaimana cara melakukan visualisasi data menggunakan aplikasi Tableau.
Mengapa ini penting?
Teknik visualisasi akan sangat berguna dalam mendapatkan wawasan/insight dari data seperti pengaplikasian pada:
- Membuat dashboard untuk mengukur product performance
- Melakukan analisa data penjualan produk
Apa saja yang akan dipelajari?
Tableau operations, preparasi data, membuat grafik, dashboards, dan stories, melakukan kalkulasi.
Bagaimana mempelajari ini?
📚 Rekomendasi Textbook
- Communicating Data with Tableau: Designing, Developing, and Delivering Data Visualizations
- Storytelling with Data: A Data Visualization Guide for Business Professionals
Rekomendasi Referensi Lain
Topics
2.1 Pengenalan Tableau
Memahami interface dan operasi-operasi dalam Tableu serta langkah-langkah bekerja menggunakan Tableau.
2.2 Preparasi Data
Memahami bagaimana cara import dan join data.
2.3 Visual Analytics
Memahami fitur-fitur visual analytics seperti filter, sort, group, trend lines dan cara membuat dashboards.
2.4 Kalkulasi dalam Tableu
Memahami bagaimana cara melakukan kalkulasi dalam Tableau.
3. Teknik Visualisasi Data Menggunakan Google Data Studio
Course ini mempelajari tentang bagaimana cara melakukan visualisasi data menggunakan aplikasi Google Data Studio.
Mengapa ini penting?
Teknik visualisasi akan sangat berguna dalam mendapatkan wawasan/insight dari data seperti pengaplikasian pada:
- Membuat dashboard performa KPI tahunan
- Membuat dashboard penjualan produk di sebuah toko
Apa saja yang akan dipelajari?
Data Studio navigation, membuat reports, and calculated fields.
Bagaimana mempelajari ini?
📚 Rekomendasi Textbook
Rekomendasi Referensi Lain
Topics
3.1 Data Studio Dasar
Memahami cara untuk mengoperasikan Google Data Studio dan membuat report sederhana.
3.2 Data Studio Advanced
Memahami fitur-fitur advanced dari Google Data Studio seperti filters dan calculated filed.
4. Pengolahan Database Menggunakan SQL
Mengapa ini penting?
Course ini mempelajari tentang database yang umum digunakan dan bagaimana cara melakukan operasi di dalamnya.
- Membuat database untuk menyimpan data di sebuah aplikasi
- Melakukan akses database untuk mengambil sebuah data
Apa saja yang akan dipelajari?
Course ini mempelajari mengenai dasar-dasar SQL untuk pemrosesan data yang berkaitan dengan Data Science. Skill dasar untuk menulis program menggunakan SQL untuk Data Science seperti syntax dasar, operasi dasar, logika, looping, struktur data, dan mengolah database.
Bagaimana mempelajari ini?
📚 Rekomendasi Textbook
Rekomendasi Referensi Lain
Topics
4.1 SQL Data
Memahami bagaimana cara untuk select columns, filter row, melakukan aggregation, sorting dan groupping.
4.2 Story Telling Data
Memahami cara untuk import dan join suatu visualisasi data untuk Business Professionals.
5. Probabilitas dan Statistika
Mengapa ini penting?
Course ini mempelajari tentang teori dari probabilitas dan statistika yang umum digunakan pada bidang data science. Pada pengaplikasiannya di industri course ini digunakan untuk mempelajari karakteristik data, kualitas data, dan hubungan antara variabel data dengan masalah bisnis.
Apa saja yang akan dipelajari?
Secara fundamental materi yang dipelajari adalah: Probability & statistics essentials for data science. dengan rincian subcourse beserta kompetensi dasarnya sebagai berikut.
- Probabilitas: Memahami fundamental probabilitas.
- Statistik Deskriptif: Memahami konsep dasar dari rata-rata, median, modus, standar deviasi, dan variasi.
- Statistik Inferensial: Memahami konsep dasar dari pengujian statistik.
Bagaimana mempelajari ini?
📚 Rekomendasi Textbook
- All of Statistics: A Concise Course in Statistical Inference (Springer Texts in Statistics)
- Practical Statistics for Data Scientists: 50+ Essential Concepts Using R and Python
- Introduction to Probability
- The Elements of Statistical Learning: Data Mining, Inference, and Prediction
Rekomendasi Referensi Lain
- Part 1: Statistics and Probability in Data Science | Data Science 2020
- Part 2: Statistics and Probability in Data Science | Data Science 2020
6. Matematika Untuk Machine Learning
Course ini mempelajari tentang teori matematika yang digunakan pada metode machine learning.
Mengapa ini penting?
- Berguna dalam merancang arsitektur machine learning/deep learning
- Digunakan untuk melakukan perhitungan evaluasi model machine learning
- Optimisasi algoritma machine learning
Apa saja yang akan dipelajari?
Konsep matematika dasar (Linear algebra, Calculus and Vector calculus)
Bagaimana mempelajari ini?
Topics
6.1 Vector and Matrix Operations
Memahami konsep dasar mengoperasikan table of data (suatu Matrix or Vector).
6.2 Linear Algebra
Memahami aplikasi linear algebra dalam Data Science, sebagai contoh Principle Component Analysis (PCA).
6.3 Calculus and Derivatives
Memahami fungsi optimasi (menemukan local minima & maxima).
7. Data Wrangling
Course ini mempelajari tentang proses cleaning data guna untuk memudahkan akses, pemetaan dan analisa.
Mengapa ini penting?
- Membersihkan atau mengubah format data sebelum dianalisa atau ditampilkan agar lebih mudah dimengerti.
Apa saja yang akan dipelajari?
Data Cleaning, Data Transformation dan Data Enrichment.
Bagaimana mempelajari ini?
📚 Rekomendasi Textbook
- Data Wrangling with Python: Tips and Tools to Make Your Life Easier
- Data Wrangling with Python: Creating actionable data from raw sources
Rekomendasi Referensi Lain
Topics
7.1 Data Wrangling dengan Python
Melibatkan pemrosesan data dalam berbagai macam format seperti - merging, grouping dan councatenating.
7.2 Python Data Structure
Open source python library providing high-performance.
8. Teori Sampling
Course ini mempelajari cara untuk mengambil sebagian data dari populasi, sehingga dalam melakukan pengujian tidak memakan waktu yang lama untuk mengetahui bagaimana cara melakukannya.
Mengapa ini penting?
- Penggunaan training dan testing untuk pemodelan.
- Sering di gunakan di bidang akademisi untuk mengetahui sampling dalam pengujian.
- Industri yang membutuhkan pengembangan penelitian secara berkala juga banyak di butuhkan seperti sektor pertanian, manufaktur, pertambangan, kesehatan dsb.
Apa saja yang akan dipelajari?
Fundamental, Probability, dan Non-Probability Sampling.
Bagaimana mempelajari ini?
📚 Rekomendasi Textbook
- Advanced Sampling Theory with Applications *download
- Advanced sampling theory with applications: How Michael “selected” Amy. 2 Vols
Rekomendasi Referensi Lain
Topics
8.1 Probability Sampling
Setiap elemen populasi memiliki probabilitas yang diketahui dan bukan nol untuk berada dalam sampel.
8.2 Non-Probability Sampling
Beberapa elemen populasi mungkin tidak dipilih dan ada risiko besar sampel tidak mewakili populasi secara keseluruhan.
9. Machine Learning
Course ini mempelajari jenis-jenis algoritma machine learning dan aplikasinya, serta bagaimana membuat dan mengembangkan model.
Mengapa ini penting?
- Regression untuk memprediksi data kontinu seperti harga rumah.
- Classification untuk memisahkan data menurut kelasnya seperti klasifikasi spesies bunga atau churn prediction.
- Clustering untuk membuat segmentasi berdasarkan karakteristik data seperti customer segmentation.
- Metode-metode seperti cross validation, parameter tuning, feature engineering dapat berguna untuk meningkatkan performa model.
Apa saja yang akan dipelajari?
Jenis-jenis model machine learning beserta keunggulannya dan teknik-teknik untuk meningkatkan performa model.
Bagaimana mempelajari ini?
📚 Rekomendasi Textbook
Rekomendasi Referensi Lain
- Introduction to Machine Learning | Kaggle
- Intermediate to Machine Learning | Kaggle
- Feature Engineering | Kaggle
Topics
9.1 Supervised Learning
Memahami model regression dan model classification dan cara melakukan training dan testing pada model.
9.2 Unsupervised Learning
Memahami model clustering dan cara melakukan evaluasi pada model.
9.3 Model Evaluation
Memahami berbagai macam evaluasi model dan teknik untuk meningkatkan performa model.
10. Deep Learning
Course ini mempelajari tentang dasar-dasar modul yang menyusun deep learning serta mengapa deep learning sangat powerful dibandingkan machine learning biasa serta pada kasus-kasus apa deep learning tepat untuk diaplikasikan
Mengapa ini penting?
- Ekstraksi fitur pada data non-linear
- Deteksi dan rekognisi suatu informasi visual
- Rekognisi speech
- Analisis sentimen
Apa saja yang akan dipelajari?
Konsep Deep Learning sebagai susunan modul-modul, operasi pada Neural Networks, cara training Deep Learning, modul-modul state-of-the-art dari Deep Learning seperti Convolutional Neural Networks (CNNs), Recurrent Neural Networks (RNNs), dll.
Bagaimana mempelajari ini?
📚 Rekomendasi Textbook
- Deep Learning - Ian Goodfellow
- A Tour of Machine Learning Algorithms
- Deep Learning with Pytorch [pdf]
- Neural Networks and Deep Learning: A Textbook
Rekomendasi Referensi Lain
- Colah's Blog
- PyImageSearch
- Paperspace Computer Vision Articles
- PyImageSearch Machine Learning
- Paperspace NLP Articles
- Neural Networks for Machine Learning
- Deep Learning Lecture - Nando de Frietas
- Deep Learning Lectures - DeepMind
- Optimization for Machine Learning - Deepmind
- DeepMind x UCL | Deep Learning Lecture Series 2020
- Convolutional Neural Networks for Image Recognition
- Sequences and Recurrent Networks
Topics
10.1 Neural Networks
Memahami modul dan konsep formalisasi pada Neural Networks.
10.2 Optimization dan Backpropagation
Memahami cara kerja backpropagation dan memahami berbagai macam metode optimasi untuk melatih arsitektur Deep Learning.
10.3 Convolutional Neural Networks
Memahami hyperparameters CNNs seperti stride, padding, kernel size, serta jenis-jenis konvolusi dan aplikasinya.
10.4 Sequence Models
Memahami berbagai macam sequence models seperti RNNs, Gated Recurrent Units (GRUs), Transformer dan aplikasinya.