代码原地址:

https://www.mindspore.cn/tutorial/zh-CN/r1.2/model.html

建立神经网络:

  1. import mindspore.nn as nn
  2.  
  3. class LeNet5(nn.Cell):
  4. """
  5. Lenet网络结构
  6. """
  7. def __init__(self, num_class=10, num_channel=1):
  8. super(LeNet5, self).__init__()
  9. # 定义所需要的运算
  10. self.conv1 = nn.Conv2d(num_channel, 6, 5, pad_mode='valid')
  11. self.conv2 = nn.Conv2d(6, 16, 5, pad_mode='valid')
  12. self.fc1 = nn.Dense(16 * 5 * 5, 120)
  13. self.fc2 = nn.Dense(120, 84)
  14. self.fc3 = nn.Dense(84, num_class)
  15. self.relu = nn.ReLU()
  16. self.max_pool2d = nn.MaxPool2d(kernel_size=2, stride=2)
  17. self.flatten = nn.Flatten()
  18.  
  19. def construct(self, x):
  20. # 使用定义好的运算构建前向网络
  21. x = self.conv1(x)
  22. x = self.relu(x)
  23. x = self.max_pool2d(x)
  24. x = self.conv2(x)
  25. x = self.relu(x)
  26. x = self.max_pool2d(x)
  27. x = self.flatten(x)
  28. x = self.fc1(x)
  29. x = self.relu(x)
  30. x = self.fc2(x)
  31. x = self.relu(x)
  32. x = self.fc3(x)
  33. return x
  34.  
  35. model = LeNet5()
  36.  
  37. for m in model.parameters_and_names():
  38. print(m)

  1. import mindspore
  2. from mindspore import Tensor
  3. import mindspore.nn as nn
  4.  
  5. import numpy as np
  6.  
  7. conv2d = nn.Conv2d(1, 6, 5, has_bias=False, weight_init='normal', pad_mode='valid')
  8. input_x = Tensor(np.ones([1, 1, 32, 32]), mindspore.float32)
  9.  
  10. print(conv2d(input_x).shape)

  1. import mindspore
  2. from mindspore import Tensor
  3. import mindspore.nn as nn
  4.  
  5. import numpy as np
  6.  
  7. relu = nn.ReLU()
  8. input_x = Tensor(np.array([-1, 2, -3, 2, -1]), mindspore.float16)
  9. output = relu(input_x)
  10.  
  11. print(output)

  1. import mindspore
  2. from mindspore import Tensor
  3. import mindspore.nn as nn
  4.  
  5. import numpy as np
  6.  
  7. max_pool2d = nn.MaxPool2d(kernel_size=2, stride=2)
  8. input_x = Tensor(np.ones([1, 6, 28, 28]), mindspore.float32)
  9.  
  10. print(max_pool2d(input_x).shape)

  1. import mindspore
  2. from mindspore import Tensor
  3. import mindspore.nn as nn
  4.  
  5. import numpy as np
  6.  
  7. flatten = nn.Flatten()
  8. input_x = Tensor(np.ones([1, 16, 5, 5]), mindspore.float32)
  9. output = flatten(input_x)
  10.  
  11. print(output.shape)

  1. import mindspore
  2. from mindspore import Tensor
  3. import mindspore.nn as nn
  4.  
  5. import numpy as np
  6.  
  7. dense = nn.Dense(400, 120, weight_init='normal')
  8. input_x = Tensor(np.ones([1, 400]), mindspore.float32)
  9. output = dense(input_x)
  10.  
  11. print(output.shape)

MindSpore 建立神经网络的更多相关文章

  1. MindSpore循环神经网络

    MindSpore循环神经网络 一. 神经网络的组成 神经元模型:首先简单的了解以下构成神经网络的最基础单元:神经元.每个神经元与其它神经元相连,处于激活状态时,就会向相连的神经元发送相应信号.从而改 ...

  2. 几个小实践带你快速上手MindSpore

    摘要:本文将带大家通过几个小实践快速上手MindSpore,其中包括MindSpore端边云统一格式及华为智慧终端背后的黑科技. MindSpore介绍 MindSpore是一种适用于端边云场景的新型 ...

  3. MindSpore:自动微分

    MindSpore:自动微分 作为一款「全场景 AI 框架」,MindSpore 是人工智能解决方案的重要组成部分,与 TensorFlow.PyTorch.PaddlePaddle 等流行深度学习框 ...

  4. 使用神经网络来识别手写数字【译】(三)- 用Python代码实现

    实现我们分类数字的网络 好,让我们使用随机梯度下降和 MNIST训练数据来写一个程序来学习怎样识别手写数字. 我们用Python (2.7) 来实现.只有 74 行代码!我们需要的第一个东西是 MNI ...

  5. 利用LM神经网络和决策树去分类

    # -*- coding: utf-8 -*- import pandas as pd from scipy.interpolate import lagrange from matplotlib i ...

  6. 【转】pybrain的使用——一个开源的python神经网络工具包

    原文地址   http://lavimo.blog.163.com/blog/static/2149411532013911115316263/ 昨天的主要活动内容是找一个神经网络的包....= =这 ...

  7. tensorflow卷积神经网络-【老鱼学tensorflow】

    前面我们曾有篇文章中提到过关于用tensorflow训练手写2828像素点的数字的识别,在那篇文章中我们把手写数字图像直接碾压成了一个784列的数据进行识别,但实际上,这个图像是2828长宽结构的,我 ...

  8. tensorflow建造神经网络-【老鱼学tensorflow】

    上次我们添加了一个add_layer函数,这次就要创建一个神经网络来预测/拟合相应的数据. 下面我们先来创建一下虚拟的数据,这个数据为二次曲线数据,但同时增加了一些噪点,其图像为: 相应的创建这些伪造 ...

  9. 使用HOG特征+BP神经网络进行车标识别

    先挖个坑,快期末考试了,有空填上w 好了,今晚刚好有点闲,就把坑填上吧. //-------------------------------开篇---------------------------- ...

  10. Deep Learning.ai学习笔记_第一门课_神经网络和深度学习

    目录 前言 第一周(深度学习引言) 第二周(神经网络的编程基础) 第三周(浅层神经网络) 第四周(深层神经网络) 前言 目标: 掌握神经网络的基本概念, 学习如何建立神经网络(包含一个深度神经网络), ...

随机推荐

  1. Vue学习:5.v-bind使用

    第一节算是对v-bind的粗略了解,仅仅是列举了v-bind的使用.这一节将更详细的了解v-bind的具体用法. v-bind是 Vue.js 中常用的指令之一,用于动态地绑定属性或者表达式到 HTM ...

  2. 项目管理--PMBOK 读书笔记(3)【项目经理的角色 】

    思维导图软件工具:https://www.xmind.cn/ 源文件地址:https://files-cdn.cnblogs.com/files/zj19940610/项目经理的角色.zip

  3. Github上优秀的.NET Core开源项目的集合【转】

    一般 ASP.NET Core Documentation - 官方ASP.NET核心文档站点. .NET Core Documentation - .NET Core,C#,F#和Visual Ba ...

  4. 快速上手Python编程

    前言 .center { width: auto; display: table; margin-left: auto; margin-right: auto } 类型 原理 优点 缺点 编译型语言 ...

  5. detect.py - yolov5master nvidia jetson agx xavier for mask with UART

    import argparse import time from pathlib import Path import cv2 import torch import torch.backends.c ...

  6. 2019 南昌区域赛 CEGLM 题解 & lagrange 插值

    B. A Funny Bipartite Graph 状压 dp ,利用了原题中选完左边点集,那么右边在 左边编号最大的那个数 之前的所有点都要选的性质,可以优化到 \(O(n \cdot 2^n)\ ...

  7. 认识.NET 日志系统

    认识.NET 日志系统 基本概念 日志级别:Trace<Debug<Information<Waring<Error<Critical 日志提供者(LoggingProv ...

  8. 多个子节点收集日志-主节点上传到HDFS

    Master: ---------------------- #MasterAgentMasterAgent.channels = c1MasterAgent.sources = s1MasterAg ...

  9. 创建基于kotlin开发环境的spring项目入门

    kotlin是idea所属公司开发的一门jvm语言,如果你不了解估计也不会看这里,所以我就不多说了. 这里简单说一下如何新建一个小的kotlin spring项目.kotlin和idea是一家公司,所 ...

  10. 重磅消息:微软发布多平台应用UI框架 MAUI,网友直呼:牛x

    本文内容来自微软开发博客:https://devblogs.microsoft.com/dotnet/introducing-net-multi-platform-app-ui/ 转载请注明来源,公众 ...