TensorFlow 2.0:一个强大的新的深度学习工具
TensorFlow 2.0是谷歌开发的深度学习库,用于解决大型机器学习项目。这个基于人工神经网络的开源库可以使用大量数据集来获得见解和预测。TensorFlow 2.0现在比它最初的版本有了更多的内容。它有一个完整的工具生态系统和可用的编程语言,如JavaScript和Swift,是一个更友好的工具。这些改进使TensorFlow 2.0成为深入学习的一个强大的方法,我很高兴能在我的新课程中教授它,完成TensorFlow 2.0和Keras深度学习训练营。
TensorFlow被命名为the2020年最热门的技术技能在Udemy for Business report中2020年职场学习趋势报告:未来技能。让我们探索更多关于TensorFlow的内容,为什么你和你的公司可能会使用它,这个库的常见应用,以及TensorFlow 2.0与它的前身有什么不同。
TensorFlow:深度学习与机器学习
了解TensorFlow在人工智能领域的地位是很有用的,特别是为什么它被认为是更大的机器学习领域中的深度学习工具。
机器学习是一种使用各种算法从数据中提取见解的通用方法。随着数据集的增长,用来解释数据的算法也变得越来越复杂。为小数据集构建的算法可能能够告诉算法在每个可能的场景中应该做什么。但在拥有数百万数据点的大型数据集中,这是不现实的。相反,机器学习技术教会算法如何从它们吸收的数据中学习,并从这些学习和趋势中找到见解。
在Zillow这样的房地产网站上可以找到一个常见的机器学习例子,用来预测房屋的挂牌价格。一个算法会摄取该地区房屋销售的历史数据,包括卧室、浴室、外观特征等的数量,然后确定房屋的可能价值。
深度学习人工智能的方法使用人工神经网络来完成类似于机器学习的任务。由于其独特的能力,深度学习方法可以执行典型机器学习算法不可能完成的复杂任务。例如,深度学习神经网络可以识别图像中的物体,比如在上传的图像中识别猫和狗(这是我们在课程中做的一个项目)。
神经网络之所以能完成这些任务,是因为它们被设计成模仿人类大脑的生物神经元的运作方式。神经元一起工作来思考、学习、处理信息、做决定等等。神经网络通过将人工神经元排列成层并将这些层连接起来来模拟大脑的功能。人工神经元(感知器)通过激活函数接受输入并提供可用的输出。
完成TensorFlow 2.0和Keras深度学习训练营
TensorFlow生态系统中的4个重要工具
随着TensorFlow的普及,它的用户社区已经创建了一个工具生态系统,可以解决各种各样的问题,比如特定编程语言的使用、更容易的数据获取或为客户提供模型。一些最有用的工具包括:
- TensorBoard-从技术上讲,这是一个独立的库,但仍然是TensorFlow生态系统的一部分。它是一个与TensorFlow一起工作的自动仪表板,用于监控模型学习和采用数据集的情况。它还可以可视化您的网络图,以便您可以验证它是否符合您的预期设计。
- TensorFlow.js-这个JavaScript库在浏览器中训练和部署模型。例如,它可以用于网站上的照片上传器来描述照片的内容——用户不需要下载。
- TensorFlow Lite-这个轻版本的TensorFlow用于在移动或物联网设备上部署模型,这些设备的处理能力比桌面或云计算机要低得多。例如,TensorFlow Lite可能被用于一款应用程序,该应用程序可以根据上传的一盘食物的图片识别营养信息(典型的卡路里含量、碳水化合物等)。
- TensorFlow扩展—针对大规模的大型云计算产品,TensorFlow Extended (TFX)从开始到结束准备数据。TFX流水线是一个组件序列,它实现了专门为可扩展的、高性能的机器学习任务而设计的ML流水线。这包括建模、培训、服务推断和管理针对在线、本地移动和JavaScript目标的部署。
TensorFlow是今年Udemy.com上最热门的技术技能!找到完整的趋势技术技能列表2020年职场学习趋势报告。
为什么TensorFlow超越了其他深度学习库?
虽然相当很少有深度学习库TensorFlow应用于工业和学术界,是各种专业水平的工程师的可靠选择,原因如下:
- 大型社区- TensorFlow在深度学习社区非常受欢迎。你会发现活跃的在线小组,频繁的面对面聚会机会,以及为你和你的团队提供的大量教育资源。
- 由谷歌支持-过去十年,谷歌在人工智能研究方面投入了大量资金,这为它的许多产品赢得了人工智能和数据科学的可信度,其中包括谷歌云。它继续为TensorFlow的开发和开源可访问性提供资源,同时也在自己的许多betwayapp下载安装商业和企业产品中使用TensorFlow。
- 工具生态系统-其他深度学习库并没有像我们上面所探讨的工具那样的强大的生态系统。许多库最初是作为一种研究方法,并不是完全用于生产使用的。谷歌对可生产产品的优先排序帮助建立了一个强大的爱好者社区,他们构建了相关工具。谷歌还提供了谷歌Colaboratory这是一个免费的工具,开发者可以在谷歌驱动器中编写、运行和共享代码。
TensorFlow 2.0有什么新特性?
TensorFlow最初是为高级从业者设计的,对于初学者来说并不容易。它的早期版本有一个复杂的静态图系统,要求开发人员在运行模型之前用代码定义整个图。TensorFlow 2.0的设计考虑到了可用性,是深度学习的新学生的一个很好的选择,并提供了一些新鲜的功能,包括:
- Keras集成-当TensorFlow首次亮相时,它使用高级api进行用户实验,这是相当复杂的,特别是对于初学者。随着TensorFlow 2.0的引入,默认API现在是Keras。Keras是一个易于使用的高级API,它允许通过用户友好性、模块化和可扩展性实现简单和快速的原型设计。它完全支持卷积网络和循环网络,以及两者的组合。TensorFlow 2.0 Keras API也可以在CPU和GPU上无缝运行。
- 默认情况下立即执行- TensorFlow 2.0急切地执行(像Python通常做的那样),这意味着图形和会话应该感觉像实现细节。这使得这个库更容易使用,也使得调试更加直观。
- 标准化-作为工程师最好的朋友,标准化使TensorFlow不同版本的所有内容保持一致。如果你保存了一个Python TensorFlow模型,你就有能力在所有不同的生态系统片段中为它服务。我们的目标是让团队和开发人员用Python等单一语言编写TensorFlow一次,然后在任何应用程序上执行它。
TensorFlow应用和示例
TensorFlow最流行的一个例子是图像分类,例如,它训练一个神经网络来可靠地识别照片中的动物。但是,与相对简单的分类相比,TensorFlow有更多的应用。通过特定的神经网络子类别,我们可以了解TensorFlow在现实世界中的更多应用。
- 人工神经网络-这种类型的神经网络擅长于监督学习任务,包括分类和回归模型。回归任务可以是预测特定社区的房价,就像我们前面提到的房地产网站例子一样。在我们的课程中,我们着眼于西雅图地区历史销售的真实数据,并建立一个模型来预测未来房屋的销售价格。
分类模型预测事物的类别。在课程中,我们检查了来自LendingClub的真实数据,以预测借款人是否会根据此人的历史特征信息偿还贷款。
- 卷积神经网络(CNN)-这里使用数据集来分析图像和视频。一个高性能的例子是笔迹分析,它具有很高的准确性一个手写数字数据库和信件。在哪里可以看到最常用的卷积神经网络(CNNs) ?你的邮箱。由cnn驱动的机器现在可以解读节日贺卡信封上的字迹,甚至比人类还好。cnn现在也被用作自动驾驶汽车的基础,因为它们可以分析来自汽车的摄像头图像。在TensorFlow 2.0课程中,您将使用真实的图像文件,例如识别狗的.jpg图像。
- 递归神经网络-另一种使用TensorFlow的深度学习方法是通过递归神经网络(RNN)。RNN擅长处理基于序列的问题,比如根据历史销售数据预测未来的销售情况,或者根据之前的季节信息估计下一季的南瓜产量。在我的课程中,你们将学习如何预测未来的销售数据。
TensorFlow 2.0的更新使其更易于使用的技术团队和工程师的所有经验水平,这是一个伟大的时间开始构建神经网络,使您的深度学习项目来生活。开始学习我的课程完成TensorFlow 2.0和Keras深度学习训练营。