5个方法处理ML中大型数据加载问题
极客时间编辑部
讲述:丁婵大小:1.12M时长:02:27
在处理机器学习算法时,因为数据库太大而无法放置进内存的情况很常见。这就引出了如下的问题:
如何加载大容量数据文件?
运行数据集算法导致程序崩溃时,该怎么办?
怎么解决内存不足的问题?
知名机器学习专家杰森·布朗理(Jason Brownlee )列出了 7 个你可能会考虑的一些方法,本文精选了其中 5 个,如下。
1. 使用具有更多内存的计算机
你必须在你的电脑上工作吗?也许你可以访问一台更大的计算机,内存是你电脑的数量级倍数。例如,在云服务上租用大内存服务器就是一个好的选择。
2. 更改数据格式
也许你可以通过使用其他数据格式,来加快数据加载并且降低内存的使用率。二进制格式就是一个很好的例子。有许多命令行工具可以将一种数据格式转换为另一种,使用另一种格式可以使你把数据存储在更紧凑的窗体中,借此节省内存。
3. 流数据或使用渐进加载
所有的数据都需要同时存储在内存中吗?也许你可以使用代码或库,将数据流逐步加载到内存中以进行使用。这可能需要使用优化技术来迭代学习的算法,而不是要求内存中所有数据都执行矩阵操作的算法,如某些线性和逻辑回归的实现。
4. 使用关联数据库
关系数据库提供了一种存储和访问非常大的数据集的标准方法。从内部来看,存储在磁盘上的数据可以逐步加载,并可以使用标准查询语言 (SQL) 来进行查询。可以使用诸如 MySQL 或 Postgres 这样的免费开源数据库工具,而且大多数编程语言和许多机器学习工具都可以直接连接到关联数据库。你还可以使用轻量级方法。
5. 使用大型数据平台
在某些情况下,你可能需要求助于一个大的数据平台。这是一个为了处理非常大的数据集而设计的平台,它允许你在上面使用数据转换和机器学习算法,比如用 Mahout 机器学习库的 Hadoop 以及用 MLLib 库的 Spark。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(1)
- 最新
- 精选
- 杰之7海量数据上云是不是一种趋势,其他的四种方法是目前技术已经可以实现的。
收起评论