深度学习笔记:神经网络(1)

news2024/11/20 2:20:06

对于感知机相关内容,可以参考我上一篇文章:
https://blog.csdn.net/Raine_Yang/article/details/128461600?spm=1001.2014.3001.5501

在这里插入图片描述
在图示中,最左边一列为输入层,最右边一列为输出层,中间为中间层,也叫隐藏层。一般把输入层到输出层以此称为第0层,第1层,第2层等

对于感知机,我们将输入和权重乘积相加并和阈值比较,阈值又可以表示为偏置b,及比较 x1w1 + x2w2 + b = 0 我们可以用一个函数表示以下式子,即

y = h(b + w1x1 + w2x2)

函数h的定义为当x <= 0时h(x) = 0,当x > 0时h(x) = 1。函数h被称为激活函数(activation function)
在这里插入图片描述

激活函数:

感知机使用一个阶梯函数,当输入达到某一阈值时输出1,否则输出0。不过如果我们将激活函数换为别的函数,我们就创建了神经网络

1 sigmoid函数
表达式:y = 1 / (1 + e ^ -x)
绘制:

import numpy as np
import matplotlib.pylab as plt

def step_function(x):
    return np.array(x > 0, dtype = int)

def sigmoid(x):
    return 1 / (1 + np.exp(-x))

x = np.arange(-5.0, 5.0, 0.1)
y = sigmoid(x)
plt.plot(x, y)
plt.ylim(-0.1, 1.1) # the range of y-axis
plt.show()

在这里插入图片描述
sigmoid函数为连续函数,且各点都可求导。该函数定义域为全体实数,值域为(0, 1),在输入很小时,输出趋近于0,在输入很大时,输出趋近于1,这一点和阶梯函数类似

阶梯函数和sigmoid函数都输入线性函数。线性函数即为 y = kx表达式。神经网络只有使用非线性函数作为激活函数时加深层数才有意义。(如果使用线性函数 y = kx,三层神经网络 y(y(y(x))) 无异于一层 y = k ^ 3 * x)

2 ReLU (Rectified Linear Unit)
ReLU函数在输入大于0时直接输出输入值,在输入小于等于0时输出0
绘制:

import numpy as np
import matplotlib.pylab as plt

def ReLU(x):
    return np.maximum(0, x)

x = np.arange(-5.0, 5.0, 0.1)
y = ReLU(x)
plt.plot(x, y)
plt.show()

在这里插入图片描述
矩阵乘法

在这里插入图片描述
矩阵乘法通过坐标行和右边列相乘。如图,新矩阵1行1列为A第1行和B第1列相乘,1行2列为A第1行和B第2列相乘。

注意两个矩阵如果要相乘第一个矩阵第1维元素个数(列数)要和第二个矩阵第0维元素个数(行数)相等。如2 x 3矩阵可以和 3 x 2矩阵相乘,但不可和1 x 2矩阵相乘

c = np.array([[1, 2, 3], [4, 5, 6]])
d = np.array([[1, 2], [3, 4], [5, 6]])
np.dot(c, d)

在python中使用np.dot(a, b)计算矩阵乘法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/124651.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android 传感器概述(一)

Android 传感器概述&#xff08;一&#xff09;Android 传感器概述&#xff08;一&#xff09;传感器简介传感器框架识别传感器和传感器特性监控传感器事件处理不同的传感器配置在运行时检测传感器使用 Google Play 过滤器定位特定的传感器配置传感器坐标系Android 传感器概述&…

Pytorch的 Dataset 的使用

此案例教我们加载并处理TorchVision的FashionMNIST Dataset。 root 目录是 train/test data 存储的地方 downloadTrue 如果root目录没有&#xff0c;则从网上下载 transform and target_transform specify the feature and label transformations import torch from torch.u…

第十五讲:神州交换机端口安全配置

知识点&#xff1a; 开启端口安全模式&#xff1b;设置端口最大安全数&#xff1b;端口绑定MAC地址&#xff1b;违规处理&#xff1b;锁定安全端口&#xff1b;MAC地址与IP的绑定&#xff1b;端口镜像。 实验拓扑如下图所示 PC机 IP地址 掩码 MAC地址 端口 PC1 192.168.…

Windows10安装ubuntu(WSL2,可直接调用Win10程序) —2022年笔记

算是wsl2的使用总结。 一。启动win10虚拟机模块 1. 打开控制面板&#xff08;或开始->运行: control&#xff09; 2. 点击最左边的 “启用或关闭windows功能”&#xff0c;会弹出模块勾选界面 3. 勾上 Hyper-V、适用于Linux的Windows子系统、虚拟机平台 4. 点击确定按钮即开…

【微服务】Nacos 注册中心的设计原理

目录 一、前言 二、数据模型 三、数据一致性 四、负载均衡 五、健康检查 六、性能与容量 七、易用性 八、集群扩展性 九、用户扩展性 十、结尾 &#x1f496; Spring家族及微服务系列文章 一、前言 服务发现是⼀个古老的话题&#xff0c;当应用开始脱离单机运行和访…

Mysql查询性能优化

Mysql查询性能优化0.前言1.为什么查询速度会慢2. 慢查询基础&#xff1a;优化数据访问2.1 是否向数据库请求了不需要的数据2.2 MYSQL是否在扫描额外的记录响应时间扫描的行数和返回的行数3. 重构查询方式3.1 一个复杂查询还是多个简单查询3.2 切分查询3.3 分解关联查询0.前言 …

DAG任务调度系统 Taier 演进之道,探究DataSourceX 模块

熟悉Taier的小伙伴们应该都知道&#xff0c;在11月7日发布的Taier1.3新版本中&#xff0c;我们融合了「DataSourceX 模块」。这是十分重要的一个变化&#xff0c;移除Taier外部插件依赖&#xff0c;新增数据源插件相关特性&#xff0c;支持后续Taier对接更多的RDBMS类型的SQL任…

小鹅通六周年:新知识服务时代,做好企业的“共享CTO”

2022年&#xff0c;产业数字化汹涌而来&#xff0c;驱动企业变革转型的同时&#xff0c;知识也以新的形式出现在各行各业。人人表达和传递知识&#xff0c;知识服务开始进入“下半场”。 如何应用数字化产品满足个人和组织的知识表达需求&#xff1f;作为知识产品与用户服务的…

HashMap的结构,1.7和1.8有哪些区别

一、真实面试题之&#xff1a;Hashmap的结构&#xff0c;1.7和1.8有哪些区别 不同点&#xff1a; &#xff08;1&#xff09;JDK1.7用的是头插法&#xff0c;而JDK1.8及之后使用的都是尾插法&#xff0c;那么他们为什么要这样做呢&#xff1f;因为JDK1.7是用单链表进行的纵向…

【开源项目】单点登录框架XXL-SSO源码解析

单点登录框架XXL-SSO源码解析 项目介绍 XXL-SSO 是一个分布式单点登录框架。只需要登录一次就可以访问所有相互信任的应用系统。 拥有"轻量级、分布式、跨域、CookieToken均支持、WebAPP均支持"等特性。现已开放源代码&#xff0c;开箱即用。 项目地址 https://g…

GRAPH ATTENTION NETWORKS 论文/GAT学习笔记

背景 目标&#xff1a;适用不同结构的图的模型 图卷积 基于谱的方法 &#xff1a; 这些方法学习得到的filters基于拉普拉斯特征基&#xff0c;而拉普拉斯特征基又基于图结构&#xff0c;所以在特定结构上训练的模型不能直接应用到具有不同结构的图。代表&#xff1a;GCN 不基…

分布式系统下的认证与授权

在软件系统设计中&#xff0c;如何让应用能够在各种环境中安全高效的访问是个复杂的问题&#xff0c;这个问题的背后是一系列软件设计时需要考虑的架构安全问题&#xff1a;架构安全性 | 凤凰架构 认证&#xff1a;系统如何识别合法用户&#xff0c;也就是解决 你是谁 的问题&…

2022年全球气候金融产品研究报告

第一章 全球气候金融概述 气候变化既是环境问题也是发展问题&#xff0c;需要大量气候资金的投入&#xff0c;金融作为推动经济发展的核心要素&#xff0c;在应对天气变化中能够发挥重要作用。气候金融是与应对气候变化相关的创新金融&#xff0c;是利用多渠道资金来源、运用多…

redhat9安装卸载mysql

文章目录一.仓库安装1.1、下载rpm包1.2、挂载1.3、安装mysql1.4、启动mysql服务1.5、查看临时密码1.6、登录mysql二.本地安装2.1、复制链接2.2、下载解压2.3、安装需要的包2.4、启动服务2.5、登录mysql三.容器安装3.1、安装docker3.2、run镜像3.3、登录mysql四.源码安装4.1、复…

STM32MP157驱动开发——多点电容触摸屏驱动

STM32MP157驱动开发——多点电容触摸屏驱动一、简介二、电容触摸屏驱动框架简介多点触摸(MT)协议详解三、驱动开发1.添加 FT5426 设备节点2.FT5426 节点配置3.驱动编写4.运行测试5.将驱动添加到内核中1&#xff09;将驱动文件放到合适的位置2&#xff09;修改Makefile6.tslib 移…

Xillinx的设计约束阅读整理

《适用于FPGA和SOC的UlteraFast设计方法指南》&#xff08;UG949&#xff09; 《Vivado Design Suite 用户指南&#xff1a;设计分析与收敛技巧》(UG906) 《Vivado Design Suite 用户指南&#xff1a;使用约束》(UG903) 《Vivado Design Suite Tcl 命令参考指南》(UG835) 约束文…

【java基础】关于线程的一些基础知识点

1.线程的概念&#xff1a; 在java的应用中&#xff0c;线程更多情况下指的是Thread&#xff0c;更精细一点&#xff0c;执行线程就是执行Thread实体下面的run方法&#xff0c;java通过cpu调试&#xff0c;交替进行这些thread&#xff0c;就达到了共同进行这种效果&#xff1b;…

【尚硅谷】SpringBoot2核心技术-1-基础入门

【尚硅谷】SpringBoot2核心技术-1-基础入门一、Spring与SpringBoot1、Spring能做什么1.1、Spring的能力1.2、Spring的生态【没写完】二、SpringBoot2入门1、系统要求1.1、maven设置2、HelloWorld2.1、创建maven工程2.2、引入依赖2.3、创建主程序2.4、编写业务2.5、测试2.6、简化…

DM8开发技能

DM8开发技能 基础学习笔记005 文章目录DM8开发技能1、DMSQL程序设计1.1 概念1.2 数据类型1.3 程序定义1.3.1 存储过程1.3.2 存储函数1.3.3 客户端DMSQL程序1.3.4 参数1.3.5 控制结构&#xff08;1&#xff09;顺序结构&#xff08;2&#xff09;分支结构&#xff08;3&#xf…

Doo Prime 德璞资本:道琼斯期货投资前必看的入门知识

美国道琼工业指数是全球最受关注的股指之一&#xff0c;而道琼斯期货则是典型的衍生性金融商品&#xff0c;交易的标的是道琼指数本身&#xff0c;属于期货投资的范畴&#xff0c;适合短线进出、波段交易。想要参与美国的期货投资市场&#xff0c;却不知道期货该如何开始吗&…