2016-03-22 49 views
0

arasındaki benzerliği karşılaştırmak için bir öneri sistemi oluşturma Herhangi bir hükümet ile ilgili sorun için kullanıcı şikayetlerini kaydetmek için bir android uygulaması yapıyorum. Şikayetleri veritabanımda herhangi bir belirsizlik olmadan benzersiz kılmak istiyorum. Ben php ve mysql veritabanı kullanıyorum. Aynı şikayetleri ortadan kaldırmak ve kullanıcılara öneri düzenlemeleri yapmak için şikayetler arasındaki benzerlikleri wordnet gibi bir yazılım kullanarak eşleştirmek istiyorum. Peki bunu nasıl yapabilirim? Sadece wordnet veya başka güvenilir bir yöntem var mı?Dizeleri

+1

Potansiyel yeni girişlerin mevcut olanlardan ne kadar uzakta olduğunu hesaplamak için bir dizi mesafe algoritması kullanın. Buradan başlayın: https://en.wikipedia.org/wiki/Damerau%E2%80%93Levenshtein_distance – JLB

+0

Bu algoritma iki dizge arasındaki eş anlamlıları öngörüyor mu? Ama benim için bir işim varsa, çalışmamı kısa sürede bitirebilmem daha doğru olur. Uygulaması uzun zaman alıyor gibi görünüyor. – vicky

+0

Yapmaya çalıştığınız şey hakkında bir tartışma: http://stackoverflow.com/questions/12094326/match-similar-variations-of-words-suffixes-in-mysql – JLB

cevap

0

Öneriler (yaptığınız türden değil, istediğiniz gibi değil) Stack Overflow üzerinde izin verilmez ve bu sorunun kapatılmasını bekliyorum. Umarım bundan önce bunu bitirebilirim.

Tek vaka şeyler ve belirsizlik, kurtulmak istediğiniz şeyler gibi görünse de, kullanıcıların her şeyi kaydettikleri kayda değer bir değer var. ,. Bu, Yığın Taşması'nda bile geçerlidir, sorular kopya olarak kapatılabilir, ancak bunları kaldırmayız, birileri soruyu bu şekilde yazar ve google'dan buraya geldiğinde, onların hala sorun.

Karşılaştığınız sorun, ürün tasarımından bir tanesi algoritmadan çok daha fazlası. Eşleştirme algoritmasından bağımsız olarak, benzerliği (hangisinin çok olduğu) belirlemeyi seçtiniz, kullanıcılarınız üzerinde yeterince benzer şeyler bildirmenin etkisine hala karar verdiniz. Bu, benzerliği nasıl belirleyeceğiniz konusunda size yol gösterecektir. (yani, sözcük benzerliği, karakter n-gram benzerliği, kavramsal benzerlik, vb.)

Bir benzerliği seçip, istediğiniz efekti elde etmek için belirli bir soruna girdikten sonra (yani, girişlerinizi ve neyi beklediğinizi tanımlayabilirsiniz) çıktı), burada sorabileceğiniz bir soru.