4 poin oleh GN⁺ 2025-03-22 | 1 komentar | Bagikan ke WhatsApp
  • Pen & Paper adalah kumpulan soal latihan dengan penjelasan rinci yang dibuat agar pembaca yang sudah mengenal teori dan konsep machine learning dapat memperdalam pemahamannya lewat pemecahan soal
  • Jika penjelasan solusi pada soal latihan di buku ajar dan kuliah terlalu singkat atau tidak ada, kesempatan belajar mudah berubah menjadi frustrasi, sehingga buku ini menargetkan tingkat detail penjelasan yang memungkinkan pembaca mengikuti proses penyelesaiannya
  • Coding dan simulasi juga penting, tetapi sebagian besar soal disusun agar dapat diselesaikan dengan pena dan kertas, dengan fokus pada penguatan cara berpikir matematis
  • Soal-soalnya terutama merupakan gabungan dari soal kuliah “Unsupervised Machine Learning” di University of Helsinki dan “Probabilistic Modelling and Reasoning” di University of Edinburgh, dengan cakupan yang berfokus pada metode unsupervised, inferensi, dan pembelajaran
  • Michael Gutmann berharap kumpulan soal ini terus berkembang, serta membuka sumber LaTeX, pelaporan kesalahan berbasis GitHub issue, dan kontak langsung untuk kontribusi yang lebih besar

Buku untuk memperdalam pemahaman lewat soal latihan

  • Seperti ungkapan “use it or lose it”, keterampilan akan berkarat jika tidak dilatih, dan saat mempelajari keterampilan baru pun diperlukan penerapan berulang
  • Banyak buku ajar dan kuliah menyediakan soal latihan, tetapi jika penjelasannya terlalu singkat atau tidak ada, pemecahan soal mudah menjadi penyebab frustrasi sehingga cenderung dilewati
  • Buku ini adalah kumpulan soal latihan dengan solusi yang dijelaskan secara rinci
    • Tingkat detailnya ditujukan agar pembaca dapat mengikuti solusi dan memahami teknik yang digunakan
    • Tidak dimaksudkan untuk menggantikan buku ajar atau kuliah machine learning
    • Ditujukan untuk situasi ketika pembaca sudah melihat teori dan konsep terkait, lalu menguatkan pemahaman melalui pemecahan soal

Susunan yang berpusat pada pena dan kertas

  • Dalam machine learning, coding dan simulasi komputer sangat penting
  • Namun, sebagian besar soal dalam buku ini dapat diselesaikan dengan pena dan kertas
    • Susunan yang berpusat pada pena dan kertas mengurangi panjang pembahasan dan menyederhanakan penjelasan
    • Ini membantu memperkuat kemampuan matematis
  • Jika digunakan bersama praktik komputer, pemahaman konsep dapat menjadi lebih mendalam

Topik dan cakupan yang dibahas

  • Soal-soalnya terutama merupakan gabungan materi yang dikembangkan dari dua kuliah
    • University of Helsinki: “Unsupervised Machine Learning
    • University of Edinburgh: “Probabilistic Modelling and Reasoning
  • Tidak mencakup seluruh bidang machine learning
  • Fokusnya sangat kuat pada metode unsupervised, inferensi, dan pembelajaran
  • Dalam isi yang disediakan, contoh dari Bab 1 Linear Algebra mencakup soal ortogonalisasi Gram–Schmidt
    • Memverifikasi melalui inner product bahwa u1 dan u2 yang dibentuk dari dua vektor saling ortogonal
    • Jika a2 adalah kelipatan dari a1, maka u2 menjadi vektor nol dalam proses ortogonalisasi
    • Menunjukkan bahwa sembarang kombinasi linear dari a1 dan a2 yang saling bebas linear dapat dituliskan kembali dengan u1 dan u2

Cara perluasan dan kontribusi

  • Kumpulan soal ini ditujukan untuk terus berkembang seiring waktu melalui penambahan soal baru
  • Kode sumber LaTeX dibuka di repositori GitHub
  • Kesalahan atau typo dapat dilaporkan melalui GitHub issue
  • Untuk kontribusi yang lebih besar, tersedia arahan untuk menghubungi langsung

1 komentar

 
GN⁺ 2025-03-22
Komentar Hacker News
  • Terlihat keren, tetapi hal yang paling membuat frustrasi saat belajar machine learning adalah, sedalam apa pun menggali teori, hubungan dengan pilihan praktisnya sering tidak terlihat jelas.
    Misalnya, saya ingin tahu bagaimana teori membantu keputusan seperti jumlah neuron dalam satu layer, jumlah layer, fungsi aktivasi, apakah memakai neural network atau teknik lain.

    • Mungkin membantu: https://github.com/google-research/tuning_playbook
    • Melihat hampir setiap makalah machine learning menyertakan eksperimen ablasi berskala besar untuk hal-hal seperti jumlah neuron per layer, jumlah layer, dan fungsi aktivasi, itu lebih merupakan tanda bahwa sebenarnya tidak ada yang benar-benar tahu pasti bagian itu.
      Bidang ini pada dasarnya mencoba ini-itu secara acak, mencari yang bekerja, saling meniru ide, lalu terbentuklah panduan yang samar.
      Kalau menginginkan sesuatu yang logis dan dapat dijelaskan, ini hampir bidang terburuk; sebagian besar pekerjaannya adalah memberi label pada dataset, membayar biaya komputasi, dan berharap hasilnya bagus.
    • Sebagian besar hal tidak bisa dipelajari hanya dari teori murni atau praktik murni, dan hal yang sama berlaku untuk hampir semua pekerjaan modern.
      Dalam machine learning, tidak semuanya bisa diturunkan dari teori. Kalau bisa, kita tidak akan begitu terkejut oleh performa large language model yang benar-benar besar.
      Pada saat yang sama, jika tidak bisa menalar matematika terkait, akan sulit memahami mengapa sesuatu tidak berhasil atau pilihan apa saja yang ada. Ada banyak sekali faktor yang saling terkait: arsitektur, fungsi loss, fungsi aktivasi, teknik optimisasi, hyperparameter, waktu dan sumber daya pelatihan, dan sebagainya.
    • Saat ini praktik machine learning jauh berada di depan teori. Kalaupun teori mengejar, jawaban atas pertanyaan ini kemungkinan besar bergantung pada sifat proses yang menghasilkan data, sehingga pada akhirnya harus dijawab secara empiris.
      Menurut saya nilai teori adalah memberi kerangka konseptual umum. Mirip seperti teori asimtotik algoritma saat ini tidak bisa langsung mengatakan algoritma mana yang harus dipakai, tetapi tetap memberi arah besar.
    • Dari sudut pandang pemula, inti yang saya dapat dari kursus Coursera Andrew Ng, terutama bagian neural network, adalah bahwa memasukkan neuron dan layer lebih banyak daripada “jumlah minimum yang diperlukan” biasanya tidak apa-apa.
      Dengan mempertimbangkan regularisasi yang masuk akal, risiko overfitting tidak besar, tetapi sayangnya tidak ada aturan untuk nilai minimum itu, jadi perlu trial and error. Sebaliknya, membesarkan network secara membabi buta tidak efisien dan akhirnya lambat.
      Untuk output layer, fungsi aktivasi umumnya ditentukan oleh masalah yang ingin diselesaikan; untuk layer internal, biasanya mulai dari ReLU lalu mencoba variasi umum berdasarkan heuristik yang sesuai dengan masalah.
      Tentu saja, menjadikan model lain yang berhasil pada masalah serupa sebagai titik awal juga perlu dipertimbangkan.
  • Sangat rapi. Mengingatkan saya pada latihan AI By Hand dari Tom Yeh: https://www.byhand.ai/

    • Saya memang menantikan hal seperti ini dan sangat berterima kasih. Makalah di tulisan asal juga bagus, tetapi rasanya hanya terdengar jelas bagi orang yang sudah tahu materinya.
      Materinya sendiri sangat bagus untuk orang yang memang sudah memahami topik itu.
  • Terlihat rapi. Hanya saja, karena jawaban langsung ada setelah soal, sayang sekali kita jadi sulit untuk tidak membaca jawaban soal berikutnya sebelum sempat memikirkannya sendiri.

  • Sangat bagus. Saya bekerja di bidang machine learning, tetapi masih punya impostor syndrome soal dasar matematika, terutama aljabar linear dan operasi matriks/tensor.
    Saya penasaran kalau ada lebih banyak kumpulan soal yang berfokus pada kompetensi dasar deep learning. Cara yang paling cocok untuk saya adalah mengerjakannya sendiri sedikit demi sedikit setiap hari, dan belajar dari sudut pandang beberapa pengajar.

  • Berapa banyak praktisi industri yang sekarang membuat machine learning yang “berguna” yang bisa menyelesaikan sebagian soal ini? Dan apakah memang seharusnya begitu?

    • Menurut saya tidak. Mereka tidak harus bisa, dan tidak perlu.
      Latihan seperti ini berguna untuk kematangan matematis yang mengarah pada intuisi yang dibutuhkan untuk mengembangkan algoritma baru atau optimisasi level rendah.
      Untuk kasus umum melatih, menerapkan, dan memakai algoritma machine learning yang sudah ada, ini tidak diperlukan.
    • Kabar baiknya, kalau tidak tertarik memperluas teknik mutakhir dan hanya ingin melakukan panggilan API, tidak perlu mempelajari machine learning secara mendalam.
    • Tergantung bagaimana mendefinisikan “praktisi machine learning”, “membuat”, dan “machine learning”. Kalau melihat bagian optimisasi, ada orang-orang yang memahaminya dengan sangat baik sehingga mereka bisa cepat mengiterasi fungsi loss yang mungkin, cara pembaruan parameter, dan titik-titik yang bisa gagal di kepala mereka.
    • Sebagian orang melihat belajar sebagai pekerjaan membosankan dan hanya ingin mempelajari minimum yang diperlukan untuk menyelesaikan pekerjaan. Sebagian lain mendapatkan wawasan dan kesenangan dari belajar, serta menikmati memecahkan soal dan membaca materi.
      Kedua pendekatan bisa berkontribusi dan membawa kesuksesan, tetapi caranya berbeda.
    • Saya penasaran hal yang sama. Saya sudah beberapa tahun bekerja sebagai machine learning engineer dan punya beberapa gelar di bidang ini.
      Setelah menelusuri dokumennya, hampir semuanya masih saya kenali, tetapi kalau ditanya tanpa konteks, sepertinya banyak topik tidak akan langsung terpikir. Mungkin dulu saya bisa.
      Saya penasaran sejauh mana orang lain mengingat hal-hal seperti ini. Entah saya memang penipu yang dari awal tidak pandai matematika, atau memang wajar melupakannya seiring waktu kalau tidak dipakai secara rutin.
  • Indah karena juga menyertakan jawabannya. Saya tertarik kalau ada lebih banyak latihan kertas dan pena seperti ini untuk topik lain.

    • Saya tidak tahu topik lain apa yang dimaksud, tetapi “1000 exercises in probability” saja akan membuat Anda sibuk cukup lama. PDF-nya bisa ditemukan online.
      Untuk puzzle lain yang berorientasi matematika, lihat “The colossal book of short puzzles and problems” dan “The art and craft of problem solving”.
  • Pernah dibahas sebelumnya: Pen and paper exercises in machine learning (2021) - https://news.ycombinator.com/item?id=31913057 - Juni 2022, 55 komentar

  • Lucu bagaimana para matematikawan selalu mencoba menyelipkan aljabar linear dan teori matriks ke machine learning. Kalau tidak tahu, orang bisa mengira akademialah yang menciptakan large language model dan mereka adalah pakar yang harus dimintai nasihat.
    Justru menurut saya akademia dan para teoretikus menghambat machine learning, dan karena memandang terlalu rendah teknik komputasi, mereka memaksa beberapa generasi mahasiswa pascasarjana membuat pembuktian simbolik seperti contoh ini.

    • Kalau ingin berkontribusi pada machine learning, bukan sekadar memakai teknik yang sudah ada, kemampuan matematika adalah faktor pembatas terbesar.
      Siapa yang berkontribusi tanpa mahir aljabar linear?
      Dan saya juga heran mengapa seluruh bidang ini diringkas menjadi large language model.
    • Sudut pandang yang menarik. Bisa merekomendasikan materi yang memprioritaskan teknik komputasi daripada pembuktian simbolik?
    • Menarik. Bisa berbagi satu contoh seperti itu?
  • Bukankah arXiv adalah tempat untuk makalah tingkat riset? Saya terkejut materi seperti ini diunggah ke sana.