【问题标题】:Google-colaboratory kernel dies when SVD is attempted尝试 SVD 时,Google-colaboratory 内核死机
【发布时间】:2018-07-01 07:46:17
【问题描述】:

我正在尝试在 google-colaboratory python 2 环境中对 MNIST 数据集执行 SVD。下面是我的代码,

from sklearn.datasets import fetch_mldata
import numpy as np

mnist = fetch_mldata('MNIST original')

U, S, V = np.linalg.svd(mnist.data)

上述代码运行后,内核会在以下消息后重新启动:

运行时死亡。自动重启。

我做错了吗?任何帮助表示赞赏。

【问题讨论】:

    标签: python google-colaboratory


    【解决方案1】:

    这里的问题是您的虚拟机内存不足。

    根据您想要做什么,numpy 为您提供了两种减少返回数据量的方法——来自the docs

    • 您可以通过compute_uv=False 完全跳过计算酉矩阵UV,或者
    • 您可以传递full_matrices=False 以避免计算完整的UV 矩阵。

    尤其是full_matrices=TrueU 是一个70000x70000 矩阵,这就是导致内存不足问题的原因。

    【讨论】:

    • 有什么方法可以请求增加虚拟机的内存分配? !free -g 说只有大约 6GB 可用空间。我希望在更大的数据集上运行。也许 colab 不是正确的地方。
    猜你喜欢
    • 2019-05-29
    • 1970-01-01
    • 2020-02-08
    • 2018-08-04
    • 2019-01-31
    • 2019-03-02
    • 2020-07-01
    • 2022-01-07
    相关资源
    最近更新 更多