《神经网络与PyTorch实战》——2初识PyTorch
第 2 章初识PyTorch
为了在我们自己的电脑上实现人工神经网络,需要借助人工神经网络的开发工具。本章将介绍人工神经网络的开发工具PyTorch,并通过一个简单的例子来让你初步了解PyTorch是如何帮助我们实现人工神经网络的。
2.1 人工神经网络库PyTorch
2.1.1 PyTorch是什么
PyTorch(http://pytorch.org/)是一个人工神经网络开发库,利用PyTorch可以让机器实现人工神经网络,完成人工智能应用。PyTorch得名于“蟒蛇”(Python)和“火炬”(Torch)这两个单词。Python是一种程序设计语言,它规定了应该如何编程。Torch也是另外一种人工神经网络的开发库的名称,PyTorch就是由Torch演进而来的。因为Torch有“火焰”之意,所以PyTorch的商标就像熊熊燃烧的红色火焰。PyTorch主要由脸书人工智能研究所(Facebook’s Artificial Intelligence Research,FAIR)开发和维护。
PyTorch是最简单、最灵活的人工神经网络库之一。回顾前文,人工神经网络就是由人工神经元组成的网络,而人工神经元是对输入进行线性组合再进行非线性操作。在确定人工神经网络的结构后,通过优化,为人工神经元内的权重设置合适的值,就可以发挥人工神经网络强大的功能。那么,如何让计算机实现人工神经元、搭建人工神经网络,并选择合适的权重呢?这就需要人工神经网络的开发软件来帮忙。PyTorch就是一种人工神经网络的开发软件。
在开发人工神经网络的过程中,PyTorch可以帮助我们做以下事情:
* 确定人工神经网络的结构:我们只要告诉PyTorch神经网络中神经元的个数、每个神经元是什么样的(比如输入、输出、非线性函数),以及各神经元的连接方式,PyTorch就可以让计算机构建出这个人工神经网络的结构。
* 确定人工神经元的权重值:只要告诉PyTorch什么样的权重值比较好,PyTorch就可以帮助我们找到合适的权重值。
* 处理输入和输出:此外,PyTorch还可以和其他库合作,协助处理人工神经网络的输入和输出,把人工神经网络的计算结果展示出来。
有了人工神经网络开发工具PyTorch,我们不再需要编写复杂的代码去实现人工神经元,或是漫无目的地寻找合适的权重值。借助PyTorch,只需要一句话,就可以指定某些神经网络连接关系;只需要一句话,就可以指定神经元使用的非线性函数。而且,我们不需要手动为每个神经元寻找合适的权重。
PyTorch不仅简单好用,而且完全免费。PyTorch的源代码是完全公开的,你可以在https://github.com/pytorch/pytorch上找到所有的实现代码。并且它遵循BSD-3许可证,这个许可证允许所有人在没有额外授权的情况下使用或修改PyTorch,包括将它用于商业目的。
- 点赞
- 收藏
- 关注作者
评论(0)