设计基础:什么是TensorFlow?
创建 TensorFlow 只是为了开发您自己的机器学习 (ML) 模型。您甚至可能每天都会体验它而不知道,例如建议下一个 YouTube 视频、图像识别或语音助手的推荐系统。但什么是 TensorFlow,它是如何工作的,它使用什么硬件,为什么它是机器学习的主要工具?
Google 构建了 TensorFlow,这是一个开源软件库,用于机器学习和深度学习应用程序,专为开发人员设计。计算机从这些人工智能模型中学习,以进行模式识别和数据预测。开发人员利用 TensorFlow 的框架实现了更高效的模型开发和训练。该工具加载了多种功能,可帮助构建更快、可能更智能的应用程序。
TensorFlow 的机制
想想这个名字,TensorFlow。它让我们对它是如何工作的有一个很好的了解。张量是一个多维数据数组,就像网格一样,它存储代表一串文本、图像、音频波形等的数字。
同时,该流指示数据如何通过一系列作(称为计算图)。每个节点代表一个数学运算,而每个边代表这些运算之间的数据流。将它们放在一起,TensorFlow 本质上允许张量数据通过数学函数网络。
这种结构将大型、复杂的模型分解为更小、更有效的处理步骤。它输出一个结果,用于区分图像中的对象,例如猫和狗。
TensorFlow 之所以受欢迎,部分原因是其先进的研究支持、灵活性和可扩展性。它在笔记本电脑上运行进行实验,并可扩展到数千台并行工作的服务器,非常适合业余爱好者和企业 AI 系统。除了核心库之外,谷歌和开源社区还围绕它开发了一个丰富的生态系统。
例如,Keras 有一个简单的界面,允许开发人员输入几行代码来生成神经网络。团队可以使用 TensorBoard 来跟踪指标并可视化模型训练进度。借助 TensorFlow Lite,移动和嵌入式设备可以直接在设备上运行 ML 模型。这使得语音识别和其他应用程序等功能能够高效工作,而无需持续的互联网连接。
此外,开发人员使用 TensorFlow.js 在带有 JavaScript 的浏览器中运行模型。可以通过 TensorFlow Extended 全面开发和部署 ML 管道。
训练 TensorFlow 模型
开发人员如何在 TensorFlow 中训练模型?他们设计了一个模型架构,该架构决定了数据如何流经数学函数层。然后,他们为其提供训练数据,作为模型学习的示例。该框架依靠优化算法(由自动微分提供支持)来调整模型的内部参数。
TensorFlow 使用自动微分来计算梯度以进行优化,无需手动进行复杂的数学运算,例如微积分和线性代数。这样,开发人员就可以设计解决方案,而不是输入方程。训练后,它会在新数据上进行测试以评估其准确性。如果性能符合预期,它就会部署到实际应用程序中。
以下视频是 TensorFlow 的截断实际使用。如果您按照视频访问 TensorFlow 的 YouTube 页面,您会发现更多关于人们如何在他们的项目中使用它的示例。还有很多鼓舞人心的故事。
扩展的硬件支持
此外,由于机器学习需要大量计算,TensorFlow 由于支持各种硬件平台而提供高性能。它将 CPU 用于不需要大量并行处理的小型模型、实验和生产系统。这也意味着任何拥有 CPU 的人都可以在台式机或笔记本电脑上处理 TensorFlow 项目。
此外,TensorFlow 还能够使用 GPU 处理大规模的并行数学运算,使其可用于训练深度学习模型。
除此之外,谷歌还开发了张量处理单元(TPU)来处理机器学习任务(图1)。TPU 加速训练和推理,使大型模型能够大规模高效运行。这些用于数据中心,开发人员可以通过 Google Cloud 访问它们。由于这种灵活性,开发人员能够快速制作模型原型并将其扩展到生产中,而无需针对不同的硬件重新编码。
谷歌云

1. Google 的张量处理单元确保 TensorFlow 具有最佳性能。
各种日常产品都使用 TensorFlow,包括智能手机语音助手。当您与 Siri 或 Google 助理交谈时,TensorFlow 模型会处理您的语音波形。之后,它被转换为张量,然后通过在数百万个语音样本上训练的神经网络层。这些模型将声音分类为单词,理解意图并输出响应。
Google Photos 还依赖 TensorFlow 进行图像识别,它可以组织照片。甚至医护人员也使用它在医学扫描期间进行疾病检测(图 2)。

2. 智能手机的 Google Assistant 通常使用 TensorFlow。
TensorFlow:广泛采用的人工智能工具
总体而言,TensorFlow 使机器学习背后的复杂数学运算更易于使用,同时根据需要为开发人员提供更多控制权。它带有完整的工作流程,从设计和训练模型到跨硬件扩展模型并在生产中部署。强大的计算能力、灵活性和广泛的工具生态系统使 TensorFlow 成为广泛采用的 AI 应用程序平台。
当然,这只是一个概述。我计划尝试使用 TensorFlow 来自动执行一些繁琐的格式设置,我们在准备发表文章时必须做。希望我能抽出一些时间在 Electronic Design 与大家分享这段旅程。
哦,它要多少钱?它是免费的,试用的。如果您想以某种方式部署它,似乎有各种定价选项,但这些选项都不是公开的。一旦我参与了试用,我就会报告。
然而,最近几天 TensorFlow 的受欢迎程度已显着下降。取而代之的是 PyTorch。ChatGPT 现在甚至使用 PyTorch。







评论