36 poin oleh xguru 2024-06-10 | 4 komentar | Bagikan ke WhatsApp
  • Ringkasan dari jawaban orang-orang di thread tersebut

schmookeeg

  • Bagian yang paling disukai dari pekerjaannya sebagai insinyur machine learning saat ini adalah berkolaborasi dengan orang-orang tanpa latar belakang teknis
    • Bahkan orang yang tidak bisa membuka MS Outlook lebih dari 3 dari 5 kali pun punya kedalaman dan wawasan yang luar biasa tentang bidang keahlian mereka sendiri
    • Hal ini sangat merendahkan hati
  • Orang tanpa latar belakang teknis memandang saya seperti penyihir, dan saya memandang mereka seperti pendeta voodoo
    • Saat kami melatih sesuatu yang kami sukai dan membuat prediksi, hasilnya sangat memuaskan bagi kedua belah pihak
  • Sebagian besar pemodelan berkaitan dengan bidang kesehatan
    • Menarik insight dari data lake yang sangat besar berisi klaim, resep, catatan dokter, tanda vital, pencitraan diagnostik, dan sebagainya
    • Fakta bahwa informasi ini bisa diakses dengan sangat mudah juga luar biasa (terlepas dari HIPAA)
  • Realitas pembagian waktu
    • Sekitar 3 jam per minggu habis untuk rapat
    • Sekitar 3 jam digunakan untuk persiapan pekerjaan, menyelesaikan masalah ETL, dan menjalankan query sekali pakai untuk kebutuhan bisnis
    • Sisa waktunya dihabiskan untuk menjelajahi data demi mencari sedikit keunggulan dalam memprediksi pendapatan bernilai jutaan dolar
      • Rasanya seperti mencari Wally dengan matematika
      • Dan adegan tempat Wally itu berukuran sekitar 50TB :D

burnedout_dc4e3

  • Sudah berkecimpung di machine learning sejak pertengahan 2000-an
  • Separuh waktunya dihabiskan untuk menjaga "pipeline data tetap berjalan" dengan merapikan data agar bisa dipakai untuk pelatihan dan penggunaan model
  • Separuh waktu lainnya habis untuk dukungan teknis bagi "ilmuwan AI" yang hampir tidak punya kemampuan coding
    • Mereka menghabiskan waktu dengan copy-paste konten ke berbagai layanan chatbot
      • Pekerjaan utamanya adalah mengajari mereka cara memasang paket Python dan menggunakan Git
    • Tidak ada rencana tentang bagaimana pekerjaan mereka akan diterapkan pada proyek yang sedang dikerjakan
      • Namun mereka bersikeras bahwa model transformer akan menyelesaikan semua masalah pemrosesan data kami
  • Sedang mempertimbangkan berhenti dan tidak mengambil pekerjaan baru sampai siklus hype ini berakhir

tambourineman88

  • Realitasnya berlawanan dengan dugaan saat dulu mempelajari machine learning
    • 95% pekerjaan ini adalah merapikan data, menggabungkan dataset, dan feature engineering
    • Fitting dan pengujian model hanya 5%
  • Balasan #1 untuk komentar ini
    • Sudah begitu dari awal, masih begitu sekarang, dan akan terus begitu, amin
    • Hal penting di level staf/penanggung jawab
      • Penting untuk menjaga "impedansi data" antara fitur produk yang bergantung pada model inferensi dan penangkapan data
      • Tujuannya agar perubahan pada produk atau fitur tidak merusak instrumentasi serta granularitas data yang memasok repositori data dan korpus pelatihan
    • Hal penting pada masalah reinforcement learning (RL)
      • Penting untuk memastikan variabel yang benar telah ditangkap untuk tuple ruang state dan action
      • Setelah itu, yang penting adalah menemukan cara menyesuaikan antarmuka atau model lingkungan untuk umpan balik reward

davedx

  • Menjalankan pip install pytorch
  • Environment rusak
  • Menghabiskan 4 jam untuk memperbaiki environment Python
  • Menjalankan pip install Pillow
  • Muncul error bahwa itu tidak cocok dengan arsitektur CPU MacBook
  • Menghapus semua yang berhubungan dengan Python lalu menginstal ulang dari nol, menghabiskan 4 jam lagi
  • Baru mau menjalankan pip install ..., eh sudah jam pulang kerja!

Xenoamorphous

  • Seorang software developer biasa yang terpaksa harus mengerjakan ML karena kebutuhan
  • Penasaran bagaimana para ahli ML "sungguhan" menangani hasil probabilistik/berbasis gradient descent dan ekspektasi orang
  • Dalam pekerjaan software biasa, sesuatu itu bekerja atau tidak, dan jika tidak bekerja biasanya bisa dijelaskan alasannya dan semoga bisa diperbaiki
  • Tetapi dalam ML, orang bertanya, "Mengapa classifier teks ini tidak mengklasifikasikan teks ini dengan benar?"
    • Dan yang bisa dijawab hanya hal seperti "skornya kurang 0,004 untuk memenuhi threshold" atau "pilihan kata atau urutannya membuatnya tidak lolos"
    • Rasanya itu membuat semua orang tidak puas

angarg12

  • Jabatannya ML engineer, tetapi pekerjaan nyatanya jauh lebih dekat ke software engineering murni
  • Tugas utamanya adalah membangun sistem yang mendukung sistem ML di lingkungan production
    • Seperti yang disebut orang lain, ini terutama mencakup transformasi data, pelatihan model, model serving, dan sebagainya
  • Pekerjaannya juga mencakup membangun alat atau memodifikasi sistem yang ada agar para scientist bisa melakukan pekerjaan mereka
  • Namun dari luar, tampaknya perusahaan penulis cukup tidak biasa
  • Di industri, ekspektasi terhadap ML engineer tampaknya lebih selaras dengan pekerjaan data/applied scientist (misalnya membangun dan menguji model)
    • Ini menimbulkan banyak ambiguitas dalam ekspektasi untuk tiap peran di tiap perusahaan

runban

  • Tukang bersih-bersih bergaji tinggi
    • Dari data kotor, Anda tidak akan mendapat hasil yang benar
    • Sebagai catatan, untuk pekerjaan ini Perl jauh lebih baik daripada Python
  • Pemecah masalah motherboard bergaji tinggi
    • H100 benar-benar panas bahkan dengan pendingin cair
    • Karena tidak ada orang hardware khusus
  • Seperti semua orang, bertarung melawan dependency pihak ketiga yang bertingkah semaunya

primaprashant

  • Sudah bekerja sebagai MLE selama 5 tahun terakhir, dan seperti yang disebut komentar lain, sebagian besar pekerjaannya mirip SWE
  • Tugas harian bervariasi tergantung tahap proyek, tetapi biasanya termasuk salah satu dari berikut ini:
    • Berkolaborasi dengan stakeholder dan TPM, serta mengembangkan hipotesis untuk memecahkan masalah bisnis berprioritas tinggi melalui analisis data
    • Membingkai masalah bisnis sebagai masalah ML, lalu membuat metrik yang sesuai untuk model ML dan masalah bisnisnya
    • Membangun PoC dan prototipe untuk memvalidasi kelayakan teknis fitur dan ide baru
    • Menulis dokumen desain untuk arsitektur dan pengambilan keputusan teknis
    • Bekerja sama dengan tim platform untuk menyiapkan dan memelihara pipeline data sesuai kebutuhan proyek ML baru maupun yang sudah ada
    • Membangun, menerapkan, dan memelihara microservice ML untuk inferensi
    • Menjalankan A/B test dan menulis dokumen desain untuk analisis pasca-pengujian
    • Menyiapkan pipeline untuk retraining model ML

jackspawn

  • Menghabiskan lebih dari 50% waktu untuk backend engineering
    • Karena ML digunakan di dalam API yang lebih besar
  • Bertanggung jawab atas pengalaman end-to-end dari API tersebut
    • Jadi melakukan apa pun yang memberikan nilai terbaik dibanding waktu yang dikeluarkan
    • Dan itu sering kali tidak ada hubungannya sama sekali dengan model ML

mardifoufs

  • Bekerja pada optimasi kode inferensi dan "memprodukkan" model yang sudah dilatih
  • Saat ini bekerja pada pelatihan dan inferensi lokal karena berada di industri yang layanan cloud-nya belum umum digunakan
    • Menarik karena ini bukan LLM, jadi tidak banyak alat siap pakai
    • Banyak hal harus dibuat sendiri
  • Mengerjakan banyak hal, dari evaluasi kualitas data (bagian lokalnya cukup menantang) sampai menggunakan CUDA secara langsung
    • Karena ada library pemrosesan sinyal yang sudah dibangun di atas CUDA dan bisa dimanfaatkan
  • Kadang juga membangun alat internal untuk tim (tim campuran researcher/MLE)
    • Karena bidangnya sangat niche, kami harus membangunnya sendiri untuk memvisualisasikan data dan inferensi
  • Punya kebebasan penuh terkait alat dan desain software internal, sehingga bisa memberi banyak pengaruh di dalam organisasi
  • Salah satu alat yang dibuat secara improvisasi kini akan dimasukkan ke produk andalan mereka

hirako2000

  • Bukan tugas utamanya, tetapi sebagian besar waktu dihabiskan untuk "menyatukan ini-itu"
    • Menyesuaikan open source yang sudah ada
    • Mencari cara mengoptimalkan resource
    • Melatih ulang model pada dataset lain
    • Mencoba menjalankan kode Python yang ditulis asal-asalan
    • Menambahkan file requirements yang hilang
    • Membersihkan data
  • Memikirkan apa saja yang benar-benar bisa diselesaikan secara berguna dengan ML, yang belum dilakukan beberapa tahun lalu
  • Mengecek harga GPU terbaru dan menghitung apakah lebih layak membeli GPU daripada menyewa waktu mahal dari penyedia hosting
  • Membaca paper sampai kepala terasa sakit
    • Menghabiskan waktu membaca abstrak dan menelusuri beberapa diagram di tengah

tenache

  • Mempelajari machine learning dan awalnya direkrut untuk peran itu, tetapi perusahaan berganti arah dan sekarang bekerja pada LLM
  • Sebagian besar waktu dihabiskan untuk hal-hal seperti berikut:
    • Memahami cara kerja berbagai LLM
    • Mencari parameter terbaik
    • Cara melakukan RAG (Retrieval-Augmented Generation)
    • Cara mengintegrasikannya dengan bot lain

trybackprop

  • Dalam minggu kerja biasa, umumnya melakukan hal-hal berikut:
  • 15%: rapat diskusi teknis atau meeting 1:1
    • Biasanya membahas ide, rencana, atau dukungan untuk produk ML
  • 40%: pengembangan ML
    • Pada tahap awal proyek, memahami requirement produk
    • Mendiskusikan dengan tim model atau algoritma ML yang dapat membantu mencapai tujuan produk/bisnis
    • Mengumpulkan dataset yang ada dari analis dan data scientist
    • Membuat pipeline yang menggunakan dataset ini untuk menghasilkan dataset pelatihan dan validasi
    • Sambil menunggu dataset pelatihan/validasi terisi (bisa sampai 2 minggu), mengerjakan proyek lain yang tahap pengembangannya lebih maju atau lebih tertinggal secara paralel
    • Juga mengerjakan model baru (ditulis dengan PyTorch), mengujinya dengan sejumlah kecil data untuk menilai performa offline, dan mengevaluasi apakah hasilnya sesuai harapan
    • Menjalankan beberapa tes manual dengan model untuk mengisi informasi produk guna memeriksa kewajaran model (tanpa eksperimen skala besar, mau tak mau mengandalkan intuisi sendiri dan rekan tim)
    • Setelah dataset pelatihan/validasi terisi, melatih model pada data dalam jumlah besar, memeriksa hasil offline, lalu menyesuaikan model atau mengubah arsitekturnya jika ada masalah
    • Jika hasil offline bagus atau terlihat menjanjikan, model diterapkan ke production untuk eksperimen
    • Pada saat yang sama, mungkin mengubah kode produk/infrastruktur untuk menguji model baru yang dibangun
    • Menjalankan eksperimen dan perlahan meningkatkan traffic hingga alokasinya mencapai 1-5%, lalu membiarkannya berjalan selama beberapa minggu atau sebulan
    • Sementara itu, mengamati hasil dan memantau semua pipeline terkait agar model terlatih dengan semestinya, sehingga hasil eksperimen tidak berubah karena faktor infrastruktur/bug/produk yang tak terduga
    • Jika hasilnya tampak sesuai ekspektasi dan sejalan dengan hipotesis awal, mendiskusikan dengan tim apakah akan dirilis, dan jika diputuskan ya, maka dirilis!
      • (Catatan: pengembangan model mencakup penulisan feature, persiapan dataset, analisis, pembuatan model ML itu sendiri, serta implementasi perubahan pada kode produk/infrastruktur)
  • 20%: pemeliharaan
    • Hanya karena sedang mengembangkan model baru bukan berarti model yang lama diabaikan
    • Dicek setiap hari untuk memastikan performanya tidak menurun atau berubah dengan cara yang tidak terduga
    • Juga memperbaiki pipeline dan membuatnya lebih efisien
  • 15%: membaca paper riset dan mempelajari teknologi
    • Dunia AI/ML berubah cepat, jadi terus membaca paper riset baru dan menguji teknologi baru di rumah untuk tetap mengikuti perkembangan
    • Karena menyenangkan, ini tidak terasa membebani
    • Tidak dianggap sebagai sekadar kewajiban untuk tetap up to date
  • 10%: riset internal
    • Waktu ini dipakai untuk mempelajari lebih jauh produk lain di dalam tim atau perusahaan, serta mencari tahu bagaimana tim kami bisa membantu atau teknik/metode apa yang bisa kami pinjam dari mereka
    • Waktu ini juga dipakai untuk menuliskan insight yang didapat saat meninjau kembali pekerjaan selama 6 bulan/1 tahun terakhir

4 komentar

 
ohyecloudy 2024-06-17

Ungkapan 'orang-orang tanpa latar belakang teknis memandang saya sebagai penyihir, dan saya memandang mereka sebagai dukun voodoo' lucu juga.

 
nutella 2024-06-12

Data... data... sangat relate.

 
halfenif 2024-06-10

Kurang lebih memang persis seperti yang saya bayangkan secara samar.

 
tttttaa 2024-06-10

Menarik sekali!