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

大模型常用位置编码方式

深度学习中常见的位置编码方式及其Python实现:


一、固定位置编码(Sinusoidal Positional Encoding)
原理
通过不同频率的正弦和余弦函数生成位置编码,使模型能够捕捉绝对位置和相对位置信息。公式为:

公式标准数学表达
P E ( p o s , 2 i ) = sin ⁡ ( p o s 1000 0 2 i / d model ) P E ( p o s , 2 i + 1 ) = cos ⁡ ( p o s 1000 0 2 i / d model ) \begin{aligned} PE_{(pos,2i)} &= \sin\left(\frac{pos}{10000^{2i/d_{\text{model}}}}\right) \\ PE_{(pos,2i+1)} &= \cos\left(\frac{pos}{10000^{2i/d_{\text{model}}}}\right) \end{aligned} PE(pos,2i)PE(pos,2i+1)=sin(100002i/dmodelpos)=cos(100002i/dmodelpos)

公式解析

  1. 变量定义
    pos:token在序列中的绝对位置(从0开始计数)

    i:位置编码向量的维度索引(范围:0 ≤ i < d_model/2)

    d_model:模型嵌入维度(如Transformer默认的512)

  2. 核心设计
    • 交替使用正弦/余弦:偶数维度用正弦函数,奇数维度用余弦函数,形成周期性编码。

    • 频率衰减特性:维度越高(i增大),分母指数项 2 i d model \frac{2i}{d_{\text{model}}} dmodel2i越大,导致频率 1000 0 − 2 i / d model 10000^{-2i/d_{\text{model}}} 100002i/dmodel越小,编码的周期性波长越长。

    • 位置唯一性:每个位置pos的编码向量唯一,且相邻位置的编码差异与相对距离成比例。

  3. 数学特性
    • 相对位置捕捉:通过三角恒等式,任意两个位置的编码内积仅与相对距离pos_i - pos_j相关,隐含相对位置信息。

    • 外推能力:周期性设计使模型能处理超过训练时最大长度的序列。

关键参数作用

参数作用示例值(以BERT-base为例)
d_model定义编码维度,影响模型容量768
10000控制频率衰减速度,值越大高频分量衰减越快固定超参数
pos序列位置索引输入序列的第0/1/2…位

  • Python实现(方式一)
import numpy as np
import matplotlib.pyplot as pltdef sinusoidal_position_encoding(max_len, d_model):pe = np.zeros((max_len, d_model))position = np.arange(max_len)[:, np.newaxis]div_term = np.exp(np.arange(0, d_model, 2) * -(np.log(10000.0) / d_model))pe[:, 0::2] = np.sin(position * div_term)pe[:, 1::2] = np.cos(position * div_term)return pe# 示例
max_len, d_model = 50, 64
pe = sinusoidal_position_encoding(max_len, d_model)# 可视化
plt.imshow(pe, cmap='viridis', aspect='auto')
plt.title("Sinusoidal Position Encoding")
plt.colorbar()
plt.show()

输出示例:生成一个形状为 (50, 64) 的编码矩阵,低频维度变化平缓,高频维度变化剧烈。

  • Pytorch实现
import torch
import torch.nn as nnclass LearnablePositionalEncoding(nn.Module):def __init__(self, d_model: int, max_len: int = 512):super().__init__()# 初始化位置编码矩阵为可训练参数 (1, max_len, d_model)self.pe = nn.Parameter(torch.empty(1, max_len, d_model))# 正态分布初始化(标准差0.02,与Transformer常规初始化一致)nn.init.normal_(self.pe, mean=0.0, std=0.02)def forward(self, x: torch.Tensor) -> torch.Tensor:"""输入x形状: [batch_size, seq_len, d_model]输出形状: [batch_size, seq_len, d_model]"""seq_len = x.size(1)# 取前seq_len个位置编码(避免越界)position_emb = self.pe[:, :seq_len, :]# 将位置编码与输入相加return x + position_emb

二、可学习位置编码(Learnable Positional Encoding)
原理
将位置编码作为可训练参数,通过嵌入层动态学习每个位置的表示。

Python实现(PyTorch)

import torch
import torch.nn as nnclass LearnablePositionalEncoding(nn.Module):def __init__(self, max_len, d_model):super().__init__()self.pe = nn.Embedding(max_len, d_model)def forward(self, x):batch_size, seq_len = x.size(0), x.size(1)positions = torch.arange(seq_len, device=x.device).expand(batch_size, seq_len)return x + self.pe(positions)# 示例
d_model, max_len = 64, 50
inputs = torch.randn(32, max_len, d_model)  # 模拟输入 (batch_size=32, seq_len=50)
pe_layer = LearnablePositionalEncoding(max_len, d_model)
output = pe_layer(inputs)
print("Encoded shape:", output.shape)  # 输出:torch.Size([32, 50, 64])

优势:灵活性高,适合特定任务;缺点:依赖预定义的最大序列长度。


三、相对位置编码(Relative Positional Encoding)
原理
关注序列元素之间的相对位置差异,常用于长序列建模。

Python实现

class RelativePositionalEncoding(nn.Module):def __init__(self, max_rel_pos, d_model):super().__init__()self.emb = nn.Embedding(2 * max_rel_pos + 1, d_model)def forward(self, seq_len):# 生成相对位置索引矩阵(对称)rel_pos = torch.arange(seq_len).unsqueeze(0) - torch.arange(seq_len).unsqueeze(1)rel_pos = torch.clamp(rel_pos + seq_len - 1, 0, 2 * seq_len - 2)return self.emb(rel_pos)# 示例
d_model, max_rel_pos = 64, 10
rel_pe = RelativePositionalEncoding(max_rel_pos, d_model)
rel_enc = rel_pe(seq_len=5)
print("Relative encoding shape:", rel_enc.shape)  # 输出:torch.Size([5, 5, 64])

应用场景:Transformer-XL、音乐生成等长序列任务。


四、旋转位置编码(Rotary Positional Encoding, RoPE)
原理
通过旋转矩阵将绝对位置信息融入注意力计算,保持相对位置的线性性质。
旋转矩阵公式的标准数学表达式及解析:

标准数学公式
R θ , m = [ cos ⁡ ( m θ ) − sin ⁡ ( m θ ) sin ⁡ ( m θ ) cos ⁡ ( m θ ) ] , q ′ = R θ , m q , k ′ = R θ , n k R_{\theta,m} = \begin{bmatrix} \cos(m\theta) & -\sin(m\theta) \\ \sin(m\theta) & \cos(m\theta) \end{bmatrix}, \quad q' = R_{\theta,m}q, \quad k' = R_{\theta,n}k Rθ,m=[cos(mθ)sin(mθ)sin(mθ)cos(mθ)],q=Rθ,mq,k=Rθ,nk


Python实现

def rotate_half(x):x1, x2 = x[..., :x.shape[-1]//2], x[..., x.shape[-1]//2:]return torch.cat((-x2, x1), dim=-1)def apply_rotary_emb(q, k, freq):cos, sin = freq.cos(), freq.sin()q_rot = q * cos + rotate_half(q) * sink_rot = k * cos + rotate_half(k) * sinreturn q_rot, k_rot# 示例
d_model, seq_len = 64, 50
q = torch.randn(1, seq_len, d_model)
k = torch.randn(1, seq_len, d_model)
freq = torch.exp(torch.arange(0, d_model, 2) * -(math.log(10000) / d_model))
q_rot, k_rot = apply_rotary_emb(q, k, freq)
print("Rotated shapes:", q_rot.shape, k_rot.shape)  # 输出:torch.Size([1, 50, 64])

优势:支持任意长度外推,广泛用于LLaMA、ChatGLM等大模型。


总结与选择建议

方法适用场景优点缺点
固定位置编码通用NLP任务确定性,无需训练无法自适应长序列
可学习位置编码短序列任务灵活性高依赖预定义长度,泛化性差
相对位置编码长文本生成、音乐建模捕捉相对位置关系计算复杂度较高
旋转位置编码大语言模型(LLaMA等)支持外推,数学性质优雅实现较复杂

相关文章:

大模型常用位置编码方式

深度学习中常见的位置编码方式及其Python实现&#xff1a; 一、固定位置编码&#xff08;Sinusoidal Positional Encoding&#xff09; 原理 通过不同频率的正弦和余弦函数生成位置编码&#xff0c;使模型能够捕捉绝对位置和相对位置信息。公式为&#xff1a; 公式标准数学表达…...

【fastadmin开发实战】在前端页面中使用bootstraptable以及表格中实现文件上传

先看效果&#xff1a; 1、前端页面中引入了表格 2、表格中实现文件上传 3、增加截止时间页面 难点在哪呢&#xff1f; 1、这是前端页面&#xff0c;并不支持直接使用btn-dialog的类属性实现弹窗&#xff1b; 2、前端页面一般绑定了layout模板&#xff0c;如何实现某个页面不…...

IO、存储、硬盘、文件系统相关常识

目录 1. IO&#xff08;输入输出&#xff09;基础概念 1.1 IO的定义 1.2 流 1.3 IO流 2.存储 2.1 存储技术 2.2 存储介质的分类&#xff08;机械硬盘、固态硬盘、光盘、磁带&#xff09; 2.2.1 机械硬盘 2.2.2 固态硬盘 2.2.3 光盘 2.2.4 磁盘 2.3 存储管理 2.4 存…...

amd架构主机构建arm架构kkfileview

修改本机使用镜像仓库地址 vim /etc/docker/daemon.json { “experimental”: true, “registry-mirrors”: [ “https://docker.m.daocloud.io”, “https://docker.1panel.live”, “http://mirrors.ustc.edu.cn/”, “http://mirror.azure.cn/”, “https://docker.hpcloud.…...

日志链路ID配置,traceId多线程不打印什么鬼?

logback.xml 关键配置 [traceId:%X{traceId}] <!-- 彩色日志格式模板 --><property name"log.pattern.color"value"%green(%d{yyyy-MM-dd HH:mm:ss.SSS}) [%thread] %highlight(%-5level){FATALred, ERRORred, WARNyellow, INFOgreen, DEBUGcyan, TRA…...

InfluxDB-数据看板实现流程:从数据采集到可视化展示

数据看板的实现涉及到多个步骤和技术组件&#xff0c;以下是基于提供的知识库内容&#xff0c;详细解释数据看板&#xff08;特别是30日活跃用户数趋势&#xff09;的实现过程&#xff1a; 1. 数据来源 所有用户行为数据通过网关进行数据埋点&#xff0c;并通过消息队列&…...

Git基本操作命令

文章目录 Git基本操作命令创建仓库命令提交与修改提交日志版本回退分支切换删除文件.gitignore文件远程操作 Git分支管理创建分支查看分支合并分支删除分支保存当前文件未提交更改并切换分支 Git提交历史恢复和回退 Git标签标签推送删除标签附注标签查看标签信息删除标签 Git基…...

JavaScript实践(三)JavaScript序列化与反序列化深度解析

JavaScript中的序列化与反序列化是数据存储、网络传输和跨系统交互的核心技术之一。本文将从底层原理、核心方法、复杂场景处理、安全风险及工程实践等多个维度&#xff0c;系统性地解析这一技术体系&#xff0c;并附完整的代码实现示例。 一、序列化与反序列化的核心价值 序列…...

大模型—— FastGPT 知识库无缝集成到 n8n 工作流 (基于 MCP 协议)

大模型—— FastGPT 知识库无缝集成到 n8n 工作流 (基于 MCP 协议) 背景:n8n 与 RAG 知识库集成的挑战 n8n 作为一款强大的开源自动化工作流工具,正获得越来越多用户的青睐。它由前《加勒比海盗》视觉设计师 Jan Oberhauser 于 2019 年创立,旨在提供比 Zapier 等工具更灵活…...

安卓刷机模式详解:Fastboot、Fastbootd、9008与MTK深刷

安卓刷机模式详解&#xff1a;Fastboot、Fastbootd、9008与MTK深刷 一、刷机模式对比 1. Fastboot模式 简介&#xff1a;传统安卓底层刷机模式&#xff0c;通过USB连接电脑操作优点&#xff1a;支持大多数安卓设备&#xff0c;操作相对简单缺点&#xff1a;需要设备进入特定…...

深入浅出MySQL 8.0:新特性与最佳实践

MySQL作为开源关系型数据库的佼佼者&#xff0c;近年来持续更新迭代&#xff0c;尤其是在8.0版本中引入了一系列令人兴奋的新特性。本文将介绍一些MySQL 8.0的关键新功能&#xff0c;并提供最佳实践&#xff0c;旨在帮助开发人员和DBA更好地利用这一强大的数据库管理系统。 一…...

【登录认证】JWT令牌

一、概述 JWT全称:**JSON Web Token **(https://jwt.io/)定义了一种简洁的、自包含的格式&#xff0c;用于通信双方以json数据格式安全的传输信息。组成: ①第一部分:Header(头)&#xff0c;记录令牌类型、签名算法等。例如: (“alg”:" HS256"," type":“…...

coco数据集mAP评估

0 coco数据集划分说明 1 用yolo自带的评估 from ultralytics import YOLOmodel YOLO("../spatial-perception/checkpoints/yolo11n.pt")metrics model.val(data"./coco.yaml", save_jsonTrue) ## save_json为True,可以把预测结果存成json文件&#xff…...

C++23 ranges::range_adaptor_closure:程序定义的范围适配器闭包的辅助类

文章目录 一、背景介绍二、ranges::range_adaptor_closure 的定义与要求三、使用示例四、编译器支持情况五、总结 一、背景介绍 C23 引入了 std::ranges::range_adaptor_closure&#xff0c;这是一个辅助类模板&#xff0c;用于定义用户自定义的范围适配器闭包对象。这一特性主…...

滑动窗口——水果成篮

根据题意我们转化一下&#xff0c;在数组中求一个最长的子数组&#xff0c;数组中的数字种类不超过2种。 借助暴力思想&#xff0c;我们定义双指针进行进窗口、判断、出窗口、更新结果的流程。 我们需要借助hash表来记录不同数字出现的种类以及每个数字出现的次数。然后先让r…...

论文精读:YOLO-UniOW: Efficient Universal Open-World Object Detection

文章目录 前言1、出发点2、方法2.1.符号说明2.2.Efficient Adaptive Decision Learning2.3.Open-World Wildcard Learning 3、实验结果总结 前言 本文介绍一篇来自Tencent的开放词汇和世界检测结合的论文&#xff1a;Yolo-uniow&#xff0c;开源地址。 1、出发点 本篇论文相当…...

网络协议分析 实验四 ICMPv4与ICMPv6

文章目录 实验4.1 ICMP协议练习一 利用仿真编辑器编辑ICMP回显请求报文练习二 ICMP差错报文1.目的端不可达2.超时 练习三 仿真发送ICMP时间戳请求报文实验4.2 IPV6与ICMPV6实验设计题&#xff1a;设计一个能产生ICMPV6超时类型差错报文实验&#xff0c;并截图记录实验结果。 实…...

《100天精通Python——基础篇 2025 第18天:正则表达式入门实战,解锁字符串处理的魔法力量》

目录 一、认识正则表达式二、正则表达式基本语法2.1 行界定符2.2 单词定界符2.3 字符类2.4 选择符2.5 范围符2.6 排除符2.7 限定符2.8 任意字符2.9 转义字符2.10 反斜杠2.11 小括号2.11.1 定义独立单元2.11.2 分组 2.12 反向引用2.13 特殊构造2.14 匹配模式 三、re模块3.1 comp…...

nginx配置反向代理支持CORS跨域请求

nginx配置反向代理支持CORS跨域请求 1. 环境2. 配置Nginx反向代理和CORS添加的响应头包括&#xff1a; 1. 环境 后端springboot,项目端口8080前端vue,项目端口8088 2. 配置Nginx反向代理和CORS server {listen 8088;server_name your_domain.com;location / {root /path/to/…...

英语学习5.13

take the place of 【短语】 &#x1f449; 关键词&#xff1a;代替、取代、顶替 ✅ 释义&#xff1a; 代替&#xff0c;取代某人或某物的位置或作用 指一个人或事物代替另一个人或事物&#xff0c;履行相同的职责、功能或占据原有的位置。 ✅ 例句&#xff1a; Nothing c…...

NY182NY183美光固态颗粒NY186NY188

NY182NY183美光固态颗粒NY186NY188 在存储技术的竞技场上&#xff0c;美光科技&#xff08;Micron&#xff09;始终扮演着革新者的角色。其NY系列固态颗粒凭借前沿的3D NAND架构和精准的工艺控制&#xff0c;成为企业级存储和数据中心的关键支柱。本文将围绕NY182、NY183、NY1…...

数据库--处理模型(Processing Model)

本文将介绍数据库处理模型,处理模型定义了系统如何执行一个查询计划。三种处理模型:迭代器模型、物化模型、向量化模型。 向量化模型是现代OLAP系统所使用的处理模型,它结合了迭代器模型和物化模型的优点。 另外还介绍了查询执行的两种方向:自顶向下(Pull模式),自底向…...

TikTok矩阵运营干货:从0到1打造爆款矩阵

在TikTok的流量浪潮中&#xff0c;运营TikTok矩阵是提升影响力、扩大受众群体的有效策略。无论是品牌推广还是个人IP打造&#xff0c;一个成功的TikTok矩阵都能带来意想不到的收获。下面就为大家分享一些TikTok矩阵运营的实用干货。 一、为什么要做TikTok矩阵 TikTok矩阵就像是…...

如何访问云相关的api

问题 预研访问国外厂商云api相关的代码&#xff0c;发现请求国外厂商云获取token时&#xff0c;发生了下面的错误&#xff1a; com.google.auth.oauth2.GoogleAuthException: Error getting access token for service account: connect timed out, iss: testmanagebucketesot…...

数字IC后端实现教程 | Early Clock Flow和Useful skew完全不是一个东西

数字后端零基础入门系列 | Innovus零基础LAB学习Day10 Q: Early clock flow和useful skew都是做短某段路径&#xff0c;这两个有什么区别呢&#xff0c;既然这样还用useful skew是不是有点多余了? Useful Skew技术 在不使用useful skew技术&#xff0c;第一级FF到第二级FF的…...

用AI制作黑神话悟空质感教程,3D西游记裸眼效果,西游人物跳出书本

目录 一、前言二、作图步骤1.DeepSeek 生成画面场景2.AI作图3.下载高清无码图 一、前言 你是否也想打造这种立体效果&#xff1f;让人物仿佛从纸上跃然而出&#xff0c;质感逼真。这里我以西游记为例&#xff0c;大家完全可以根据个人喜好&#xff0c;尝试创作三国、水浒等题材…...

C++模板

C<模板初阶> 这一集讲一下模板, 这东西理解起来不难, 用起来也很简单, 大家顺着看就ok. void Swap(int& left, int& right)//参数是引用 {int temp left;left right;right temp; }void Swap(double& left, double& right) {double temp left;left …...

系统平衡与企业挑战

在复杂的系统中&#xff0c;一切都在寻找平衡&#xff0c;而这个平衡从不静止。它在不断的变化与反馈中调整&#xff0c;以适应外界环境的变动。就像一个企业&#xff0c;它无法完全回避变化&#xff0c;但却总是在挑战中寻找新的平衡点。 最近遇到一家企业&#xff0c;引入了…...

【AI News | 20250513】每日AI进展

AI Repos 1、iap-diffusion-labs 从零开始带我们构建完整的扩散模型。通过三个精心设计的实验练习&#xff0c;循序渐进地引导我们实现流匹配和扩散模型&#xff0c;从基础 SDE 到条件图像生成&#xff0c;每一步都有详尽指导和完整代码&#xff0c;让复杂理论简单易懂。主要内…...

upload-labs通关笔记-第3关 文件上传之黑名单绕过

目录 一、实验准备 1.构造脚本 2.打开靶场第三关 3.源码分析 4.修改配置使支持php后缀 &#xff08;1&#xff09;切换php ts版本 &#xff08;2&#xff09;定位httpd.conf文件 &#xff08;3&#xff09;修改AddType application字段 &#xff08;4&#xff09;重启…...

【Redis】RedLock实现原理

Redis的RedLock是一种分布式锁算法&#xff0c;旨在通过多节点协作解决传统单节点Redis锁的容错性问题。其核心原理如下&#xff1a; 1. 设计目标 互斥性&#xff1a;同一时刻只有一个客户端持有锁。死锁避免&#xff1a;锁自动超时释放&#xff0c;防止客户端崩溃导致死锁。容…...

IPD流程实战:产品开发各阶段目标、关注点和交付

目录 简介 1、概念阶段 2、计划阶段 3、开发阶段 4、验证阶段 5、发布阶段 6、生命周期阶段 作者简介 简介 IPD的产品开发是一个多阶段协同的过程&#xff0c;上一个环节的输出是下一个环节的输入&#xff0c;每个阶段的交替都体现出了用户思维。 尽可能确保最终的输…...

植物大战僵尸杂交版v3.6最新版本(附下载链接)

B站游戏作者潜艇伟伟迷于5月13日更新了植物大战僵尸杂交版3.6.5版本&#xff01;&#xff01;&#xff01;&#xff0c;有b站账户的记得要给作者三连关注一下呀&#xff01; 不多废话下载链接放上&#xff1a; 夸克网盘链接&#xff1a;&#xff1a;https://pan.quark.cn/s/037…...

激光打印机常见打印故障简单处理意见

一、 问题描述&#xff1a; 给打印机更换新的硒鼓时拉开硒鼓封条时有微量碳粉带出&#xff1b; 原因&#xff1a; 出厂打印测试时&#xff0c;可能会有微量碳粉在磁辊上或者磁辊仓&#xff1b; 解决方法&#xff1a; 擦干净即可正常使用&#xff1b; 二、 问题描述&…...

代码随想录算法训练营第60期第三十五天打卡

今天是我们贪心算法章节的最后一天&#xff0c;今天有三道题目需要讲解&#xff0c;但是最后又一道题目叫做监督二叉树的题目难度比较大&#xff0c;我打算二刷代码随想录的时候再来给大家讲解&#xff0c;因此我们今天就只讲解前两道题目&#xff0c;昨天的区间重叠问题是贪心…...

我的五周年创作纪念日

五年前的今天&#xff0c;我在CSDN发布了第一篇《基于VS2015的MFC学习笔记&#xff08;常用按钮button&#xff09;》&#xff0c;文末那句"欢迎交流"的忐忑留言&#xff0c;开启了这段充满惊喜的技术旅程。恍然发觉那些敲过的代码早已成长为参天大树。 收获 获得了…...

OpenCV特征处理全解析:从检测到匹配的完整指南

一、计算机视觉中的特征处理概述 在计算机视觉领域&#xff0c;特征处理是指从图像中提取、描述和匹配具有辨识度的局部或全局特征的过程。一个完整的特征处理流程通常包括三个关键步骤&#xff1a; 特征检测&#xff1a;在图像中寻找具有独特性质的点或区域特征描述&#xf…...

C++11 ——右值引用和移动语义

目录 一、基本概念左值 vs 右值左值引用 vs 右值引用 二、右值引用使用场景和意义左值引用的使用场景左值引用的短板右值引用和移动语义右值引用引用左值右值引用的其他使用场景右值引用总结 三、完美转发右值前置知识万能引用完美转发保持值的属性完美转发的使用场景 四、总结…...

使用交互式半自动化标注工具制作语义分割数据集

参考的初始资源&#xff1a; GitHub项目文档 B站视频 1.安装工具 打开Anaconda Prompt 1.创建虚拟环境 conda create -n isat_env python3.8 conda activate isat_env2.安装GPU版本pytorch 4070 Ti CUDN12.5 pip install torch torchvision torchaudio --index-url https:/…...

阿里二面:聊聊 MySQL 主从同步方案的优缺点

大家好&#xff0c;我是君哥。今天来聊一聊 MySQL 主从架构。 MySQL Replication 是 MySQL 官方提供的主从同步方案&#xff0c;用于将 MySQL 主库的数据同步到从库中&#xff0c;从库可以供应用程序读取数据。 1 简介 Replication 是目前 MySQL 使用最多的灾备方案&#xf…...

YOLO11解决方案之物体模糊探索

概述 Ultralytics提供了一系列的解决方案&#xff0c;利用YOLO11解决现实世界的问题&#xff0c;包括物体计数、模糊处理、热力图、安防系统、速度估计、物体追踪等多个方面的应用。 物体模糊是指对图像或视频中的特定检测对象应用模糊处理&#xff0c;这可以利用YOLO11 模型…...

Elecron 相关介绍以及常见的面试问题

一、深入介绍 Electron Electron 是一个由 GitHub 开发和维护的免费开源软件框架&#xff0c;允许开发者使用 Web 技术&#xff08;HTML、CSS 和 JavaScript&#xff09;构建桌面应用程序 。它将 Chromium 渲染引擎和 Node.js 运行时环境相结合&#xff0c;为开发者提供了一套…...

基于STM32、HAL库的ADAU1701JSTZ音频接口芯片驱动程序设计

一、简介: ADAU1701JSTZ 是 Analog Devices 公司推出的一款高性能、低功耗音频编解码器 (CODEC) 芯片。它专为便携式音频设备设计,集成了麦克风前置放大器、ADC、DAC、耳机放大器等功能模块,支持多种音频接口和采样率,非常适合与 STM32 微控制器配合使用。 主要特性: 24…...

【氮化镓】电子辐照下温度对GaN位移阈能的影响

2024年,华东师范大学的彭胜国等人基于从头算分子动力学(AIMD)方法,研究了低能电子束辐照下温度对氮化镓(GaN)位移阈能(TDE)的影响。实验结果表明,在初始动能40至80 eV的范围内,镓(Ga)和氮(N)原子作为初级击出原子(PKAs)引发的位移对温度呈现不同的敏感性:Ga 的…...

NLTK库: 数据集3-分类与标注语料(Categorized and Tagged Corpora)

NLTK库: 数据集3-分类与标注语料&#xff08;Categorized and Tagged Corpora&#xff09; 1.二分类语料 主要是电影语料&#xff0c;和情绪(积极消极、主观客观)有关&#xff0c;有以下2个语料&#xff1a; 1.1 movie_reviews: IMDb 影评 IMDb&#xff08;Internet Movie …...

物理:人的记忆是由基本粒子构成的吗?

问题: 基因属于人体的一部分,记忆也是人体的一部分,那么为什么基因可以代际遗传,但是记忆却被清空重置。如果基因是由粒子构成,那么记忆是不是也应该由粒子构成?如果记忆是粒子构成的,那么能否说明记忆永恒,即使死亡了身体被分解了,那么只要保证其身体有关的所有粒子被…...

加速度策略思路

一种基于技术指标和动态止损策略的交易方法&#xff0c;旨在提高交易的灵活性和风险控制能力。 1 -动态止损价格计算&#xff1a;该函数通过计算ATR&#xff08;平均真实范围&#xff09;和盈利峰值价&#xff0c;结合加速系数&#xff0c;动态调整止损价格。具体来说&#xf…...

【计算机组成原理】第二部分 存储器--分类、层次结构

文章目录 分类&层次结构0x01 分类按存储介质分类按存取方式分类按在计算机中的作用分类 0x02 层次结构 分类&层次结构 0x01 分类 按存储介质分类 半导体存储器磁表面存储器磁芯存储器光盘存储器 按存取方式分类 存取时间与物理地址无关&#xff08;随机访问&#…...

Spring AI 开发本地deepseek对话快速上手笔记

Spring AI Spring AI是一个旨在推进生成式人工智能应用程序发展的项目&#xff0c;Spring AI的核心目标是提供高度抽象化的组件&#xff0c;作为开发AI应用程序的基础&#xff0c;使得开发者能够以最少的代码改动便捷地交换和优化功能模块‌ 在开发之前先得引入大模型&#xf…...

Python训练打卡Day23

机器学习管道 pipeline 基础概念 pipeline在机器学习领域可以翻译为“管道”&#xff0c;也可以翻译为“流水线”&#xff0c;是机器学习中一个重要的概念。 在机器学习中&#xff0c;通常会按照一定的顺序对数据进行预处理、特征提取、模型训练和模型评估等步骤&#xff0c;以…...