加入收藏 | 设为首页 | 会员中心 | 我要投稿 唐山站长网 (https://www.0315zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长资讯 > 动态 > 正文

我在大厂写React学到了什么?

发布时间:2021-02-06 12:23:19 所属栏目:动态 来源:互联网
导读:这段代码分别制作出了训练和验证集。同时我们也随机排列了数据集从而更好的训练。除了这些配置以外,你也可以添加对于图片的进一步处理,比如设置图片大小,对图片进行归一化等处理。 制作 model(建立 Block) 当你的数据集准备就绪后,我们就可以构建神经

这段代码分别制作出了训练和验证集。同时我们也随机排列了数据集从而更好的训练。除了这些配置以外,你也可以添加对于图片的进一步处理,比如设置图片大小,对图片进行归一化等处理。

制作 model(建立 Block)

当你的数据集准备就绪后,我们就可以构建神经网络了。在 DJL 中,神经网络是由 Block(代码块)构成的。一个 Block 是一个具备多种神经网络特性的结构。它们可以代表 一个操作, 神经网络的一部分,甚至是一个完整的神经网络。然后 Block 可以顺序执行或者并行。同时 Block 本身也可以带参数和子 Block。这种嵌套结构可以帮助我们构造一个复杂但又不失维护性的神经网络。在训练过程中,每个 Block 中附带的参数会被实时更新,同时也包括它们的各个子 Block。这种递归更新的过程可以确保整个神经网络得到充分训练。

当我们构建这些 Block 的过程中,最简单的方式就是将它们一个一个的嵌套起来。直接使用准备好 DJL 的 Block 种类,我们就可以快速制作出各类神经网络。

根据几种基本的神经网络工作模式,我们提供了几种 Block 的变体。SequentialBlock 是为了应对顺序执行每一个子 Block 构造而成的。它会将前一个子 Block 的输出作为下一个 Block 的输入 继续执行到底。与之对应的,是 ParallelBlock 它用于将一个输入并行输入到每一个子 Block 中,同时将输出结果根据特定的合并方程合并起来。最后我们说一下 LambdaBlock,它是帮助用户进行快速操作的一个 Block,其中并不具备任何参数,所以也没有任何部分在训练过程中更新。
 

3.2 NDArray 和 NDManager

NDArray 是 DJL 存储数据结构和数学运算的基本结构。一个 NDArray 表达了一个定长的多维数组。NDArray 的使用方法类似于 Python 中的 numpy.ndarray 。

NDManager 是 NDArray 的老板。它负责管理 NDArray 的产生和回收过程,这样可以帮助我们更好的对 Java 内存进行优化。每一个 NDArray 都会是由一个 NDManager 创造出来,同时它们会在 NDManager 关闭时一同关闭。NDManager 和 NDArray 都是由 Java 的 AutoClosable 构建,这样可以确保在运行结束时及时进行回收。想了解更多关于它们的用法和实践,请参阅我们前一期文章:

DJL 之 Java 玩转多维数组,就像 NumPy 一样

Model

在 DJL 中,训练和推理都是从 Model class 开始构建的。我们在这里主要讲训练过程中的构建方法。下面我们为 Model 创建一个新的目标。因为 Model 也是继承了 AutoClosable 结构体,我们会用一个 try block 实现:
 

二、什么是深度学习?

在我们正式开始之前,我们先来了解一下机器学习和深度学习的基本概念。

机器学习是一个通过利用统计学知识,将数据输入到计算机中进行训练并完成特定目标任务的过程。这种归纳学习的方法可以让计算机学习一些特征并进行一系列复杂的任务,比如识别照片中的物体。由于需要写复杂的逻辑以及测量标准,这些任务在传统计算科学领域中很难实现。

深度学习是机器学习的一个分支,主要侧重于对于人工神经网络的开发。人工神经网络是通过研究人脑如何学习和实现目标的过程中归纳而得出一套计算逻辑。它通过模拟部分人脑神经间信息传递的过程,从而实现各类复杂的任务。深度学习中的“深度”来源于我们会在人工神经网络中编织构建出许多层(layer)从而进一步对数据信息进行更深层的传导。深度学习技术应用范围十分广泛,现在被用来做目标检测、动作识别、机器翻译、语意分析等各类现实应用中。

三、训练 MNIST 手写数字识别

3.1 项目配置

你可以用如下的 gradle 配置来引入依赖项。在这个案例中,我们用 DJL 的 api 包 (核心 DJL 组件) 和 basicdataset 包 (DJL 数据集) 来构建神经网络和数据集。这个案例中我们使用了 MXNet 作为深度学习引擎,所以我们会引入 mxnet-engine 和 mxnet-native-auto 两个包。这个案例也可以运行在 PyTorch 引擎下,只需要替换成对应的软件包即可。
 

会上,天地和兴、安帝、思特奇、开源网安、曙光星云、知道创宇、国信金通、安盟、中天数港、国利网安等企业落户园区并签约。天地和兴、江苏智慧安全可信技术研究院、中国移动、梆梆安全、开源网安、安帝、思特奇、圣博润等企业启动工业互联网安全产业联盟(I2S联盟)筹建仪式,为工业互联网安全产业发展聚力赋能。

据了解,长三角网络安全产业园是南通市崇川区政府、南通市工信局、公安部等保中心共建,于2019年11月启动建设,经过一年的建设,园区快速发展、茁壮成长,“两院、两基地、两基金、五中心”的总体框架全面形成,中国系统、深信服、启明星辰等20多家企业相继落户,等保云防、等保云查系列产品完成研发并投入使用。下一步,南通将借此次大会机遇,全力统筹资源,坚定不移发展网络安全产业,打造成为具有区域影响力的网络安全产业高地。

(编辑:唐山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读