飞天发布时刻:2024年 Forrester 公有云平台Wave™评估报告解读 了解详情
写点什么

Databricks 整合 Spark 和 TensorFlow 用于深度学习模型

  • 2016-03-14
  • 本文字数:1368 字

    阅读完需:约 4 分钟

结合去年年底谷歌宣布开源其机器学习开源库 TensorFlow,以及之前 InfoQ 报道的内容来看,数据科学界已经迎来了尝试将 TensorFlow 应用到自己的项目里的机会。

Databricks 公司的 Tim Hunter 通过 Spark 演示了使用 TensorFlow 生成模型选项和一定规模的神经网络处理。Hunter 在描述人工神经网络的时候,将之形容成一个在人脑的视觉皮层里模拟神经元一样,这样的模拟在经过大量充分训练之后,可以被用于处理复杂的输入数据,如图像或音频等等。

Hunter 详细讲述了他是如何把 TensorFlow 运行在各种 Spark 配置上来平衡对超参数的调整的。Hunter 说,目前 TensorFlow 支持 Python 和 C++ 这两种语言,帮助了“自动创建可用于各种形状和尺寸的神经网络的训练算法”,此训练算法是为了训练一个神经网络,用这个受训的神经网络来处理更大规模的数据,同时还能保证处理结果的高精度和最佳运行时性能。

Hunter 提到的一些超参数其实指的是各层神经元数据和学习率,这些数据都是从用于神经网络的训练算法本身分离出来的。

如何更好的调整超参数,让已经给定的算法对运行时间和模型精度产生最佳的影响。超参数的设置是经过相互比对的,目的是把在每一层神经元和错误测试数据里产生的变量关联起来,找到这之间的关系。

学习率是相当关键的点:如果学习率太低,神经网络是不会学习任何东西的。如果学习率太高,只能说明训练过程中可能出现了随机振荡,使得某些配置发生了偏离。

神经网络典型权衡曲线:

  • 学习率非常关键,太低学不到东西(高测试误差),太高则训练过程可能随机振荡导致某些配置偏离。
  • 神经元的数目对性能没那么重要,大量神经元的网络对学习率更敏感。

Databricks 建立了一项实验来测量基于 Spark 的 TensorFlow 神经网络训练算法对精度和运行时间性能的影响程度有多大。实验包括一个默认的超参数组,多个超参数的排列,一个测试数据集,一个单一节点,双节点和 13 节点的 Spark 集群。为了找出最优超参数设置,Hunter 使用 Spark 来分布式处理 TensorFlow 生成集,目的是并行测试模型的有效性。对于使用 Spark,Hunter 这样说:

为了传播数据和模型描述等常规元素,然后用容错的方式在一个机器集群里调度个别重复计算。

Hunter 指出,通过和 Spark 集成,在模型精确度和运行时间方面都有所改进:

尽管我们使用的神经网络框架本身只在单节点的时候起作用,但是我们可以使用 Spark 来分配超参数和模型部署。

选择分布式算法大大减少了训练时间,在超参数设置上将精度提高了 34% 以上,这也帮助 Databricks 更好地理解各种超参数的敏感性。它加快了模型验证速度,并证实了这种做法是单节点模型验证速度的七倍。一旦选择最佳的拟合模型和神经网络进行训练,神经网络就会被部署到 Spark 大数据集上运行。

Databricks 并没有谈到具体的硬件实现,但是一些迹象可以从为了这个实验而制作的基于 iPython notebook,以及 Databricks 为客户创建的集群选项里都可以看出来。测量模型选择和神经网络调整能力是通过采用像 Spark 和 TensorFlow 这样的工具而获得的,这可能是对数据科学和机器学习社区的一种恩惠,由于日益普及的云计算和大范围的并行资源在一定程度上帮助工程师们更好的选择实现方式。更多内容可以看看 Tim Hunter 之前写的博客《 Deep Learning with Spark and TensorFlow 》。

参考英文原文: Databricks Integrates Spark and TensorFlow for Deep Learning

2016-03-14 19:006928
用户头像

发布了 25 篇内容, 共 77910 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

音乐NFT系统的主要功能

北京木奇移动技术有限公司

软件外包公司 音乐NFT 体育NFT

YashanDB演讲实录|别彬彬:金融科技对智能化创新系统的机遇与路径

YashanDB

数据库 yashandb

得物使用AutoMQ构建海量数据处理的新一代可观测性架构

AutoMQ

kafka 得物技术 客户案例 AutoMQ

数字版权NFT系统的主要功能

北京木奇移动技术有限公司

软件外包公司 体育NFT 数字版权NFT

您的 API 网关足够安全吗?

NGINX开源社区

nginx API api 网关 nginx 开源版

HNSW分布式构建实践

阿里技术

分布式 算法 方案 向量检索 HNSW

从6岁女孩跑完马拉松“违规”事件看软件测试的规范与风险管理

测试人

软件测试

红河哈尼族彝族自治州具有资质等保测评机构在哪里?电话多少?

行云管家

等保

淘宝API对接电商平台:解锁无限商机的钥匙

代码忍者

API 接口 pinduoduo API

YashanDB V23.3重磅发布,持续深化1:1替代产品力

YashanDB

数据库 yashandb

实战指南:如何申请并获取API Key进行测试

代码忍者

API 接口 pinduoduo API

数字孪生系统开发的交互工具

北京木奇移动技术有限公司

软件外包公司 数字孪生开发 webgl开发

【YashanDB】演讲实录|樊文飞院士:中国软件:自强、自立、自信

YashanDB

数据库 yashandb

未来已来:人工智能如何重塑我们的生活与工作

天津汇柏科技有限公司

AI 人工智能

筑牢算力底座,九章云极DataCanvas公司赋能大湾区激活新质生产力

九章云极DataCanvas

这个小游戏SDK突破微信可运行在任何的app

Onegun

小游戏 小游戏引擎 小游戏运营 小游戏平台

使用低代码平台,让复杂的应用开发变得更轻松

JeeLowCode低代码平台

低代码 低代码前端 低代码,

AI口语陪练APP的主要功能

北京木奇移动技术有限公司

软件外包公司 AI口语陪练 AI口语练习

AICon北京站HarmonyOS技术分论坛开启招募

HarmonyOS开发者

数造科技入选2024爱分析·数据要素x厂商全景报告两大场景

数造万象

敏捷开发 科技 数据要素 #大数据

Fluss:面向实时分析设计的下一代流存储

Apache Flink

大数据 flink 实时计算 Fluss 新一代存储方案

MES生产管理系统源码,万界星空科技开源MES

万界星空科技

开源 mes #开源 开源mes mes源码

Git冲突高效解决策略:从识别到融合的全面指南

代码忍者

【GreatSQL优化器-06】条件过滤导致选择非最佳

GreatSQL

【YashanDB】演讲实录|陈志标:自主原创、行稳致远

YashanDB

数据库 yashandb

YashanDB演讲实录|王南:YAC集群,核心平替

YashanDB

数据库 yashandb

数据飞轮:闭环体系打造企业数字化转型加速器

字节跳动数据平台

数据飞轮

从报表到可视化,基于开源Superset实现数据管理升级的实践

华为云开发者联盟

Kubernetes Apache Superset CCE #开源

金融机构远程办公面临的安全挑战

芯盾时代

终端安全 零信任模型 金融业

微店商品详情数据接口(micro.item_get)丨微店API实时接口指南

tbapi

微店API接口 微店商品数据接口 微店商品详情接口 微店接口

Databricks整合Spark和TensorFlow用于深度学习模型_Google_Dylan Raithel_InfoQ精选文章