目前我正在处理大量用于计算的浮点/双数据集。我有一组文件来比较数据A和数据B,我想计算欧几里德距离/余弦相似度。 I.E.数据点1迭代数据B点以找到最近的邻居。
数据以文本文件形式提供 - 没有任何问题。存储/读取信息的理想方式是什么?
我必须为数据A中的所有点重复数据B.数据将存储为浮点数。每个数据点可能都有尺寸。一个文件最多可包含2mil浮点数。
我应该继续使用:
答案 0 :(得分:1)
最基本的解决方案是:float[][]
。这几乎可以肯定是最节省内存和最快速的解决方案,非常简单。
答案 1 :(得分:1)
2M浮动根本没有那么多,将它们全部放入列表中会完全没问题。 A的一个列表,B的一个列表。如果A和B是多维的,则float [] []就好了。如果您发现内存不足,请先尝试加载整个B,但一次加载一个数据点。