有人知道在C#上有很好的可扩展的SVD实现吗?SVD算法的实现
Q
SVD算法的实现
4
A
回答
1
ILNumerics.net似乎有其他事情的SVD。
框架
.NET 1.1,.NET 2.0, 很快面市:单1.2.3
语言
所有CLI符合:C#(推荐), 托管C++,Visual Basic ...
对象Array
* Full OO class design * Generic typed container classes * single object for arbitrary array dimensions: scalar, vector, matrices, n-dim arrays * full support for flexible array modification: subarray-/ creation, concatenation, dimension removal, serialization * automated reference management: copy memory only if really needed * support for cells and logical arrays
Numerics的
* Supports all numeric types as array elements: double, float, complex, fcomplex, int16, int32,
的int64,UINT16,UINT32,UINT64,炭,字节,布尔 *运算符重载(A + B,...) *静态操作功能( FE添加(A,B)) *特殊数字状态(NaN的支持,+/- Inf文件)
处理器特定的优化
* BLAS, LAPACK * AMD: ACML, Intel: MKL, general: netlib * Automated detection
代数函数
* abs * acos * add * all * any * asin * (more...)
线性代数
* matrix multiply, -inverse, -pseudo inverse * linear equation solver * decompositions: LU,QR,SVD,Cholesky * eigenvalues, eigenvectors
傅立叶变换
* 1,2,3...n dimensional * transforms forward & backwards * supported libraries: Intel MKL, AMD ACML, FFTW3 * 100% octave/Matlab/Scilab compatible interface
排序
* Sorting of strings (lexicographical, bucket sort) * Sorting of numeric data (quick sort) * generic sorting of arbitrary user defined types by definable keymapper (bucket sort)
错误处理
* typed exceptions
算法基类
* synchronous/asynchronous * easily extendable for user defined derived algorithms * full Windows.Forms.Control compatible multiple thread eventing
支撑
可视化
* Plot panels, derived from Windows.Forms.Control * Plot dialog forms * 1D, 2D, 3D data plots * Based on OpenGL. (DirectX: deprecated) * Highly configurable graphs/figure properties * Automatic user interaction: rotation, zoom, auto axis scaling
其他
* Visual Studio 2005(R) AddIn: extends watch tool window * import from/export to Matlab(R) *.mat files * syntax vastly compatible to Matlab(R) (function naming, parameter) * determination of extended machine properties, numerical constants * Memory pool: automated recycling of large objects
0
我们已经与 “大” 矩阵(4000x4000)所使用的NAG library相当成功。
这不是托管代码,但使用P/Invoke我们没有问题。
有32位和64位Windows(也是几个UNIX变体)的版本。还有特别的MKL(英特尔数学核心库)和AMCL(AMD数学核心库)版本,这些版本应该更好地在x64系统上使用多个处理器。
它也不是免费的,如果这是一个问题。
相关问题
- 1. SVD Matlab的实现
- 2. 快速SVD算法
- 3. 在Mahout中实现SVD推荐器
- 4. SVD计算中的R
- 5. CodeFights:Dijkstra算法实现
- 6. Kruskal算法实现
- 7. 实现LayoutAlgorithm.SINGLE_COLUMN算法?
- 8. 实现Rc4算法
- 9. 实现LRU算法
- 10. CRC算法实现
- 11. 实现Strassen算法
- 12. 实现算法的Prolog的
- 13. 的Retinex算法实现
- 14. Python中的算法实现
- 15. C5算法的实现?
- 16. push-relabel算法的实现
- 17. RandomizedQuickSort算法的实现
- 18. 图算法的C++实现
- 19. DDA线算法的实现
- 20. Dijkstra的算法实现
- 21. 交叉算法的实现
- 22. 贪婪算法的实现
- 23. 实现相同的算法
- 24. 理想的SVD实施?
- 25. 在Solr搜索结果中实现SVD算法的最简单方法是什么?
- 26. 并行化SVD计算C++
- 27. Bentley-Ottmann算法实现
- 28. 卢恩算法实现
- 29. 使用javascript实现算法
- 30. 用java实现RSA算法
什么是非常大的? – 2010-07-06 12:56:57