02 Deep learning algorithm
Neural Networks target:
- inference(prediction)
- training my own model
- practical advice for building machine learning system
- decision Tress
application: speech(语音识别) ----> images(计算机视觉)—> text(NLP)
一、Neural Networks
1.神经元和大脑
1) Demand Prediction(需求预测)
a) some notion
-
neuron(神经元):可以将一个简单的模型例如logistic regression 看作一个简单的neuron
-
layer(层) : some neuron or single,输入equal or similar feature and out put some data together
-
activation(激活) :将 input of neuron called activation
-
activation function:激活函数是代表能够输出激活值的函数
-
hidden layer: 知道输入和输出,中间的处理neuron叫做hidden layer
2) 神经网络的网络层
a) definition
输入一组数字向量,经过一系列层的处理,输出另一组数字向量
b) notion:
对于不同的层,w参数的角标也可以标识 通过上标标识
c) complex 神经网络

《四层的神经网络》
input等于0层,123隐藏层,4 4为输出层
计算时候从左向右的方向进行计算
d ) Tensorflow的数据表现形式
因为tensorflow基本处理很大的数据集,都用矩阵表示来让计算更加高效
- numpy表示数组方式:
- x = np.array( [ [ ] , [ ] ] ) ()内仅有一个【】代表一维数组,[ [ ] ] 代表二维数组
- tensor数组表示方式:
- tensor([ [ ] , [ ] ] , shape( , ) , dtype = )
使用: 一般自己加载和操作数据的时候使用numpy,将数据转入tensorflow 时候会转化为tensor来方便计算和处理
3) build neural network
a ) build in tensorflow
- 过程:创建dense 隐藏层,将隐藏层顺序连接,编译,输入x和y,训练模型,模型拟合
b ) dense and forward prop in numpy (传播向量化)
4 ) A G I (artificial g eneral intelligence)
definition: AI 可以做人类所做的一切事情
5 ) Martrix multiplication in numpy
definition
numpy库中中的用于两个矩阵之间的乘法,也可以等价于 AT @ W
optimization forward prop(优化传播向量)
2. use tensorflow build neuron
步骤: 1.指定模型(设置dense层) 2.compile编译模型 3.epoch 训练模型
i .模型训练细节
1)create the model
model= sequential( [ Dense() Dense() ] )
2)loss and cost function
对于分类问题使用 model.compile(loss = BinaryCrossentropy()) 二元交叉熵损失函数
对于线性回归:model.compile(loss = MeanSquareError ()) 均方差
3)gradient descent
使用反向传播 model.fit( X , y , epochs = 100 )
i i . sigmoid 替代函数
作用:有时不仅是0-1的概率,有不同的条件需要找不同的函数
1) reLU function
g(z) = max(0,z)
2)linear activation function
g(z) = z = wx + b
3 ) how to select activation function
- 可以在不同的神经元中选择不同的激活函数,根据需求选择
- output layer:如果分类 0,1 最好选择sigmoid函数,有正负的linear function 合适
- hidden layer: 主流的 relu function ,运算速度更加快,只有x负半轴平缓,梯度下降时更快
二 、multiclass classification problem
1 . Softmax
i . softmax regression (N possible outputs)

i i. cost function
如果计算y = 某个值的cost function 则只需要带入对应的成本函数

i i i . implement in tensorflow
- 只需将最后一层换为 softmax
- 将 损失函数换为:SparseCategoricalCrossentropy(密集分类交叉熵损失函数)
v i . improve softmax
当计算时,有时候式子之间有计算误差,所以在误差函数后加(from_logits = true)
2 . improve α algorithm
i . Adam algorithm
作用:如果梯度是一直稳定下降的时候就会适当的增大 α,当来一个值两边震荡时,会减小α
**使用:**

3 . Convolutional layer (卷积层)
作用: 对于前一层的feature并不是全部选取,而是选取了一部分
三、Evaluate the performance of algorithm
1 . Evaluate the model
i . use test set
取出 70% 用来作training set,其余的30%用来作 test set评估model的泛化能力
但是只是用测试集来评估几次多项式也是不准确的
i i . Training / cross validation(交叉样本) / test set
60% training set 20% cross validation 20% test set
先用training set 和 cross validation 来选择最佳的模型,然后确定好了最佳模型以后我们将在最后的 test set模型测试最终的准确度
i i i . Bias / Variance (偏差和方差)
d 代表了多项式的次数

d越大,J-train越来越小,J-cv越来越大
high-bias(欠拟合) :在training set表现不好
high-variance(过拟合):在 验证集表现 相比training set 差得多,增加training可以改善
vi . Regulartion (正则化)

当 **入** 越大最后拟合的曲线接近一条 y = b 的直线,y越小也会出现 overfit
可以使用交叉验证来选择合适的 入
v i i . how to add regularization
2 . Iterative loop of ML development
i . add data
**data augmentation **:的一个技巧:对数据所作的改变或者扭曲,例如给语音 加上噪音,给图片扭曲,但是最后得到的数据仍和测试集中得到的很相似。
i i. transfer learning(迁移学习)
作用:使用来自不同任务的数据来解决当前的任务,可以通过学习识别猫,狗,牛,人等,为前几个层学习了一些合理的参数,然后将参数transfer到新的神经网络中去
Why? 为什么通过识别其他的东西能够帮助识别类似手写数字一样的东西呢?
因为头几层的网络都在识别图像的基本特征,找到边角,曲线,基本形状等相似的特征,所以对于不同类型的图片效果都是一样的
四、倾斜数据集的误差指标
why:因为例如罕见病中,数据集很多都是不患病的,所以需要衡量一个算法好坏
1 . precision / recall(准确度和召回)
i . definition
i i . 权衡精确度和召回
设置一个高的阈值,会使精确度提高,但是召回下降,相反的话召回提高,但是精确度下降
i i i .F 1 Score ( f 1 指标 )

相关文章:
02 Deep learning algorithm
Neural Networks target: inference(prediction)training my own modelpractical advice for building machine learning systemdecision Tress application: speech(语音识别) ----> images(计算机视觉)—> t…...
代码随想录算法训练营第二十四天 | 回溯算法
理论基础 代码随想录原文 什么是回溯法 回溯也可以叫做回溯搜索法,它是一种搜索的方式。 回溯是递归的副产品,只要有递归就会有回溯。 回溯法的效率 虽然回溯法很难,不好理解,但是回溯法并不是什么高效的算法。因为回溯的本…...
Spring Cloud Gateway 缓存区异常
目录 1、问题背景 2、分析源码过程 3、解决办法 最近在测试环境spring cloud gateway突然出现了异常,在这里记录一下,直接上干货 1、问题背景 测试环境spring cloud gateway遇到以下异常 DataBufferLimitException: Exceeded limit on max bytes t…...
Spring Boot依赖版本声明
链接 官网 Spring Boot文档官网:https://docs.spring.io/spring-boot/docs/https://docs.spring.io/spring-boot/docs/ Spring Boot 2.0.7.RELEASE Spring Boot 2.0.7.RELEASE reference相关:https://docs.spring.io/spring-boot/docs/2.…...
Java项目:109SpringBoot超市仓管系统
博主主页:Java旅途 简介:分享计算机知识、学习路线、系统源码及教程 文末获取源码 一、项目介绍 超市仓管系统基于SpringBootMybatis开发,系统使用shiro框架做权限安全控制,超级管理员登录系统后可根据自己的实际需求配角色&…...
【React系列】Redux(三) state如何管理
本文来自#React系列教程:https://mp.weixin.qq.com/mp/appmsgalbum?__bizMzg5MDAzNzkwNA&actiongetalbum&album_id1566025152667107329) 一. reducer拆分 1.1. reducer代码拆分 我们来看一下目前我们的reducer: function reducer(state ini…...
3D 纹理的综合指南
在线工具推荐:3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 我们经常看到超现实主义的视频游戏和动画电影角色出现在屏幕上。他们皮肤上的…...
LLM之RAG实战(十一)| 使用Mistral-7B和Langchain搭建基于PDF文件的聊天机器人
在本文中,使用LangChain、HuggingFaceEmbeddings和HuggingFace的Mistral-7B LLM创建一个简单的Python程序,可以从任何pdf文件中回答问题。 一、LangChain简介 LangChain是一个在语言模型之上开发上下文感知应用程序的框架。LangChain使用带prompt和few-…...
VLOOKUP的使用方法
VLOOKUP是Excel中一个非常有用的函数,用于在一个表格或范围中查找某个值,并返回该值所在行或列的相应数据。 VLOOKUP函数的基本语法如下: VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])lookup_value:要查…...
数据加密、端口管控、行为审计、终端安全、整体方案解决提供商
PC端访问地址: https://isite.baidu.com/site/wjz012xr/2eae091d-1b97-4276-90bc-6757c5dfedee 以下是关于这几个概念的解释: 数据加密:这是一种通过加密算法和密钥将明文转换为密文,以及通过解密算法和解密密钥将密文恢复为明文…...
编码器原理详解
编码器 什么是编码器 编码器可以用来将信息编码成为二进制代码,有点类似于取代号,人为的将二进制代码与对应的信息联系起来。 如下图所示: 假设有这三种情况会发生,且每次只发生一种情况 为了给这三种情况做一个区分ÿ…...
linux下docker搭建mysql8
1:环境信息 centos 7,mysql8 安装docker环境 2.创建mysql容器 2.1 拉取镜像 docker pull mysql:8.0.23 2.2 查询镜像拉取成功 docker images 2.3 创建挂载的目录文件 mkdir /usr/mysql8/conf mkdir /usr/mysql8/data ##给data文件赋予操作权限 chmod 777 /…...
书生·浦语大模型实战1
书生浦语大模型全链路开源体系 视频链接:书生浦语大模型全链路开源体系_哔哩哔哩_bilibili 大模型之所以能收到这么高的关注度,一个重要原因是大模型是发展通用人工智能的重要途径 深度信念网络: (1)又被称为贝叶斯网…...
前端JS加密对抗由浅入深-1
前言: 本文主要讲解,针对前端加密数据传输站点,如何进行动态调试以获取加密算法、秘钥,本次实验不涉及漏洞挖掘,仅为学习演示,环境为本地搭建环境 此次站点加密方式为AES加密方式,现如今越来越…...
八股文打卡day17——计算机网络(17)
面试题:拥塞控制是怎么实现的? 我的回答: 1.慢启动 在连接刚建立的时候,会缓慢调大滑动窗口的大小,从而加大网络传输速率,避免速率太快,造成拥塞。 2.拥塞避免 慢启动之后,会进入拥…...
Java-经典算法-logcat获取数据
1 需求 2 语法 3.1 示例:打印本次查询数据 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader;/*** 功能:adb logcat -b main -s PRIVA_LOG -d*/ public class Test {public …...
APache 网页优化
技能目标: 掌握 Apache 网页压缩 掌握 Apache 网页缓存 掌握 Apache 网页防盗链 掌握 Apache 隐藏版本信息 4.1 网页压缩与缓存 在使用 Apache 作为 Web 服务器的过程中,只有对 Apache 服务器进行适当的优化配 置&…...
C语言实现关键字匹配算法(复制即用)
文章目录 前言功能要求运行截图全部代码 前言 无套路,均已上机通过,求个关注求个赞,提供答疑解惑服务。 功能要求 一份C源代码存储在一个文本文件中,请统计该文件中关键字出现的频度,并按此频度对关键字进行排序。要…...
【大数据】安装 Zookeeper 单机版
安装 Zookeeper 单机版 下面安装 Zookeeper,由于它是 Apache 的一个顶级项目,所以域名是 zookeeper.apache.org,所有 Apache 的顶级项目的官网都是以项目名 .apache.org 来命名的。 点击 Download 即可下载,这里我们选择的版本是 …...
Django 快速整合 Swagger:实用步骤和最佳实践
Django ,作为 Python 编写的一个优秀的开源 Web 应用框架,特别适用于快速开发的团队。对于很多场景来说,我们需要一份 API 文档,好处实在太多了: 提高开发效率:开发者可以基于 API 文档 快速学习和尝试 AP…...
【网络】每天掌握一个Linux命令 - iftop
在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
三体问题详解
从物理学角度,三体问题之所以不稳定,是因为三个天体在万有引力作用下相互作用,形成一个非线性耦合系统。我们可以从牛顿经典力学出发,列出具体的运动方程,并说明为何这个系统本质上是混沌的,无法得到一般解…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...
什么是Ansible Jinja2
理解 Ansible Jinja2 模板 Ansible 是一款功能强大的开源自动化工具,可让您无缝地管理和配置系统。Ansible 的一大亮点是它使用 Jinja2 模板,允许您根据变量数据动态生成文件、配置设置和脚本。本文将向您介绍 Ansible 中的 Jinja2 模板,并通…...
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...
基于Java+MySQL实现(GUI)客户管理系统
客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息,对客户进行统一管理,可以把所有客户信息录入系统,进行维护和统计功能。可通过文件的方式保存相关录入数据,对…...
搭建DNS域名解析服务器(正向解析资源文件)
正向解析资源文件 1)准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2)服务端安装软件:bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...
