2015-07-17 3 views
11

Uygun kaydetme/yükleme MatrixFactorizationModel nesnesine sahibim. Ürünleri ALS.train (...) üzerinden model oluşturduktan hemen sonra tek bir kullanıcıya önermeye çalışıyorum, o zaman (veri ve donanım için) 300ms. Ama eğer modeli diske kaydedip geri yüklersek, öneri neredeyse 2000 ms sürer. Ayrıca Spark uyarıyor:MatrixFactoryizationModel

15/07/17 11:05:47 WARN MatrixFactorizationModel: User factor does not have a partitioner. Prediction on individual records could be slow. 
15/07/17 11:05:47 WARN MatrixFactorizationModel: User factor is not cached. Prediction could be slow. 
15/07/17 11:05:47 WARN MatrixFactorizationModel: Product factor does not have a partitioner. Prediction on individual records could be slow. 
15/07/17 11:05:47 WARN MatrixFactorizationModel: Product factor is not cached. Prediction could be slow. 

nasıl yükleme modeline sonra/set bölümleyici ve önbellek kullanıcı ve ürün faktörlerini oluşturabilirim?

model.userFeatures().cache(); 
model.productFeatures().cache(); 

Ayrıca ben o rdds bölümlerini yeniden ve bölüntülendikten sürümlerinden yeni model oluşturmak için çalışıyordu ama o da yardım etmedi: Aşağıdaki yaklaşım yardımcı olmadı.

+0

Ben paylaştığınız uyarı mesajlarını yeniden veremiyoruz. Biraz kod paylaşır mısınız lütfen. – Vishnu667

cevap

2

Parantez kullanmanız gerekmez, userFeatures, parametre almayan RDD (Int, Array [Double]) 'dir.

Bu size yardımcı olacaktır:

model.userFeatures.cache 
model.productFeatures.cache