Yapay zeka (AI) mimarisi tasarımı

Yapay zeka (AI), bir bilgisayarın akıllı insan davranışlarını taklit etme özelliğidir. Makineler yapay zeka aracılığıyla görüntüleri analiz edebilir, konuşmayı anlayabilir, doğal yollarla etkileşim kurabilir ve verileri kullanarak tahminlerde bulunabilir.

Illustration depicting the relationship of artificial intelligence as a parent concept. Within AI is machine learning. Within machine learning is deep learning.

Yapay zeka kavramları

Algoritma

Algoritma, bir sorunu çözmek veya bir veri kümesini analiz etmek için kullanılan hesaplamalar ve kurallar dizisidir. Soru sormak için adım adım yönergeler içeren ancak matematik ve programlama koduyla yazılmış bir akış grafiği gibidir. Algoritma, bir evcil hayvanın kedi, köpek, balık, kuş veya kertenkele olup olmadığının nasıl belirleneceğini açıklamaktadır. Çok daha karmaşık olan başka bir algoritma, yazılı veya konuşulan bir dili tanımlamayı, sözcüklerini analiz etme, bunları farklı bir dile çevirmeyi ve ardından çevirinin doğruluğunu denetlemeyi açıklamaktadır.

Makine öğrenmesi

Makine öğrenmesi , tahmine dayalı modeller oluşturmak için matematiksel algoritmalar kullanan bir yapay zeka tekniğidir. Algoritma, veri alanlarını ayrıştırmak ve model oluşturmak için içinde bulunan desenleri kullanarak bu verilerden "öğrenmek" için kullanılır. Bu modeller daha sonra yeni veriler hakkında bilinçli tahminler veya kararlar almak için kullanılır.

Tahmine dayalı modeller bilinen verilerle doğrulanır, belirli iş senaryoları için seçilen performans ölçümleriyle ölçülür ve sonra gerektiğinde ayarlanır. Bu öğrenme ve doğrulama sürecine eğitim adı verilir. Düzenli aralıklarla yeniden eğitme sayesinde ML modelleri zaman içinde iyileştirilir.

Derin öğrenme

Derin öğrenme , tahminlerinin doğru olup olmadığını belirleyebilen bir ML türüdür. Ayrıca verileri analiz etmek için algoritmalar kullanır, ancak bunu ML'den daha büyük bir ölçekte yapar.

Derin öğrenme, birden çok algoritma katmanından oluşan yapay sinir ağlarını kullanır. Her katman gelen verilere bakar, kendi özel analizini gerçekleştirir ve diğer katmanların anlayabileceği bir çıkış üretir. Daha sonra bu çıkış, farklı bir algoritmanın kendi çözümlemesini yaptığı bir sonraki katmana geçirilir ve bu şekilde devam eder.

Her sinir ağında birçok katman ve bazen birden çok sinir ağı kullanan bir makine kendi veri işlemesi aracılığıyla öğrenebilir. Bu, ML'den çok daha fazla veri ve çok daha fazla bilgi işlem gücü gerektirir.

Botlar

Bot, belirli bir görevi gerçekleştirmek için tasarlanmış otomatik bir yazılım programıdır. Bunu vücudu olmayan bir robot olarak düşün. İlk botlar nispeten basitti, nispeten basit algoritmik mantıkla yinelenen ve hacimli görevleri işliıyordu. Buna bir örnek olarak, arama motorları tarafından web içeriğini otomatik olarak keşfetmek ve kataloglayarak incelemek için kullanılan web gezinmeleri yer alır.

Botlar, insan etkinliğini ve karar alma sürecini taklit etmek için yapay zeka ve diğer teknolojileri kullanarak çoğunlukla metin ve hatta konuşma yoluyla insanlarla doğrudan etkileşim kurarken çok daha karmaşık hale gelmiştir. Örnek olarak akşam yemeği rezervasyonu alabilen botlar, müşteri hizmetleri etkileşimlerine yardımcı olan sohbet botları (veya konuşma yapay zekası) ve sosyal medya sitelerine son dakika haberleri veya bilimsel veriler yayınlayan sosyal botlar verilebilir.

Microsoft, kurumsal düzeyde bot geliştirme için oluşturulmuş bir yönetilen hizmet olan Azure Bot Hizmeti sunar.

Otonom sistemler

Otonom sistemler , temel otomasyonun ötesine geçen gelişen yeni bir sınıfın parçasıdır. Belirli bir görevi çok az varyasyonla veya hiç varyasyon olmadan (botlar gibi) art arda gerçekleştirmek yerine, otonom sistemler makinelere zeka getirerek değişen ortamlara uyum sağlayarak istenen hedefe ulaşmak için uyarlanabilir.

Akıllı binalar aydınlatma, havalandırma, klima ve güvenlik gibi işlemleri otomatik olarak denetlemek için otonom sistemler kullanır. Daha gelişmiş bir örnek, iç mekanını ayrıntılı bir şekilde eşlemek, hangi bölümlerin yapısal olarak ses olduğunu belirlemek, nefes alabilirlik için hava analiz etmek ve uzak uçta gerçek zamanlı olarak insan izlemesi olmadan kurtarma ihtiyacı olan kapana kısılmış madencilerin işaretlerini algılamak için daraltılmış bir maden kuyusunu keşfeden, kendi kendine yönlendirilmiş bir robot olabilir.

Microsoft AI hakkında genel bilgiler

Microsoft AI hakkında daha fazla bilgi edinin ve ilgili haberleri takip edin:

Üst düzey mimari türleri

Önceden oluşturulmuş yapay zeka

Önceden oluşturulmuş yapay zeka tam olarak kullanıma hazır yapay zeka modelleri, hizmetleri ve API'leri gibi görünür. Bunlar, veri toplamak ve ardından kendi modellerinizi oluşturmak, eğitmek ve yayımlamak zorunda kalmadan uygulamalara, web sitelerine ve akışlara zeka eklemenize yardımcı olur.

Önceden oluşturulmuş yapay zekanın bir örneği, olduğu gibi birleştirilebilen veya daha fazla özel eğitim için temel sağlamak için kullanılabilen önceden eğitilmiş bir model olabilir. Başka bir örnek, doğal dili istenen şekilde işlemek için istenebilecek bulut tabanlı bir API hizmeti olabilir.

Azure Bilişsel Hizmetler

Bilişsel Hizmetler geliştiricilere önceden oluşturulmuş API'leri ve tümleştirme araç setlerini kullanarak görebilen, duyabilen, konuşabilen, anlayan ve hatta mantık yürütmeye başlayan uygulamalar oluşturma fırsatı sunar. Bilişsel Hizmetler'in içindeki hizmet kataloğu beş ana yapıda sınıflandırılabilir: Görüntü İşleme, Konuşma, Dil, Web Araması ve Karar/Öneri.

AI Builder'da önceden oluşturulmuş yapay zeka modelleri

AI Builder, kodlama veya veri bilimi becerileriniz olmasa bile uygulamalarınıza yapay zeka eklemek için bir nokta ve tıklama arabirimi sağlayan Microsoft Power Platform'daki yeni bir özelliktir. (AI Builder'daki bazı özellikler henüz genel kullanıma sunulmadı ve önizleme durumunda kaldı. Daha fazla bilgi için Bölgeye göre özellik kullanılabilirliği sayfasına bakın.)

Kendi modellerinizi derleyip eğitebilirsiniz, ancak AI Builder ayrıca hemen kullanıma hazır belirli önceden oluşturulmuş yapay zeka modelleri de sağlar. Örneğin, kartvizitlerden kişi bilgilerini tanıyan önceden oluşturulmuş bir modeli temel alarak Microsoft Power Apps'te bir bileşen ekleyebilirsiniz.

Özel yapay zeka

Önceden oluşturulmuş yapay zeka kullanışlı (ve giderek daha esnek) olsa da, yapay zekadan ihtiyacınız olanı edinmenin en iyi yolu muhtemelen bir sistem oluşturmaktır. Bu açıkça çok derin ve karmaşık bir konudur, ancak şimdi ele aldığımız konuların ötesinde bazı temel kavramlara göz atalım.

Kod dilleri

Yapay zekanın temel kavramı, verileri analiz etmek ve bunları yararlı yollarla açıklamak (veya puan vermek) için modeller oluşturmak için algoritmaların kullanılmasıdır. Algoritmalar, programlama kodu kullanılarak geliştiriciler ve veri bilimcileri (ve bazen diğer algoritmalar tarafından) tarafından yazılır. Yapay zeka geliştirme için en popüler programlama dillerinden ikisi şu anda Python ve R'dır.

Python genel amaçlı, üst düzey bir programlama dilidir. Okunabilirliği vurgulayan basit, öğrenmesi kolay bir söz dizimine sahiptir. Derleme adımı yoktur. Python büyük bir standart kitaplığa sahiptir, ancak modül ve paket ekleme özelliğini de destekler. Bu, modülerliği teşvik eder ve gerektiğinde özellikleri genişletmenize olanak tanır. Azure'da kullanıma hazır olan birçok tane de dahil olmak üzere Python için yapay zeka ve ML kitaplıklarından oluşan büyük ve büyüyen bir ekosistem vardır.

R, istatistiksel bilgi işlem ve grafikler için bir dil ve ortamdır . Geniş sosyal ve pazarlama eğilimlerinin çevrimiçi haritalanmasından finans ve iklim modellerinin geliştirilmesine kadar her şey için kullanılabilir.

Microsoft, R programlama dilini tamamen benimsemiştir ve R geliştiricilerinin kodlarını Azure'da çalıştırması için birçok farklı seçenek sunar.

Eğitim

Eğitim, makine öğrenmesi için temeldir. Bu, verileri analiz etmek ve ondan doğru tahminler yapmak için kullanılan modeller oluşturmak için bir algoritmayı "öğretmek" için yinelemeli bir süreçtir. Pratikte bu işlemin üç genel aşaması vardır: eğitim, doğrulama ve test.

Eğitim aşamasında, tek tek alanların tanımlanabilmesi için bir kalite kümesi bilinen veriler etiketlenir. Etiketli veriler, belirli bir tahminde bulunmak için yapılandırılmış bir algoritmaya beslenir. İşlem tamamlandığında algoritma, bulduğu desenleri parametre kümesi olarak tanımlayan bir model oluşturur. Doğrulama sırasında yeni veriler etiketlenip modeli test etmek için kullanılır. Algoritma gerektiğinde ayarlanır ve büyük olasılıkla daha fazla eğitimden geçer. Son olarak, test aşaması hiçbir etiket veya önceden seçilmiş hedef olmadan gerçek dünya verilerini kullanır. Modelin sonuçlarının doğru olduğunu varsayarsak kullanıma hazır olarak kabul edilir ve dağıtılabilir.

Hiper parametre ayarı

Hiper parametreler , eğitim sürecinin kendisini yöneten veri değişkenleridir. Bunlar, algoritmanın nasıl çalıştığını denetleen yapılandırma değişkenleridir. Bu nedenle hiper parametreler genellikle model eğitimi başlamadan önce ayarlanır ve parametrelerin olduğu şekilde eğitim sürecinde değiştirilmez. Hiper parametre ayarlaması, eğitim görevi içinde deneme çalıştırmayı, işi ne kadar iyi tamamladıklarını değerlendirmeyi ve sonra gerektiğinde ayarlamayı içerir. Bu işlem, her biri farklı hiper parametre aileleri kullanılarak eğitilen birden çok model oluşturur.

Model seçimi

Eğitim ve hiper parametre ayarlama işlemi çok sayıda aday model üretir. Bunlar, verileri hazırlamak için gereken çaba, modelin esnekliği, işlem süresi miktarı ve elbette sonuçlarının doğruluk derecesi dahil olmak üzere birçok farklı varyansa sahip olabilir. İhtiyaçlarınız ve kısıtlamalarınız için en iyi eğitilmiş modelin seçilmesi model seçimi olarak adlandırılır, ancak bu, eğitimden önce ön plan yapmakla ilgili olduğu kadar, en iyi çalışan modeli seçmekle de alakalıdır.

Otomatik makine öğrenmesi (AutoML)

AutoML olarak da bilinen otomatik makine öğrenmesi, makine öğrenmesi modeli geliştirmenin zaman alan ve yinelemeli görevlerini otomatikleştirme işlemidir. Üretime hazır ML modellerini almak için gereken süreyi önemli ölçüde azaltabilir. Otomatik ML, kapsamlı programlama veya etki alanı bilgisi gerektirmeden model seçimine, hiper parametre ayarlamaya, model eğitimine ve diğer görevlere yardımcı olabilir.

Puanlama

Puanlama tahmin olarak da adlandırılır ve bazı yeni giriş verileri göz önünde bulundurulduğunda eğitilmiş bir makine öğrenmesi modelini temel alan değerler oluşturma işlemidir. Oluşturulan değerler veya puanlar gelecekteki değerlerin tahminlerini temsil edebilir, ancak olası bir kategoriyi veya sonucu da temsil edebilir. Puanlama işlemi birçok farklı türde değer oluşturabilir:

  • Önerilen öğelerin listesi ve benzerlik puanı

  • Zaman serisi modelleri ve regresyon modelleri için sayısal değerler

  • Yeni bir girişin mevcut bir kategoriye ait olma olasılığını gösteren olasılık değeri

  • Yeni bir öğenin en çok benzer olduğu kategori veya kümenin adı

  • Sınıflandırma modelleri için tahmin edilen sınıf veya sonuç

Toplu puanlama , verilerin belirli bir sabit süre içinde toplanıp bir toplu işte işlenmesidir. Bu, iş raporları oluşturma veya müşteri bağlılığını analiz etme gibi işlemler içerebilir.

Gerçek zamanlı puanlama , devam eden ve mümkün olan en hızlı şekilde gerçekleştirilen puanlamadır. Klasik örnek kredi kartı dolandırıcılığı algılamadır, ancak gerçek zamanlı puanlama konuşma tanıma, tıbbi tanılamalar, pazar analizleri ve diğer birçok uygulamada da kullanılabilir.

Azure'da özel yapay zeka hakkında genel bilgiler

Azure yapay zeka platformu teklifleri

Aşağıda ihtiyaçlarınıza yönelik yapay zeka çözümleri geliştirmek için kullanabileceğiniz Azure teknolojilerinin, platformlarının ve hizmetlerinin dökümü yer alır.

Azure Machine Learning

Bu, modelleri daha hızlı derlemek ve dağıtmak için kurumsal düzeyde bir makine öğrenmesi hizmetidir. Azure Machine Learning, makine öğrenmesi modellerinizi ve işlem hatlarınızı büyük ölçekte hızla eğitip dağıtabilmeniz için web arabirimleri ve SDK'lar sunar. PyTorch, TensorFlow ve scikit-learn gibi açık kaynak Python çerçeveleri aracılığıyla bu özellikleri kullanın.

Azure için makine öğrenmesi başvuru mimarileri

Azure otomatik makine öğrenmesi

Azure, otomatik ML için kapsamlı destek sağlar. Geliştiriciler kod içermeyen bir kullanıcı arabirimi kullanarak veya kod öncelikli not defterleri deneyimi aracılığıyla model oluşturabilir.

Azure Bilişsel Hizmetler

Bu, akıllı uygulamalar oluşturmanıza yardımcı olacak kapsamlı bir yapay zeka hizmetleri ve bilişsel API ailesidir. Etki alanına özgü, önceden eğitilmiş bu yapay zeka modelleri verilerinizle özelleştirilebilir.

Bu, mobil ve web uygulaması geliştirme için yapay zeka destekli bir bulut arama hizmetidir. İçeriğiniz yapılandırılmamış veya ham biçimde aranamazsa hizmet, yapay zeka zenginleştirme seçenekleriyle özel heterojen içerik üzerinde arama yapabilir.

Azure Bot Hizmeti

Bu, hızlı bir şekilde kullanmaya başlamak için kullanıma hazır şablonlar içeren amaca yönelik bir bot geliştirme ortamıdır.

Azure'da Apache Spark

Apache Spark, büyük veri analizi uygulamalarının performansını artırmak üzere bellek içi işlemeyi destekleyen paralel işleme altyapısıdır. Spark, bellek içi küme hesaplama için temel bileşenleri sunar. Spark işi verileri belleğe yükleyip önbelleğe alabilir ve tekrar tekrar sorgulayabilir. Bu, Hadoop gibi disk tabanlı uygulamalardan çok daha hızlıdır.

Azure HDInsight'ta Apache Spark, buluttaki Apache Spark'ın Microsoft uygulamasıdır. HDInsight'taki Spark kümeleri Azure Depolama ve Azure Data Lake Depolama ile uyumludur, bu nedenle HDInsight Spark kümelerini kullanarak Azure'da depolanan verilerinizi işleyebilirsiniz.

Apache Spark için Microsoft makine öğrenmesi kitaplığı SynapseML'dir (eski adıyla MMLSpark). Bu açık kaynak kitaplığı Spark ekosistemine birçok derin öğrenme ve veri bilimi aracı, ağ özellikleri ve üretim sınıfı performans ekler. SynapseML özellikleri ve özellikleri hakkında daha fazla bilgi edinin.

Machine Learning için Azure Databricks Runtime

Azure Databricks , tek tıklamayla kurulum, kolaylaştırılmış iş akışları ve veri bilimcileri, mühendisler ve iş analistleri arasında işbirliğine yönelik etkileşimli çalışma alanına sahip Apache Spark tabanlı bir analiz platformudur.

Machine Learning için Databricks Runtime (Databricks Runtime ML), dağıtılmış eğitim için gereken tüm kitaplıklarla bir Databricks kümesi başlatmanıza olanak tanır. Makine öğrenmesi ve veri bilimi için kullanıma hazır bir ortam sağlar. Ayrıca TensorFlow, PyTorch, Keras ve XGBoost gibi birden fazla popüler kitaplık içerir. Horovod kullanarak dağıtılmış eğitim gerçekleştirmeyi de destekler.

Müşteri hikayeleri

Farklı sektörler yapay zekayı yenilikçi ve ilham verici yollarla uyguluyor. Aşağıda bir dizi müşteri örnek olay incelemesi ve başarı hikayesi yer alır:

Daha fazla yapay zeka müşteri hikayelerine göz atın

Sonraki adımlar