EMNLP 2017 Sistem Gösterileri
İsimlerinizi Tanıyın? Anlamsal bir ilişkisel adaptasyon oyunu
Adlarınızı Tanıyın? Anlamsal İlişkiler Uyarlama Oyunu
Pensilvanya Üniversitesi
Pensilvanya Üniversitesi
Özet Anlamsal ilişkiler bilgisi, doğal dili anlamak için gereklidir. Anlamsal ilişkileri öğrenmek için bir web oyunu olan KnowYourNyms'i tanıtıyoruz. Kullanıcılara çekici bir deneyim sunarken, uygulama anlamsal ilişki sınıflandırıcısını geliştirmek için kullanılabilecek büyük miktarda veri toplayabilir. Veriler aynı zamanda insanların sözcükler arasındaki ilişkiyi nasıl algıladıklarını da bize anlatıyor ve psikolojik ve dilbilimsel araştırmalar için yararlı bilgiler sağlıyor.
1. Giriş
Anlamsal ilişkiler bilgisi, metin sınıflandırması, içerik analizi ve sorgu yanıtlama gibi metinden anlam çıkarması gereken birçok NLP görevine yardımcı olabilir. Kelimeler arasındaki anlamsal ilişkileri keşfetme görevine "amaçlı oyun" (von Ahn ve Dabbish, 2004) yöntemini uyguluyoruz. Amacımız, bu tür kitle kaynak kullanımı yoluyla çok sayıda doğru şekilde etiketlenmiş kelime ilişkileri toplamaktır. Tam otomatik veya manuel ilişki tanıma süreciyle karşılaştırıldığında, oyun mekanizması ücretsiz olarak elde edilebilen yüksek kaliteli veri miktarı nedeniyle çeşitli avantajlar sağlar.
KnowYourNyms adında basit bir oyun yarattık. Slogan, beyninizi uyanık tutmaktır. Oyuncuların kısa sürede önerilen kelimeleri listelemesini gerektirir. Saniye sayısı azaldıkça, "Deniz ürünleri nedir?" Veya "Volkanın hangi kısmı" veya "Yağın tersi nedir" gibi olabildiğince çok cevap girebilirler. Tablo 1, bu sorulara yanıt olarak oyuncularımız tarafından sağlanan hipoonimleri, takma adları ve zıt anlamlıları göstermektedir. Cevapları, doğal dili anlama uygulamaları için eğitim verileri için yararlıdır ve psikodilbilimsel araştırmalar için yararlı perspektifler sağlayabilir.
KnowYourNyms oynamak için www.know-your-nyms.com adresine gidebilirsiniz.
Tablo 1 KnowYourNyms? Oyuncuları tarafından sağlanan örnek ilişkiler
2. İlgili çalışma
Kaynakları oluşturmak ve sistemi eğitmek için dilsel ek açıklamaları toplamak için çeşitli amaçlı oyunlar (GWAP) geliştirilmiştir (Chamberlain ve diğerleri, 2013). Lafourcade (2007) ve Fort ve diğerleri (2014) Fransızca'da anlamsal ilişkileri ve bağımlılıkları tanımlayan oyunlar geliştirdiler. Chamberlain ve diğerleri (2008), ortak referanslara açıklama eklemek ve doğrulamak için dedektif ifadesini oluşturdu. Jurgens ve Navigli (2014) geçtiğimiz günlerde WordNet duyumlarını görüntülere bağlamak ve kelime anlamında belirsizliği gidermek için video oyunları kullanmayı önerdiler. KnowYourNyms, Word-Net gibi kaynakların kapsamını artırmak için İngilizce kelimeler arasında yüksek kaliteli anlamsal ilişkiler toplar ve Paraphrase veritabanına bir sınıflandırma yapısı atar (Ganitkevitch ve diğerleri, 2013). Ayrıca, LexNET (Shwartz ve Dan, 2016) gibi eğitim ilişkisi algılama sistemleri için zengin veriler sağlar. Şimdiye kadar, küçük eğitim veri kümeleri eğitildi (BLESS (Baroni ve Lenci, 2011)), EVA Lution (Santus ve diğerleri, 2015), ROOT9 (Santus ve diğerleri, 2016) ve K & H + N (Necsulescu ve diğerleri) , 2015)).
3 Sisteme genel bakış
KnowYourNyms, ESP oyunları veya görüntü tanıma sınıflandırıcılarını iyileştirmek için meta verileri toplamak için insan tabanlı hesaplamalar kullanan Google Image Labeler gibi GWAP'ı taklit eder (von Ahn ve Dabbish, 2004). Yüksek düzeyde uygulama basittir. Kullanıcı bir hesap oluşturduktan sonra bir oyun turu başlatabilir. Her tur için, sistem belirli bir kelime seçer ("temel kelime" olarak adlandırılır) ve kullanıcıdan, belirlenen zaman sınırı dahilinde mümkün olduğunca çok sayıda anlamsal ilişki çiftini adlandırmasını ister. Ayrılan sürenin sona ermesinden sonra, bu adlandırılmış çiftlerin kayıtları veritabanımızda saklanacak ve olası anlamsal ilişkiler için veri noktaları olarak hizmet edecektir. Ardından, kullanıcı, esas olarak diğer kullanıcılar tarafından verilen aynı ilişkilerin sayısına dayanan derecelendirme performansının görüntüsünü görebilir. Bu şekilde puan, insanları akranlarına en benzer şekilde soruları yanıtlamaya motive eden popüler bir oyun programı olan "Aile Kavgası" nı (Aile Kavgası) yansıtabilir. Puanlama ekranı aynı zamanda en sık sorulan ve uygun bir şekilde atanan soruların cevaplarını da gösterir. Tamamlandığında, başka bir tur başlar. Bu turlar kısadır (ilişki türüne bağlı olarak 5-20 saniye), bu da oyunu eğlenceli ve kısa sürede oynamayı kolaylaştırır.
4 sistem uygulaması
4.1 Mimari
Web uygulaması Django çerçevesi kullanılarak oluşturulmuştur, tüm arka uç ve veritabanı etkileşimleri için Python kullanır ve ön uç standart JavaScript, HTML ve CSS (jQuery, d3.js ve Bootstrap JavaScript / CSS dahil) kullanır. Django web uygulamamızı AWS EC2 sunucusuna dağıtan AWS Elastic Beanstalk kullanıyoruz. Uygulama, kullanıcı deneyimi için kritik olan ve üç ana görünüme bölünmüş birden çok bileşene sahiptir.
Karşılama ekranı Bu ekran, oyunun amacı, anlamsal ilişkilerin ne olduğu, nasıl oynanacağı ve ekibimiz hakkında bazı bilgiler sağlar. Kullanıcı bu ekrana giriş yaptığında, tamamlanan tur sayısı, toplam puan ve tur başına ortalama puan dahil olmak üzere oyuncu hakkında bazı istatistikler görüntülenecektir. Oynatılabilir her anlamsal ilişki türü için bir tane olmak üzere dört onay kutusu görüntülenir (eş anlamlılar, zıt anlamlı kelimeler, hipoonimler, yerel ilişki sözcükleri). Bunlar, kullanıcının oynayacağı ilişkiyi seçmesine izin verir. Varsayılan, tümünü seçmektir.
oyun oynamak Her tur başladığında, zamanlayıcı hemen başlar. Soru istemine cevap vermek için, kullanıcı metin formuna mümkün olduğu kadar çok anlamsal ilişki girebilir. Her ayrı yanıta bir giriş sözcüğü denir. Sekme veya enter tuşuna bastığınızda form dinamik olarak oluşturulur, çünkü bu turda birçok kelime gereklidir. 20 saniyenin sonunda tur hemen sona erer ve kullanıcı derecelendirme sayfasına yönlendirilir.
Puan sayfası Şekil 1, bir oyuncunun bir turdan sonra ne gördüğünü gösterir. Bu derecelendirme sayfası, oyuncunun iki öğesini gösterir. Birincisi, bir turdaki tüm giriş kelimelerinin bir tablo ayrıştırmasıdır ve her kelime, o kelimenin puanına eşlenir. Ayrıca toplam raund puanını da içerir. İkincisi, sorunun en iyi cevabını gösteren bir çubuk grafiktir. Burada kullanıcılar tanıdıkları ve tanımadıkları ilişkiyi tüm kalabalığa kıyasla gözlemleyebilirler.
Şekil 1 Bu örnek puan sayfası, oyuncunun kelime puanını ve en iyi cevabı gösterir
Şekil 2 KnowYourNym program akışı. Şeklin alt kısmı, kullanıcının bakış açısından uygulama işlevini (ön uç) tasvir etmektedir. Şeklin üst kısmı, sistemin arkasındaki bileşenleri göstermektedir. Oyuncu verilerini çevrimdışı bir ortamda eğitip test ettiğimiz için "Anlamsal İlişki Sınıflandırıcısı" nın kaybolduğunu unutmayın (bkz. Bölüm 6.2).
4.2 Temel kelime seçimi
Tablo 2 Her bir ilişki türü için temel kelime sayısı
Temel kelimeler, her soru turunun temelini oluşturur; bunlar potansiyel (X, Y) anlamsal ilişki çiftindeki "X" dir. İyi sorular için iyi temel kelimeler gereklidir, çünkü "triceratops" veya "küre" nin pek çok parçası ille de iyi eşanlamlılara sahip değildir. Bu problemleri çözmek için, WordNet'ten çıkarılan izin verilen her semantik ilişki türü için bir tane olmak üzere, temel kelimeler için dört ayrı kelime listesi oluşturduk. WordNet'te en az bir eşanlamlı veya zıt anlamlı veya en az üç alt sözcük veya takma ada sahip sözcükler seçiyoruz. Kullanıcılardan nadir kelimeleri istemediğimizden emin olmak için, bu da kullanıcıların oyunu oynamayı bırakmalarına neden olacak, Google n-gram gövdesinde en az 1.000.000 kez görünen yalnızca tek ve çift kelimeleri saklarız. Tablo 2, WordNet'in her tür için ayırdığı temel sözcük sayısını gösterir. Son olarak, kullanıcıların aklına iyi bir ilişki sorgusu bulamadıkları kelimeleri atlamalarına olanak tanıyan bir "atla" düğmesi entegre ettik.
4.3 Puanlama
Oyuncuları her turun sonunda bir puan vererek cesaretlendiriyoruz. Puan, aynı temel terim ve ilişki türüne sahip diğer kullanıcılara verilen adların yüzdesine dayanır.
Son olarak, puan, kelime çiftinin WordNet'teki bu belirli ilişki ile bağlantılı olup olmadığına dair basit bir Boolean kontrolü olan WordNet bonusu ile de artırılabilir. Her kelimenin toplam puanı, final skor tablosunda azalan sırada sıralanmış bu değerlerin toplamıdır.
4.4 Veri görselleştirme
Kullanıcıların her tur için en yaygın yanıtları görmesini sağlamak için, derecelendirme sayfası ilk 5 yanıtı ve onlara verilen önceki kullanıcıların yüzdesini gösteren bir çubuk grafik içerir. Puanlama yüzdesi arka uçta hesaplanır. Ön uçta, dinamik olarak bir çubuk grafik oluşturmak ve pencereye sığacak şekilde ölçeklendirmek için veri görselleştirme kitaplığı d3.js'yi kullanıyoruz. Bu, grafiklerin mobil cihazlarda görülmesini veya kullanıcı masaüstü penceresinin boyutunu değiştirdiğinde dinamik olarak yeniden boyutlandırılmasını sağlar.
5 Tasarım kararları
5.1 Kullanıcı kimliği
Kullanıcılardan bir hesap oluşturmalarını istiyoruz. Bu tasarım kararı, esas olarak kalite kontrol hususlarından kaynaklanmaktadır. Tüm kullanıcıların iyi yanıtlar vermesini beklemediğimizden, araştırma amacıyla yeterli kalitede veri toplayabilmemiz için kötü niyetli kullanıcıları ortadan kaldırabilmemiz önemlidir. Kullanıcı tanımlamanın bir başka yararı da, aynı sorguya sahip kullanıcılara birden çok kez sunulmamasına izin vermesidir, çünkü bu, verileri saptırabilir.
5.2 Sözlük seçimi
Her kullanıcı, temel sözcüklerin listesini belirli bir şekilde dolaşır. Tamamen rastgele seçimle karşılaştırıldığında, bu, tüm kelime kullanıcıları oynayana kadar kelimeleri tekrar etmeme avantajına sahiptir. Kullanıcı deneyimi açısından bakıldığında, aynı kelimeyi birkaç turdan sonra kullanıcıya sunmak kabul edilemez. Ek olarak, farklı kullanıcıların aynı kelimeleri oynamasına izin vermek önemlidir, çünkü bu daha iyi puanlama ve yüzde görselleştirme sağlar. Son olarak, daha odaklı bir şekilde daha az temel kelime topladığımız için, bu geçiş, yüksek güven ilişkilerini öğrenmeye yardımcı olur. Daha fazla kelimeyi kapsamak için, beş öğeden oluşan tüm kelime listesinden rastgele bir kelime çıkarmayı içeren az miktarda rastgeleliğe izin vermeye karar verdik.