Soğuk Savaş’tan derin öğrenmeye makine çevirisinin tarihçesi

Soğuk Savaş’tan derin öğrenmeye makine çevirisinin tarihçesi

Google Çeviri’ye Facebook’a girdiğimden daha sık giriyorum ve artık fiyat etiketlerinin anında çevirisini yapmak siber çılgınlık denilen bir olay olmaktan çıktı. Günlük bir rutine dönüştü.

Tabi bugünlere neredeyse yüzyıldır devam eden çalışmalar neticesinde gelindi. Makine çevirisi algoritmalarını oluşturmak için geçen yüzyılın ilk yarısında kayda değer başarılara imza atıldığı yadsınamaz.

Bu makalede ele alacağım gelişmeler, arama motorlarından ses kontrollü mikrodalgalara kadar tüm modern dil işleme sistemlerinin temelini oluşturmaktadır. Günümüzde kullanılan çevrimiçi çevirinin gelişimi ve yapısından bahsedeceğim.

Image for post
P.P. Troyanski’nin çeviri makinesi illüstrasyonu (Ne yazık ki günümüze ulaşan bir fotoğrafı yok.)

Başlangıçta

Hikaye, 1933 yılında Sovyet bilim insanı Peter Troyanski’nin, SSCB Bilimler Akademisi’ne “bir dilden diğerine çeviri yapılırken kelimelerin seçilmesi ve basılması için kullanılan makineyi” sunmasıyla başladı. Buluş oldukça basitti; dört farklı dilde kartlar, bir daktilo ve eski tarz bir film kamerası vardı.

Operatör metinden ilk kelimeyi alıp karşılık gelen bir kart bularak fotoğrafını çeker ve morfolojik özelliklerini (isim, çoğul, genitif) daktiloya yazardı. Daktilonun tuşları özelliklerden birini kodlardı. Kaset ve kameranın filmi aynı anda kullanılır, kelimeler ve bunların morfolojileriyle ilgili bir dizi yapı oluşturulurdu.

Image for post

Bütün bunlara rağmen, SSCB’de her zaman olduğu gibi, buluş “kullanışsız” olarak nitelendirildi ve tozlu raflarda yerini aldı. Troyanski, buluşunu geliştirmek için 20 yıl kadar çalıştıktan sonra kalp sıkışmasından öldü. İki Sovyet bilim insanı, 1956’da Troyanski’nin patentlerini bulana kadar dünya bu makineden bihaberdi.

Soğuk Savaş’ın henüz başlarında, 7 Ocak 1954’te, New York’taki IBM merkezinde Georgetown-IBM deneyi başladı. IBM 701 bilgisayarı, tarihte ilk kez 60 Rusça cümleyi otomatik olarak İngilizceye çevirdi.

“Sovyetlerin dilinden tek bir kelime dahi anlamayan bir kız, IBM kartlarındaki Rusça mesajları çözdü. IBM bu deneyi basına şöyle duyurdu: “Beyin” İngilizce çevirilerini otomatik bir yazıcıda saniyede iki buçuk satır gibi yüksek bir hızla yazdı. “

Ancak, övgü dolu manşetlerde küçük bir ayrıntı gizlenmişti. Çevrilen örneklerin olası bir anlam belirsizliğine mahal vermemek için dikkatli bir şekilde seçilip test edildiğinden kimse bahsetmedi. Günlük kullanım için, bu sistem cep boy konuşma kılavuzundan daha iyi değildi. Buna rağmen, bu alanda bir çeşit silahlanma yarışı başlamıştı. Kanada, Almanya, Fransa ve özellikle Japonya bu yarışa dahil oldu.

Makine Çevirisi Yarışı

Makine çevirisini geliştirmek için verilen bu amansız mücadele kırk yıl sürdü. 1966’da ABD ALPAC komitesi o meşhur raporunda makine çevirisini pahalı, doğru çevirmeyen ve gelecek vadetmeyen bir sistem olarak değerlendirdi. Komite, ABD’li araştırmacılara on yıl boyunca sürdürdükleri yarıştan çekilmelerini ve sözlük geliştirme çalışmalarına ağırlık verilmesi gerektiğini önerdi.

Bu tür olumsuzluklara rağmen, modern Doğal Dil İşleme zeminini, yalnızca bilim insanları ve onların girişimleri, araştırmaları ve geliştirmeleri oluşturmuştur. Günümüzün tüm arama motorları, spam filtreleri ve kişisel asistanları, birbirleri hakkında casusluk faaliyetleri yürüten birkaç ülke sayesinde ortaya çıktı.

Image for post

Kural Tabanlı Makine Çevirisi (RBMT)

Kural tabanlı makine çevirisine dair ilk fikirler 70’lerde ortaya atıldı. Bilim insanları, son derece yavaş bilgisayarlara bazı işlemleri tekrar tekrar yaptırarak çevirmenlerin çalışmalarını gözden geçirdiler. Bu sistemler şunlardan oluşuyordu:

· İki dilli sözlük (RU -> EN)

· Her dil için bir dizi dil kuralı (Örneğin, -heit, -keit, -ung gibi belirli eklerle biten isimler dişildir)

· Sistemler gerekli durumlarda isim listeleri, yazım düzelticileri ve harf çevirisi gibi programlarla desteklenebilecekti.

Image for post

PROMPT ve Systran, Kural-Tabanlı Makine Çevirisi sistemlerinin en ünlü örnekleridir. Bu altın çağda rahat bir nefes almaya imkan tanıyan Aliexpress’e bir göz atın.

Ancak onların bile bazı nüans ve alt türleri vardı.

Doğrudan Makine Çevirisi

Bu, en basit makine çevirisi türüdür. Metni kelimelere böler, çevirir, morfolojiyi biraz düzeltir ve her şeyin aşağı yukarı doğru bir anlam çıkarması için sözdizimini uyumlu hale getirirdi. Alanında uzman dilbilimciler günlerce her bir kelimeye ilişkin kuralları yazardı.

Ortaya çıkan ürün bir tür çeviri olarak kabul edilirdi. Ne var ki, buna çeviri demeye bin şahit gerekirdi. Görünüşe göre dilbilimciler zamanlarını boşa harcamışlardı.

Modern sistemler bu yaklaşımı hiçbir zaman kullanmaz ve günümüz dilbilimcileri bu durumdan son derece memnundurlar.

Image for post

Transfer Tabanlı Makine Çevirisi

Doğrudan çevirinin aksine, okulda öğretildiği gibi öncelikle cümlenin gramer yapısını belirleyerek işe koyuluyoruz. Sonra kelimeleri değil tüm yapıları değiştiriyoruz. Bu, çeviride kelime sırasının daha iyi bir şekilde dönüştürülmesine yardımcı olur. Tabii ki teoride.

Pratikte, yine motamot çeviri, bitkin dilbilimciler ve hüsran. Bir yandan, basitleştirilmiş genel gramer kuralları getirdi. Ancak öte yandan, her kelimeye göre artan yapı sayısı nedeniyle daha karmaşık hale geldi.

Image for post

Dil İçi Makine Çevirisi

Bu yöntemde kaynak metin ara temsile dönüştürülür ve tüm dünya dilleri (Aradil) için birleştirilirdi. Bu, Descartes’ın hayal ettiği aradil formuna benzer bir sistemdi. Evrensel kuralları izleyen ve çeviriyi basit bir “ileri-geri” görevine dönüştüren bir üst dil. Sonra, aradil herhangi bir hedef dile dönüşür ve böylece tekillik sağlanmış olurdu.

Dönüşüm nedeniyle, Aradil genellikle transfer tabanlı sistemlerle karıştırılır. Fark, dil çiftlerine değil, her bir dile ve aradile özgü dil kurallarıdır. Bu, aradil sistemine üçüncü bir dil ekleyebileceğimiz ve üçü arasında çeviri yapabileceğimiz anlamına geliyordu. Oysa bunu transfer tabanlı sistemlerde yapamayız.

Image for post

Sistem mükemmel görünüyor, ama uygulamada değil. Birçok bilim insanı hayatını buna adamış olsa da böylesine evrensel bir aradil oluşturmak imkansız denilecek kadar zordu. Başarılı olamadılar ancak onlar sayesinde artık morfolojik, sözdizimsel ve hatta anlamsal temsil seviyelerine sahibiz. Öte yandan anlam metin teorisi bile bir servete mal oluyor!

Aradil fikri geri dönecek. Biraz bekleyelim.

Image for post

Gördüğünüz gibi, tüm Kural Temelli Makine Çevirileri eksik ve korkutucudur ve bu, belirli durumlar haricinde nadiren kullanılmalarının nedenidir (hava raporu çevirisi vb.). Kural Temelli Makine Çevirisinin avantajları arasında morfolojik doğruluğu (kelimeleri karıştırmaz), sonuçların tekrarlanabilirliği (tüm çevirmenler aynı sonucu alır) ve bunu konu alanına göre ayarlama (ekonomistlere veya programcılara özel terimleri öğretmek için kullanılır) yeteneği en çok bahsedilen özellikleridir.

Birileri ideal bir Kural Temelli Makine Çevirisi oluşturmayı başarmış olsa ve dilbilimciler onu tüm yazım kurallarıyla geliştirmiş olsalar bile, her zaman birtakım istisnalar olacaktır. Örneğin; İngilizcedeki tüm düzensiz fiiller, Almancada ayrılabilir ön ekler, Rusçada son ekler ve insanların farklı bir şekilde söylediği durumlar… Sadece bu nüanslara yönelik çalışmak bile yıllar alacaktır.

Daha sesteşlerden bile bahsetmedik. Aynı kelimenin farklı bir bağlamda farklı bir anlamı olabilir, bu da doğal olarak farklı çevirilere neden olur. Bu cümleden kaç farklı anlam çıkarabilirsiniz, I saw a man on a hill with a telescope?

Dilbilimcilerin söylemekten usanmadığı bir gerçek var ki, o da, dillerin önceden belirlenmiş bir kurallar bütünü olmadığıdır. Son üç yüz yılda gerçekleşen istila ve ilhaklardan çok etkilendiler. Bunu bir makineye nasıl açıklayabilirsin ki?

Soğuk Savaş boyunca makine çevirisi için harcanan 40 yıllık zaman geride kalmış; ancak fark yaratacak bir çözüm bulunamamış ve RBMT’nin devri sona ermişti.

Örnek Tabanlı Makine Çevirisi (EBMT)

Japonya özellikle makine çevirisi için müthiş bir çaba göstermişti. Soğuk Savaşları falan yoktu, ancak haklı nedenleri vardı: Ülkede çok az insan İngilizce biliyordu ve yaklaşan küreselleşme dalgasında bunun sorun olacağı aşikardı. Bu nedenle Japonlar, makine çevirisi için işlevsel bir yöntem geliştirme konusunda son derece kararlıydılar.

Kural tabanlı İngilizce-Japonca çeviri oldukça karmaşıktı. Dil yapısı tamamen farklıydı ve neredeyse tüm kelimelerin yeniden düzenlenmesi ve yenilerinin eklenmesi gerekiyordu. 1984’te Kyoto Üniversitesi’nden Makoto Nagao , tekrarlı çeviri yerine hazır cümleleri kullanma fikrini ortaya attı.

Basit bir cümleyi çevirmemiz gerektiğini hayal edelim. Örneğin, “Sinemaya gidiyorum”. Diyelim ki daha önce “Tiyatroya gidiyorum” cümlesini çevirdik. Bu durumda tek yapmamız gereken sözlükten “sinema” kelimesine bulmak.

İhtiyacımız olan tek şey, iki cümle arasındaki farkı bulmak, eksik kelimeyi çevirmek ve sonra onu berbat etmemek. Elimizde ne kadar çok örnek olursa çeviri o kadar iyi olacaktır.

Aşina olmadığım dillerde de tam olarak aynı şekilde cümleler kuruyorum.

Image for post

EBMT, bu alanda çalışan tüm bilim insanlarına tünelin ucundaki ışığı gösterdi. Meğerse makineyi sadece mevcut çevirilerle beslemek yetiyormuş, kurallar ve istisnalar oluşturmak için yıllar harcamaya gerek yokmuş. Buna devrim demek için henüz erkendi ama devrime giden ilk adım olarak görülebilirdi. İstatistiksel çevirinin devrim niteliğindeki icadı ise sadece beş yıl içinde gerçekleşecekti.

İstatistiksel Makine Çevirisi (SMT)

1990 yılının başlarında, IBM Araştırma Merkezi’nde, bir bütün olarak kuralların ve dilbilime dair verilerin girilmediği bir makine çevirisi sistemi ilk kez gösterildi. Sistem, benzer metinlerin iki dilde analizini yaparak kalıpları anlamayı denedi.

Image for post

Basit bir fikirdi ama güzeldi. İki dilde analiz edilen aynı cümle, daha sonra eşleştirilen kelimelere bölündü. Bu işlem, her şeyin hesaba katılabilmesi için yaklaşık 500 milyon kez tekrarlandı. Örneğin, “Das Haus” kelimesinin “house”, “building” ve “construction” olarak kaç kez çevrildiği gözlemlendi.

Kaynak kelime çoğu zaman “house” olarak çevrildiyse, makine de bu şekilde çeviriyordu. Herhangi bir kural belirlenmediği veya herhangi bir sözlük kullanılmadığını unutmayın. Tüm kararlar, istatistiklere göre ve “daha önce bu şekilde çevrildiyse benim de aynısını yapmam gerekiyor” mantığıyla yönlendirilen makine tarafından alınıyordu. Böylece istatistiksel çeviri doğmuş oldu.

Image for post

Bu yöntem, öncekilerden çok daha verimli ve doğruydu. Ve hiçbir dilbilimciye ihtiyaç yoktu. Ne kadar çok metin kullanırsak, o kadar iyi çeviri elde ederiz.

Image for post
Google’nin içeriden istatistiksel çevirisi. Bu yöntem yalnızca olasılıkları göstermekle kalmaz, aynı zamanda ters istatistikleri de dikkate alır.

Tüm bunlara rağmen bir sorun daha vardı: Makine “Das Haus” kelimesini ve “building” kelimesini neye göre ilişkilendirecekti ve bunların doğru çeviriler olduğunu nasıl bilebilecektik?

Tabii ki bilemeyeceğiz. Başlangıçta, makine “Das Haus” kelimesinin çevrilmiş cümleden herhangi bir kelime ile eşit derecede ilişkili olduğunu varsayacaktı. Daha sonra, başka cümlelerde “Das Haus” göründüğünde, “house” ile olan korelasyonların sayısı artacaktır. Bu, üniversitelerde yapay zeka ile öğrenme için verilen “kelime hizalama algoritması” ödevlerinin aynısıdır.

Makinenin, her kelimeyle ilgili istatistikleri toplamak için iki dilde milyonlarca cümleye ihtiyacı vardı. Peki bu kadar veri makineye nasıl girilecekti? Avrupa Parlamentosu ve Birleşmiş Milletler Güvenlik Konseyi toplantılarının özetlerini almaya karar verdik. Bunlar tüm üye ülkelerin dillerinde mevcuttu ve artık UN Corpora ve Europarl Corpora’dan indirilebilirdi.

Kelime Tabanlı SMT

Başlangıçta, ilk istatistiksel çeviri sistemleri cümleyi kelimelere bölerek çalışırdı, çünkü bu yaklaşım basit ve mantıklıydı. IBM’nin ilk istatistiksel çeviri modeline “Model Bir” adı verildi. Oldukça zarif, değil mi? Bilin bakalım ikincisine ne ad verildi?

Model 1: “kelime torbası”

Image for post

Model 1 kelimeleri ayırmak ve istatistikleri derlemek için klasik bir yöntem kullandı. Kelime sırası dikkate alınmadı. Tek numarası, bir kelimeyi birden çok kelimeye çevirmekti. Örneğin, “Der Staubsauger” “Elektrikli Süpürge” ye çevrilebilir, ancak bu tersi olmayacağı anlamına gelmiyordu.

Python’daki bazı basit uygulamalar: shawa / IBM-Model-1.

Model 2: cümlelerde kelime sırasını dikkate alma

Image for post

Model 1, dillerin sözdizimsel özelliklerini bilmiyordu ve bu durum sorun haline geldi. Çünkü bazı durumlarda sözdizim çeviri için çok önemlidir.

Model 2’de bu tür sorunlara odaklanıldı. Kelimenin çeviri cümlesinde olabileceği uygun yerleri ezberledi ve ara adımda daha doğal bir çeviri için kelime taraması gibi özellikler eklendi. İşler daha iyi gibi görünmesine karşın hala berbattı.

Model 3: Ekstra Verimlilik

Image for post

Çeviride, Almanca makaleler veya İngilizcede olumsuzlama yaparken “do” kullanımı gibi yeni sözcüklere sık sık karşılaşılıyordu. “Ich will keine Persimonen” → “I do not want Persimmons.” Bununla başa çıkmak için Model 3’e iki adım daha eklendi:

· Makine yeni bir kelimenin gerekliliğini düşünürse boş bir simge ekleyecek

· Her simge-kelime hizalaması için doğru gramer parçacığını veya kelimeyi seçecek

Model 4: kelime hizalama

Model 2’de, kelime hizalama ön plandaydı ancak yeniden sıralama konusunda eksiği çoktu. Örneğin, sıfatlar sıklıkla isimle yer değiştirirdi ve sırayı ne kadar iyi ezberlerse ezberlesin, çeviriyi daha iyi yapmazdı. Bu nedenle, Model 4’te, “göreceli sıra” olarak adlandırılan düzen dikkate alınmıştır. Bu model, iki kelimenin ne zaman yer değiştirmesi gerektiğini bilirdi.

Model 5: hata düzeltmeleri

Burada yeni bir şey yok. Model 5, öğrenme için daha fazla parametre alarak çakışan kelime konumlarıyla sorunu çözdü.

Devrim niteliğinde olmalarına karşın, kelime temelli sistemler hala bazı durumları, cinsiyet ve sesteşlik meselesini çözemedi. Makineye göre her kelimenin sadece bir doğru çevirisi vardı. Bu tür sistemler, daha gelişmiş cümle tabanlı yöntemlerle değiştirildikleri için artık kullanılmamaktadır.

Cümle tabanlı SMT

Bu yöntem, tüm kelime tabanlı çeviri ilkelerine dayanmaktadır: istatistikler, yeniden sıralama ve anlamsal ayrımlar vs. Bununla birlikte, öğrenme için metni sadece kelimelere değil, aynı zamanda cümlelere de ayırırdı. Bunlar tam olarak n-grams* ve birbirini izleyen n-words dizisiydi.

Böylece makine, sabit kelime kombinasyonlarını çevirmeyi öğrendi ve bu da doğruluğu önemli ölçüde artırdı.

Image for post

İşin püf noktası, cümlelerin her zaman basit sözdizim yapıları olmamasıydı. Ek olarak, dilbilim ve cümle yapısını bilen biri müdahale ettiğinde çevirinin kalitesinin önemli ölçüde etkileneceğiydi. Bilgisayar dilbiliminin öncüsü Frederick Jelinek, makineye yapılan bu tür müdahaleler hakkında şöyle demiştir: “Ne zaman bir dilbilimci kovsam, ses tanıyıcının performansı artıyor.”

Doğruluğu artırmanın yanı sıra, cümle tabanlı çeviri, öğrenme için iki dilli metinlerin seçiminde daha fazla seçenek sağladı. Kelime tabanlı çeviri için, herhangi bir edebi veya serbest çeviri kaynaklarının kullanılmaması kelimelerin tam anlamıyla eşleşmesi açısından oldukça önemliydi. Cümle tabanlı çevirinin, serbest ve edebi çeviriden öğrenme konusunda hiçbir sorunu yoktu. Çeviriyi geliştirmek için araştırmacılar, bu amaçla haber sitelerini farklı dillerde gramer açısından incelemeye bile başladı.

Image for post

2006’dan itibaren herkes bu yöntemi kullanmaya başladı. Google, Yandex, Bing ve diğer yüksek profilli çevrimiçi çeviriler 2016 yılına kadar cümle tabanlı olarak çalıştı. Muhtemelen hepiniz Google’nin cümleyi kusursuz bir şekilde çevirdiği ya da tamamen alakasız çevirdiğine şahit olmuşsunuzdur, değil mi? Alakasızlık, cümle tabanlı özelliğinden kaynaklanıyor.

O güzelim eski kural tabanlı yaklaşım tutarlı bir şekilde tahmin edebilirdi ama berbat bir şekilde sonuçlanmıştı. İstatistiksel yöntemler şaşırtıcı ve kafa karıştırıcıydı. Google Çeviri hiç utanmadan “üç yüz” kelimesini “300” e çevirebiliyor. Buna istatistiksel anormallik deniyor.

Cümle tabanlı çeviri o kadar popüler hale geldi ki, “istatistiksel makine çevirisi”nden bahsedildiğinde aslında kastedilen budur. 2016 yılına kadar tüm makalelerde, cümle tabanlı çeviri, teknoloji harikası olarak nitelendirildi. O zamanlar, hiç kimse Google’nin gemileri yakıp makine çevirisi imajımızı değiştirmeye hazırlandığını aklının ucundan dahi geçirmemişti.

Sözdizim tabanlı SMT

Bu yönteme de kısaca değinmek gerekir. Sinir ağlarının ortaya çıkmasından yıllar önce, sözdizimi tabanlı çeviri “çevirinin geleceği” olarak kabul görüyordu ancak fikir işe yaramadı.

Sözdizim tabanlı çevirinin savunucuları, onu kural tabanlı yöntemle birleştirmenin mümkün olacağına inanıyorlardı. Özneyi, yüklemi ve cümlenin diğer öğelerini belirlemek ve ardından bir cümle ağacı oluşturmak için cümlenin oldukça hassas bir sözdizimi analizinin yapılması gerekiyordu. Makine bunu kullanarak sözdizimsel öğeleri diller arasında dönüştürmeyi öğrenip geri kalanını kelimeler veya ifadelerle çevirirdi. Bu, kelime hizalama sorununu tek kalemde çözebilirdi.

Image for post
Bazı sitelerden alınan örnekler: Yamada and Knight [2001] ve great slide show.

Sorun, sözdizimsel incelemenin, bir süre önce çözüldüğünü düşünmemize rağmen (birçok dil için hazır kütüphanelerimiz olduğundan) hala korkunç bir şekilde çalışıyor olmasıydı. Özne ve yüklemi ayırmaktan biraz daha karmaşık görevler için sözdizimsel ağaçları kullanmaya çalıştım. Ve her seferinde pes edip başka bir yöntem kullandım.

En az bir kez bile kullanmayı başardıysanız yorum olarak yazın.

Nöral Makine Çevirisi (NMT)

2014 yılında, makine çevirisinde sinir ağlarını kullanmayla ilgili eğlenceli sayılabilecek bir makale yayınlandı. Google dışında internet dünyasından hiçbir şirket bunun farkına varmadı. Google’nin bu yöndeki adımından sonra diğerleri de bu furyaya dahil oldu. İki yıl sonra, Kasım 2016’da Google ezber bozan bir duyuru yaptı.

Fikir, fotoğraflara sanatsal efektler veren uygulamaların çalışma prensibine benziyordu. Fotoğrafları bazı ünlü sanatçıların tarzına göre efektler veren Prisma gibi uygulamaları hatırlıyor musunuz? Sihir yoktu. Sinir ağına sanatçının resimlerini tanıması öğretildi. Ardından, ağın kararını içeren son katmanlar kaldırıldı. Ortaya çıkan stilize resim, ağın aldığı sadece ara görüntüydü. Bu, ağın imgelemidir ve biz onu güzel buluyoruz.

Image for post

Stili fotoğrafa aktarabiliyorsak, bir kaynak metne başka bir dili yüklemeye çalışırsak ne olurdu peki? Metin, bir “sanatçı stili” kadar hassas olurdu ve biz, onu görüntünün özünü (başka bir deyişle metnin özünü) korurken aktarmaya çalışırdık.

Köpeğimi tarif etmeye çalıştığımı hayal edin. Ortalama büyüklükte, keskin burunlu, kısa kuyruklu ve her zaman havlayan bir köpek. Size köpeğin bu özelliklerini verirsem ve betimleme yeterince iyiyse, hiç görmemiş olsanız bile çizerdiniz.

Image for post

Şimdi, kaynak metnin belirli özellikler kümesi olduğunu hayal edin. Temel olarak, onu kodlamanız ve diğer sinir ağının onu metne göre başka bir dilde çözmesine izin vermeniz anlamına geliyor bu. Kod çözücü yalnızca kendi dilini bilir. Özelliklerin kökeni hakkında hiçbir fikri yoktur ancak bunları örneğin İspanyolca olarak ifade edebilir. Benzetmeye devam edersek, köpeği nasıl veya neyle ( boya kalemleri, sulu boya veya parmağınızla) çizdiğiniz önemli değil. İstediğiniz gibi çizersiniz.

Aynı şekilde sinir ağı da bir taraftan cümleyi yalnızca belirli özellikler kümesine göre kodlarken diğer taraftan bunları yalnızca metinde geri çözebilir. Her fonksiyonun da birbirleri hakkında hiçbir fikri yok ve her biri yalnızca kendi dilini biliyor. Bu size neyi hatırlattı? Ara dil geri döndü. Bingo!

Image for post

Sorun şu ki, bu özellikleri nasıl bulacağız? Köpek betimlemesi kolaydır, peki bunu metinde nasıl uygulayacağız? Otuz yıl önce bilim insanları zaten evrensel dil kodunu yaratmaya çalışmıştı ve bu fiyaskoyla sonuçlanmıştı.

Neyse ki şimdi derin öğrenme diye bir şey var. Ve bu onun temel görevi! Derin öğrenme ile klasik sinir ağları arasındaki temel ayrım, doğaları hakkında herhangi bir fikir olmaksızın, tam olarak bu belirli özellikleri arama yeteneğinde yatmaktadır. Sinir ağı yeterince büyükse ve elinizde binden fazla ekran kartı varsa, bu özellikleri metinde de bulmak mümkündür.

Teorik olarak, sinir ağlarından elde edilen özellikleri dilbilimcilere aktarabiliriz, böylece ufuklarını genişletmiş olurlar.

Sorun, kodlama ve kod çözme için ne tür bir sinir ağının kullanılması gerektiğidir. Evrişimli Sinir Ağları (CNN), bağımsız piksel bloklarıyla çalıştıklarından resimlere mükemmel uyum sağlarlar.

Ancak metinde bağımsız bloklar yoktur ve her kelime bağlamına göredir. Metin, konuşma ve müzik her zaman tutarlıdır. Dolayısıyla, tekrarlayan sinir ağları (RNN), bizim durumumuzda önceki sonucu ve önceki kelimeyi hatırladıklarından, bunları ele almak için en iyi seçim olacaktır.

Artık RNN’ler, Siri’nin konuşma tanıma(bir sonraki anlamın bir öncekine bağlı olduğunu ayrımsıyor), klavye tahmini (öncekini ezberle, sonrakini tahmin et), müzik bulma ve hatta sohbet robotları gibi hemen hemen her alanda kullanılıyor.

Image for post

Aslında benim gibi inekler için, nöral çevirilerin yapısı büyük farklılıklar gösteriyor. Başlangıçta normal RNN kullanılıyordu, ardından çevirinin yalnızca kaynak kelimeden önceki kelimeleri değil aynı zamanda bir sonraki kelimeyi de dikkate aldığı çift yönlü hale yükseltildi. Bu çok daha etkiliydi. Ardından, çeviri bağlamının uzun vadeli depolanması için LSTM birimleriyle çok katmanlı RNN izledi.

İki yıl içinde, sinir ağları, çeviride son 20 yılda ortaya çıkan her şeyi aştı. Nöral çeviri % 50 daha az sözdizim hatası,% 17 daha az kelime hatası ve % 19 daha az dilbilgisi hatası yapmaktadır. Sinir ağları, cinsiyet ve durumları farklı dillerde uyumlu hale getirmeyi bile öğrendi. Ve kimse onlara bunu yapmayı öğretmedi.

En dikkat çekici gelişmeler, doğrudan çevirinin hiç kullanılmadığı alanlarda meydana geldi. İstatistiksel makine çevirisi yöntemleri her zaman ana kaynak olarak İngilizce kullanılarak çalıştı. Bu nedenle, Rusçadan Almancaya çeviri yaptığınızda, makine önce metni İngilizceye sonra da İngilizceden Almancaya çeviriyordu ve bu da anlam kaybını iki katına çıkarıyordu.

Nöral çevirinin buna ihtiyacı yoktu, çalışabilmesi için yalnızca bir kod çözücü yeterliydi. Bu sayede ortak sözlüğü olmayan diller arasında ilk kez doğrudan çeviri mümkün hale geldi.

Image for post

Google Çeviri (2016’dan beri)

2016 yılında Google, dokuz dil için nöral çeviriyi etkinleştirdi. Google Nöral Makine Çevirisi (GNMT) adlı sistemlerini geliştirildi. Sistem, 8 kodlayıcı ve 8 kod çözücü RNN katmanının yanı sıra kod çözücü ağından gelen dikkat bağlantılarından oluşuyor.

Image for post

Sadece cümleleri değil, kelimeleri de bölüyor. En büyük NMT sorunlarından biri olan az kullanılan kelimeler bu şekilde ele alındı. NMT’ler, kelime kendi sözlüğünde olmadığı zaman çaresizdir. “Vas3k” diye bir kelime olsun. Birilerinin sinir ağına takma adımı tercüme etmeyi öğrettiğine dair şüphelerim var. Bu durumda GMNT, kelimeleri kelime parçalarına ayırıp çeviriyi iyileştiriyor. Dahiyane.

Hatırlatma: Tarayıcıda web sitesi çevirisi için kullanılan Google Çeviri hala eski cümle tabanlı algoritmayı kullanıyor. Her nasılsa, Google onu yükseltmedi ve farklılıklar çevrimiçi sürüme kıyasla oldukça belirgin görünüyor.

Google, çevrimiçi sürümde bir kitle kaynak mekanizması kullanıyor. İnsanlar en doğru olduğunu düşündükleri çeviriyi tercih ettiklerinde ve çok sayıda kullanıcı bu şekilde bir tercihte bulunduğunda, Google bu cümleyi her zaman bu şekilde çevirecek ve özel bir rozetle işaretleyecektir. Bu, “Sinemaya gidelim” veya “Seni bekliyorum” gibi kısa günlük ifadeler için harika çalışıyor. Hatta Google’nin konuşma İngilizcesini benden daha iyi bildiğini söyleyebilirim 🙁

Microsoft Bing de tam olarak Google Çeviri gibi çalışıyor ancak Yandex farklı.

Yandex Çeviri (2017’den beri)

Yandex, sinirsel çeviri sistemini 2017’de başlattı. Belirttikleri gibi ana özelliği hibrit olmasıydı. Yandex, cümleyi çevirmek için sinirsel ve istatistiksel yaklaşımları birleştirip ardından en sevdiği CatBoost algoritması ile en iyi çeviriyi seçiyor.

Sorun şu ki, sinirsel çeviri, doğru kelimeyi seçmek için bağlamı kullandığından kısa cümleleri çevirirken genellikle başarısız oluyor. Eğitim verilerinde kelime ender kullanılmışsa doğruluk oranı daha da azalıyor. Bu gibi durumlarda, basit bir istatistiksel çeviri, doğru kelimeyi hızlı ve basit bir şekilde bulunmasını sağlıyor.

Image for post

Yandex bu konudaki ayrıntıları paylaşmadı. Pazarlamada kullandıkları basın bültenleri ile bizi savuşturdular. TAMAM.

Görünüşe göre Google, kelimelerin ve kısa ifadelerin çevirisi için SMT kullanıyor. Herhangi bir makalede bundan bahsetmediler ancak kısa ve uzun ifadelerin çevirileri arasındaki farka bakıldığında hemen göze çarpıyor. SMT, ayrıca kelimenin istatistiklerini görüntülemek için de kullanılıyor.

Sonuç ve gelecek

Anında konuşma çevirisi (Babil balığı) fikri hâlâ herkesi heyecanlandırıyor. Google, Pixel Buds ile bu yönde adımlar atmış olsa da bizim hayal ettiğimiz şey bu değil. Anında konuşma çevirisi, normal çeviriden farklıdır. Çeviriye ne zaman başlayacağınızı ve ne zaman susup dinleyeceğinizi bilmeniz gerekir. Bu tür şeyleri çözmek için henüz uygun yaklaşımlar görmedim. En azından Skype dışında görmedim.

Çözüme kavuşmayı bekleyen bir diğer konu ise tüm öğrenme paralel metin blokları kümesiyle sınırlı. En derin sinir ağları hala paralel metinler üzerinden öğreniyor. Sinir ağına bir kaynak sağlamadan öğretemeyiz. Bunun yerine insanlar, ana dillerine çevirmeseler bile sözlüklerini kitap veya makale okuyarak tamamlayabiliyor.

İnsanlar yapabiliyorsa, sinir ağı da teorik olarak yapabilir. Pratik kazanması için dil bilen bir ağı, metinleri başka bir dilde okumasını sağlayan sadece bir prototip bulabildim. Kendim denerdim ama budalanın tekiyim. Şimdilik bu kadar.

Bu makalenin orijinali Rusça olup Vas3k.com‘da Vasily Zubarev tarafından İngilizceye çevrilmiştir.

Yazan: Ilya Pestov

Kaynak: freecodecamp

Çeviren: Musa Hatipoğlu

Leave a comment