基本信息

内容简介
计算机书籍
---------------------------Java人工神经网络构建---------------------------
本书涵盖了开发神经网络应用程序的许多方面。从头开始解释神经网络是如何工作的,然后以训练一个小神经网络为例,手动进行所有的计算。本书涵盖了前向和后向传播的内部内容,有助于理解神经网络处理的主要原理。它使你很快熟悉了前向和后向传播技术的所有基本原理。这本书还教你如何准备用于神经网络开发的数据,并为许多非传统的神经网络处理任务提出各种数据准备方法。
---------------------------神经网络与深度学习---------------------------
本书主要介绍神经网络与深度学习中的基础知识、主要模型(卷积神经网络、递归神经网络等)以及在计算机视觉、自然语言处理等领域的应用。
作译者
---------------------------神经网络与深度学习---------------------------
邱锡鹏 著:邱锡鹏,复旦大学计算机科学技术学院教授、博士生导师,于复旦大学获得理学学士和博士学位。主要研究领域包括自然语言处理、机器学习、深度学习等,在相关领域的权威国际期刊、会议上发表学术论文60余篇,获得计算语言学顶级国际会议ACL 2017杰出论文奖、全国计算语言学会议CCL 2019最佳论文奖,2015年入选首届中国科协青年人才托举工程,2018年获得中国中文信息学会“钱伟长中文信息处理科学技术奖青年创新一等奖”,入选由“清华—中国工程院知识智能联合研究中心和清华大学人工智能研究院”联合发布的2020年人工智能(AI)全球最具影响力学者提名。该排名参考过去十年人工智能各子领域最有影响力的会议和期刊发表论文的引用情况,排名前10的学者当选该领域当年最具影响力学者奖,排名前100的其他学者获最具影响力学者提名奖。作为项目负责人开源发布了两个自然语言处理开源系统FudanNLP和FastNLP,获得了学术界和产业界的广泛使用。目前担任中国中文信息学会青年工作委员会执行委员、计算语言学专委会委员、语言与知识计算专委会委员,中国人工智能学会青年工作委员会常务委员、自然语言理解专委会委员。
目录
---------------------------Java人工神经网络构建---------------------------
前言
第1章 关于神经网络的学习 1
1.1 生物神经元与人工神经元 1
1.2 激活函数 2
1.3 本章小结 4
第2章 神经网络处理的内在机理 5
2.1 逼近函数 5
2.2 网络架构 6
2.3 前向传递计算 7
2.4 输入记录1 8
2.5 输入记录2 8
2.6 输入记录3 9
2.7 输入记录4 9
2.8 反向传播过程计算 10
前言
---------------------------Java人工神经网络构建---------------------------
人工智能是计算机科学中快速发展的一个领域。自计算机发明以来,我们观察到一个有趣的现象。对人类来说比较困难的任务(如繁重的计算、搜索、记忆大量数据等)计算机很容易完成,而人类自然能够快速完成的任务(如识别部分覆盖的物体、智力、推理、创造、发明、理解语音、科学研究等)对计算机来说又是困难的。
人工智能作为一门学科诞生于20世纪50年代,最初由于缺乏反向传播和自动化的训练手段而失败。在20世纪80年代,它因为无法形成自己的内部表示而再次失败,后来通过深度学习和更强大的计算机解决了这个问题。
在第二次失败后,一种新的非线性网络架构被开发出来,计算机计算能力的巨大提高最终促成了20世纪90年代人工智能的巨大成功,人工智能逐渐能够解决许多工业级的问题,如图像识别、语音识别、自然语言处理、模式识别、预测、分类、自动驾驶汽车、机器人自动化等。
人工智能的巨大成功最近引发了各种各样的无端猜测,你会发现关于机器人匹敌和超越人类智慧的讨论。然而,目前人工智能还是一套聪明的数学和处理方法,让计算机从它们处理的数据中学习,并应用这些知识来完成许多重要的任务。很多属于人类的东西,比如智力、情感、创造、感觉、推理等,人工智能仍然无法很好地处理。
不过,人工智能正在迅速改变。近年来,计算机已经变得非常擅长下棋,以至于可以可靠地击败人类对手。这一点也不奇怪,因为它们的创造者使程序学会了人类在国际象棋上积累了数百年的经验。现在,机器在全球计算机国际象棋锦标赛上互相竞争,角逐冠军。其中一个名为Stockfish 8的最佳棋类程序在2016年赢得了全球计算机国际象棋冠军。
2017年,谷歌开发了一个名为AlphaZero的国际象棋程序,在2017年全球计算机国际象棋锦标赛中击败了Stockfish 8程序。令人惊奇的是,没有人像在其他象棋程序开发过程中所做的那样去教AlphaZero学习象棋策略。相反,它利用最新的机器学习原理,通过对抗自己来自学象棋。这个程序只花了四个小时学习国际象棋策略(同时与自己对抗),就打败了Stockfish 8。自主学习是人工智能的新里程碑。
人工智能有许多分支。本书致力于其中一个分支:神经网络。神经网络使计算机能够从观测数据中学习并基于这些知识做出预测。具体来说,本书介绍神经网络的训练以及将神经网络用于函数逼近、预测和分类。
本书内容
这本实用的操作手册涵盖开发神经网络应用程序的许多方面。它从零开始解释神经网络是如何工作的,然后以训练一个小神经网络为例,手动进行所有的计算。本书涵盖前向传播和反向传播的内在机理,有助于读者理解神经网络处理的主要原理。本书还教你如何准备用于神经网络开发的数据,并为许多非传统的神经网络处理任务提出各种数据准备方法。
书中讨论的另一个大主题是使用Java进行神经网络处理。大多数有关人工智能的书籍使用Python作为开发语言。然而,Java是使用最广泛的编程语言。它比Python快,并且允许你在一台计算机上开发项目,并在许多不同的支持Java环境的计算机上运行它们。此外,当人工智能处理成为企业应用程序的一部分时,没有其他语言可以与Java竞争。
本书使用了一个名为Encog的Java框架,并展示了使用它开发大规模神经网络应用程序的所有细节。本书还讨论了传统的神经网络过程难以逼近复杂的非连续函数以及具有复杂拓扑的连续函数的问题,并介绍了解决这一问题的微批次方法。
本书包括大量的示例、图表和屏幕截图,循序渐进地讲解各种方法,以提升读者的学习体验。书中讨论的每个主题都有相应的实际开发示例和许多提示。
本书中的所有示例都是面向Windows 7/10平台开发的,开发语言为Java,可以在任何支持Java的环境下运行。本书中描述的所有Java工具都是免费使用的,可以从Internet上下载。
本书读者对象
媒体评论
---------------------------Java人工神经网络构建---------------------------
本书使用Java开发神经网络应用程序。在学习了神经网络处理所涉及的规则之后,你将可以手工处理第一个神经网络示例。本书涵盖了前向传播和反向传播的内在机理,有助于读者理解神经网络处理的主要原理。还教你如何准备用于神经网络开发的数据,并为许多非传统的神经网络处理任务提出各种数据准备方法。
书中讨论的下一个大主题是使用Java进行神经网络处理。你将使用Encog Java框架,并了解如何使用Encog进行快速开发,从而创建大规模的神经网络应用程序。
本书还讨论传统的神经网络过程无法逼近复杂的非连续函数问题,并介绍解决这一问题的微批次方法。本书包括大量的示例、图表和屏幕截图,逐步讲解各种方法,帮助你快速轻松地掌握概念。
本书主要内容:
为许多不同的任务准备数据
执行一些不寻常的神经网络任务
创建一个处理非连续函数的神经网络
选择和改进开发的模型
---------------------------神经网络与深度学习---------------------------