İçeriğe geç

makine öğrenimi vs linux dağıtımları

  • (bkz: makine öğrenimi) ile (bkz: linux dağıtımları) arasındaki ilişki, iki farklı dünyanın zorunlu evliliği gibidir; biri soyut matematiksel modellerle veriden anlam çıkarmaya çalışırken, diğeri bu modellerin koşacağı somut altyapıyı, çekirdeği ve paket yöneticisini sağlar. python ekosistemi, cuda sürücüleri ve docker konteynerleri hep bir linux çekirdeği üzerinde hayat bulur. Peki neden windows veya macos değil de linux? Çünkü açık kaynak dünyası, nvidia sürücülerinden tensorflow'a kadar her katmanda müdahale edilebilirlik sunar; bu da araştırmacının deney döngüsünü hızlandırır. (bkz: #Z7yiz1S9pqgRq7JG7hn0C) entry'mde belirttiğim gibi, evrimsel biyolojideki varyasyon ve seçilim mekanizmaları burada da işler: farklı dağıtımlar (ubuntu, fedora, arch) farklı kullanıcı profillerine göre evrilir, kimisi kararlılığı, kimisi en güncel sürücüleri seçer.

    İşin teknik boyutuna bakınca, makine öğrenimi iş akışı bir linux dağıtımının paket yönetimiyle doğrudan bağlantılıdır. apt veya pacman ile kurduğunuz bir kütüphane, arka planda glibc sürümüyle, gcc derleyicisiyle ve hatta çekirdek modülleriyle dans eder. Bu yüzden conda veya pip ile sanal ortam yönetimi, dağıtımın kendi paket yöneticisiyle çakışmaya başladığında işler çığırından çıkar. arch linux kullanıcıları bu yüzden sürekli güncel kalmak zorundadır; çünkü cuda sürücüsü bir gün çalışırken ertesi gün kernel güncellemesiyle patlayabilir. Ubuntu LTS ise bu noktada bir güvenli liman gibi görünür ama o da eski kütüphane sürümleriyle yeni model eğitimini bazen sekteye uğratır. Kısacası, dağıtım seçimi bir zevk meselesi değil, doğrudan üretkenlik meselesidir. makine öğrenimi ile linux dağıtımları arasındaki ilişki bir araç-gereç ilişkisinden öte, bir ekosistem ilişkisidir. Popüler kültürde "her şeyiyle hazır" denilen windows + wsl bile aslında arka planda bir linux çekirdeği çalıştırır; yani kaçış yok.

Detay sayfası