科迪

1983年的问题大数据

优化这行代码:

B =总和(梯度(corrcoef(A))^ 2);

用于矩阵A与大小(A,2)>>尺寸(A,1)

描述:

大型数据集的分析往往需要优化速度和/或内存使用的一些水平。这是一个例子的问题,其中所述初始数据A既和兴趣乙配合的最终度量非常清楚在内存中,但以计算感兴趣的最终度量所需要的中间变量(在这种情况下是不可能大的相关矩阵)没有。

我们有大量的2维矩阵A(尺寸为100×100,000)。

我们需要计算如下行向量B(尺寸为1×100,000):

B =总和(梯度(corrcoef(A))^ 2);

该第一计算用于所述的每对列相关系数矩阵:

一个= corrcoef(A)

(100,000 100,000矩阵),然后计算沿着所述第二维度所得相关矩阵的空间导数:

B =梯度(a)中

(另一100000 100,000矩阵),最后计算中所产生的矩阵的每一列的平方范:

B =总和(B ^ 2,1)

(100,000元素矢量)

这种直接的“矢量化”的做法,不过,失败,因为它需要太多的内存(足够存储一部100000×100000相关矩阵,围绕80Gb的)。

我们显然需要某种形式的简化/优化。你能计算科迪解决方案的时限内量度B?(通常约30秒)

万博 尤文图斯解决方案将基于计算时间进行评分(评分等于总时间以秒计)。

语境:(不相关的解决这个问题)

这个问题出现在fMRI数据的分析。从磁共振成像扫描器会话的典型结果是4维矩阵A(X,Y,Z,t),其中前三个维度空间维度(被检者的头/脑的扫描仪)和第四维是时间(一个典型的fMRI会话期间获得的顺序扫描)。这些想象成你的大脑激活的时间变化的三维图像。在过去的几年中,很多研究都集中在功能连接,在任何一对脑区的“激活”之间的时间相关性的度量。最近有几篇论文已经调查的可能性,以获得脑(分割脑入功能上同质区域)的基础上的功能连接的这些空间模式的完全数据驱动的parcellations。的措施以上表示已被建议作为一种方法来驱动这些数据驱动parcellations这些措施中的一个(相邻但功能不同的2个脑区之间的边界,预计将显示在功能连接型材更高的空间梯度)。为了简单起见,我已经崩溃了三维空间变成一个对于这个问题,但原来的计算的计算复杂度大约是相同的(在几十万量级的一些典型的扫描仪会议结果“素”三防维“像素“ - 脑,和几百时间点的范围内,这使得计算整个‘体素到体素’相关矩阵,或从它衍生的措施,而具有挑战性)。

解决方案统计

13.16%正确|86.84%不正确
持续提交二零一八年十二月十四日

问题留言

问题最近的解决者

建议习题

更多来自该作者38