《神经网络与PyTorch实战》——2初识PyTorch

举报
华章计算机 发表于 2019/06/05 19:39:16 2019/06/05
【摘要】 本书摘自《神经网络与PyTorch实战》——书中第2章,第2.1.1节,作者是肖智清。

第 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,包括将它用于商业目的。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。