存儲數據是這樣的:如何存儲這個文件集合?
39861 // number of documents
28102 // number of words of the vocabulary (another file)
3710420 // number of nonzero counts in the bag-of-words
1 118 1 // document_id index_in_vocabulary count
1 285 3
...
2 46 1
...
39861 27196 5
我們建議不存儲在矩陣(大小爲39861 X 39861我猜的),因爲它不會裝入內存*和here我可以假設每個整數需要存儲24個字節,因此具有密集矩陣的27 Gb(= 39861 * 28102 * 24字節)。那麼,我應該使用哪種數據結構來存儲數據集呢?
的數組列表的?
- 如果是這樣(每個列表將有兩個數據成員節點,該
index_in_vocubulary
和count
),只是張貼了肯定的回答。如果我認爲每個文檔平均有200分的話,那麼空間將是:
no_of_documents X words_per_doc * no_of_datamembers * 24 = 39861 * 200 * 2 * 24 = 0.4千兆
- 如果不是,您會建議哪一個(這將需要更少的空間)?
存儲數據集後,我們需要找到k-最近鄰(K類似文件),用蠻力和LSH。
* 我有3.8 2GB的我個人的筆記本電腦,但我有機會與〜8GB內存臺式機。
誰建議我們不要將數據存儲在矩陣中?也許我們應該問問他們。 –
教授@Robᵩ,我更新了。原因是它不適合記憶。然而,課程沒有任何TA(!?!?),所以我們是在我們自己的字面上。 – gsamaras
存儲完數據後,下一步是什麼?你需要檢索數據嗎?在裏面搜索?執行圖形操作? –