2015-09-16 14 views

cevap

13

Spark 1.5'den itibaren bu işlev DistributedLDAModel için uygulanmamıştır.

newDocuments: RDD[(Long, Vector)] = ... 
val topicDistributions = distLDA.toLocal.topicDistributions(newDocuments) 
: Ne yapmak ihtiyacımız olacak documents yeni (yani dışı eğitim) belgeleri, böyle bir şey vardır topicDistributions(documents: RDD[(Long, Vector]) yöntemini çağırın sonra toLocal yöntemini kullanarak bir LocalLDAModel modelinizi dönüştürmek ve ise

Bu, this paper'un önerdiği EM algoritmasından daha az doğru olacaktır, ancak işe yarayacaktır. Alternatif olarak, zaten LocalLDAModel ile sonuçlanan yeni çevrimiçi varyasyonel EM eğitim algoritmasını kullanabilirsiniz. Daha hızlı olmanın yanı sıra, bu yeni algoritma, DistributedLDAModels uydurma için eski EM algoritmasından farklı olarak, Dirichlet'in parametrelerinin (alfa), belgeler için ağırlık karıştırma konusundaki konulardan önce optimize edilmesi nedeniyle de tercih edilir. Wallach, et. al.'a göre, iyi konular elde etmek için alfaların optimizasyonu oldukça önemlidir.

+1

teşekkürler. Cevap çok yararlı! Eğer mümkünse, topicDistributions'ın çıktısını daha açık bir sonuç için nasıl çıkaracağınız konusunda daha fazla ayrıntıya geçebilir miydiniz? – HappyCoding

+0

Bunu uygulamam ve konuya nasıl yazılacağını gösterdim [burada] (https://gist.github.com/alex9311/774089d936eee505d7832c6df2eb597d) – alex9311

+0

1.6 için bir şey değişti mi? –

İlgili konular