Alibaba: AliMe sohbet: sıralama ve yeniden düzenleme sırasına dayalı bir sohbet robotu motoru

ACL 2017 Kısa Bildiriler

AliMe Chat: Sıralamaya ve yeniden düzenlemeye dayalı bir sohbet motoru motoru

AliMe Sohbet: Sıra Dizisi ve Yeniden Oluşturma tabanlı Chatbot Motoru

Alibaba Grubu

Alibaba Grubu

Özet Bilgi alımının (IR) ortak sonuçlarını sekans-sekans modelinin üretken modeli (Seq2Seq) ile birleştiren bir açık alan sohbet motoru olan AliMe Chat'i başlattık. AliMe sohbet, ortak sonuçları optimize etmek için sıralı bir yeniden düzenleme modeli kullanır. Birçok deney, motorumuzun IR ve üretim modelinden daha iyi olduğunu kanıtladı. Gerçek endüstriyel uygulamalara ulaşmak ve diğer genel sohbet robotlarından daha iyi sonuçlar almak için AliMe sohbeti başlattık.

1. Giriş

Geçtiğimiz birkaç yılda, Microsoft Xiaobing, Appleın Siri'si ve Google'ın Google Asistanı gibi sohbet robotları gelişti. Kullanıcıların kendileriyle basit ve yapılandırılmış bir dille (örneğin, "gönder", "iptal et", "rezervasyon yap" vb.) Etkileşimde bulunduğu geleneksel uygulamaların aksine, sohbet robotları, kullanıcıların doğal dil, metin veya ses (hatta Resim) onlarla iletişim kurmak için.

Robotların e-ticaret alanında müşteri sorularını yanıtlamasını sağlamak için çok çalışıyoruz. Şu anda, robotlarımız her gün yüzlerce müşteri sorusuna hizmet ediyor (çoğunlukla Çince, ancak bazıları İngilizce). Çoğu işle ilgilidir, ancak yaklaşık% 5'i sohbet odaklıdır (binlerce). Daha iyi bir kullanıcı deneyimi sağlamak için açık alanlı bir chatbot motoru kurmak gereklidir.

Açık alan sohbet botları oluşturmak için kullanılan yaygın teknikler arasında IR modelleri (Ji ve diğerleri, 2014; Yan ve diğerleri, 2016b) ve üretken modeller ((Bahdanau ve diğerleri, 2015; Sutskever ve diğerleri, 2014; Vinyals ve Le, 2015) Bir soru verildiğinde, ilki soru-cevap (QA) bilgi tabanındaki en yakın soruyu alır ve eşleştirilmiş cevapları kabul ederken, ikincisi önceden eğitilmiş bir diziden diziye modele dayalı yanıtlar üretir. Genel olarak IR modelleri QA kitaplığında benzer olmayan uzun kuyruklu problemlerle uğraşın ve üretken model farklı veya anlamsız yanıtlar üretebilir (Li vd., 2016; Serban vd., 2016).

Bu sorunları çözmek için, IR ve üretici modelleri entegre eden karma bir yöntem öneriyoruz. Yöntemimizde, eklem sonuçlarını optimize etmek için bir sıradan sıraya yeniden düzenleme modeli kullanıyoruz. Spesifik olarak, bir soru için, önce bir dizi QA çifti almak için bir IR modeli kullanıyoruz ve bunları aday cevaplar olarak kullanıyoruz ve ardından aday cevapları yeniden düzenlemek için sıralı modeli kullanıyoruz: en yüksek adayın birden yüksek bir puanı varsa Eşiği belirleyin, cevap olarak seçilecektir. Aksi takdirde, cevap üretici model tarafından sağlanacaktır (ayrıntılı süreç için Şekil 1'e bakınız).

Şekil 1: Hibrit yaklaşımımıza genel bakış.

Makalemiz aşağıdaki katkıları yapmaktadır:

IR ve üretici modellerin ortak sonuçlarını optimize etmek için sekans-sekans modeli kullanan yeni bir hibrit yöntem öneriyoruz.

Bu yöntemi değerlendirmek için bir dizi deney yaptık. Sonuçlar, yöntemimizin hem IR hem de üretimde iyi performans gösterdiğini gösteriyor.

Chatbot motorumuzu genel bir chatbot ile karşılaştırdık. Kanıtlar, motorumuzun daha iyi performans gösterdiğini gösteriyor.

Gerçek endüstriyel uygulamalar için AliMe sohbetini etkinleştirdik.

Makalenin geri kalanı aşağıdaki gibi yapılandırılmıştır: Bölüm 2 hibrit yöntemimizi tanıtmaktadır, ardından Bölüm 3'teki deney, ilgili çalışma Bölüm 4'tedir ve Bölüm 5 çalışmamızı özetlemektedir.

2 Sıradan diziye dayalı yeniden düzenleme modeli

Yaklaşımımızı Şekil 1'de özetliyoruz. Her şeyden önce, çevrimiçi müşteri hizmetlerinde sohbet geçmişinden bir QA bilgi tabanı oluşturduk. Bu QA bilgi tabanına dayanarak, üç model geliştirdik: IR modeli, üretken model ve yeniden düzenleme modeli. Dikkat edilmesi gereken iki nokta vardır: (1) Bu üç modun tümü kelime tabanlıdır (yani, kelime bölütleme gereklidir): IR modelinin giriş özelliği kelimedir ve üretken modelin girdi özelliği ve yeniden düzenleme modeli kelime vektörü temsilidir. Fasttext kullanılarak önceden eğitilmiş (Bojanowski ve diğerleri, 2016) ve iki modelde daha fazla ayarlanmıştır. (2) Bizim üretken modelimiz ve yeniden düzenleme modelimiz aynı diziden diziye yapıya dayanmaktadır, birincisi çıktı üretir ve ikincisi, puanlama için girdi sorusunun aday cevabıdır. Bir girdi problemi q ve bir T eşiği verildiğinde, yöntemimizin süreci aşağıdaki gibidir:

İlk olarak, bir dizi k aday QA çifti almak için IR modelini kullanıyoruz

.

İkinci olarak, her soru q'yu aday cevabı ri ile eşleştiriyoruz ve her soru ve cevap çifti için o (ri) = s (q, ri) güven puanını hesaplamak için yeniden düzenleme modelinde Denklem 2 puanlama formülünü kullanıyoruz.

Üçüncüsü, o (r) = max o (ri) maksimum skorunu kullanarak r cevabını ele alıyoruz: eğer o (r) T ise, r cevabını alın, aksi takdirde, üretici modele dayalı olarak bir yanıt r 'i çıktılar.

Burada, T eşiği deneysel araştırma yoluyla elde edilir ve Bölüm 3.2'de tartışılır.

2.1 QA Bilgi Tabanı

2016-01-01 ve 2016-06-01 tarihleri arasında, çevrimiçi müşteri hizmetleri merkezimizin sohbet kayıtlarını orijinal veri kaynağımız (müşteriler ve çalışanlar arasındaki konuşmalar) olarak kullandık. Her soruyu komşu bir yanıtla eşleştirerek QA çiftleri oluştururuz. Gerektiğinde, birbirini izleyen soruları (veya yanıtları) birbirine bağlarız. Bundan sonra, işle ilgili anahtar kelimeleri içeren QA çiftlerini filtreliyoruz. Sonunda, 9,164,834 QA çifti elde ettik.

2.2 IR modeli

Geri alma modelimiz, her girdi için en benzer soruyu bulmak ve ardından eşleşen bir yanıt almak için arama teknolojisini kullanır. Kelime bölümleme yoluyla, 9,164,834 sorunun tümü için tersine çevrilmiş bir indeks oluşturduk ve her kelimeyi o kelimeyi içeren bir dizi soruyla eşleştirdik. Bir problem verildiğinde, onu bir dizi kelimeye böleriz, durdurma kelimelerini sileriz, ayarları eş anlamlılarına genişletiriz ve bir dizi KG aday çiftini çağırmak için iyileştirilmiş seti kullanırız. Daha sonra, giriş sorusu ile alınan soru arasındaki benzerliği hesaplamak için BM25'i (Robertson ve diğerleri, 2009) kullanırız ve yanıt olarak en benzer eşleşen cevabı kullanırız.

2.3 üretken model

Üretken modelimiz, diziden diziye yapıya dayanmaktadır (Bahdanau ve diğerleri, 2015). i = {y1, y2, · · ·, yi 1, ci}, Denklem 1 integral formülü aracılığıyla i konumunda bir yi kelimesi üretme olasılığı olsun, f, olasılığı hesaplamak için doğrusal olmayan bir fonksiyondur, si-1 İ-1, ci konumundaki çıkışın gizli durumu, (h1, h2, · ·, hm) giriş dizisinin gizli durumuna bağlı olan bağlam vektörüdür:

, ij = a (si 1, hj), j konumundaki girdinin i-1'deki çıktıyla ne kadar iyi eşleştiğini hesaplayan bir hizalama modeli tarafından verilir (Bahdanau ve diğerleri, 2015). Şekil 2'de gösterildiği gibi, burada i = 3 ve m = 4.

Şekil 2: Dizi modeline göre, modelimiz esas olarak Çince içindir.

Tekrarlayan sinir ağı (RNN) olarak geçitli tekrarlayan birimi (GRU) seçiyoruz. Aşağıda bazı önemli uygulamalar tartışılmaktadır.

Kovalama ve dolgu Farklı uzunluklardaki soru ve cevaplarla ilgilenmek için Tensorflow'da önerilen kova mekanizmasını kullandık. Farklı uzunluklardaki QA çiftlerini barındırmak için beş kova (5, 5), (5, 10), (10, 15), (20, 30), (45, 60) kullanıyoruz, örneğin, uzunluk 4 ile ilgili bir problem Kovaya (5, 10) 8 uzunluğunda bir cevap yerleştirilecek ve gerektiğinde soruyu ve cevabı doldurmak için özel "PAD" sembolü kullanılacaktır.

Örneklenmiş kelimeler üzerinden Softmax Eğitim sürecini hızlandırmak için tüm set yerine örneklenmiş kelimelere (hedef kelimeler ve 512 rastgele kelime) softmax uyguluyoruz. Bu fikir, önem örnekleme stratejisine benzer (Jean vd., 2014).

Işın arama kod çözücüsü Kod çözme aşamasında, neslimizi daha makul hale getirmek için her seferinde yalnızca bir t olmak üzere açgözlü arama yerine her seferinde t üst-k (k = 10) çıkış sırasını korumak için yönlü aramayı kullanırız. .

2.4 Sıradan diziye yeniden düzenleme modeli

Yeniden düzenleme modelimiz, giriş sorularına aday yanıtları puanlamak için aynı sıralı dizilim modelini kullanır. Özellikle, Denklem.2 integral formülünde sMean-Prob olarak ifade edilen ortalama olasılığı integral fonksiyonumuz olarak seçeriz (aday cevap w1, w2,, wn kelimelerinin dizisi olarak kabul edilir). Ortalama karşılıklı entropi ve harmonik ortalamayı da denedik, ancak performansları zayıf.

3 Deney

Deneyimizde, önce skorlama standardının ortalama olasılığını kullanarak sekans-sekans modelinin etkinliğini inceledik; daha sonra IR, Generation, IR + Rerank, IR + Rerank + Generation (yöntemimiz) etkinliğini değerlendirdik; Ayrıca yöntemimizin çevrimiçi A / B testini ve bir kıyaslama sohbet robotu motorunu gerçekleştirdik; sonunda motorumuzu genel bir sohbet robotuyla karşılaştırdık.

Değerlendirme için, iş analistlerinden her bir test sorusunun yanıtlarını yanıtlamalarını istedik (iki deneydeki analistler diğer herkese açık sohbet robotlarıyla karşılaştırıldı ve biri diğer deneyler için) ve üç sınıf etiketiyle etiketlendi: "0" hayır Uygun, "1" cevabın sadece belirli durumlar için geçerli olduğu ve "2" cevabın uygun olduğu anlamına gelir. Bir cevabın uygun olup olmadığını belirlemek için, "dilbilgisel olarak doğru", "anlamsal korelasyon", "sözlü akıcılık", "bağlam bağımsızlığı" ve "aşırı terfi etmeme" olmak üzere beş değerlendirme kuralı tanımlıyoruz.

Bir cevap, ancak tüm kuralları karşılıyorsa uygun olarak işaretlenir ve ilk üçü karşılayıp son ikisinden herhangi birini ihlal ederse nötr olarak işaretlenir, aksi takdirde uygun değildir.

Standart olarak ilk-1 hassasiyeti (Ptop1) kullanıyoruz, çünkü bazı yöntemlerin birden fazla çıkışı olabilir (örneğin, IR). Bu gösterge, ilk-1 adayın uygun olup olmadığını ölçer ve aşağıdaki yönteme göre Ptop1 = (Uygun değil + Nötr) / Ntoplamı hesaplar.Uygun, uygun olarak işaretlenmiş soru sayısını temsil eder (diğer sembollerin tanımı benzerdir).

3.1 Yeniden düzenleme modelini değerlendirin

İlk olarak iki sekans-sekans modeli ((Cho ve diğerleri, 2014) tarafından önerilen temel model, Bölüm 2.4'te önerilen) üç ortalama kriterde (ortalama olasılık, ortalama karşılıklı entropi ve harmonik ortalama Rastgele çizilmiş 500 sorudan oluşan bir set kullanın. Tablo 1, sMean-Prob ile sekans-sekans modelinin en iyi performansa sahip olduğunu gösteren Ptop1 sonuçlarını göstermektedir. Yeniden düzenleme modelinde kullanıyoruz.

Tablo 1: Farklı yeniden düzenleme modellerinin karşılaştırması.

3.2 Aday yöntemlerin değerlendirilmesi

Aşağıdaki dört yöntemin etkinliğini değerlendirmek için 600 soru seti kullanıyoruz: IR, Generation, IR + Rerank, IR + Rerank + Generation. Sonuç, Şekil 3'te gösterilmektedir. Açıkça, önerilen yöntem (IR + Rerank + Generation) en iyi ilk-1 doğruluğa sahiptir: güven puanı eşiği T = 0.19, Ptop1 =% 60.01. Burada puanı 0,19'dan yüksek olan sorular (noktalı çizginin solunda, 600'ün 535'i) yeniden düzenleme kullanılarak yanıtlanır ve geri kalanlar oluşturma yoluyla işlenir. Ptop1'in diğer üç seçeneği% 47.11,% 52.02 ve% 56.23 idi. Daha yüksek bir eşik kullanırsanız (örneğin, 0,48) veya farklı bir şekilde yeniden düzenlerseniz ve daha fazla veri üretirseniz, daha yüksek bir Ptop1 elde edebileceğinizi unutmayın. Sıradan diziye üretimin sıfırlanamaması ve değişkenliği nedeniyle daha düşük bir eşik kullanırız: Ptop1 azaldıkça, daha fazla kontrol edilebilirlik ve yorumlanabilirlik kazanırız.

Şekil 3: Aday yöntemin ilk 1 doğruluğu.

3.3 Çevrimiçi A / B testi

Önerilen yöntemi çevrimiçi sohbet motorumuz olan AliMe sohbetinde uyguladık ve yeni ve mevcut IR yöntemlerinde A / B testleri gerçekleştirdik (sorunlar da iki yöntemde dağıtılır). Rastgele 2136 QA çifti seçtik; bunlardan 1089 soru IR tarafından cevaplandı ve 1047'si karışık bir yöntemle işlendi ve ilk 1 doğruluğu karşılaştırıldı. Tablo 2'de gösterildiği gibi, yeni yöntemin Ptop1'i% 60.36'dır ve bu IR taban çizgisinden (% 40.86) çok daha yüksektir.

Tablo 2: A / B testi ve IR modelinin karşılaştırılması.

3.4 Genel sohbet robotlarıyla karşılaştırma

Yöntemimizi daha fazla değerlendirmek için, onu halka açık bir sohbet robotuyla karşılaştırdık. Chatbotumuzla ilgili soruları silerek ve herkesi test etmek için kullanarak 1047 test sorusundan (A / B testi için) 878'i seçtik. Cevaplarını bizim cevaplarımızla karşılaştırmak için, iki iş analistinden her test sorusu için daha iyi bir cevap seçmeleri istendi. Tablo 3, iki analistin ortalama sonuçlarını göstermektedir: Chatbotumuzun daha iyi performans gösterdiği açıktır (878 sorunun% 37.64'ü daha iyi performans gösterirken, problemlerin% 18.84'ü daha kötüydü). Analistler arasındaki Kappa endeksi 0.71'dir ve önemli bir anlaşma olduğunu göstermektedir.

Tablo 3: Başka bir chatbot ile karşılaştırma.

3.5 Çevrimiçi hizmet

Metodumuzu chatbot motoruna yerleştirdik. Çevrimiçi hizmetler için yeniden düzenleme, çalışma zamanı performansı için çok önemlidir: K aday QA çiftleri eşzamansız olarak sıralanırsa, karşılayan kişi son sıralamayı beklemelidir ve QPS (saniye başına sorun) yüksek olduğunda, daha da kötüleşecektir. Çözümümüz, her bir K QA çiftini bir araya getirmek, onu bir k × n matrisine dönüştürmek (formun üst n'si, k QA çiftlerinin kademesinin maksimum uzunluğudur, gerektiğinde dolgu kullanmaktır) ve ardından paralel kullanmaktır. Matris çarpımı yeniden düzenleme modeli hesaplamayı hızlandırır. Deneyimizde, eşzamansız yönteme kıyasla, parti yöntemi, işlem süresinde% 41 tasarruf sağlamaya yardımcı olur. Spesifik olarak, sorunların% 75'inden fazlasının yeniden düzenlenmesi 150 ms'den az ve üretilmesi 200 ms'den az sürdü. Ayrıca, motorumuz 5 hizmet örneğinden oluşan bir kümede 42 en yüksek QPS'yi destekleyebilir.Her hizmet örneği, Intel Xeon e5-2430 sunucusunda 2 çekirdek ve 4G bellek ayırır. Bu, endüstriyel robotlara uygun yöntemimizdir.

AliMe sohbeti çevrimiçi bir hizmet olarak başlattık ve AliMe Yardım'a entegre ettik.Bu, e-ticaret alanındaki akıllı yardımcımızdır.Sadece sohbeti değil, aynı zamanda müşteri hizmetlerini (iade gibi), alışveriş rehberlerini ve yaşam desteğini (rezervasyon gibi) destekler. uçuş). Şekil 4'te sohbet hizmeti tarafından oluşturulan örnek bir sohbet iletişim kutusunu gösteriyoruz.

Şekil 4: AliMe sohbeti için örnek bir sohbet iletişim kutusu.

4 İlgili çalışma

Kapalı alan diyalog sistemleri genellikle kural tabanlı şablon tabanlı yöntemler (Williams ve Zweig, 2016; Wen vd., 2016) ve diyalog durumu izleme (Henderson, 2015; Wang ve Lemon, 2013; Mrksic vd., 2015) kullanır. Aradaki fark, açık alan sohbet botlarının genellikle veri odaklı teknoloji kullanmasıdır. Yaygın olarak kullanılanlar arasında IR ve dizi oluşturmaya yönelik dizi bulunur. IR tabanlı teknolojiler temel olarak yalnızca QA verilerinden yakın problemler bulmaya odaklanır, örneğin, (Isbell ve diğerleri, 2000), (Ji ve diğerleri, 2014), (Yan ve diğerleri, 2016b). Yakın zamanda yapılan bir çalışmada (Yan ve diğerleri, 2016a) sinir ağlarına dayalı bir eşleştirme yöntemi denedi. Genel olarak, IR modeline dayalı uzun kuyruk problemiyle başa çıkmak zordur. Sıradan diziye dayalı üretken modeller, genellikle QA bilgi tabanı veya konuşma külliyatında eğitilir ve her girdi için bir yanıt oluşturmak için kullanılır. Bu doğrultuda, RNN'ye dayalı sekans-sekans modelinin etkili olduğu kanıtlanmıştır (Cho vd., 2014; Sutskever vd., 2014; Ritter vd., 2011; Shang vd., 2015; Sordoni vd. , 2015; Serban vd., 2016). (Sutskever vd., 2014) 'te temel bir sekans-sekans modeli önerilmiş ve dikkatini çekmiştir (Bahdanau vd., 2015). Ek olarak, Sordoni ve diğerleri (2015) bağlamsal bilgileri değerlendirirken, Li ve diğerleri (2016) çeşitlendirilmiş yanıtlar üretmek için bir çeşitlilik geliştirme hedef işlevi ekleyerek diziden diziye model yapmaya çalışmıştır. Pek çok avantajına rağmen, diziden sıraya üretim modelleri tutarsız veya anlamsız yanıtlar üretebilir.

Çalışmamız IR tabanlı ve üretken tabanlı modelleri birleştiriyor. Çalışmamız yeni bir başka kombinasyon yönteminden farklıdır (Song vd., 2016). Yanıtların geri getirilmesi ve üretilmesi kombinasyonunu yeniden düzenlemek için IR modellerini kullanıyorlar. Ek olarak, diziden diziye yeniden düzenleme yönteminin IR sonuçlarının büyük ölçüde iyileştirilmesine yardımcı olduğunu bulduk.

5. Sonuç

Bu makalede, IR ve üretici modelleri birleştiren bir sekans-sekans yeniden düzenleme yöntemi öneriyorum. Önerilen yöntemimizin etkinliğini değerlendirmek için bir dizi değerlendirme yaptık. Sonuçlar, hibrit yöntemimizin her iki modelden daha iyi olduğunu göstermektedir.

Bu yeni yöntemi endüstriyel bir chatbotta uyguladık ve bir çevrimiçi hizmet yayınladık.

Daha fazla araştırılması gereken birçok ilginç konu var. Bunlardan biri, konuşma sistemlerinde çok döngülü etkileşim için gerekli olan bağlamdır. Şu anda, bağlamı entegre etmek için basit bir strateji kullanıyoruz: bir soru verildiğinde, IR modeli 3 aday almazsa, önceki soruyla onu geliştireceğiz ve bağlantıyı burada IR motoruna göndereceğiz. Bağlama duyarlı modeller (Sordoni ve diğerleri, 2015), sinirsel diyalog modelleri (Sutskever ve diğerleri, 2014) gibi diğer bağlam-öncelikli teknolojileri denedik, ancak bunlar şemamızda yeterince genişlemedi . Hâlâ ölçeklenebilir bağlama duyarlı yöntemler araştırıyoruz. Buna ek olarak, biz hala insana benzetiyoruz, yani sohbetlerimizi karakterler ve duygularla dolduruyoruz.

Kağıt indirme bağlantısı:

Sık sık cep telefonunuza ve bilgisayar ekranınıza bakan sizler, bu göz koruma ipuçlarını kaçırmayın
önceki
Huawei, Xiaomi ve Apple 27 Mart'ta çöktü. Üç güç hegemonya için rekabet ederken kimi dört gözle bekliyorsunuz?
Sonraki
Landwind X2 almaya değer mi? 10 ay sürdükten sonra, sahibi arabayı kullanma konusunda ne hissettiğini anlatıyor
Yazılım yüklemek için Microsoft onayı var mı? Windows 10 "App Store" modunu itiyor, katılıyor musunuz?
Camry'den Camry'ye, sahibi açık bir şekilde şunları söyledi: Bu arabadan tamamen etkilendiğimi söylemeliyim.
Kendin satın almadın! TF kartı sandığınız kadar kötü değil
Kia double 12 uluslararası seyahat için uygun olabilir, beklenmedik bir şekilde resmi amiral gemisi mağazası gizemi gizler
Bugün Core Voice | NVIDIA, yapay zekanın fotoğrafları yeniden yapılandırdığını gösteriyor, PS'den daha gelişmiş bir şey var mı?
Haval F7'den bahsederken, sahibi açıkça şunları söyledi: Her şey yakıt tüketimine karıştı, SUV yakıt ekonomisi için doğmadı
Singapur Teknoloji ve Tasarım Üniversitesi: Nükleer Öğrenmeyi Yaygınlaştırma Yapısına Dayalı Weibo Söylentilerinin Keşfi
Citroen, bazı modeller için satın alma vergisini / kılavuz fiyat indirimlerini yarıya indirmek için tüm modeller için resmi fiyat indirimleri uygular
Yapay zeka aktörleri var, ne tür ara sahneler izliyorsunuz?
Kolorimetre eğlenceli mi? Neden küçük aslan testine bir göz atmıyorsun ~
Akıllı telefonlarla nasıl oynanacağını bilin, Lynk & Co 03 multimedya araç makinesini saniyeler içinde tanıyın
To Top