[英]A simple Cosine similarity
另外,我从官方文档https://numerics.mathdotnet.com/Matrix.html中读到了这个
“例如,如果您有一组向量,请考虑将它们存储在向量列表或数组中,而不是矩阵中(当然,除非您需要矩阵运算)。”
那么请用 Math.net.numerics 实现这一目标的优化方法是什么? 提前致谢
#更新
我收到此错误
CS1503 Argument 3: cannot convert from'System.Collections.Generic.IEnumerable<float[]>' to 'float[]'
使用此代码:
IEnumerable<float[]> Vectors = predictions.GetColumn<float[]>("Features");
var x = new M.DenseMatrix(1, Vectors.Count(), Vectors);
解决了
var Matrix = M.SparseMatrix.OfColumnArrays(Vectors);
细节:
public Matrix<T> SparseOfColumnArrays(IEnumerable<T[]> columns);
期望具有 T=float 的相同类型的向量,所以它起作用了。 我建议您阅读 IDE 中的库方法。 2-由于矩阵不密集,我切换到稀疏。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.