[machine learning]神经网路初步 basic neural network

news2024/12/27 7:04:21

这一篇写的很差....我会找时间慢慢补充的 

1.神经网络是什么

在上一篇关于逻辑回归的博客中,简单介绍了逻辑回归模型,对于监督学习来说,模型可以理解为一个模块/函数,在足够的数据训练以后,通过梯度下降等手段进行拟合,最终根据输入来预测输出结果.

这一个东西,我们可以称之为神经元(初中生物)

多个神经元可以组成层(layer),最终多个层可以组成一个神经网络

神经网络和单一的逻辑回归模型一样,同样是多个数据的输入来进行训练,最后得到我们需要的结果.

2.为什么要使用神经网络

相比于单一逻辑回归计算,神经网络对于高复杂度的数据有更好的训练结果展示,例如具有多个特征或者多个需求模块识别的时候,使用神经网络是更加合适的选择.

此外神经网络的自适应性很高,每个节点的权重数目可以随着特征数目而变化,可以根据输入数据的变化进行调整。这使它们能够处理不断变化的环境和数据分布。

3.神经网络的展示

神经网络的大致结构如下所示:

在本图中图片分为: 输入,隐藏层1,隐藏层2,隐藏层3,输出层,输出

 根据输入的训练数据,对每一层的每个神经元进行梯度下降等方法训练,每一层输出维数和层中神经元数目一致的向量(不同的框架库对于向量的表示方法不一样,反正你就记着不是数组就对了)

正因为神经元数目足够多,并且结构比较复杂,像这种每个神经元都需要完全接收输入的情况(这种层称之为密集层(dense layer)),需要的训练数据比单一模型训练更加复杂和耗时.

另外每一层可以单独设置激活函数(activation function),这一点会在后面讲到.

4.神经网络的传递细节

对于神经网络来说,每一层的输入是一个向量,每一层的输出也是一个向量

细致结构如下

在这个简单的神经网络示意图中,a[2]是隐藏层2的输出结果,a[2]的特征值数目与layer2中的神经网络数目一致,一个神经元负责计算一个分量.

而在layer3中,由于本图展示的3是密集层,所以神经元都能独立完全接收到整个输入的数据a[2],神经元会根据传入的特征值的数目,自行安排权重向量w的数目.

最后再使用激活函数,对于每个神经元的输出结果做简单处理.组合成新的输出结果a[3]

(注:训练原理仍然是梯度下降)

5.神经网络的分层

神经网络有很多分层,像上面的称之为(Dense layer),特点是每个神经元需要获取到全部的特征值,至于具体最后的结果是否不需要某个特征值,这个是训练结果决定的.如果根据使用特征值的情况进行连线,最后的结果是这样

所以被称之为密集层.

而如果使用卷积层(reconvene),可以指定某个神经元只能读取某些特征值,举个例子,对于一张图片的读取来说,我们可以给神经元分配任务,让某些神经元只获取特定区域的信息

6.多分类问题

在上述的图片中,神经网络的最终实现结果是一个输出,比如说我们可以使用sigmoid激活函数,最终可以得到一个预测值,比如说预测一个东西是不是车,神经网络会回答你"是"/'不是'(或者说有多大概率是)

但是如果我们的输出需求可能有很多,比如判断一张图的东西是车?马?人?或者比如说数字识别,是1还是234579?这种情况下当然可以构建"神经网络森林".但是这样子训练开销增加巨大,数字只有十个,但是汉字?

并且就算使用多个神经网络,最后的计算结果,训练过程也不一样,到时候的输出结果:

1的可能性为=0.77  ,2的可能性为0.36

这不是很尴尬/

为了处理这种问题,我们可以使用一种名为softmax的多分类算法

softmax:

在最后的输出层不再是单一的输出,而是根据需求设置的多个神经元数目,每个神经元代表一种可能的输出,其实思路很简单

最后一层我们也可以称之为softmax层,每一层仍然是利用到一样的方法.

然后为了实现归一化(即让所有结果的预测值可能性相加为1,我们使用特殊的激活函数)

g=\frac{e^{z1}}{\sum e^{zx}}  这个激活函数可以保证最后的全部结果相加为1

以上就是对分类问题的处理方法.其实对于solfmax算法还有一些可以改进的乙方,这个就后续有机会再说坝

7.什么是激活函数

对于一些wx+b的计算结果来说,可能最终的计算结果并不符合我们的心意.

例如要预测什么东西,结果给哥们干出一个77.....

一方面是对数据进行规整化的处理,另一方面是为了让数据更加符合我们的需求,我们要对预测结果加上一个激活函数.

向上面来说,我们在softmax使用了规范化的激活函数,预测概率的基础上,让整体的结果相加为1

还有我们之前常用的sigmoid函数也是一种激活函数

此外常用的激活函数

ReLU:  max(0.z)

linear: z

对于每个网络层来说,激活函数都是必不可少的,他表示了我们将以何种方式来处理最终的输出矢量,每种激活函数都有属于自己的适用场景和功能

8.神经网络的应用举例

图片识别

 图片识别的本质其实是神经网络获取图片的特征,然后将根据特征值计算出这是什么东西

第一个隐藏层在图片中寻找"边角"这种特征值

第二个隐藏曾在上一层边角中寻找面部特征

第三个隐藏层在上一层的面部特征中,预测匹配的脸型

9.使用tensorflow实现简单的神经网络

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

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

相关文章

修改了字符集,好多软件不能正常使用,所以,慎重。。。。

这里,默认是没有选中的。所以,你千万不要随便就选中了。(terminal里乱码的问题,可以通过命令: chcp 65001 解决)。如果你执意选中了这里,重启之后,至少4个软件异常: 1、…

华为OD机试 - TLV解析Ⅰ(Java 2023 B卷 100分)

目录 专栏导读一、题目描述二、输入描述三、输出描述四、Java算法源码五、效果展示1、输入2、输出3、说明 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(A卷B卷)》。 …

集成图片验证码Kaptcha-完成登录验证功能

下面展示的是用SpringBoot集成Kaptcha&#xff0c;当然用其他框架也是一样的。 导入Kaptcha 导入pom.xml&#xff0c;下面得到二选一&#xff0c;建议用github的&#xff0c;比google的快一点 <dependency><groupId>com.github.penggle</groupId><arti…

2024腾讯校招后端面试真题汇总及其解答(三)

21【算法题】反转链表 题目: 给定单链表的头节点 head ,请反转链表,并返回反转后的链表的头节点。 示例 1: 输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1]示例 2: 输入:head = [1,2] 输出:[2,1]示例 3: 输入:head = [] 输出:[]提示: 链表中节点的数目范围是 [0, 5…

Chrome 和 Edge 上出现“status_breakpoint”错误解决办法

文章目录 STATUS_BREAKPOINTSTATUS_BREAKPOINT报错解决办法Chrome浏览器 Status_breakpoint 错误修复- 将 Chrome 浏览器更新到最新版本- 卸载不再使用的扩展程序和应用程序- 安装计算机上可用的任何更新&#xff0c;尤其是 Windows 10- 重启你的电脑。 Edge浏览器 Status_brea…

基于 Flink CDC 构建 MySQL 和 Postgres 的 Streaming ETL

官方网址&#xff1a;https://ververica.github.io/flink-cdc-connectors/release-2.3/content/%E5%BF%AB%E9%80%9F%E4%B8%8A%E6%89%8B/mysql-postgres-tutorial-zh.html官方教程有些坑&#xff0c;经过自己实测&#xff0c;记录个笔记。 服务器环境&#xff1a; VM虚拟机&am…

HarmonyOS 实现表单页面的输入,必填校验和提交

一. 样例介绍 本篇 Codelab 基于 input 组件、label 组件和 dialog 组件&#xff0c;实现表单页面的输入、必填校验和提交&#xff1a; 1. 为 input 组件设置不同类型&#xff08;如&#xff1a;text&#xff0c;email&#xff0c;date 等&#xff09;&#xff0c;完成表单页…

Burp插件HaE与Authz用法

HaE与Authz均为BurpSuite插件生态的一员&#xff0c;两者搭配可以避免“越权”、“未授权”两类漏洞的重复测试行为。&#xff08;适用于业务繁杂&#xff0c;系统模块功能多的场景&#xff09; 两个插件都可以在store里安装 安装完后&#xff0c;点击Filter Settings勾选Sho…

DSP_TMS320F28377D_算法加速方法4_C语言编程优化

前面3篇的优化思路是从硬件本身和函数库这些方向去加速&#xff0c; 本文则仅从代码本身的效率去考虑加速的方法。 1、用全局变量比用局部变量快 void testfunction1(){ // 局部变量int i;double s,a,b;a 1.023;b 12.23;for(i 0; i < 1000; i){s __divf32(a,b);} }int …

这3个教学难题,你中招了吗?

在当今教育领域&#xff0c;提高教育质量和学生学习成果是学校和教育机构的首要任务之一。教育管理者、教师和政策制定者都在寻求创新的方法来监督和改进教育过程。 在线巡课系统应运而生&#xff0c;成为教育界的一项重要工具&#xff0c;旨在帮助学校管理者更好地理解教育实践…

无涯教程-JavaScript - ISOWEEKNUM函数

描述 ISOWEEKNUM函数返回给定日期的年份的ISO周编号。 语法 ISOWEEKNUM (date)争论 Argument描述Required/OptionalDateDate is the date-time code used by Excel for date and time calculation.Required Notes Microsoft Excel将日期存储为连续数字,因此可以在计算中使…

【网络教程】记一次使用Docker手动搭建BT宝塔面板的全过程(包含问题解决如:宝塔面板无法开启防火墙,ssh,nginx等)

文章目录 准备安装安装宝塔面板开启ssh和修改ssh的密码导出镜像问题解决宝塔面板无法开启防火墙无法启动ssh设置密码nginx安装失败设置开机启动相关服务准备 演示的系统环境:Ubuntu 22.04.3 LTS更新安装/升级docker到最新版本升级docker相关命令如下# 更新软件包列表并自动升级…

期权交易策略及案例的基本策略有哪些?

目前我国上市交易的期权品种日益丰富&#xff0c;期权的基础的交易方法是建立相应头寸再反向平仓&#xff0c;赚取权利金差价&#xff0c;也可以持有期权到期行权。除了基础的交易方法之外&#xff0c;期权还有一些组合策略&#xff0c;下文介绍期权交易策略及案例的基本策略有…

K210-AI视觉

1、颜色识别 image.find_blobs( thresholds, invertFalse, roi, x_stride2, y_stride1, area_threshold10, pixels_threshold10, mergeFalse, margin0, threshold_cbNone, merge_cbNone)thresholds : 必须是元组列表。 [(lo, hi), (lo, hi), …, (lo, hi)] 定义你想追踪…

Python数据分析实战-Series转DataFrame并将index设为新的一列(附源码和实现效果)

实现功能 Series转DataFrame并将index设为新的一列 实现代码 import pandas as pd# 创创建series series pd.Series([1, 2, 3, 4, 5])# 创建一个DataFrame对象 data {column_name: series} df pd.DataFrame(data)# 重新设置索引&#xff0c;将原有的索引作为新的一列 df.r…

计算机的 bit(比特)和Byte(字节)

我们来说说和数据有关的单位 bit 和 Byte。 在说这这个数据当我之前&#xff0c;大家应该都知道计算机实际上只能处理0和1。 计算机能够把0和1转换为电路中的信号来进行计算&#xff0c;这个其实就是计算机的本质。 单位定义 我们先对需要使用的单位进行一些定义。 bit&…

Swift 周报 第三十六期

文章目录 前言新闻和社区消息称苹果公司和印度财政部官员磋商&#xff0c;扩大在印度的制造产能iPhone 15 Pro 机型新增泰坦灰iPhone 15 全系配 USB-C 苹果拒绝接口和安卓互通 提案正在审查的提案 Swift论坛推荐博文话题讨论关于我们 前言 本期是 Swift 编辑组整理周报的第三十…

AcWing 787:归并排序

【题目来源】https://www.acwing.com/problem/content/789/【题目描述】 给定你一个长度为 n 的整数数列。 请你使用归并排序对这个数列按照从小到大进行排序。 并将排好序的数列按顺序输出。【输入格式】 输入共两行&#xff0c;第一行包含整数 n。 第二行包含 n 个整数&#…

鼠标知识系列之星闪鼠标

随着 2023.8.4 华为 HDC 大会的落幕&#xff0c;一个新的名词开始进入了人们的视线&#xff1a;星闪 NaerLink&#xff0c;随着星闪技术引入键鼠圈子的还有一个名词&#xff1a;星闪鼠标。 正如我们之前鼠标知识分享系列提到过的&#xff0c;目前市面上的鼠标主要是有线鼠标和…