当前位置: 首页 > news >正文

[Machine Learning][Part 7]神经网络的基本组成结构

这里我们将探索神经元/单元和层的内部工作原理。特别是,与之前学习的回归/线性模型和逻辑模型进行比较。最后接介绍tensorflow以及如何利用tensorflow来实现这些模型。

神经网络和大脑的神经元工作原理类似,但是比大脑的工作原理要简单的多。大脑中神经元的工作原理如下图:inputs表示上一个神经元传递过来的信号,然后经过当前神经元的处理,当前神经元将处理后的信号传递给下一个神经元,这样基本的信号传递就完成了。

神经网络的结构

machine learning的神经网络结构类似于大脑的神经网络结构,下图中向量x为上一层的输入,包含三个蓝色圆圈的黑色方框是当前的处理层,向量a[1]为当前层的输出,并且问下一层的输入,向量a[2]为最终的输出结果。可以看到一个简单的神经网络由输入层处理层输出层组成,其中处理层中可以包含多个处理的“神经元”,处理层也叫做隐藏层。

更复杂的神经网络包含多个处理层,如下图,包含两个处理层:

 输入层

输入训练数据的作用

处理层

处理层中包含多个神经元,每一个神经元就是一个处理模型,比如说线性回归模型,逻辑回归模型或者sigmoid激活函数。

比如上面的处理层a[1]有3个神经元(unit表示神经元),那么layer_1中包含3个unit,并且都是sigmoid激活函数。输出层a[2]有一个神经元,那么layer_2中unit为1,模型为sigmoid激活函数

那么怎么将各层之间的输入与输出联系起来呢?Sequential 会将所有的层按线性连接起来形成module,如下图

这种上一层的输出结果作为下一层的输入,并计算下一层的输出,直到计算到输出层为止,被叫做前向传播(forward)。 前向传播的一般实现为:

import numpy as npW = np.array([[1,-3,5][2,4,-6]])
b = np.array([-1,1,2])
a_in = np.arry([-2,4])def dense(a_in,W,b,g):units = W.shape[1]a_out = np.zeros(units)for j in range(units):w= W[:,j]z = np.dot(w,a_in) + b[j]a_out[j]=g(z)return a_outdef sequential(x):a1 = dense(x,W[1],b[1])a2 = dense(a1, W[2], b[2])a3 = dense(a2, W[3], b[1])a4 = dense(a3, W[4], b[1])f_x = a4return f_x

相关文章:

  • chinese_llama_aplaca训练和代码分析
  • javaEE -13(6000字CSS入门级教程 - 2)
  • Scala的类和对象
  • matlab双目标定中基线物理长度获取
  • Adobe acrobat 11.0版本 pdf阅读器修改背景颜色方法
  • 用前端框架Bootstrap和Django实现用户注册页面
  • linux傻瓜式安装Java环境及中间件
  • 音频修复增强软件iZotope RX 10 mac中文特点
  • 数据分析、大数据分析和人工智能之间的区别
  • Spring AOP基于XML方式笔记整理
  • 建议收藏《2023华为海思实习笔试-数字芯片真题+解析》(附下载)
  • 【Python 千题 —— 基础篇】地板除计算
  • 【ChatOCR】OCR+LLM定制化关键信息抽取(附开源大语言模型汇总整理)
  • Postman测试金蝶云星空Webapi【协同开发云】
  • 在NISQ小型计算机上执行大型并行量子计算的可能性
  • AHK 中 = 和 == 等比较运算符的用法
  • extjs4学习之配置
  • JS+CSS实现数字滚动
  • Laravel Telescope:优雅的应用调试工具
  • MySQL用户中的%到底包不包括localhost?
  • Phpstorm怎样批量删除空行?
  • Vue全家桶实现一个Web App
  • Vue学习第二天
  • 分布式熔断降级平台aegis
  • 搞机器学习要哪些技能
  • 聊聊sentinel的DegradeSlot
  • 前端之Sass/Scss实战笔记
  • 如何借助 NoSQL 提高 JPA 应用性能
  • 深入体验bash on windows,在windows上搭建原生的linux开发环境,酷!
  • 为什么要用IPython/Jupyter?
  • 吴恩达Deep Learning课程练习题参考答案——R语言版
  • 学习笔记:对象,原型和继承(1)
  • 移动端唤起键盘时取消position:fixed定位
  • 用 Swift 编写面向协议的视图
  • MiKTeX could not find the script engine ‘perl.exe‘ which is required to execute ‘latexmk‘.
  • 3月7日云栖精选夜读 | RSA 2019安全大会:企业资产管理成行业新风向标,云上安全占绝对优势 ...
  • #define与typedef区别
  • #常见电池型号介绍 常见电池尺寸是多少【详解】
  • (3)Dubbo启动时qos-server can not bind localhost22222错误解决
  • (html转换)StringEscapeUtils类的转义与反转义方法
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (附源码)ssm学生管理系统 毕业设计 141543
  • (黑马C++)L06 重载与继承
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • (四)图像的%2线性拉伸
  • (转)IOS中获取各种文件的目录路径的方法
  • .form文件_SSM框架文件上传篇
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .net refrector
  • .Net(C#)自定义WinForm控件之小结篇
  • .NET的数据绑定
  • @column注解_MyBatis注解开发 -MyBatis(15)
  • @transactional 方法执行完再commit_当@Transactional遇到@CacheEvict,你的代码是不是有bug!...
  • @Transactional 竟也能解决分布式事务?
  • [2]十道算法题【Java实现】