gpt4 book ai didi

matlab - 关联大矩阵

转载 作者:太空宇宙 更新时间:2023-11-03 20:36:03 24 4
gpt4 key购买 nike

我有一个包含 100000 列(变量)和 100 行(观察值)的矩阵。我需要将( PIL 逊)与所有相关联。我使用 corrcoef,因为我发现它比 corr 快得多。当我采用 25000 列的矩阵时,操作需要 15 秒。然而,当我在几分钟后将大小增加到 50000 时,我的 matlab RAM 增加到 16Gb 并且 matlab(包括 Windows)开始卡住。有什么建议么?有拆分专利吗?逐列计算变得极其低效...

感谢帮助,瓦迪姆

最佳答案

如果没有 64 位版本的 matlab 加上足够的内存来存储这个大数组,或者以其他方式存储数组,那么暴力计算这么大的数组是不可能的。您可以离线存储阵列,只在使用时带入您需要的东西。

此外,如果这些数字总是小整数,则使用 uint8 或 int8,或逻辑数组,甚至是单个数组,与双数组相比,所有这些都将减少内存需求。如果数组是稀疏的,那就更好了,然后使用稀疏数组操作。

另一种方法是使用 Parallel Computing Toolbox (和 MATLAB Distributed Computing Server )同时利用多台机器的内存。这将允许你写:

matlabpool open <a large number>
x = distributed.zeros( 100000, 100 );

另见 this thread用于处理大矩阵...

关于matlab - 关联大矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14468508/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com