Ilmuwan data vs insinyur pembelajaran mesin

66

Apa perbedaan, jika ada, antara "ilmuwan data" dan "insinyur pembelajaran mesin"?

Selama setahun terakhir atau lebih "insinyur pembelajaran mesin" telah mulai muncul banyak dalam posting pekerjaan. Ini terutama terlihat di San Francisco, yang bisa dibilang dari mana istilah "ilmuwan data" berasal. Pada satu titik "ilmuwan data" menyalip "ahli statistik", dan saya bertanya-tanya apakah hal yang sama sekarang perlahan mulai terjadi pada "ilmuwan data".

Nasihat karir terdaftar sebagai off-topic di situs ini, tetapi saya melihat pertanyaan saya sebagai sangat relevan karena saya bertanya tentang definisi; Saya tidak bertanya tentang rekomendasi yang diberikan lintasan karier saya sendiri atau keadaan pribadi seperti pertanyaan di luar topik lainnya.

Pertanyaan ini sesuai topik karena suatu hari nanti mungkin memiliki implikasi yang signifikan bagi banyak pengguna situs ini. Bahkan, situs pertukaran tumpukan ini mungkin tidak ada jika evolusi "ahli statistik" vs "ilmuwan data" tidak terjadi. Dalam hal ini, ini adalah pertanyaan yang agak relevan dan berpotensi eksistensial.

Ryan Zotti
sumber
2
Data scientistKedengarannya seperti sebutan dengan sedikit kejelasan tentang apa pekerjaan yang sebenarnya akan, sementara machine learning engineerlebih spesifik. Dalam kasus pertama, perusahaan Anda akan memberi Anda target dan Anda perlu mencari tahu pendekatan apa (pembelajaran mesin, pemrosesan gambar, jaringan saraf, logika fuzzy, dll) yang akan Anda gunakan. Dalam kasus kedua, perusahaan Anda telah mempersempit pendekatan apa yang harus digunakan.
gurvinder372
Terkait: ilmu data vs penelitian operasi . Juga, seorang ilmuwan adalah sesuatu yang berbeda dari seorang insinyur . Sayangnya, industri tampaknya tidak peduli dengan ini.
Kadal diskrit
1
Seperti orang lain tunjukkan, seorang insinyur ML hanyalah seseorang yang menempatkan model ML ke dalam produksi. Dia tidak diharapkan untuk memahami secara mendalam model prediktif aktual dan matematika yang mendasarinya, namun mereka harus menguasai alat perangkat lunak yang membuat model ini dapat digunakan. Seorang Ilmuwan Data diharapkan memiliki pemahaman mendalam tentang statistik / matematika dan ML / AI, dan sering kali adalah orang yang menciptakan alat yang digunakan oleh para insinyur ML. Jadi seorang insinyur ML pada dasarnya lebih dekat dengan insinyur perangkat lunak khusus dan DS lebih dekat dengan ahli statistik komputasi.
Digio

Jawaban:

55

Pertanyaan bagus. Sebenarnya ada banyak kebingungan tentang hal ini, terutama karena keduanya merupakan pekerjaan yang cukup baru. Tetapi jika kita fokus pada semantik, makna sebenarnya dari pekerjaan menjadi jelas.

Sebelumnya lebih baik membandingkan apel dengan apel, berbicara tentang satu subjek, Data. Machine Learning dan sub-genre-nya (Deep Learning, dll.) Hanyalah salah satu aspek dari Dunia Data, bersama dengan teori statistik, akuisisi data (DAQ), pemrosesan (yang dapat didorong pembelajaran mesin), interpretasi hasil, dll.

Jadi, untuk penjelasan saya, saya akan memperluas peran Machine Learning Engineer ke salah satu Data Engineer.

Ilmu pengetahuan adalah tentang percobaan, percobaan dan kegagalan, pembangunan teori, pemahaman fenomenologis. Rekayasa adalah tentang mengerjakan apa yang sudah diketahui sains, menyempurnakannya dan membawanya ke "dunia nyata".

Pikirkan tentang proxy: apa perbedaan antara ilmuwan nuklir dan insinyur nuklir?

Ilmuwan nuklir adalah orang yang mengetahui ilmu di balik atom, interaksi di antara mereka, orang yang menulis resep yang memungkinkan untuk mendapatkan energi dari atom.

Insinyur nuklir adalah orang yang ditugasi mengambil resep ilmuwan, dan membawanya ke dunia nyata. Jadi pengetahuan tentang fisika atom sangat terbatas, tetapi dia juga tahu tentang bahan, bangunan, ekonomi, dan apa pun yang berguna untuk membangun pembangkit nuklir yang tepat.

Kembali ke dunia Data, di sini contoh lain: orang-orang yang mengembangkan Convolutional Neural Networks (Yann LeCun) adalah Ilmuwan Data, orang yang menyebarkan model untuk mengenali wajah dalam gambar adalah Machine Learning Engineer. Orang yang bertanggung jawab atas seluruh proses, dari akuisisi data hingga pendaftaran gambar .JPG, adalah seorang Insinyur Data.

Jadi, pada dasarnya, 90% dari Data Scientist saat ini sebenarnya adalah Insinyur Data atau Engine Learning Engineers, dan 90% dari posisi dibuka karena Data Scientist benar-benar membutuhkan Insinyur. Pemeriksaan yang mudah: dalam wawancara, Anda akan ditanya tentang berapa banyak model ML yang Anda gunakan dalam produksi, bukan pada berapa banyak makalah tentang metode baru yang Anda terbitkan.

Sebaliknya, ketika Anda melihat mengumumkan tentang "Insinyur Pembelajaran Mesin", itu berarti bahwa perekrut sangat menyadari perbedaannya, dan mereka benar-benar membutuhkan seseorang yang dapat membuat beberapa model dalam produksi.

Vincenzo Lavorini
sumber
Saya tidak pernah memikirkan ilmuwan nuklir vs. insinyur. Saya pikir ini adalah jawaban yang menyeluruh. Ini sesuai dengan pengalaman saya, ketika saya melakukan analisis itu seperti jas lab putih (jupyter dan grafik cantik). Ketika saya "membuat tangan saya kotor" dengan pekerjaan produksi rekayasa (etl & wadah webapp), saya terus-menerus menemukan kasus tepi aneh, bug, dan bau kode yang buruk.
Tony
Bukankah Yann LeCun seorang Ilmuwan Komputer? Dan seorang Ilmuwan Data akan menjadi seseorang yang menggunakan algoritma dan teknik komputer yang dibuat sebelumnya (ditemukan oleh Ilmuwan Komputer seperti Yann LeCun) untuk melakukan analisis data secara ilmiah? Dengan cara yang sama seperti ilmuwan lain memanfaatkan komputer dalam pekerjaan mereka? Jadi memperoleh data, membersihkannya, menggabungkan teknik analisis yang berbeda (merencanakan, mencocokkan pola, model ML, dll.) Bersama-sama untuk mempelajari kebenaran tersembunyi dalam data?
Didier A.
YLC, memang seorang Ilmuwan Komputer, tetapi ia berspesialisasi dalam Data. CS telah menjadi bidang yang terlalu luas, yang darinya semua definisi baru (seperti DS) dikeluarkan. Dan menggunakan CS menjadi tidak benar-benar diskriminatif. Seperti appellative "Physicist" beberapa ratus tahun yang lalu: hari ini kata itu sebenarnya tidak mendefinisikan pekerjaan seseorang, kecuali Anda menentukannya dengan lebih baik (mis. Partikel P., Solid State P., dll.). Tapi bagaimanapun, seorang Scientist (CS, DS, -S) bukanlah seseorang yang membatasi dirinya untuk menggunakan penemuan orang lain. Sebaliknya, tugasnya adalah untuk memahami, dan dengan ini berarti, membuat penemuan.
Vincenzo Lavorini
Bisakah Anda menjawab pertanyaan ini berkenaan dengan Data Engineerbimbingan karir.
stom
Bagaimana ilmu pengetahuan tentang "pemahaman fenomenologis"?
ubadub
10

Istilahnya samar-samar karena mereka baru

Berada di tengah pencarian pekerjaan di bidang 'ilmu data', saya pikir ada dua hal yang terjadi di sini. Pertama, pekerjaan itu baru, dan tidak ada definisi pasti dari berbagai istilah, jadi tidak ada kesepakatan yang umum tentang pencocokan persyaratan dengan deskripsi pekerjaan. Bandingkan ini dengan 'pengembang web' atau 'pengembang back-end.' Ini adalah dua pekerjaan serupa yang telah disepakati dengan baik dan deskripsi yang berbeda.

Kedua, banyak orang yang melakukan posting pekerjaan dan wawancara awal tidak tahu apa yang mereka rekrut. Hal ini terutama berlaku dalam kasus perusahaan kecil hingga menengah yang mempekerjakan perekrut untuk mencari pelamar. Ini adalah perantara yang memposting deskripsi pekerjaan di CareerBuilder atau forum apa pun. Ini bukan untuk mengatakan bahwa banyak dari mereka tidak tahu barang-barang mereka, banyak dari mereka cukup berpengetahuan tentang perusahaan yang mereka wakili dan persyaratan tempat kerja. Tapi, tanpa syarat yang jelas untuk menggambarkan pekerjaan spesifik yang berbeda, jabatan pekerjaan samar sering hasilnya.

Ada tiga divisi umum bidang ini

Dalam pengalaman saya, ada tiga divisi umum 'ruang kerja' ilmu data.

Yang pertama adalah pengembangan teknik matematika dan komputasi yang memungkinkan ilmu data. Ini mencakup hal-hal seperti penelitian statistik dalam metode pembelajaran mesin baru, penerapan metode ini, dan pembangunan infrastruktur komputasi untuk menggunakan metode ini di dunia nyata. Ini adalah divisi yang paling jauh terpisah dari pelanggan, dan divisi terkecil. Banyak dari pekerjaan ini dilakukan oleh akademisi atau peneliti di perusahaan besar (Google, Facebook, dll). Ini untuk hal-hal seperti mengembangkan Google TensorFlow, jaring saraf SPSS IBM, atau apa pun basis data grafik besar berikutnya.

Divisi kedua menggunakan alat yang mendasarinya untuk membuat paket aplikasi khusus untuk melakukan analisis data apa pun yang perlu dilakukan. Orang disewa untuk menggunakan Python atau R atau apa pun untuk membangun kemampuan analisis pada beberapa set data. Banyak dari pekerjaan ini, dalam pengalaman saya, melibatkan melakukan 'pencucian data,' mengubah data mentah dalam bentuk apa pun menjadi sesuatu yang dapat digunakan. Sebagian besar dari pekerjaan ini adalah database; mencari tahu bagaimana cara menyimpan data dengan cara yang dapat diakses dalam timeline apa pun yang Anda butuhkan. Pekerjaan ini tidak terlalu banyak mengambil alat, tetapi menggunakan database, statistik, dan perpustakaan analisis grafis yang ada untuk menghasilkan beberapa hasil.

Divisi ketiga menghasilkan analisis dari data yang baru terorganisir dan dapat diakses. Ini adalah sisi yang paling menghadap pelanggan, tergantung pada organisasi Anda. Anda harus menghasilkan analisis yang dapat digunakan para pemimpin bisnis untuk membuat keputusan. Ini akan menjadi yang paling tidak teknis dari tiga divisi; banyak pekerjaan adalah hibrida antara divisi kedua dan ketiga pada saat ini, karena ilmu data masih dalam tahap awal. Tetapi di masa depan, saya sangat curiga bahwa akan ada pembagian yang lebih bersih antara dua pekerjaan ini, dengan orang-orang memenangkan pekerjaan kedua yang membutuhkan pendidikan teknis, ilmu komputer atau statistik, dan pekerjaan ketiga ini hanya membutuhkan pendidikan umum.

Secara umum, ketiganya bisa menggambarkan diri mereka sebagai 'ilmuwan data', tetapi hanya dua yang pertama yang bisa menggambarkan diri mereka sebagai 'insinyur pembelajaran mesin'.

Kesimpulan

Untuk saat ini, Anda harus mencari tahu sendiri apa yang dibutuhkan oleh setiap pekerjaan. Pekerjaan saya saat ini mempekerjakan saya sebagai 'analis,' untuk melakukan beberapa hal pembelajaran mesin. Tetapi ketika kami mulai bekerja, menjadi jelas bahwa basis data perusahaan tidak memadai, dan sekarang mungkin 90% dari waktu saya dihabiskan untuk mengerjakan database. Paparan pembelajaran mesin saya sekarang hanya menjalankan hal-hal dengan cepat melalui paket scikit-learning apa pun yang tampaknya paling sesuai, dan memotret file csv ke analis divisi ketiga untuk membuat presentasi powerpoint bagi pelanggan.

Lapangan dalam fluks. Banyak organisasi mencoba untuk menambahkan data pengambilan keputusan ilmu pengetahuan ke dalam proses mereka, tetapi tanpa mengetahui dengan jelas apa artinya. Ini bukan kesalahan mereka, cukup sulit untuk memprediksi masa depan, dan konsekuensi dari teknologi baru tidak pernah sangat jelas. Sampai lapangan lebih mapan, banyak pekerjaan itu sendiri akan menjadi samar-samar seperti istilah yang digunakan untuk menggambarkannya.

kingledion
sumber
9

[Sepenuhnya pendapat pribadi]

Ketika istilah 'Data Scientist' menyalip 'Statistician', itu lebih ke arah terdengar keren, daripada perbedaan besar. Begitu pula dengan istilah 'Deep Learning'. Ini hanya jaringan saraf (yang merupakan algoritma Machine Learning lain) dengan beberapa lapisan lebih. Tidak ada yang bisa menjelaskan kapan jaring saraf tertentu dapat disebut DL, bukan ML, karena definisi itu sendiri kabur. Jadi, adalah istilah 'Data Scientist'.

Namun, ketika perusahaan mengadopsi pola pikir DevOps ke ilmu data, istilah Insinyur ML berevolusi.

Apa pola pikir DevOps untuk ilmu data?

Di sinilah Anda membangun model, menyebarkannya dan juga diharapkan untuk mempertahankannya dalam produksi. Ini membantu dalam menghindari banyak gesekan dalam tim perangkat lunak.

[PS: DevOps adalah cara melakukan perangkat lunak, lebih seperti filosofi. Jadi, menggunakannya sebagai sebutan, sekali lagi membingungkan saya].

Jadi, para insinyur ML seharusnya mengetahui nuansa rekayasa sistem, ML, dan statistik (jelas).

Generalisasi yang tidak jelas adalah Insinyur Data + Data Scientist = ML Engineer.

Karena itu, penunjukan dalam ruang ini menjadi kabur dari hari ke hari, dan istilah 'Statistik' menjadi lebih dan lebih relevan (ironi!).

Dawny33
sumber
2
Pembelajaran Mesin jauh lebih dari sekadar jaring saraf (seperti contohnya, pertimbangkan semua jenis pengklasifikasi berbasis pohon), jadi jangan lihat bagaimana "Pembelajaran Mendalam hanyalah Pembelajaran Mesin dengan beberapa lapisan lebih banyak".
S. Kolassa - Reinstate Monica
@StephanKolassa Ya. Setuju. Seharusnya tidak terlalu menggeneralisasi :) Terima kasih telah menunjukkannya.
Dawny33
1
(+1) tapi saya tidak berpikir "ahli statistik" menjadi lebih relevan adalah ironi, hanya ... transisi yang diharapkan? Di mana "peneliti operasional" hari ini? ;)
usεr11852 mengatakan Reinstate Monic
7

Ini mungkin berbeda dari perusahaan ke perusahaan, tetapi Data Scientist sebagai sebutan telah ada selama beberapa waktu sekarang dan biasanya dimaksudkan untuk mengekstraksi pengetahuan dan wawasan dari data .

Saya telah melihat data yang dilakukan para ilmuwan

  • Penulisan pemrosesan gambar dan algoritma pengenalan gambar,
  • Merancang dan mengimplementasikan pohon keputusan untuk kasus penggunaan bisnis,
  • Atau cukup merancang dan mengimplementasikan beberapa laporan atau menulis ETL untuk transformasi data.

Ilmu data , bagaimanapun, adalah domain super pembelajaran mesin

Ini menggunakan teknik dan teori yang diambil dari banyak bidang dalam bidang matematika, statistik, ilmu informasi, dan ilmu komputer yang luas, khususnya dari subdomain pembelajaran mesin, klasifikasi, analisis klaster, kuantifikasi ketidakpastian, ilmu komputasi, penambangan data, database, dan visualisasi .

Insinyur pembelajaran mesin tampaknya menjadi sebutan di mana atasan Anda telah mempersempit ke

  • Pendekatan,
  • Alat,
  • dan model kasar (dari apa yang dikirim)

untuk mengekstrak pengetahuan atau wawasan dari data menggunakan pembelajaran mesin dan pekerjaan Anda adalah merancang dan mengimplementasikan algoritma pembelajaran mesin untuk menghasilkan hal yang sama .

gurvinder372
sumber
5

Teknisi Pembelajaran Mesin dan Rekayasa Data yang berfokus pada Ilmuwan adalah sama, tetapi tidak semua Ilmuwan Data yang berfokus pada rekayasa. Sekitar 5 tahun yang lalu, hampir semua Data Scientist berfokus pada rekayasa, misalnya, mereka harus menulis kode produksi. Namun, sekarang ada banyak peran Data Scientist yang sebagian besar: bermain di notebook Jupyter, memahami data, membuat grafik yang bagus, menjelaskan kepada klien, manajer, analis ... Mereka tidak melakukan rekayasa apa pun. Dan saya percaya bahwa istilah Machine Learning Engineers datang untuk menggarisbawahi bahwa ini posisi teknik.

Akavall
sumber
2

TL; DR: Itu tergantung pada siapa yang bertanya.

Jawaban atas pertanyaan ini sangat tergantung pada harapan, pengetahuan, dan pengalaman siapa pun yang bertanya. Pertanyaan analog dengan fuzzy dari sebuah jawaban adalah:

Apa perbedaan antara pengembang perangkat lunak, insinyur perangkat lunak, dan ilmuwan komputer?

Bagi sebagian orang, khususnya orang yang mempelajari atau mengajarkan ilmu komputer dan rekayasa perangkat lunak, ada perbedaan besar dan pasti antara bidang-bidang ini. Tetapi bagi rata-rata pekerja SDM, perekrut teknis, atau manajer, ini semua hanyalah "Orang Komputer".

Saya suka kutipan ini oleh Vincent Granville , penekanan saya:

Sebelumnya dalam karir saya (sekitar 1990) saya bekerja pada teknologi penginderaan jauh gambar, antara lain untuk mengidentifikasi pola (atau bentuk atau fitur, misalnya danau) dalam gambar satelit dan untuk melakukan segmentasi gambar: pada waktu itu penelitian saya diberi label sebagai komputasi statistik, tetapi orang-orang melakukan hal yang sama persis di departemen ilmu komputer di sebelah rumah saya di universitas, yang disebut kecerdasan buatan penelitian mereka. Hari ini, itu akan disebut ilmu data atau kecerdasan buatan, sub-domain menjadi pemrosesan sinyal, visi komputer atau IOT.

lfalin
sumber
1

Pembelajaran Mesin lebih spesifik dan di bidang Anda perlu menguasai hal-hal berikut:

  • Fitur vs Label
  • Data uji vs data Pelatihan
  • Normalisasi Fitur
  • Struktur data umum (array array)
  • Pemilihan Fitur
Daniel
sumber
0

Saya tidak setuju dengan jawaban yang diberikan. Namun, saya berpikir bahwa ada peran Data Scientist yang sedang diselimuti hampir semua jawaban di sini. Sebagian besar jawaban ini mengatakan sesuatu, "Yah, seorang insinyur baru saja menulis dan menyebarkan model ...". Tunggu sebentar - ada BANYAK pekerjaan dalam dua langkah itu!

Definisi inti saya dari Ilmuwan Data adalah seseorang yang menerapkan metode ilmiah untuk bekerja dengan data. Jadi saya terus-menerus memikirkan hypostheses, merancang tes, mengumpulkan data saya dan menjalankan tes-tes itu, memeriksa hasil validasi silang saya, mencoba pendekatan baru, mengubah data saya, dll, dll. Itulah dasarnya yang masuk "hanya menulis dan menyebarkan model "dalam pengaturan profesional.

Jadi, untuk jawaban Anda, saya pikir "iblis ada di dalam perincian" karena Anda tidak bisa mengabaikan beberapa langkah / istilah ini. Juga, jika Anda mencari pekerjaan, Anda harus berhati-hati karena "insinyur data" dan "ilmuwan data" dapat memiliki skala gaji yang sangat berbeda - Anda tidak ingin menjadi ilmuwan data pada gaji insinyur data!

Saya selalu menempatkan diri saya di luar sana sebagai ilmuwan data, saya memberi tahu perusahaan bahwa saya bekerja pada model prediktif (bukan hanya analitis) dan bahwa saya bukan joki Excel - saya menulis dalam bahasa pemrograman (R, Python, dll). Jika Anda dapat menemukan posisi yang memungkinkan Anda melakukan keduanya, maka Anda sedang dalam perjalanan untuk menjadi ilmuwan data.

I_Play_With_Data
sumber