Yapay Zeka Mühendisliği Rehberi
2022 yılında yapay zeka üreticisi OpenAI’ın ChatGPT ürününü duyurmasıyla birlikte yapay zekanın hayatımızdaki rolü hızlanmaya başladı ve günümüzde her alana bu etkinin yayıldığını görebiliyoruz. Birçok yapay zeka ürünü bulunuyor ve bu ürünlerin kullanım amacı birbirinden farklı olacak şekilde sunulmaya devam etmektedir. İlgili AI (yapay zeka) araçlarını sunan firmalar ise yapay zeka mühendisleri sayesinde ürünü doğru standartlarda sunarak, hedef kitleye sorunsuz ürünü oluşturmak adına çalışmalar yapmaktadır. Bu içeriğimizde ilgili araçlarda etkin rol oynayan yapay zeka mühendisleri ve yapay zeka mühendisliğini tüm detayları ile aktaracağız. O zaman yapay zeka mühendisliğinin amacı ve ne iş yaptığını anlayarak başlayalım.
Yapay Zeka Mühendisliği Nedir?
Yapay zeka mühendisliği, makinelere insan gibi düşünme, algılama ve problem çözme yetenekleri kazandırmaya çalışan bir mühendislik alanıdır. Bu alanda bilgisayar sistemleri, robotlar gibi öğelere insani zeka gerektiren durumlarda yetenekler kazandırırlar. Bu yetenekler aşağıdaki gibi olabilir:
- Konuşma ve doğal dil işleme becerisi
- Görüntü ve ses tanıma
- Makine öğrenmesi
- Problem çözme
- Karar verme
Bu yetenekleri bilgisayar sistemleri ya da robotlar gibi öğelere kazandırmak içinse yapay zeka mühendisleri karmaşık algoritma ve modelleri geliştirme, yazılım ve donanım bileşenlerini entegre yapıda kullanma, ciddi miktardaki veri sayesinde makinenin eğitimi gibi hususlarda mühendislik zekasını kullanıyorlar. Örneğin, yapay zeka mühendisleri bir ses tanıma sistemi geliştirerek telefonlardaki sesli asistanları yapıp bu sistemi yapay zeka mühendisliği ile oluşturarak kullanıma sundular.
Yapay Zeka Mühendisi Ne İş Yapar?
Yapay zeka mühendislerinin temel amacı, makineleri ve bilgisayar programlarını akıllı hale getirmektir. Onlar bu programlara insan gibi düşünmeyi, karar vermeyi öğretirler. İnsan zekasını çoklu yönlerde taklit edebilecek çıktıları sunmayı hedefleyen yapay zeka mühendisleri, insanlar gibi düşünüp karar verebilen bilgisayar programları üreten kişilerdir. Yapay zeka mühendisleri bilgisayarlara konuşmayı, resimleri anlamayı, problem çözmeyi öğreterek bir alt küme çerçevesinde doğru çıktıyı sunmayı amaçlarlar.
Mesela bir yapay zeka mühendisi, ev işlerinde yardımcı olacak bir robot programı yapabilir. Bu robota bulaşıkları yıkamayı, ütü yapmayı, yerleri süpürmeyi öğretebilir. Böylece robot akıllı bir şekilde ev işlerini yapabilir. Ya da yapay zeka mühendisi, telefondaki sesli asistanı programlayarak biz soru sorduğumuzda cevap verebilmesi için sesli asistana konuşmayı öğretir.
Bir başka örnek verecek olursak, bir robot köpek aldınız ve ona 'otur' komutu veriyorsunuz. Ama robot köpek sadece havlıyor, oturmuyor. Çünkü ona oturmayı kimse öğretmemiş. İşte yapay zeka mühendisi, robot köpeğe kamera ve sensörler yardımıyla otur komutunu algılamayı ve buna uygun hareket etmeyi programlayabilir. Böylece robot artık aldığı komutu öğrendiği için uygulayabilir.
Teknoloji alanından bir örnek verirsek, cep telefonlarımızın kameraları her geçen gün gelişmeye devam ediyor. Bu kameralarda gece modu var ve bu sayede karanlıkta fotoğraf çekebiliyoruz. Peki telefon kamerası gece modunu nasıl algılamakta? İşte burada yapay zeka devreye giriyor. Yapay zeka mühendisleri, telefon kamerasına gece fotoğraflarını iyileştirebilecek özel bir programlama ile sağlıyorlar. Bu programa milyonlarca gece ve gündüz fotoğrafını örnek gösteriyorlar. Böylece telefon, karanlık bir ortamda fotoğraf çekildiğini anlayınca gece programını çalıştırıyor ve fotoğrafı sanki gündüz çekilmiş gibi aydınlatıyor. Bu sayede telefonumuz, gözümüz gibi değilse bile beyin gibi düşünüp fotoğrafı otomatik olarak iyileştirebiliyor.
Özetle yapay zeka mühendisleri bilgisayarda kodlama yaparak ve dataları kullanarak, bu programları geliştirerek günlük hayatımızı kolaylaştırıyorlar. Yani yapay zeka mühendisliği, makineleri insan gibi düşünebilir hale getirme işidir diyebiliriz.
Madde Madde Yapay Zeka Mühendisleri Neler Yapar?
Aslında yapay zeka mühendislerinin neler yaptığını yukarıda giriş yaparak anlatmıştık. Şimdi ise maddeler halinde bu kısmı örnekler ile detaylandıralım.
Algoritmalar
Yapay zeka mühendisleri algoritmalar geliştirirler. Örneğin bir labirent oyununda, programa labirentin içindeki yolu bulmasını algoritma sayesinde öğretebilirler.
Verilerin Toplanması
Yapay zeka mühendisleri için en önemli husus veri diyebiliriz. Örneğin ses tanıma özelliğine dair bir çalışma varsa, farklı insanların konuşmalarının kayıtlarını toplayıp programa veri kümesini dinletirler.
Makinelerin Eğitilmesi
Veriler sayesinde makineleri eğitilmektedir. Örneğin sürücüsüz arabalara, kameralarla ve sensörlerle yolu takip etmeyi, durmayı öğretebiliriz. Araba bu eğitimler sayesinde tek başına yani sürücüsüz sürüş yapabilir. Hatta yakın zamanda Amerika'da sürücüsüz trafiğe çıkan taksiler, internet kesintisi sonrası yolda kalmıştı.
Test Edilmesi
Mesela sohbet robotunu gerçek insanlara konuşturup, cevaplarını değerlendirirler. Bu değerlendirme sonucunda ise ilgili ürünü geliştirirler.
Yazılım Geliştirilmesi
Örneğin bir çeviri programı ilk başta tek dilde işlem yapabiliyordu. Yazılım geliştirmesi sonrasında ilgili ürünün içerisine farklı diller arasında çeviri yapabilecek kodlar yazarlar. Bu sayede yazılım geliştirme sürecinde yapay zeka mühendisleri aktif rol oynarlar.
Özetle yapay zeka mühendisleri yapay zekayı geliştirip uygulama süreçlerinde aktif rol oynuyor diyebiliriz.
Yapay Zeka Yöntemleri
Yapay zekanın birçok farklı yöntemi vardır. Bu yöntemlerin bağlı olduğu çatı makine öğrenmesi, derin öğrenme gibi terimler, bu terimlerin ise bağlı olduğu ana tema yapay zeka kavramı bulunuyor. Yapay zeka yöntemleri sayesinde yapay zeka mühendisleri ihtiyaca uygun model ile çalışma yaparak en etkili çözümü sunuyorlar.
Makine Öğrenimi Nedir? Nerelerde Kullanılır?
Makine öğrenimi, bilgisayarlar ya da robotlara düzen ve çıkarımlara bağlı olarak doğru modeli geliştirmelerine olanak sağlar. Bilgisayar sistemleri yüksek miktardaki veri setini işlemek ve tanımlamak için makine öğreniminden faydalanmaktadır. Tüm bu süreçlerde en önemlisi verinin miktarı öğrenmenin ne kadar başarılı olacağında en belirleyici kriter olmasıdır. Bu kriterleri sağlayabilmek için de veri kümesinden oluşan sonuçları doğru tahmin etmek üzere kurgulanmıştır. Örneğin bir robota elmayı portakaldan ayırt etmeyi öğreteceğiz. Bunun için bir veri kümesi olarak elma ve portakal resimlerini robota göstereceğiz. Robot bu resimlere bakarak elma nasıl, portakal nasıl şeklinde dersler çıkaracak ve sonuç olarak doğruyu sonucu vermeye endekslenecek.
Makine öğrenimi; üretim, bankacılık, finansal hizmetler, eğlence, perakende gibi hayatımızda yer alan birçok sektörde kullanılmaktadır. Örneğin bankacılık sektöründe kredi kartı sahtekarlıkları ya da şüpheli işlem tespitinde makine öğreniminden yararlanılabilir. Oyun sektöründe ise bilgisayara karşı oynadığımız oyunları düşünebiliriz. Çünkü bilgisayar bizim hamlelerimize göre kendini geliştirerek, öğrenim sonucu hamlelerini yapmaktadır.
Derin Öğrenme Nedir? Örneklerle Derin Öğrenme
Derin öğrenme, insan beyni yapısında bir mantıkla ilerleyen, modellenmiş makine öğrenim tekniğidir. Bu teknikle yapay sinir ağları gibi akıllı sistemler kullanılarak yüksek kapasiteli öğrenme sağlanır. Derin sinir ağları; girdileri alan, bu girdiler üzerinde işlem yapan ve çıktılar üreten katmanlardan oluşur. Her katman, bir önceki katmanın çıktısını almakta ve üzerinde işlem yaparak sonraki katmana aktarmaktadır. Bu sayede ilgili öğrenme derinleşiyor ve insan seviyesinde çıktıya ulaşmak için karmaşık hususlarda çıktıya erişebiliyoruz.
Örneğin mobil bankacılık uygulamasında sahtekarlık ya da şüpheli işlem tespiti yapan bir derin öğrenme modeli düşünün. Bu modelde girdi katmanı müşterinin tutar, tarih, yer gibi işlem verilerini alır. Sonra birkaç gizli katman, bu işlemin müşterinin tutar limiti, yerleşim yeri, haftanın günü gibi geçmiş işlem alışkanlıklarına uygunluğunu inceler. Sonraki katmanlar da IP adresi, kullanılan cihaz gibi işlemin diğer sahtekarlık ya da şüpheli işaretlerini kontrol eder. En son katman da tüm bu özelliklere göre bu işlemin sahtekarlık içerip içermediği ya da şüpheli olup olmadığına karar verir. Görüldüğü gibi, girdi ve çıktı arasına konulan çok sayıda gizli katman modeli derinleştirir ve karmaşık örnekleri öğrenmeyi sağlar. Bankanın da sahte işlemleri tespit etmesi böylece sağlanabilir.
Bir diğer örneğe geçelim. Sosyal medya uygulamalarında ilgi alanlarımıza göre içerik öneren bir derin öğrenme modeli düşünün. Girdi katmanı, kullanıcının paylaşım ve yorum geçmişini alır. Sonraki katmanlar bu verilerden kullanıcının ilgi alanlarını çıkarır. Daha derin katmanlar, kullanıcının takip ettiği hesapları ve beğendiği paylaşımları, izlediği videoları inceleyerek daha spesifik ilgi alanlarını bulur. En son katman da tüm bu çıkarımlara göre kullanıcının hoşuna gidebilecek paylaşımları önerir. Böylece uygulama, derin öğrenme modeli sayesinde kişiye özel içerik önerir. Ayrıca Generative AI yani Üretken Yapay Zeka için Zeo Blog’da yer alan kapsamlı içeriğe de buradan ulaşabilirsiniz.
Doğal Dil İşleme Nedir? Doğal Dil İşleme Uygulamaları Nelerdir?
İnsanlar konuşurken kurallara uygun, düzgün cümleler kurmaz. Doğal dil işleme (NLP), bilgisayarların insan dilini anlayabilmelerini, bu dile uygun çıktıyı üreterek sunmaya olanak sağlar. Örneğin "Evdeki oğlumun ayakkabılarını getirir misin?" diyebiliriz. Bir bilgisayar bunu anlamakta zorlanır. İşte doğal dil işleme sayesinde bilgisayarlara bu tür konuşma ve yazıları çözümlemeyi öğretebiliyoruz. Yani insan gibi dilbilgisi kurallarını bilmemesine rağmen doğal dil işleme sayesinde bilgisayarların bunu anlayabilmelerini sağlıyoruz. Böylece bilgisayarlar artık sorularımıza cevap verebiliyor, sohbet edebiliyor ve metinleri çevirebiliyor.
Sesli asistanlar, çeviri programları, Chatbot’lar, metin özetleme programları, yazım denetimi doğal dil işleme uygulamalarından başlıcalarıdır. Örneğin telefonda mesaj yazarken klavyede yanlış yazdığımız kelimelerin düzeltilmesinin arkasında aslında doğal dil işleme kullanımı söz konusudur.
Doğru İş için Doğru Yapay Zeka Araçlarında Ustalaşın!
Yapay zeka kendi içerisinde derin öğrenme, makine öğrenmesi, doğal dil işleme gibi kolları da barındırmaktadır. Bu yüzden de aslında yapay zekanın çok geniş bir alan ve birçok farklı yöntemi olduğunun farkında olmalıyız.
Mesela evde temizlik yapacak bir robot tasarlıyorsak, ona temizlik hareketlerini makine öğrenmesi ile öğretebiliriz. Böylece robot farklı temizlik işlemlerini yapabilir. Ya da arkadaşımız ile sohbet edecek yapay bir zeka düşünüyorsak, bunun için doğal dil işleme kullanabiliriz. Böylece yapay zeka konuşmaları anlayıp cevap verebilir. Veya doktorlara teşhis koymak için bir program geliştiriyorsak, burada derin öğrenme yöntemiyle görüntüleri çözümleyebiliriz.
Örneklerde görüldüğü gibi amaca uygun yapay zeka yöntemlerini kullanmak ve araçları bu yöntemlerle eğitmek daha uygun olacaktır. Doğru yöntemi seçmek, başarılı ve etkisi yüksek yapay zeka odağında ürün geliştirmek için çok önemlidir.
Yapay Zeka Mühendisi Olmak
Yapay zeka mühendisleri yukarıda yer alan tüm hususlarda bilgi ve becerilere sahip olmakla birlikte bilgisayar programları, makineler gibi öğeleri akıllı hale getirmek için birçok alanda çalışma gerçekleştirmektedir.
Yapay Zeka Mühendisi Olmak İçin Gerekli Beceriler
Yapay zeka mühendisi olmak için yaratıcı, sabırlı ve takım çalışmasına yatkın olmak gerekir. Yeni fikirler bulmayı ve zor problemleri çözmeyi sevmek bu iş için oldukça önemlidir. Yeni teknolojileri takip etmek için sürekli kendini geliştirmek gerekmektedir.
Yapay zeka mühendisinin programlama yani Python, R, Java gibi programlama dillerini öğrenmesi gerekir. Bu sayede makine öğrenimi algoritmaları başta olmak üzere yapay zeka modellerini, derin öğrenme algoritmalarını etkin kullanarak uygulayabilecektir.
Teknik beceriler dışında insan becerileri de önemlidir. İletişim yetenekleri, problem çözme becerisi, zaman yönetimi, takım çalışması, eleştirel düşünme yeteneği gibi kriterlerde kendini geliştirmesi, bu becerilere sahip olması yetkinliğini artıracaktır.
Gelecekte yapay zekanın her yerde olacağı düşünüldüğünde, bu alanda çalışmak çok heyecanlı ve önemli bir iş kolu haline gelecektir. Bu yüzden de üniversitede bilgisayar mühendisliği veya yazılım mühendisliği bölümlerinin tamamlanmış olması mektepli olarak bu alanda yer almanıza olanak sağlayacaktır.
Kaynaklar:
- https://aws.amazon.com/tr/what-is/machine-learning/
- https://www.sap.com/turkey/products/artificial-intelligence/what-is-machine-learning.html
- https://www.indeed.com/career-advice/finding-a-job/ai-engineer
- https://www.simplilearn.com/tutorials/artificial-intelligence-tutorial/how-to-become-an-ai-engineer
- https://professionalprograms.mit.edu/blog/technology/artificial-intelligence-engineering/
- https://www.ibm.com/topics/natural-language-processing
- https://www.tableau.com/learn/articles/natural-language-processing-examples
- https://aws.amazon.com/tr/what-is/deep-learning/