我在Google云端存储中拥有大量数据(csv;大约300 GB;客户的CRM数据),我打算创建一个模型,预测我们网站上客户的回归。
我正在评估几种选择:
处理和数据清理
- 通过pandas中的块读取数据;使用pandas方法和其他python库清理数据并创建功能;
- 在numpy数组中逐行读取数据;使用python(没有pandas方法)清理数据和创建功能
醇>
机器学习
- 使用一些scikit-learn方法(http://scikit-learn.org/stable/modules/scaling_strategies.html)进行增量学习以拟合数据。
- Vowpal Wabbit
- TensorFlow(例如逻辑回归)
醇>
从硬件方面来看,我的服务器具有8 GB RAM,并且可以访问小型(标准)Google Cloud实例。此外,我将自动执行此任务,并为日常预测创建一些数据管道。以前,我使用Pandas + Scikit学习机器学习,但在这个问题中,数据并不适合内存。
- 我应该采取哪种方法来完成这项任务?
- 是否有一些树算法用于增量学习(Gradient Boosting,Random Forest)?它们更为可取,因为它们具有良好的性能而无需进行大量数据准备和扩展。
醇>