IBM研究院和瑞士洛桑联邦理工学院在2017年NIPS大会上共同发布了大数据机器学习解决方案。此方法可以使用GPU在1分钟内处理30GB的训练数据集,这是现有有限内存训练方法的10倍。研究团队表示,在大数据时代,机器培训的挑战是易于跳出的TB级培训数据。这是一个常见但困难的问题。也许具有足够内存容量的服务器可以加载所有训练数据。在内存中执行计算,但仍需要数小时,甚至数周。他们认为,目前,诸如GPU之类的特殊计算硬件确实可以有效地加速计算,但它们仅限于计算密集型任务,而不是数据密集型任务。如果要充分利用GPU计算密集型的优势,则需要将数据预加载到GPU内存中,当前GPU内存的最大容量仅为16GB,不足以进行机器学习的实现。批处理操作似乎是一种可行的方法。训练数据被分为几部分,并按制造顺序加载到GPU中以进行模型训练。但是,通过实验发现,将数据从CPU转移到GPU的传输成本完全超过了将数据从CPU转移到GPU的成本。将数据放入GPU高速计算的好处。 IBM研究人员Celestine D&numner表示,在GPU上进行机器学习的最大挑战是不要将所有数据都放入内存中。为了解决这个问题,研究小组开发了一种标记训练数据集重要性的技术。因此,仅将重要数据用于训练,而无需将大多数不必要的数据发送到GPU,从而大大节省了训练时间。例如,如果您想训练一个模型来区分狗和猫的图片,一旦模型发现猫和狗之间的区别之一是猫的耳朵必须小于狗,则系统将保留此功能,并且在以后的培训模型中将不再重复此评论。功能,因此模型的训练将变得越来越快。 IBM研究员Thomas Parnell表示,此功能有助于更频繁地训练模型,并且还允许更及时地调整模型。该技术用于衡量每个数据点对学习算法的贡献。它主要利用二进制间隙的概念来影响和及时调整训练算法。在此方法的实际应用中,研究团队开发了全新的可重用组件DuHL,用于异构计算平台(异构计算平台)上的机器学习训练模型,特别是用于具有二进制间隙的异构学习。 IBM表示,他们的下一个目标是在云上提供DuHL,因为当前用于云GPU服务的计费单位为小时。如果将模型训练的时间从十小时缩短到一小时,那么节省的成本将是惊人的。 (上图)该图显示了三种算法所需的时间,包括DuHL在大规模支持向量机上的性能。使用的数据集是30GB的ImageNet数据库,硬件是具有8GB内存的NVIDIA Quadro M4000 GPU。从图中可以看出,GPU串行批处理的效率甚至比纯CPU方法差,并且DuHL的速度是其他两种方法的10倍以上。