Yapay Zeka ve Veri Bilimi Üzerine

Ekim 2015 yılında , Makine Mühendisliğinden yeni mezun iken mekanik ve termal makinaların yapıları gereği yapamayacağı, akıllanamayacağı sadece sensorler ile geliştirebileceği düşüncelerine sahip iken o sırada yayınlanan bir makale de Stephan Hawking’in yapay zekalar üzerine endişelerinden bahsetmiştim. Uzaktan bir endişe idi sanırım benim ki , fakat 2022 yılında başladığım Bilgisayar Programcılığı eğitimim sonrası sinyal işleyen makinaların yani bilgisayarların , dünyasına girdikçe veri bilimi, makine öğrenimi , derin öğrenme ve yapay zeka’ nın yapı taşlarını ve çalışma alanlarını görmem mümkün oldu.

Bu alanda ilk olarak bu alanın dili olan bilgisayar programcılığı derslerimden de olan şuan Python dilini öğrenmekteyim. Okulun son döneminde ise makine öğrenimi diye bir ders alacağım. Fakat bu alanda etkileyici giriş yapmamı sağlayan Matematik ve Yapay Zeka Enstitüsü ve Namık Kemal Üniversitesinde ki Matematik öğretmenim Prof. Dr. Ünver Çiftçi tarafından aldığım NVIDIA tarafından oluşturulmuş derin öğrenmenin temelleri eğitimi oldu. Bu eğitim de makinelerin (sinyal işleyen) nasıl işaret dilini anlayıp yorumlayabildiğini, farklı el yazılarından sayıları nasıl bir bebek iken bizim öğrenebildiğimiz gibi yapay zekanın bunu öğrenebildiği tıpkı Hawking’in kendi zor durumunda düşüncelerine derman olan ve kendini ifade edebilmesini sağlayan yapay zeka ‘ nın aslında faydalı kullanıldığında ne kadar yararlı olabileceğine tanık oldum.

Yapay zeka algoritmalarının insanların tercihlerine yardımcı , karar destek sistemleri olarak kullanılabileceğini, CHAT GPT gibi transformer modeliyle eğitilmiş nasıl hayatımıza hızlı bir şekilde giriş yaptığı ve onun yönlendiricisi olduğu Dall-E gibi grafikler oluşturabilerek de nasıl farklı alanlarda bize ürünler sunabildiği de bir gerçek.

Bu alanda bir diğer eğitimimi de Kodluyoruz.org ve Microsoft işbirliği ile düzenlenen Yazılıma İlk Adım: Veri Bilimi eğitimini bu bitirme makalesi ile tamamlayarak yaptım. Bu eğitimde Python dilinin temellerini ve veri biliminin temellerini öğrendim.

Yapay zeka çalışması daha önce derin öğrenmede öğrendiğim gibi, makine öğrenmesi çalışmaları;

* Gözetimli Öğrenme

* Gözetimsiz Öğrenme

* Pekiştirmeli – Takviye edici öğrenme şeklinde olur.

Çağımız teknolojisinin bu heyecan verici alanı Yapay Zeka Alanında araştırmalar ve çalışmalar yapabilmek için heyecanımı koruyorum benim gibi nacizane bir şekilde bu alanda çalışmak isteyenlere yol göstericisi olması açısından bu blog yazısını yayınlıyorum.

Veri Bilimci, Makine Öğrenimi Mühendisi ve Yapay Zeka Uzmanı Rollerinin Karşılaştırmalı Analizi: Kavramsal Taksonomi, İşlevsel Ayrışma ve MLOps Bağlamında Yetkinlik Profilleri

1. Giriş ve Kavramsal Taksonomi: Alanların Hiyerarşik Konumlandırılması

Veri odaklı teknolojilerdeki hızlı ilerleme, Yapay Zeka (AI), Makine Öğrenimi (ML) ve Veri Bilimi (DS) gibi terimlerin sıklıkla birbiriyle karıştırılmasına yol açmaktadır. Bu kavramların ve bu disiplinlerde çalışan uzmanların rollerinin kesin sınırlarının belirlenmesi, organizasyonel yapılandırma, yetenek yönetimi ve projelerin başarıyla hayata geçirilmesi açısından temel bir zorunluluk teşkil etmektedir. Bu rapor, bu üç uzmanlık alanını kavramsal taksonomi, işlevsel sorumluluklar ve gerekli teknik yetkinlikler bağlamında ayrıntılı olarak analiz etmektedir.

1.1. Veri Odaklı Disiplinlerin Ortaya Çıkışı ve Karışıklık Noktaları

AI, ML ve DS terimleri, teknik literatürde bile zaman zaman eş anlamlı olarak kullanılabilmekte, ancak özünde bunlar birbirini iç içe geçmiş, hiyerarşik bir ilişki sergileyen farklı disiplinlerdir.1 Yapay zeka, bu şemsiyenin en geniş kapsamlı terimini oluştururken 2, makine öğrenimi yapay zekanın bir alt kümesidir ve veri bilimi ise makine öğrenimini bir araç olarak kullanan multidisipliner bir alandır.1

Bu kavramsal karışıklığın organizasyonel seviyedeki en önemli yansıması, rol tanımlarının netleşmemesi ve buna bağlı olarak şirketlerde yetkinliklerin yanlış eşleştirilmesidir. Eğer bir kuruluş, Veri Bilimciden, tipik olarak Makine Öğrenimi Mühendisinin görevi olan, üretim kalitesinde sistem kodlaması ve dağıtımını beklerse, bu durum ya modelin istatistiksel geçerliliğinden (DS’nin temel odak noktası) ya da dağıtılan sistemin güvenilirliğinden ve ölçeklenebilirliğinden (MLE’nin temel odak noktası) taviz verilmesine neden olur. Bu operasyonel ayrışmanın doğru bir şekilde anlaşılması, modern MLOps (Makine Öğrenimi Operasyonları) süreçlerinin başarılı bir şekilde inşa edilmesi için hayati önem taşımaktadır.

1.2. Yapay Zeka (AI): En Kapsamlı Şemsiye Kavram

Yapay zeka, makinelerin insan benzeri zeka sergilemesini hedefleyen, bilgisayar biliminin en geniş disiplinidir.1 Kapsamı, problem çözme, öğrenme ve karar verme gibi insan zekası gerektiren geniş bir görev yelpazesini içerir. AI şemsiyesi altında, makine öğrenmesi ve derin öğrenme gibi yöntemlerin yanı sıra, kural tabanlı Uzman Sistemler gibi farklı teknolojiler de yer alır.1

Bu noktada, tüm AI çözümlerinin zorunlu olarak ML kullanmadığını anlamak önemlidir.4 AI’nın teorik kökleri ve uzman sistemler gibi non-ML yaklaşımlarını içermesi, onun ML’den daha geniş ve kapsayıcı bir disiplin olduğunu kanıtlar. Kısacası, Yapay Zekanın amacı makinelerin düşünme yeteneğine sahip olmasını sağlamaktır; ML ise bu amaca ulaşmak için kullanılan en yaygın ve etkili mekanizmadır.1

1.3. Makine Öğrenimi (ML): Veriden Öğrenmenin Mekanizması

Makine öğrenmesi, yapay zekanın doğrudan bir alt kümesi olarak konumlandırılır ve temel işlevi, bilgisayarların açıkça programlanmış talimatlara ihtiyaç duymadan, büyük veri setlerinden otomatik olarak öğrenmesini sağlamaktır.1 ML algoritmaları, büyük veri hacimlerini analiz ederek gizli kalıpları tespit eder ve gelecekteki sonuçları tahmin etme yeteneği kazanır.

ML; denetimli öğrenme (etiketli veri), denetimsiz öğrenme (gizli kalıpları keşfetme) ve pekiştirmeli öğrenme (ödül sistemi ile öğrenme) gibi çeşitli türleri içerir.1 Makine öğrenimi, hem Veri Bilimi projeleri için kritik bir araç (tahmin modelleri oluşturmak için) hem de Yapay Zeka hedeflerine ulaşmak için kullanılan merkezi bir yöntem olması nedeniyle, bu üç alan arasında köprü görevi gören temel bir disiplindir.

1.4. Veri Bilimi (DS): Multidisipliner Bir Disiplin Olarak Konumlanma

Veri Bilimi (DS), verileri toplama, temizleme, dönüştürme, analiz etme ve yorumlama sürecini kapsayan, istatistik, bilgisayar bilimi ve alan bilgisini (domain knowledge) birleştiren multidisipliner bir alandır.5 DS’nin temel amacı, verilerden anlamlı içgörüler ve bilgi çıkararak, bu bilgiyi iş kararlarını stratejik olarak yönlendirmek için kullanmaktır.7

Geleneksel olarak, Veri Bilimci rolü, programlama becerilerini sağlam istatistik bilgisiyle harmanlayarak karmaşık iş problemlerini baştan sona çözmeyi içeriyordu; bu, regresyon analizi, deneysel tasarım ve istatistiksel çıkarım gibi alanlara yoğunlaşmayı gerektirir.5 Modern rollerdeki ayrışma eğilimine rağmen, DS’nin istatistiksel kökleri güçlüdür ve saf tahmin modellerinin ötesine geçerek nedensel çıkarıma odaklanma gerekliliği, DS rolünün analitik omurgasını oluşturur.

Alan/KavramKapsamTemel AmaçVeri Bilimi ile İlişki
Yapay Zeka (AI)En Geniş Şemsiye, İnsan Zekasını Taklit EtmeMakinelerin insan benzeri zeka sergilemesini sağlamakML’yi ve diğer non-ML tekniklerini içerir 1
Makine Öğrenimi (ML)AI’nın Alt Kümesi, Algoritmik ÖğrenmeAçıkça programlanmadan veriden öğrenme, kalıp tespiti ve tahminVeri biliminin çekirdek araç setini oluşturur 1
Veri Bilimi (DS)Multidisipliner Alan, Uygulamalı AnalizVerilerden içgörü ve bilgi çıkararak iş kararlarını yönlendirmekİstatistiksel yöntemler, ML ve iş bilgisi kesişimi 5

Tablo 1.1: Kavramsal Taksonomi: AI, ML ve DS’nin Kapsam Karşılaştırması

2. Profesyonel Roller Arasındaki Hiyerarşik ve İşlevsel Farklılıklar

Bu üç rol, organizasyon içindeki değer zincirinde farklı aşamalarda faaliyet gösterirler. Veri Bilimci, iş sorununu analiz eder; Makine Öğrenimi Mühendisi, çözümü üretimleştirir; Yapay Zeka Uzmanı/Araştırmacısı ise çözümün sınırlarını iter.

2.1. Veri Bilimci (DS): Analiz ve İş İçgörüsü Yöneticisi

Veri Bilimcinin birincil görevi, ham veriyi iş kararlarını yönlendiren eyleme geçirilebilir içgörülere dönüştürmektir.7 Odak noktası, model prototiplemesi, analiz ve deneysel doğrulama üzerindedir. Temel çıktıları, veri görselleştirmeleri, istatistiksel raporlar ve kontrollü ortamlarda (sandbox) geliştirilip doğrulanmış prototip modellerdir.7

Bu rol, yalnızca teknik yetkinliklerle sınırlı değildir. Bir Veri Bilimciden, teknik uzmanlığının ötesinde, güçlü iş zekası (business acumen) ve veri hikayesi anlatımı (data storytelling) becerileri beklenir.9 Bu yetkinlikler vazgeçilmezdir çünkü DS, karmaşık analitik bulguları, teknik arka planı olmayan üst yönetime veya iş paydaşlarına anlaşılır, net bir anlatı ile sunmak zorundadır.10 Veri Bilimci, gerçek dünya problemlerini veri tabanlı sorulara dönüştürme ve sonuçları iş bağlamında yorumlama yeteneği sayesinde analiz ile iş stratejisi arasındaki boşluğu dolduran temel bir varlıktır.

2.2. Makine Öğrenimi Mühendisi (MLE): Üretim ve Ölçeklendirme Uzmanı

Makine Öğrenimi Mühendisleri (MLE), Veri Bilimciler tarafından geliştirilen modellerin prototip aşamasından çıkarılarak, gerçek dünya sistemlerinde güvenilir, verimli ve ölçeklenebilir hizmetler olarak çalışmasını sağlamakla yükümlüdür.7 Bu rol, temel olarak yazılım mühendisliği ve sistem tasarımı becerilerine güçlü bir şekilde eğilimli olmayı gerektirir; bu, DS’nin istatistiğe olan eğiliminden keskin bir ayrımı ifade eder.12

MLE’lerin temel araç seti, model orkestrasyonu ve otomasyonu için Docker, Kubernetes (dağıtımı ölçeklendirmek için), Airflow (veri akışı yönetimi için) ve MLOps çerçevelerini içerir.7 MLE’ler, prototipleri büyük hacimli verileri işleyebilen, gerçek zamanlı tahminler sunabilen ve koşullar değiştikçe uyum sağlayabilen üretime hazır sistemlere dönüştürürler. Bu nedenle, modelin ticari değere dönüşmesini sağlayan, altyapının ve sürekli performansın garantörü olan hayati bir roldür.

Bu rol, Yapay Zeka becerilerini yüksek etkili, kurumsal düzeyde sistemlere uygulama potansiyeli nedeniyle önemli bir kariyer hızlandırıcısı olarak kabul edilmektedir.7 Bir modelin başarılı olması, sadece analitik performansı ile değil, aynı zamanda üretimdeki güvenilirliği, kesintisiz hizmet sunumu ve ölçeklenebilirlikle ölçülür. Bir model üretime alınmazsa veya sürekli hata verirse, modelin yaratılması için harcanan tüm araştırma çabası boşa gider. Bu bağlamda, sistem güvenilirliğini sağlayan MLE, organizasyonlar için yüksek maaşlı ve stratejik olarak kritik bir rol haline gelmiştir.13

2.3. Yapay Zeka Uzmanı/Araştırmacısı (AIR): Sınırları Zorlayan Yenilikçi

Yapay Zeka Uzmanı veya Araştırmacısı (AIR), genellikle büyük teknoloji şirketlerinin araştırma ve geliştirme (R&D) departmanlarında veya akademik kurumlarda faaliyet gösterir.14 AIR’lerin birincil odak noktası, yapay zekanın sınırlarını zorlamak için çığır açan algoritmalar geliştirmek, en son teknolojiyi araştırmak ve temel bilimsel ilerlemeye katkıda bulunmaktır.14

Bu rol, derin teorik bilgi ile titiz deneysel analizi birleştirir.14 AIR’nin temel çıktıları, yeni model mimarileri, akademik yayınlar ve patentlenebilir teknolojik yeniliklerdir. MLE’ler, mevcut veya bilinen modelleri belirli görevler için optimize etme ve üretimleştirme konusunda uzmanlaşırken, AIR’ler daha derin matematiksel temeller ve teori bilgisi gerektiren, yeni modeller ve algoritmalar geliştirirler.16 Bir AIR’nin çalışması, uygulamalı bir mühendisten ziyade temel bir bilim insanının çalışmalarına daha yakındır.

3. Görev ve Sorumlulukların Operasyonel Ayrımı (Model Yaşam Döngüsü Analizi)

Modern makine öğrenimi projeleri, modeli bir prototipten sürekli çalışan bir hizmete dönüştürmek için net bir model yaşam döngüsü ve sıkı bir MLOps çerçevesi gerektirir. Bu süreç, DS ve MLE arasındaki sorumlulukların kesin olarak ayrılmasını sağlar.

3.1. Veri Hazırlama, Özellik Mühendisliği ve Model Geliştirme

Model yaşam döngüsünün başlangıcında, Veri Bilimci (DS) Keşifçi Veri Analizi (EDA) yapar ve model performansı için en uygun özellik setini (feature engineering) tasarlar.18 DS bu aşamada, verilerin hikayesini anlamaya ve iş sorusuna yanıt verecek bir modelin prototipini oluşturmaya odaklanır.7

Ancak bu özellik setlerinin sürekli ve güvenilir bir şekilde beslenmesi, Makine Öğrenimi Mühendisinin (MLE) ve Veri Mühendislerinin sorumluluğundadır.19 MLE, bu özelliklerin üretim kalitesinde (ölçeklenebilir ve hatalara dayanıklı) boru hatları (pipeline) aracılığıyla modele sunulmasını sağlar. Veri Mühendisleri, ham veriyi kullanılabilir formata getiren ETL (Extract, Transform, Load) veya ELT süreçlerini inşa ederken, MLE bu boru hatlarının ML döngüsüne sorunsuz entegrasyonundan sorumludur.19

3.2. Kritik Devir Noktası (Handoff) ve Üretimleştirme

Model geliştirme ve doğrulama, genellikle DS’nin kontrollü ortamda (sandbox) modelin istatistiksel geçerliliğini ve etkinliğini test etmesiyle tamamlanır.7 Bu aşamada, eğitilmiş ve doğrulanmış model, bir “yapıt” (artifact) olarak Makine Öğrenimi Mühendisine teslim edilir.20

Bu teslim noktası, geleneksel süreçlerde sıklıkla bir kopukluk yaratırdı, zira modelin yaratıcısı (DS) ile onu hizmete sunacak mühendis (MLE) farklı kültürel ve teknik beklentilere sahipti.20 Bu nedenle, MLE, modelin üretim ortamına dağıtımını ve ölçeklendirilmesini yöneten birincil sorumludur. Bu süreç, modelin konteynerleştirilmesini (Docker), dağıtılmış sistemlere (Kubernetes) entegrasyonunu ve Sürekli Entegrasyon/Sürekli Dağıtım (CI/CD) işlemlerinin kurulmasını içerir.7

3.3. Sürekli İzleme, Bakım ve Operasyonel Ömür Yönetimi

Model üretime alındıktan sonra, Makine Öğrenimi Mühendisi (MLE), modelin operasyonel ömrünü yönetir. Günlük görevler arasında modelin performansının sürekli izlenmesi (model monitoring), performans düşüşünün (drift) tespiti, ölçeklenebilirlik yönetimi ve tahminlerin sunulması için gerekli altyapının sürekli olarak yönetilmesi yer alır.7

Bu analizler gösteriyor ki, Veri Bilimci modelin doğuşunu sağlarken (inovasyon), Makine Öğrenimi Mühendisi modelin yaşamını yönetir (güvenilirlik).7 Bir modelin karşılaştığı operasyonel zorlukların büyük bir kısmı (altyapı hataları, veri akışı yönetimi ve izleme) MLE’nin sorumluluk alanına girer. Bu işbirliği, inovasyonun gerçek dünya sistemlerinde güvenilir ve kullanışlı kalmasını sağlar.7

Yaşam Döngüsü AşamasıVeri Bilimci (DS) Birincil SorumluluğuML Mühendisi (MLE) Birincil SorumluluğuTemel Çıktı ve Gösterge
Veri HazırlıkKeşifçi Analiz (EDA), Özellik Mühendisliği TasarımıVeri Boru Hattı Oluşturma, Kalite Kontrolü, ETL/ELT YönetimiÖzellik Seti, Boru Hattı Güvenilirliği 18
Model GeliştirmeModel Eğitimi, Algoritma Seçimi, Prototip DoğrulamaDağıtık Eğitim Altyapısı, Kod Kapsamı TestleriEğitilmiş Model Yapıtı (Artifact) 7
Dağıtım (Deployment)Modelin Teslimi (Artifact Handoff)Dağıtım Altyapısının Kurulması (CI/CD, API Servisi, Konteynerleme)Yüksek Güvenilirlikli API Servisi 7
Bakım ve İzlemeVeri Kayması (Drift) Analizi, Yeniden Eğitim GerekçelendirmesiSürekli İzleme (Monitoring), Ölçeklendirme, Yeniden Eğitim Boru Hattı YönetimiGüvenilir Sistem Performansı 7

Tablo 5.1: ML Yaşam Döngüsünde DS ve MLE Sorumluluk Dağılımı (MLOps Çerçevesi)

4. Temel Yetkinlikler ve Gerekli Teknik Arka Plan Karşılaştırması

Bu rollerin gerektirdiği yetkinlikler, temel olarak istatistik, yazılım mühendisliği ve teorik matematik olmak üzere üç ana disiplinde farklılaşır.

4.1. Matematik, İstatistik ve Teorik Bilgi Gereksinimleri

Veri Bilimci için en kritik yetkinlik, istatistiksel analiz ve çıkarımdır. Bu, olasılık, istatistiksel çıkarım, regresyon ve hipotez testleri gibi konuları anlamayı içerir.6 DS’nin matematiksel odak noktası, verilerden anlamlı ve güvenilir sonuçlar çıkararak iş problemine uygulanabilirliğini sağlamaktır.8

Yapay Zeka Araştırmacısı (AIR) ve Makine Öğrenimi Mühendisi (MLE) rolleri ise daha derin teorik matematiksel temeller gerektirir. Özellikle AIR, derin öğrenme mimarileri, optimizasyon, lineer cebir ve ileri düzey hesap (multivariate calculus) konularında uzmanlık gerektirir.16 Bu bilgi, yeni algoritmalar geliştirmek ve karmaşık modelleri temel düzeyde optimize etmek için elzemdir. MLE, bu matematiksel temelleri üretim bağlamında uygulamaya dönüştürür.

4.2. Programlama Dilleri, Araçlar ve Yazılım Mühendisliği Disiplini

Programlama dilleri ve kullanılan araç setleri, rollerin operasyonel farklılıklarını açıkça gösterir.

Veri Bilimci için en yaygın diller Python ve R’dir.6 Veri analizi ve manipülasyonu için Pandas, NumPy ve Scikit-learn gibi kütüphaneler kullanılır.6 Veri erişimi ve sorgulama yeteneği için SQL bilgisi temel bir gerekliliktir.6 DS, hızlı prototipleme ve deneysel amaçlar için Scikit-learn’ü (kolay öğrenme eğrisi) tercih eder.23

Makine Öğrenimi Mühendisi ise Python’ın yanı sıra, büyük veri işleme ve dağıtık hesaplama gereksinimleri nedeniyle Scala veya Java gibi dilleri de kullanabilir.24 Scala, özellikle Apache Spark gibi popüler dağıtık hesaplama çerçeveleriyle birincil programlama dili olarak kullanıldığı için, büyük ölçekli boru hatları inşa eden MLE’ler için zorunlu hale gelmiştir.24 MLE’ler, DS’lere kıyasla yazılım mühendisliği ve sistem tasarımına daha fazla eğilimlidirler.7 Gelişmiş kod kalitesi, versiyonlama, test etme ve dağıtılmış sistem yönetimi, MLE’nin günlük pratiğinin çekirdeğini oluşturur. MLE’nin kullandığı araç setinde, modelin dağıtım yükünü yönetmek için Docker, Kubernetes ve MLOps çerçeveleri yer alır.7

Yapay Zeka Araştırmacıları ise derin öğrenme çalışmaları için PyTorch’u (araştırma ve hızlı prototiplemeye uygun dinamik yapısı nedeniyle) ve TensorFlow’u yoğun olarak kullanır.23

Bu teknik gereksinimler incelendiğinde, ML Mühendisliği (derin matematik, dağıtılmış sistemler) daha dik bir öğrenme eğrisi ve genellikle formal akademik hazırlık gerektirirken, AI Mühendisliği (mevcut çözümleri entegre etme ve dağıtma) mevcut yazılım geliştirme becerileri üzerine inşa edilerek daha kolay bir giriş yolu sunabilmektedir.16 Bu durum, büyük organizasyonların artık ML için iki farklı mühendislik seviyesi (uygulama odaklı AI Mühendisliği ve geliştirme odaklı ML Mühendisliği) tanımladığını göstermektedir.

4.3. Teknik Olmayan Yetkinlikler: İş Zekası ve İletişim

Veri Bilimciler için teknik bilginin ötesinde, İş Zekası (Business Acumen) ve iletişim/sunum yetenekleri, başarıyı belirleyen kritik faktörlerdir.9 DS’nin amacı, sadece doğru modeli inşa etmek değil, aynı zamanda analizi iş paydaşlarının anlayabileceği ve uygulayabileceği eyleme geçirilebilir stratejilere dönüştürmektir.10

Kariyer gelişiminde, özellikle kıdemli seviyelere (5-10 yıl) ulaşıldığında, teknik yetkinlikler yerini kişisel becerilere (hikaye anlatımı, alan bilgisi, organizasyon içinde inisiyatif alma ve işlerin yürümesini sağlama) bırakır.11 Bu, kıdemli DS ve MLE rollerinin artık sadece model geliştirmekten ziyade, stratejik liderlik becerileri gerektirdiğini göstermektedir.

Yetkinlik AlanıVeri Bilimci (DS)ML Mühendisi (MLE)AI Araştırmacısı (AIR)
Ana Disiplin Odak Noktasıİstatistiksel Analiz, Modelleme ve İş Zekası 10Yazılım Mühendisliği, Sistem Tasarımı ve Ölçekleme 7Teorik Bilgisayar Bilimleri, Yeni Algoritma Geliştirme 14
Matematik/İstatistikİstatistiksel Çıkarım, Olasılık, Hipotez Testleri 6Uygulamalı ML Algoritmaları, Optimizasyon TemelleriDerin Öğrenme Mimarileri, Lineer Cebir, İleri Optimizasyon 16
Gerekli Programlama DilleriPython (Pandas), R, SQL 6Python (Üretim), Scala/Java (Büyük Veri İşleme), C++ (Düşük Gecikme) 24Python (PyTorch/TensorFlow)
Önemli Araçlar/KütüphanelerScikit-learn, Veri Görselleştirme Kütüphaneleri 6Docker, Kubernetes, MLOps Çerçeveleri (MLflow, Airflow) 7GPU/Dağıtık Eğitim Çerçeveleri
Kariyer Çıktısıİş İçgörüleri, Stratejik Raporlar, Deneysel ModellerYüksek Güvenilirlikli Üretim Sistemleri, Ölçeklenebilir API’lar 7Yayınlar, Yeni Teknikler, Temel Teori Geliştirme 14

Tablo 4.1: Temel Yetkinliklerin Rolle Göre Karşılaştırması

5. MLOps (Makine Öğrenimi Operasyonları) Bağlamında İşbirliği Dinamikleri

MLOps (Makine Öğrenimi Operasyonları), modern ML projelerinin başarısında merkezi bir rol oynar ve DS ile MLE arasındaki ayrımı kesinleştiren, aynı zamanda işbirliğini zorunlu kılan temel çerçevedir. MLOps, Makine Öğrenimi ve Operasyon (operations-ops) kelimelerinin birleşimidir ve DevOps prensiplerini makine öğrenimine uygulayarak sürekli bir geri bildirim döngüsü yaratır.19

5.1. MLOps: Araştırma ve Mühendislik Arasındaki Köprü

MLOps’un ortaya çıkışı, büyük ölçüde Veri Bilimciler ile Operasyon ekibi arasındaki beceri boşluğunun bir sonucudur. Çoğu Veri Bilimci, bir ML sorunu için etkili bir model oluşturabilse de, bu modeli üretimde paketleme, test etme, dağıtma veya sürdürme becerilerine sahip değildir.21 MLOps, bu boşluğu standartlaştırılmış araçlar ve uygulamalarla doldurarak kuruluşların uzun vadeli değer üretmesine ve ML girişimleriyle ilişkili operasyonel riskleri azaltmasına yardımcı olur.21

Bu çerçeve, Veri Bilimcileri ve Makine Öğrenimi Mühendislerini, sürekli entegrasyon (CI) ve sürekli devreye alma (CD) uygulamalarını benimseyerek işbirliği yapmaya zorlar.21 Model yaşam döngüsü; veri hazırlama, model eğitimi, ayarlama, devreye alma ve izleme gibi karmaşık bileşenlerden oluşur ve bu süreçleri senkronize bir şekilde yürütmek operasyonel titizlik gerektirir.21

5.2. Model Devri (Handoff) Sürecindeki Yapısal Zorluklar

Geleneksel ML mimarisinde, model handoff (devri), veri bilimcilerinin eğitilmiş bir modeli basitçe bir yapıt (artifact) olarak mühendislik ekibine teslim etmesiyle gerçekleşirdi.20 Bu, modelin üretim kalitesine uygun olmaması, kodlama standartlarının yetersiz olması veya kolayca izlenebilir bir formatta sunulmaması gibi nedenlerle büyük bir sürtünme noktası oluştururdu.

MLOps yaklaşımı, Veri Bilimcinin prototipleme aşamasında bile üretim standartlarını (kod kalitesi, paketleme) dikkate almasını zorunlu kılarak bu kopukluğu azaltır. Makine Öğrenimi Mühendisi, bu teslim edilen modeli altyapıya entegre eder ve modelin düzgün bir şekilde izlenmesi, doğrulanması ve yönetilmesi için gereken tüm MLOps unsurlarını uygular.7

5.3. Altyapı Olgunluğu ve Rol Belirsizliği

MLOps altyapısının kurulu olduğu büyük ve olgun şirketlerde, Makine Öğrenimi Mühendisleri (MLE) genellikle MLOps/DevOps ekipleri tarafından kurulan altyapıyı kullanır.26 Ancak, ML alanına yeni giren veya daha küçük ölçekli şirketlerde, altyapı mevcut olmayabilir. Bu gibi durumlarda, MLE’ler (ve bazen Veri Bilimciler) altyapıyı kendileri uygulamak zorunda kalırlar.26

Bu durum, Makine Öğrenimi Mühendisi rolünün, organizasyonun teknolojik olgunluğuna bağlı olarak büyük ölçüde değişebileceğini gösterir. Olgun şirketlerde MLE, öncelikle model optimizasyonu ve üretim kod kalitesine odaklanırken, daha az olgun şirketlerde rol, altyapı mühendisliği sorumluluklarını da içerecek şekilde hibritleşir.

5.4. Veri Kalitesi ve Sürekli İzleme Zorunluluğu

MLOps süreçlerinin temel zorluklarından biri, modellerin performansını sürekli olarak izlemek ve gerektiğinde yeniden eğitmektir.7 Üretimdeki bir modelin performans düşüşü (model drift), genellikle altyapı sorunlarından değil, verideki değişimlerden kaynaklanır. Bu veri kayması (data drift) olarak bilinen olgu, DS ve MLE’nin sürekli işbirliği yapmasını ve veri kalitesi metriklerini iş paydaşları ile kontrol etmesini zorunlu kılar.18 MLE teknik izlemeyi sağlarken, DS bu düşüşün istatistiksel ve iş bağlamındaki nedenlerini analiz eder.

6. Sonuç ve Stratejik Öneriler

Veri Bilimci (DS), Makine Öğrenimi Mühendisi (MLE) ve Yapay Zeka Uzmanı/Araştırmacısı (AIR) rolleri, aynı geniş Yapay Zeka şemsiyesi altında yer almalarına rağmen, kritik derecede farklı yetkinlik profilleri, operasyonel odak noktaları ve organizasyonel çıktılar sunar. DS, analitik içgörüyü ve iş problem çözümünü hedeflerken, MLE, yazılım mühendisliği disiplinini kullanarak modelin operasyonel ömrünü ve ölçeklenebilirliğini garanti eder. AIR ise temel bilimsel yeniliklere odaklanır.

Bu roller arasındaki ayrımların netliği, bir organizasyonun teknik stratejisinin başarısı için esastır:

  1. Organizasyonel Netlik: Kurumlar, tek bir “tek boynuzlu at” Veri Bilimci arayışından vazgeçmelidir. Rollerin özelleştirilmesi (DS: Analiz ve Çıkarım; MLE: Üretim ve Ölçeklendirme) genel verimliliği artırır.8
  2. MLOps Zorunluluğu: MLOps, DS ve MLE arasındaki kaçınılmaz işbirliğini standartlaştırır. Bir organizasyonun ML girişimlerinden uzun vadeli değer elde etmesi, MLOps çerçevesinin sağlamlığına bağlıdır.21
  3. Kariyer Yönlendirmesi (Rol Seçimi Matrisi):
    • Teorik İnovasyon ve Algoritma Geliştirme Odaklı Adaylar: Yapay Zeka Uzmanı/Araştırmacısı rolüne odaklanmalıdır. Bu yol, derin matematiksel temeller (lineer cebir, optimizasyon) ve akademik çıktıları (yayınlar) önceliklendirir.14
    • İş Problemi Çözme, İstatistik ve Deney Tasarımı Odaklı Adaylar: Veri Bilimci rolü idealdir. Bu rolde başarı, istatistiksel geçerliliği, iş zekasını ve güçlü hikaye anlatımı becerilerini gerektirir.8
    • Sistemsel Ölçeklenebilirlik ve Yazılım Kalitesi Odaklı Adaylar: Makine Öğrenimi Mühendisi rolü yüksek etki ve maaş potansiyeli sunar. Bu uzmanlık, MLOps, CI/CD ve dağıtık sistemler konusundaki uzmanlığı gerektirir, bu da modelin ticari değere dönüşmesini sağlayan ana faktördür.7
  4. Kıdemli Seviye Gelişimi: Kariyerin ilerleyen aşamalarında, teknik yeterlilik temel bir gereklilik olmaya devam etse de, iletişim, veri hikayesi anlatımı ve organizasyonu yönlendirme gibi kişisel beceriler, profesyonelleri bir sonraki liderlik seviyesine taşıyan belirleyici unsurlar haline gelir.

Kaynak: Google Gemini

dnyArduino ile LCD Ekranda Oyun Oynama

Merhaba Arkadaşlar,
dnyArduino ile LCD ekran ve Buton yardımıyla oynanan bir oyun uygulaması göstereceğim.Aşağıda kolaylıkla yapabileceğiniz bağlantı şeması yer almakta.hasankahraman2

İlgili kodlar aşağıda bulunmaktadır.
[csharp]#include //LCD ekran Kütüphanesini Çağırdık

#define PIN_BUTTON 2 // B1 butonu 2. pin e tanımladık
#define PIN_AUTOPLAY 1
#define PIN_READWRITE 10
#define PIN_CONTRAST 12

#define SPRITE_RUN1 1
#define SPRITE_RUN2 2
#define SPRITE_JUMP 3
#define SPRITE_JUMP_UPPER ‘.’ // ‘.’ Karaterini kafa olarak ayarla
#define SPRITE_JUMP_LOWER 4
#define SPRITE_TERRAIN_EMPTY ‘ ‘ // User the ‘ ‘ character
#define SPRITE_TERRAIN_SOLID 5
#define SPRITE_TERRAIN_SOLID_RIGHT 6
#define SPRITE_TERRAIN_SOLID_LEFT 7

#define HERO_HORIZONTAL_POSITION 1 // Oyun Kahramanımızın dikey pozisyonu

#define TERRAIN_WIDTH 16
#define TERRAIN_EMPTY 0
#define TERRAIN_LOWER_BLOCK 1
#define TERRAIN_UPPER_BLOCK 2

#define HERO_POSITION_OFF 0 // Oyun Kahramanımız görünmez durumda
#define HERO_POSITION_RUN_LOWER_1 1 // Kahramanımız alt satırda koşuyor (1. pozisyon)
#define HERO_POSITION_RUN_LOWER_2 2 // (2. Pozisyon)

#define HERO_POSITION_JUMP_1 3 // Zıplama Başlatması
#define HERO_POSITION_JUMP_2 4 // Yarı ilerleme
#define HERO_POSITION_JUMP_3 5 // Üst satırda zıplama
#define HERO_POSITION_JUMP_4 6 // Üst satırda zıplama
#define HERO_POSITION_JUMP_5 7 // Üst satırda zıplama
#define HERO_POSITION_JUMP_6 8 // Üst satırda zıplama
#define HERO_POSITION_JUMP_7 9 // yarım aşağı
#define HERO_POSITION_JUMP_8 10 // zemin

#define HERO_POSITION_RUN_UPPER_1 11 // Kahramanımız üst satırda koşuyor ( 1.pozisyon)
#define HERO_POSITION_RUN_UPPER_2 12 // (2. Pozisyon)

LiquidCrystal lcd(11,9, 6, 5, 4, 3); // LCD ekran pinlerimizi tanımladık
static char terrainUpper[TERRAIN_WIDTH + 1];
static char terrainLower[TERRAIN_WIDTH + 1];
static bool buttonPushed = false;

void initializeGraphics(){
static byte graphics[] = {
// 1. Pozisyonda ilerle
B01100,
B01100,
B00000,
B01110,
B11100,
B01100,
B11010,
B10011,
// Pozisyon 2 de ilerle
B01100,
B01100,
B00000,
B01100,
B01100,
B01100,
B01100,
B01110,
// Zıpla
B01100,
B01100,
B00000,
B11110,
B01101,
B11111,
B10000,
B00000,
// Alçak zıplama
B11110,
B01101,
B11111,
B10000,
B00000,
B00000,
B00000,
B00000,
// Zemin
B11111,
B11111,
B11111,
B11111,
B11111,
B11111,
B11111,
B11111,
// Zemin sağ taraf
B00011,
B00011,
B00011,
B00011,
B00011,
B00011,
B00011,
B00011,
// Zemin sol taraf
B11000,
B11000,
B11000,
B11000,
B11000,
B11000,
B11000,
B11000,
};
int i;
// Skip using character 0, this allows lcd.print() to be used to
// quickly draw multiple characters
for (i = 0; i < 7; ++i) { lcd.createChar(i + 1, &graphics[i * 8]); } for (i = 0; i < TERRAIN_WIDTH; ++i) { terrainUpper[i] = SPRITE_TERRAIN_EMPTY; terrainLower[i] = SPRITE_TERRAIN_EMPTY; } } // Slide the terrain to the left in half-character increments // void advanceTerrain(char* terrain, byte newTerrain){ for (int i = 0; i < TERRAIN_WIDTH; ++i) { char current = terrain[i]; char next = (i == TERRAIN_WIDTH-1) ? newTerrain : terrain[i+1]; switch (current){ case SPRITE_TERRAIN_EMPTY: terrain[i] = (next == SPRITE_TERRAIN_SOLID) ? SPRITE_TERRAIN_SOLID_RIGHT : SPRITE_TERRAIN_EMPTY; break; case SPRITE_TERRAIN_SOLID: terrain[i] = (next == SPRITE_TERRAIN_EMPTY) ? SPRITE_TERRAIN_SOLID_LEFT : SPRITE_TERRAIN_SOLID; break; case SPRITE_TERRAIN_SOLID_RIGHT: terrain[i] = SPRITE_TERRAIN_SOLID; break; case SPRITE_TERRAIN_SOLID_LEFT: terrain[i] = SPRITE_TERRAIN_EMPTY; break; } } } bool drawHero(byte position, char* terrainUpper, char* terrainLower, unsigned int score) { bool collide = false; char upperSave = terrainUpper[HERO_HORIZONTAL_POSITION]; char lowerSave = terrainLower[HERO_HORIZONTAL_POSITION]; byte upper, lower; switch (position) { case HERO_POSITION_OFF: upper = lower = SPRITE_TERRAIN_EMPTY; break; case HERO_POSITION_RUN_LOWER_1: upper = SPRITE_TERRAIN_EMPTY; lower = SPRITE_RUN1; break; case HERO_POSITION_RUN_LOWER_2: upper = SPRITE_TERRAIN_EMPTY; lower = SPRITE_RUN2; break; case HERO_POSITION_JUMP_1: case HERO_POSITION_JUMP_8: upper = SPRITE_TERRAIN_EMPTY; lower = SPRITE_JUMP; break; case HERO_POSITION_JUMP_2: case HERO_POSITION_JUMP_7: upper = SPRITE_JUMP_UPPER; lower = SPRITE_JUMP_LOWER; break; case HERO_POSITION_JUMP_3: case HERO_POSITION_JUMP_4: case HERO_POSITION_JUMP_5: case HERO_POSITION_JUMP_6: upper = SPRITE_JUMP; lower = SPRITE_TERRAIN_EMPTY; break; case HERO_POSITION_RUN_UPPER_1: upper = SPRITE_RUN1; lower = SPRITE_TERRAIN_EMPTY; break; case HERO_POSITION_RUN_UPPER_2: upper = SPRITE_RUN2; lower = SPRITE_TERRAIN_EMPTY; break; } if (upper != ' ') { terrainUpper[HERO_HORIZONTAL_POSITION] = upper; collide = (upperSave == SPRITE_TERRAIN_EMPTY) ? false : true; } if (lower != ' ') { terrainLower[HERO_HORIZONTAL_POSITION] = lower; collide |= (lowerSave == SPRITE_TERRAIN_EMPTY) ? false : true; } byte digits = (score > 9999) ? 5 : (score > 999) ? 4 : (score > 99) ? 3 : (score > 9) ? 2 : 1;

// Draw the scene
terrainUpper[TERRAIN_WIDTH] = ‘\0’;
terrainLower[TERRAIN_WIDTH] = ‘\0’;
char temp = terrainUpper[16-digits];
terrainUpper[16-digits] = ‘\0’;
lcd.setCursor(0,0); //LCD ekranın ilk satırı üst haraketler için
lcd.print(terrainUpper);
terrainUpper[16-digits] = temp;
lcd.setCursor(0,1); //LCD ekranın ikinici satırı alt hareketler için
lcd.print(terrainLower);

lcd.setCursor(16 – digits,0);
lcd.print(score);

terrainUpper[HERO_HORIZONTAL_POSITION] = upperSave;
terrainLower[HERO_HORIZONTAL_POSITION] = lowerSave;
return collide;
}

// Handle the button push as an interrupt
void buttonPush() {
buttonPushed = true;
}

void setup(){
pinMode(PIN_READWRITE, OUTPUT); //Gerekli giriş ve çıkış pinlerini ayarlıyoruz
digitalWrite(PIN_READWRITE, LOW);
pinMode(PIN_CONTRAST, OUTPUT);
digitalWrite(PIN_CONTRAST, LOW);
pinMode(PIN_BUTTON, INPUT);
digitalWrite(PIN_BUTTON, HIGH);
pinMode(PIN_AUTOPLAY, OUTPUT);
digitalWrite(PIN_AUTOPLAY, HIGH);

// Digital pin 2 maps to interrupt 0
attachInterrupt(0/*PIN_BUTTON*/, buttonPush, FALLING);

initializeGraphics();

lcd.begin(16, 2);
}
// Tekrar eden döngüleri belirliyoruz
void loop(){
static byte heroPos = HERO_POSITION_RUN_LOWER_1;
static byte newTerrainType = TERRAIN_EMPTY;
static byte newTerrainDuration = 1;
static bool playing = false;
static bool blink = false;
static unsigned int distance = 0;

if (!playing) {
drawHero((blink) ? HERO_POSITION_OFF : heroPos, terrainUpper, terrainLower, distance >> 3);
if (blink) {
lcd.setCursor(0,0);
lcd.print(“OYUNU BASLAT”); // Ekrana Oyunun durumu hakkında bilgi yazıyoruz
}
delay(250);
blink = !blink;
if (buttonPushed) {
initializeGraphics();
heroPos = HERO_POSITION_RUN_LOWER_1;
playing = true;
buttonPushed = false;
distance = 0;
}
return;
}

// Shift the terrain to the left
advanceTerrain(terrainLower, newTerrainType == TERRAIN_LOWER_BLOCK ? SPRITE_TERRAIN_SOLID : SPRITE_TERRAIN_EMPTY);
advanceTerrain(terrainUpper, newTerrainType == TERRAIN_UPPER_BLOCK ? SPRITE_TERRAIN_SOLID : SPRITE_TERRAIN_EMPTY);

// Make new terrain to enter on the right
if (–newTerrainDuration == 0) {
if (newTerrainType == TERRAIN_EMPTY) {
newTerrainType = (random(3) == 0) ? TERRAIN_UPPER_BLOCK : TERRAIN_LOWER_BLOCK;
newTerrainDuration = 2 + random(10);
} else {
newTerrainType = TERRAIN_EMPTY;
newTerrainDuration = 10 + random(10);
}
}

if (buttonPushed) {
if (heroPos <= HERO_POSITION_RUN_LOWER_2) heroPos = HERO_POSITION_JUMP_1; buttonPushed = false; } if (drawHero(heroPos, terrainUpper, terrainLower, distance >> 3)) {
playing = false; // The hero collided with something. Too bad.
} else {
if (heroPos == HERO_POSITION_RUN_LOWER_2 || heroPos == HERO_POSITION_JUMP_8) {
heroPos = HERO_POSITION_RUN_LOWER_1;
} else if ((heroPos >= HERO_POSITION_JUMP_3 && heroPos <= HERO_POSITION_JUMP_5) && terrainLower[HERO_HORIZONTAL_POSITION] != SPRITE_TERRAIN_EMPTY) { heroPos = HERO_POSITION_RUN_UPPER_1; } else if (heroPos >= HERO_POSITION_RUN_UPPER_1 && terrainLower[HERO_HORIZONTAL_POSITION] == SPRITE_TERRAIN_EMPTY) {
heroPos = HERO_POSITION_JUMP_5;
} else if (heroPos == HERO_POSITION_RUN_UPPER_2) {
heroPos = HERO_POSITION_RUN_UPPER_1;
} else {
++heroPos;
}
++distance;

digitalWrite(PIN_AUTOPLAY, terrainLower[HERO_HORIZONTAL_POSITION + 2] == SPRITE_TERRAIN_EMPTY ? HIGH : LOW);
}
delay(100);
} // www.instructables.com/id/Arduino-LCD-Game sitesinden alıntıdır. dnyArduino için uyarlanmıştır. [/csharp]

Uygulama ile ilgili videoyu izleyebilirsiniz.

dnyArduino ile LCD ve Buton Uygulaması

Merhaba Arkadaşlar,
dnyArduino ile basit bir şekilde LCD ekran ve Buton Modüllerinin birlikte kullanılmasını göstereceğim.Aşağıda kolaylıkla yapabileceğiniz bağlantı şeması yer almakta.
deney1

İlgili Kodlara Aşağıdan Ulaşabilirsiniz.


#include 
LiquidCrystal LCD(11,10,2,3,4,5); // LCD nin bağlı bulunduğu pinler
int lastbutton1=LOW;
int lastbutton2=LOW;
int lastbutton3=LOW;
void setup() {
// put your setup code here, to run once:
pinMode(9, INPUT);//button 1  9. pin e bağlı 
pinMode(12, INPUT);//b2  12. pine bağlı 
pinMode(13, INPUT);//b3  13. pine bağlı
LCD.begin(16, 2); 
}
 
void loop() {
// put your main code here, to run repeatedly:
int buttonState1,buttonState2,buttonState3;
buttonState1 = digitalRead(9);
buttonState2 = digitalRead(12);
buttonState3 = digitalRead(13);
if(buttonState2== LOW && buttonState3==LOW){
if((buttonState1!=lastbutton1)||(buttonState1==HIGH)){
LCD.setCursor(0,0);
LCD.print("Birinci ");
LCD.setCursor(0,1);
LCD.print("Butona Bastiniz"); 
lastbutton1=HIGH;
lastbutton3=LOW;
lastbutton2=LOW;
}}
if(buttonState3 ==LOW && buttonState1==LOW){
if((buttonState2!=lastbutton2)||(buttonState2==HIGH)){
LCD.setCursor(0,0);
LCD.print("Ikinci ");
LCD.setCursor(0,1);
LCD.print("Butona Bastiniz"); 
lastbutton2=HIGH;
lastbutton1=LOW;
lastbutton3=LOW;
}}
 
if(buttonState2 == LOW && buttonState1==LOW){
if((buttonState3!=lastbutton3)||(buttonState3==HIGH)){
LCD.setCursor(0,0);
LCD.print("Ucuncu ");
LCD.setCursor(0,1);
LCD.print("Butona Bastiniz"); 
lastbutton3=HIGH;
lastbutton2=LOW;
lastbutton1=LOW;
}}}

Uygulamanın videosunu aşağıdan izleyebilirsiniz.

Stephen Hawking is concerned about Artificial Intelligence

Stephen Hawking is concerned that development in artificial intelligence will pose a threat to humanity in the future. Stephen Hawking is a Professor and the Director of Research at the Department of Applied Mathematics and Theoretical Physics at the University of Cambridge. He was honored with a 2012 Fundamental Physics Prize for his work in quantum physics.

 

When speaking with BBC, he said, “The development of full artificial intelligence could spell the end of the human race.”

This statement came after he was questioned about improvements in the technology he currently uses to communicate. It is a computer-based communication system developed by Intel and uses a basic form of Artificial Intelligence. The system was developed in order to aid Hawking in speaking after he suffered fromAmyotrophic Lateral Sclerosis (ALS).

This technology was also supported by SwiftKey, a British Company that specializes in creating smart keyboard applications for the Android and iOS. Their technology learns how Hawking thinks and based on that, it suggests possible words the professor might use next while constructing a sentence.

Professor Hawking appreciates the benefits of Artificial Intelligence so far and has conceded that they have proven to be very helpful. His main concern is what might happen when humans create a machine that can outsmart them and think on its own.

“It would take off on its own, and re-design itself at an ever increasing rate,” he said.

 

“Humans, who are limited by slow biological evolution, couldn’t compete, and would be superseded.”

stephen_hawkings-1024x688

 

Not everyone thinks that way. In fact Rollo Carpenter, the creator of Cleverbot thinks otherwise.

“I believe we will remain in charge of the technology for a decently long time and the potential of it to solve many of the world problems will be realised,” said Carpenter.

It is widely agreed that any Artificial Intelligence technology that could become an enemy to humanity is far from reach. One other concern is unemployment and inequality that might arise as a consequence of the advancement in artificial intelligence.

 

 

It’s hard to think of a job that a computer ultimately won’t be able to do as well if not better than we can do,” said Toby Walsh, a professor in AI at the National Information and Communications Technology Australia.

 

“There are various forces in play, and one of those forces is technology. Technology is actually a force that is tending to concentrate and widen the inequality gaps. This is a challenge not for scientists but one for society to address, of how are we going to work through these changes.”

Although there are major concerns, artificial intelligence still has a high prospect and that is perhaps why it is still being researched by various institutions. What will be the product of an entity that can outsmart human intelligence? How much more advanced can we get as a result? These are all interesting questions that we might perhaps be able to answer when artificial intelligence reaches its maximum potential.

 

Kaynak

Erken Kaybedenler

Büyüdükçe arzularım küçüldü, şaşkınlıklarım küçüldü, beklentilerim küçüldü.

Büyüdükçe öyle küçüldüm ki içimde taşacak bir şey kalmadı.

Büyümenin bir bedeli varsa işte bu, yarım metre uzadım, yirmi kilo aldım ve dünyadan vazgeçtim.

Emrah SERBES / Erken Kaybedenler