Veri Bilimcisi / Makine Öğrenmesi Mühendisi Olma Rehberi

5.101

Veri Bilimciliğinin 21. yüzyılın en afili mesleği olduğunu duymuşsunuzdur. Bununla birlikte Glassdoor’un yayınladığı son araştırma gösteriyor ki; para kazanma potansiyelleri, iş tatminleri ve açık iş ilanı sayıları göz önünde bulundurulduğunda 2017 yılındaki en iyi meslekler sıralamasında yine Veri Bilimciliği yer alıyor. Peki üniversitelerde lisans seviyesinde (şimdilik) Veri Bilimi için bir bölüm bulunmazken nasıl Veri Bilimcileri yetişiyor?

En genel tabiriyle, veri bilimcisi istatistikte yazılım mühendislerinden daha iyi olan, yazılım mühendisliğinde de istatistikçilerden daha iyi olan kişilerdir.

Veri Bilimcisi Kimdir?

Veri Bilimcilerinin matematik, istatistik, programlama ve veri tabanı konularında yetkin olması gerekmektedir. Bilgisayar mühendisleri için bunlar arasında matematik en zayıf halka olsa da, yazılımcılar arasında yine en güçlü adaylar yine bilgisayar mühendisleridir. Yazılımcıların neredeyse %50’sini hiç bilgisayar mühendisliği derecesi almamış kişiler oluşturuyor. Bununla birlikte yazılımcılar arasında ciddi bir istihdam kaynağını elektronik mühendisleri oluşturmakta. Fakat elektronik mühendisliği çoğunlukla fizikten beslenirken, bilgisayar mühendisliği matematikten beslenmektedir. Bu noktada bilgisayar mühendisliği evveliyatına sahip olmak bir artıdır çünkü matematik ve istatistik veri bilimciliğinin olmazsa olmazıdır. Öte yandan yazılımcı olmayanlar diğer olmazsa olmazlar olan programlama ve veri tabanı konularında güçlü olmayacaklardır.

Veri bilimciliği mükemmel inek olunmasını gerektirir!

Daha önce de demiştim, veri bilimcileri aynı zamanda güçlü programlama yeteneklerine sahip kişiler olmalı. Bugün makine öğrenmesi çalışmaları için script dilleri müthiş bir talep görmekte. Bu sebeple, Python veya R dillerine aşina olmak bir tercih sebebi. Ancak bu, bu dillerle etrafınıza duvarlar örmeniz gerektiği anlamına gelmiyor. Eskimeyen teknoloji yoktur. Teknoloji alanında çalışacaksanız yeni teknolojilere açık olmanız gerekmektedir. Üniversite yıllarımda koridorlarda java mı yoksa .net teknolojilerinin daha iyi olduğunu tartışırdık. Bu tartışmanın ne kadar saçma olduğunu zaman geçtikçe anlıyorum. Bugün bu tartışma makine öğrenmesi etkinliklerinde yerini Python’un mu yoksa R’nin mi daha iyi olduğuna bırakmış durumda. Bu tartışmanın farklı diller için sürekli devam edeceğine eminim. Bu konuda naçizane tavsiyem programlama dilleri amacınız değil aracınız olsun.

Başlangıçta bazı popüler makine öğrenmesi altyapıları ile çalışabilirsiniz. Bu diller sizi kısıtlasa bile, daha hızlı çözüm üretmenizi sağlayacaklardır. Teknoloji firmaları kendi makine öğrenmesi altyapılarını duyurma konusunda geçtiğimiz yıldan bu yana yarış halindeler. Yine bu konuda naçizane fikrim Google’ın görseller ve çeviri hizmetlerinin arkasında çalışan açık kaynaklı olarak yayınladıkları TensorFlow altyapısı rakiplerinin bir kaç adım önünde bulunuyor. Bu nedenle de yakın dönemde TensorFlow ile ilgili bir çevrim içi bir kurs yayınladım. Değinmekte fayda var aşağıdaki listedeki Torch, Lua adlı bir programlama dili üzerinde geliştirmek yapmanıza imkan verirken; altyapı, Facebook tarafından evrildikten sonra python üzerinde çalışmaya başladı. Deeplearning4j adından da anlaşılacağı gibi Java platformu üzerinde çalışıyor. Geri kalan listenin tamamı Python üzerinden çalışılmakta. Bu da yeni başlayacak veri bilimcisi adayları için hangi dil ile başlamaları gerektiği konusunda ipucu veriyor olmalı.

Derin Öğrenme Framework’leri

Akademik derecelere sahip olmak yine veri bilimcisi olmak için bir avantaj. Veri bilimciliği haricinde bilgisayar bilimindeki açık iş ilanlarında master ve doktora şartı aranması pek alışıldık bir durum değildir. Dolayısıyla akademik kariyer yapmayı düşünebilirsiniz. Destekleyici olarak yüksek lisans yapmanın artısını her zaman gördüm.

Veri Bilimciliği mi yoksa Veri Mühendisliği mi?

Bilgisayar mühendisliği derecesine sahip olmayan yazılımcılar veri mühendisliği için daha uygun olabilirler. Bu ünvanın sorumluluğunda veri tabanının yönetimi, veri depolama ve sistem implementasyonu bulunmakta. Veri bilimcilerinin ise modeller kurmak ve görselleştirme gibi sorumlulukları bulunmakta. Bu iki ünvanı birleştirmeniz de mümkün. Veri mühendislerinden veri bilimcisi çıkarabiliyorsanız halinde ortaya bir süper star çıkacaktır.

Veri Bilimcisi vs Veri Mühendisi

Veri bilimcisi doğru yanıtları veren değil, doğru soruları soran kişilerdir. Diğer bir deyişle, üzerinde çalışılan iş alanı hakkında uzman olmanız beklenmemekte. Meraklı olmanız bir çok problemi aşmanızı sağlıyor.

Standart yazılımcılardan lineer problemleri çözmesi beklenir. Başka bir deyişle, developer çoğunlukla DML scriptleri arka tarafa implemente etmekle uğraşırlar. Halbuki, makine öğrenmesi mühendisleri bir fonksiyonun kısmi türevlerini rahatlıkla alabilmeli, farklı optimizasyon problemlerinde çalışabilmelidirler. Yani veri bilimcileri lineer olmayan problemler üzerinde çalışmayı gerektirir.

Rol Modeller

Son olarak veri bilimi konusundaki otoritelerin sosyal medya hesaplarını takip edebilirsiniz. Benim favorim aralarında Hilary Mason.

Ünlü Veri Bilimcilerinin Ağ Analizi

Özetlemek gerekirse, matematiğe yatırım yapan yazılımcılar veri bilimciliği için biçilmiş kaftandır. Bu şekilde geleceği veri bilimcisi olarak inşa edebilirsiniz.

Bu yazı Yazılımcının Seyir Defteri blog’undaki A Software Engineer’s Guide to Becoming Data Scientist yazısından Türkçe’ye çevrilmiştir.

Yorum yaz

Email adresiniz yayınlanmayacaktır.