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

cs224w课程学习笔记-第11课

cs224w课程学习笔记-第11课 知识图谱嵌入

  • 前言
  • 一、知识图谱
    • 1、知识图谱特点
    • 2、关系类型
  • 二、知识图谱嵌入
    • 1、嵌入核心思想
    • 2、嵌入模型
      • 2.1 嵌入模型transE
        • 1)、核心思想
        • 2)、训练步骤
        • 3)、模型表征能力
      • 2.2 嵌入模型TransR
      • 2.3 DistMult嵌入模型
        • 1)、核心思想
        • 2)、表征能力
      • 2.4 complEX 嵌入模型
  • 三、总结

前言

根据上一节课的异构图内容我们知道知识图谱也是经典的异构图,并在上节课的论文分类按例中提到最佳方案不是使用RGCN模型,而是使用了知识图谱嵌入模型complEX与简单的GCN模型(其原因是知识图谱类数据通常关系类型数多,异构图的RGCN着重于局部,无法很好的表征全部与全局性的语义关系,此时使用语义关系嵌入的模型提取全局与全面的关系信息,再使用GCN进行局部信息提取,其最终的嵌入表征能力会更强).因此本节课我们就来了解一下知识图谱嵌入的思想,常见模型与其表征能力.

一、知识图谱

1、知识图谱特点

知识图谱是典型的异构图,其节点是实体,具备节点类型,节点与节点之间有关系类型.
以下图论文知识图谱为例,其节点有作者,论文,会议,年份,标题;节点间的关系类型有发表于哪个会议,发表于哪一年,是否有标题,是否是引用关系,是否有该作者
在这里插入图片描述
知识图谱通常很大,

  • 有上百万个节点,边
  • 其有很多真实的边是缺失的
    因此做知识图谱的补充是一个常见的任务

2、关系类型

由于知识图谱都是实体的节点,因此实体间关系具备一些特点,其特点总结如下

  • 对称性:如同学A与同学B是室友关系,那么同学B与同学A也是室友关系,因此只要其一条边存在,另外一条边也应该存在
  • 反向关系:如同学A是老师F的学生,那么反过来老师F是同学A的老师,因此只要其一条边存在,另外一条边也应该存在
  • 传递关系:关系 R 满足 R(a,b) 且 R(b,c) 时,必然有 R(a,c) 成立.如长沙属于湖南省,湖南省属于中国,那么长沙必然属于中国,这种关系特点可以做边的补全,以及矛盾检测
  • 1对n的关系:一个实体(头节点)可以关联到多个实体(尾节点).如一个文件夹包含多个文件,一个老师下有多名学生.这种关系特点也是可以做补全,高效检索等

二、知识图谱嵌入

1、嵌入核心思想

知识图谱中的边表示为三元组(h,r,t),h表示开始节点,t表示结束节点,r表示两者间的关系类型,其嵌入目标是希望给定三元组,其(h,r)的嵌入能尽可能接近t的嵌入.
对目标进行拆解得到第一步是要得到(h,r)的嵌入,第二步是要衡量两者嵌入的得分 f r ( h , t ) f_r(h,t) fr(h,t),其边存在时得分尽可能高,不存在时得分低.
接下来根据该核心思想设计嵌入模型.

2、嵌入模型

下图是目前嵌入模型发展情况,其主要的原理是根据不同的几何直观感受设计,不同模型其表征能力有所不同,接下来我们将了解下面几个模型的原理及其表征能力

在这里插入图片描述

2.1 嵌入模型transE

1)、核心思想

TransE 将知识图谱中的三元组 (h,r,t)(头实体、关系、尾实体)建模为向量空间中的平移关系:其目标是若边存在,则向量(h,r)尽可能等于向量t,其向量图表示如下图所示,这样一来嵌入得分函数设计为 f r ( h , t ) = ∣ ∣ h + r − t ∣ ∣ f_r(h,t)=||h+r-t|| fr(h,t)=∣∣h+rt∣∣
在这里插入图片描述
根据得分函数,设计loss函数 l o s s = ∑ ( β + f r ( h , t ) − f r ( h ′ , t ′ ) ) loss=\sum(\beta+f_r(h,t)-f_r(h',t')) loss=(β+fr(h,t)fr(h,t)),其中 β \beta β控制正负样本得分的超参, h ′ , t ′ h',t' h,t 是替换首尾节点得到的负样本的首尾节点,该loss函数采用边际排名损失(Margin-based Ranking Loss),鼓励正确三元组的得分低于错误三元组的得分

2)、训练步骤

该模型是将节点与关系都嵌入到同一个向量空间中,因此假设嵌入K维向量空间中.

  • 首先要对节点嵌入与关系嵌入初始化为均匀分布 ( − 6 / k , 6 / k ) (-6/\sqrt{k},6/\sqrt{k}) (6/k ,6/k ),并标准化 r = r / ∣ ∣ r ∣ ∣ r=r/||r|| r=r/∣∣r∣∣
  • 然后根据已有边,通过替换未存在的首尾节点得到负样本
  • 最后计算损失函数,通过梯度下降更新实体和关系的向量表示

重复上述过程,直到迭代次数完成.

3)、模型表征能力

根据模型核心思想,验证其嵌入在不同关系类型下是否能够区分

  • 对称性,已知h+r=t,若对称则t+r’=h,由下图只能r’为空时成立,则t=h,是同一个实体节点,不符合对称性,因此对称性不满足,非对称性满足
  • 反向关系:已知h+r=t,反向关系为t-r=h,从向量操作上看满足,因此反向关系满足
  • 传递关系:已知x+r1=y,y+r2=z,则看x,z的关系,x+r1=z-r2,变换得x+r1+r2=z,令r3=r1+r2,成立,因此传递关系满足
  • 1对N 的关系:已知h+r=t1,要h+r=t2,除非t1=t2,实际不满足同首节点对于多个尾节点的特性,因此1对N关系不满足
    在这里插入图片描述

2.2 嵌入模型TransR

前面提到的模型是将节点,关系嵌入到同一个向量空间中,如果将两者嵌入到不同空间,再通过一个映射矩阵联系两者,这样是不是能克服transE 在对称与1对N关系上表征能力不够的问题?
其核心思想如下图所示,在计算得分函数时,将节点嵌入通过映射矩阵 M r M_r Mr,映射到关系嵌入空间中,然后计算得分.
在这里插入图片描述

接下来也同样通过向量空间内的向量操作来解释该方法是否可行.

  • 对称性,已知hMr+r=tMr,若对称则tMr+r=hMr,由下图r为0向量时成立,且t,h,不是同一个实体节点,因此对称性满足,r不为0向量时,非对称性满足
  • 反向关系:已知hMr+r=tMr,反向关系为tMr-r=hMr,从向量操作上Mr1=Mr2,r1=-r2时满足,因此反向关系满足
  • 1对N 的关系:已知hMr+r=t1Mr,要hMr+r=t2Mr,右下角图显示,满足同首节点对于多个尾节点的特性,因此1对N关系满足
    在这里插入图片描述
  • 传递性关系:其证明不再展开,其核心点是模型的三元组表达是通过映射矩阵连接,是线性表达,有线性函数的线性变换是可传递的,因此关系满足

2.3 DistMult嵌入模型

1)、核心思想

该类型模型与前面两种的核心思想有较明显的差别.DistMult基于双线性模型,通过关系矩阵的对角化简化计算,捕捉实体与关系的交互。其评分函数有了明显的变化,可以明显看到该函数是乘法型的,前面的评分函数是加法型的.这里的句子A明显内涵信息很多,在实际验证中发现会造成过拟合,因此在模型中使用限制A为对角矩阵.这样的话得分函数式子为 f r ( h , t ) = ∑ i h i r i t i f_r(h,t)=\sum_i h_ir_it_i fr(h,t)=ihiriti,节点与关系均是K空间中的嵌入
在这里插入图片描述

2)、表征能力

在分析该模型的表征能力前,我们回想一下transE是通过向量空间中的向量平移关系来理解其表征的,那么DistMult模型如何中向量空间里进行理解呢?我们再次看向得分函数 f r ( h , t ) = ∑ i h i r i t i = < h , r , t > f_r(h,t)=\sum_i h_ir_it_i=<h,r,t> fr(h,t)=ihiriti=<h,r,t>可以看作是向量h·r与t的余弦相似性,回忆一下余弦相似.
在这里插入图片描述
这样的话得分函数可以写为下图的形式,又知余弦在直角三角形中等于邻边除以斜边,如此我们来看一下它的关系表达能力
在这里插入图片描述

  • 对称性:首先余弦相似性是不区分向量的先后的,也就是所有的 < h , r , t > = < t , r , h > <h,r,t>=<t,r,h> <h,r,t>=<t,r,h>,这样的话所有的关系默认对称的,没有不对称的
  • 1对n的关系:如下图所示 < h , r , t 1 > = c ∣ ∣ h . r ∣ ∣ = < h , r , t 2 > <h,r,t1>=c||h.r||=<h,r,t2> <h,r,t1>=c∣∣h.r∣∣=<h,r,t2>,其中c是直角三角形的邻边,下图可以看到邻边是相同的,因此满足该关系
  • 传递关系,涉及到节点的先后次序,前面已经提到了该得分函数是不区分的,因此不满足.
  • 反向关系:我们知道反向其关系不是同一个映射,在节点相同,关系映射不为0且不同时,不满足 < h , r 1 , t > = < h , r 2 , t > <h,r1,t>=<h,r2,t> <h,r1,t>=<h,r2,t>,因此不满足.
    在这里插入图片描述

2.4 complEX 嵌入模型

基于DIstMult模型可知其只能表征好对称的与1对N 的关系,因此complEX 嵌入模型将嵌入空间扩展到复数空间上,来提升嵌入表征能力,其复数域的得分函数变为下图形式,通过复数计算((a+bi)(c+di)=(ac-bd)+i(ac+bd))得到,值得注意的是尾部节点的表示.与首节点的表示有所不同(共轭表达)
在这里插入图片描述
有了得分式子,就可以根据该式子与复数的特点,分析该模型的表征能力如何

  • 对称性:虚部 I m ( r i ) Im(r_i) Im(ri)为0时, f r ( h , t ) = f r ( t , h ) f_r(h,t)=f_r(t,h) fr(h,t)=fr(t,h),因此满足对称性与非对称性
  • 反向关系:当正向关系r1与反向关系r2是共轭关系时,满足该关系
  • 1对N:类似DistMult满足该关系
  • 传递关系:不满足

三、总结

总结一下加法类嵌入模型与乘法类嵌入模型的表征能力如下表所示,其中RotateE是transE 的复数域扩展.可以看到其嵌入有常数空间,复数空间,以及多常数空间,其表征特点加法模型偏向非对称类关系,乘法偏向对称性,当然其下的扩展模型综合能力均得到了增强,扩展模型计算会更复杂.
在这里插入图片描述
应用建议:若数据存在明显对称特点,或着重其一两个表征能力,推荐选择基础版本的模型,其计算量更小参数更简单.

相关文章:

cs224w课程学习笔记-第11课

cs224w课程学习笔记-第11课 知识图谱嵌入 前言一、知识图谱1、知识图谱特点2、关系类型 二、知识图谱嵌入1、嵌入核心思想2、嵌入模型2.1 嵌入模型transE1)、核心思想2)、训练步骤3)、模型表征能力 2.2 嵌入模型TransR2.3 DistMult嵌入模型1)、核心思想2)、表征能力 2.4 complE…...

5.10-套接字通信 - C++

套接字通信 1.1 通信效率问题 服务器端 单线程 / 单进程 无法使用&#xff0c;不支持多客户端 多线程 / 多进程 写程序优先考虑多线程&#xff1a;什么时候考虑多进程&#xff1f; 启动了一个可执行程序 A &#xff0c;要在 A 中启动一个可执行程序 B 支持多客户端连接 IO 多…...

【Linux】Linux内核的网络协议之socket理解

1. Socket&#xff08;套接字&#xff09; 的本质 它是应用程序与网络协议栈之间的编程接口&#xff08;API&#xff09;&#xff0c;用于实现网络通信。 Socket 并不是一个物理设备&#xff0c;而是一个抽象层为应用程序提供统一的网络操作接口&#xff08;如 send()、recv()…...

仿函数和函数对象

1. 概念解读&#xff1a;什么是“函数”和“函数对象”&#xff1f; 核心概念一句话总结 仿函数&#xff08;Functor&#xff09; 函数对象&#xff08;Function Object&#xff09; 它们本质是一个对象&#xff08;Object&#xff09;&#xff0c;但可以像函数&#xff08;Fu…...

Kubernetes控制平面组件:Kubelet 之 Static 静态 Pod

云原生学习路线导航页&#xff08;持续更新中&#xff09; kubernetes学习系列快捷链接 Kubernetes架构原则和对象设计&#xff08;一&#xff09;Kubernetes架构原则和对象设计&#xff08;二&#xff09;Kubernetes架构原则和对象设计&#xff08;三&#xff09;Kubernetes控…...

Django 项目的 models 目录中,__init__.py 文件的作用

在 Django 项目的models/init.py文件中&#xff0c;这些导入语句的主要作用是将各个模型类从不同的模块中导入到models包的命名空间中。这样做有以下几个目的&#xff1a; 简化导入路径 当你需要在项目的其他地方使用这些模型时&#xff0c;可以直接从models包导入&#xff0c…...

学习日志04 java

PTA上的练习复盘 java01 编程题作业感悟&#xff1a; 可以用ai指导自己怎么调试&#xff0c;但是不要把调代码这过程里面的精华交给ai&#xff0c;就是自己去修正错误不能让ai代劳&#xff01;~~~ 1 scanner.close() Scanner *** new Scanner(System.in); ***.close(); …...

vue-pdf-embed预览PDF

一、vue-pdf-embed 链接&#xff1a;Yarn 1、安装插件 npm install vue-pdf-embed 2、文件中引入&#xff08;分页效果已实现&#xff0c;样式请自行修改&#xff09; <template><div class"download-pdf-preview" style"height: 450px; border:1…...

C++GO语言微服务之Dockerfile docker-compose

目录 01 01-知识点概述 02 02-dockerfile复习 03 03-环境变量ENV的使用 04 04-WORKDIR的使用 05 05-USER和ARG的使用 06 06-ONBUILD的使用 07 07-dockerfile的缓存相关的参数 08 08-dockerfile的编写 09 09-测试-没成功-好像是网不行 01 10-docker-compose介绍 02 11…...

【漫话机器学习系列】255.独立同分布(Independent and Identically Distributed,简称 IID)

深入理解独立同分布&#xff08;IID&#xff09;&#xff1a;机器学习与统计学的基石 在机器学习、深度学习、统计建模等领域&#xff0c;我们经常会遇到一个重要假设&#xff1a;独立同分布&#xff08;Independent and Identically Distributed&#xff0c;简称 IID&#xf…...

树莓派4 yolo 11l.pt性能优化后的版本

树莓派4 使用 Picamera2 拍摄图像&#xff0c;然后通过 YOLO11l.pt 进行目标检测&#xff0c;并在实时视频流中显示结果。但当前的代码在运行时可能会比较卡顿&#xff0c;主要原因包括&#xff1a; picam2.capture_array() 是一个较慢的操作&#xff1b;YOLO 推理可能耗时较长…...

AD22 快速定义PCB板框与DXF导入定义

自行定义板框 1. 初步评估&#xff1a;选中所有的器件&#xff0c;选中‘在矩形区域排列’ 将元件放好后&#xff0c;可以再将元件紧凑一下 2. 设置原点&#xff0c;并在下方选中机械一层 从原点出发&#xff0c;点击快捷键PL 画框线 3. 对线条长度取整&#xff0c;且最好是5…...

LInux系统文件与目录管理(二)

提示&#xff1a;第二部分对第一部分收尾 文章目录 常见的命令如下一、文件查看命令1. more命令2.less命令3.head命令4.tail命令5.nl命令&#xff08;了解&#xff09;6.创建目录命令7.创建文件命令>: 覆盖重定向>>: 追加重定向 8.touch命令9.echo命令10.文件或目录复…...

Redisson在业务处理中失败后的应对策略:保障分布式系统的可靠性

分布式系统中的数据一致性与高可用性一直是开发者面临的难题。作为Redis官方推荐的Java客户端&#xff0c;Redisson凭借其强大的分布式能力成为解决这些问题的利器。但在实际业务场景中&#xff0c;网络抖动、资源竞争、节点故障等问题可能导致操作失败&#xff0c;本文将深入探…...

windows下docker 运行 ros2humble arm64

目前要想运行arm版ros humble 目前最好的解决方案是使用qemu模拟。 1.拉取 ubuntu22.04 docker pull ubuntu:22.04 --platformarm642.安装小鱼ros2 humble wget http://fishros.com/install -O fishros && . fishros3.安装eqmu docker run --rm --privileged multia…...

表的增删改查 -- 2

目录 3、查询&#xff08;R&#xff09; 3.7、条件查询&#xff1a;where 3.8、分页查询&#xff1a;limit 3.9、查询总结 4、修改&#xff08;U&#xff09; 5、删除&#xff08;D&#xff09; 3、查询&#xff08;R&#xff09; 3.7、条件查询&#xff1a;where selec…...

Linux系统管理与编程20:Apache

兰生幽谷&#xff0c;不为莫服而不芳&#xff1b; 君子行义&#xff0c;不为莫知而止休。 做好网络和yum配置&#xff0c;用前面dns规划的www的IP进行。 #!/bin/bash #----------------------------------------------------------- # File Name: myWeb.sh # Version: 1.0 # …...

dfs 第一次加训 详解 下

目录 P1706 全排列问题 思路 B3618 寻找团伙 思路 B3621 枚举元组 思路 B3622 枚举子集&#xff08;递归实现指数型枚举&#xff09; 思路 B3623 枚举排列&#xff08;递归实现排列型枚举&#xff09; B3625 迷宫寻路 思路 P6183 [USACO10MAR] The Rock Game S 总结…...

vue2/3 中使用 @vue-office/docx 在网页中预览(docx、excel、pdf)文件

1. 安装依赖&#xff1a; #docx文档预览组件npm install vue-office/docx vue-demi0.14.6#excel文档预览组件npm install vue-office/excel vue-demi0.14.6#pdf文档预览组件npm install vue-office/pdf vue-demi0.14.6 vue2.6版本或以下还需要额外安装 vue/composition-api …...

Excel表的导入与导出

Excel表的导入与导出 根据excel表来建立所需的数据库表格 <dependency><groupId>com.auth0</groupId><artifactId>java-jwt</artifactId><version>3.10.3</version></dependency><dependency><groupId>cn.hutool&…...

Redis 中常见的数据类型有哪些?

Redis 常见的数据类型包括 5 种基础类型&#xff08;String、Hash、List、Set、Zset&#xff09;和 3 种特殊类型&#xff08;HyperLogLog、Bitmap、Geospatial&#xff09;。以下是详细说明&#xff1a; 一、5 种基础数据类型 1. 字符串&#xff08;String&#xff09; 特点…...

消息队列如何保证消息可靠性(kafka以及RabbitMQ)

目录 RabbitMQ保证消息可靠性 生产者丢失消息 MQ丢失消息 消费端丢失了数据 Kakfa的消息可靠性 生产者的消息可靠性 Kakfa的消息可靠性 消费者的消息可靠性 RabbitMQ保证消息可靠性 生产者丢失消息 1.事务消息保证 生产者在发送消息之前&#xff0c;开启事务消息随后生…...

基于STM32、HAL库的BMP390L气压传感器 驱动程序设计

一、简介: BMP390L 是 Bosch Sensortec 生产的一款高精度气压传感器,专为需要精确测量气压和海拔高度的应用场景设计。BMP390L 具有更低的功耗、更高的精度和更快的响应速度。 二、硬件接口: BMP390L 引脚STM32L4XX 引脚说明VDD3.3V电源GNDGND地SCLPB6 (I2C1 SCL)I2C 时钟线…...

QMK键盘固件中LED锁定指示灯的配置与使用详解(实操部分+拓展)

QMK键盘固件中LED锁定指示灯的配置与使用详解 大家好!今天就跟大家一起探索QMK固件中LED锁定指示灯的配置与使用。无论你是键盘DIY新手还是老司机,相信这篇教程都能帮你解锁新技能! 一、基础配置:定义LED引脚 在QMK固件中配置LED锁定指示灯非常简单,只需在config.h文件…...

【日撸 Java 三百行】Day 12(顺序表(二))

目录 Day 12&#xff1a;顺序表&#xff08;二&#xff09; 一、顺序表的方法 1. 顺序查找 拓展&#xff1a;顺序查找中的哨兵思想 2. 插入 3. 删除 二、代码及测试 拓展&#xff1a; 小结 Day 12&#xff1a;顺序表&#xff08;二&#xff09; Task&#xff1a; 今天…...

Python爬虫实战:研究ajax异步渲染加密

一、引言 在当今数字化时代,数据已成为推动各行业发展的核心驱动力。网络爬虫作为一种高效的数据采集工具,能够从互联网上自动获取大量有价值的信息。然而,随着 Web 技术的不断发展,越来越多的网站采用了 AJAX(Asynchronous JavaScript and XML)异步渲染技术来提升用户体…...

Golang企业级商城高并发微服务实战

Golang企业级商城高并发微服务实战包含内容介绍&#xff1a; 从零开始讲了百万级单体高并发架构、千万级微服务架构&#xff0c;其中包含Rpc实现微服务、微服务的跨语言调用jsonrpc和protobuf、protobuf的安装、protobuf高级语法、protobuf结合Grpc实现微服务实战、微服务服务…...

从经典力扣题发掘DFS与记忆化搜索的本质 -从矩阵最长递增路径入手 一步步探究dfs思维优化与编程深度思考

1引子&#xff1a; DFS和递归法的一道经典例题矩阵最长递增子序列这个题写完之后脑袋产生了许多突发奇想&#xff1a; 1 第一个堆栈代码段这些底层C语言内部管理的工具它是怎么进行内存分配的&#xff1f;能不能深究&#xff1f; 2 第二个这个DFS和计划数组存储的思路到底抽象…...

我开源了一个免费在线工具!UIED Tools

UIED Tools - 免费在线工具集合 最近更新&#xff1a;修改了文档说明&#xff0c;优化了项目结构介绍 这是设计师转开发的第一个开源项目&#xff0c;bug和代码规范可能有些欠缺。 这是一个功能丰富的免费在线工具集合网站&#xff0c;集成了多种实用工具&#xff0c;包括 AI …...

geoserver发布arcgis瓦片地图服务(最新版本)

第一步&#xff1a;下载geoserver服务&#xff0c;进入bin目录启动 需要提前安装好JDK环境&#xff0c;1.8及以上版本 安装完成&#xff0c;页面访问端口&#xff0c;进入控制台界面,默认用户名密码admin/geoserver 第二步&#xff1a;下载地图 破解版全能电子地图下载器&…...

RN 鸿蒙混合开发实践(踩坑)

#三方框架# #React Native # 1 。环境配置&#xff1b; 安装 DevEco 开发工具&#xff1b; Node 版本16&#xff1b; hdc环境配置 hdc 是 OpenHarmony 为开发人员提供的用于调试的命令行工具&#xff0c;鸿蒙 React Native 工程使用 hdc 进行真机调试。hdc 工具通过 OpenHa…...

2025年阿里云ACP大数据分析师认证模拟试题(附答案解析)

这篇文章的内容是阿里云ACP大数据分析师认证考试的模拟试题。 所有模拟试题由AI自动生成&#xff0c;主要为了练习和巩固知识&#xff0c;并非所谓的 “题库”&#xff0c;考试中如果出现同样试题那真是纯属巧合。 1、ABC公司现有大量的图片和视频信息&#xff0c;以下哪种产…...

go语言实现IP归属地查询

效果: 实现代码main.go package mainimport ("encoding/json""fmt""io/ioutil""net/http""os" )type AreaData struct {Continent string json:"continent"Country string json:"country"ZipCode …...

Qt中解决UI线程阻塞导致弹窗无法显示的两种方法

在Qt应用程序开发中,我们经常会遇到这样的问题:当执行一个耗时操作时,整个界面会卡住,无法响应任何用户操作,甚至连一个简单的提示弹窗都无法正常显示。本文将介绍两种解决这个问题的方法,并通过完整的代码示例进行说明。 问题描述 先来看一个常见的错误示例: #inclu…...

位运算题目:黑板异或游戏

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法思路和算法代码复杂度分析 题目 标题和出处 标题&#xff1a;黑板异或游戏 出处&#xff1a;810. 黑板异或游戏 难度 8 级 题目描述 要求 给定一个整数数组 nums \texttt{nums} nums&#xff0c;表示写在黑板…...

LegoGPT,卡内基梅隆大学推出的乐高积木设计模型

LegoGPT 是由卡内基梅隆大学开发的一款创新性乐高积木设计模型&#xff0c;能够根据用户的文本提示生成结构稳固、可组装的乐高模型。该模型基于自回归语言模型和大规模乐高设计数据集进行训练&#xff0c;用户只需输入简单的文字描述&#xff0c;LegoGPT 就能逐步构建出物理稳…...

深度 |国产操作系统“破茧而出”:鸿蒙电脑填补自主生态空白

真心为国内能有像华为这样的技术型公司而自豪&#xff0c;一步步突围技术封锁。从这篇信息&#xff0c;可以给软件从业者一个启示&#xff1a;鸿蒙生态将是一个新的机会&#xff0c;值得好好把握。 鸿蒙电脑正成为中国电子信息技术新坐标。 超10亿鸿蒙生态设备、2800家鸿蒙智…...

【Python】Python常用数据类型判断方法详解

在Python编程中,准确判断数据类型是处理逻辑分支、类型转换和异常处理的基础。本文结合核心方法与实践场景,系统介绍type()、isinstance()等常用判断方式,并分析其适用性与最佳实践。 一、直接类型判断方法 type()函数 • 功能:返回对象的精确类型,适用于简单类型判断。 •…...

【美国将取消对能源之星支持 严重影响AI服务器】

1992年美国政府在共和党执政期间推出了影响深远的“能源之星”计划&#xff08;Energy Star&#xff09;&#xff0c;很多人可能并不知道能源执行计划&#xff0c;但这个蓝色星星标签估计大多数人都不会陌生。能源之星计划从推出以来不止得到各类消费电子制造商认可&#xff0c…...

《 C++ 点滴漫谈: 三十七 》左值?右值?完美转发?C++ 引用的真相超乎你想象!

摘要 本文全面系统地讲解了 C 中的引用机制&#xff0c;涵盖左值引用、右值引用、引用折叠、完美转发等核心概念&#xff0c;并深入探讨其底层实现原理及工程实践应用。通过详细的示例与对比&#xff0c;读者不仅能掌握引用的语法规则和使用技巧&#xff0c;还能理解引用在性能…...

【生产实践】Linux中/usr/bin、/usr/sbin与/usr/local的关系解析(2025年技术规范)

一、核心定位与功能划分 /usr/bin&#xff1a;用户级通用命令库 • 定位&#xff1a;存储系统预装的用户级可执行文件&#xff0c;这些命令通常由Linux发行版官方软件包管理器&#xff08;如APT、YUM&#xff09;安装&#xff0c;属于系统默认功能的一部分。 • 示例命令&#…...

数据可视化:用一张图讲好一个故事

在这个信息爆炸的时代&#xff0c;数据无处不在&#xff0c;但如何让复杂的数据变得通俗易懂&#xff1f;数据可视化就是一把神奇的钥匙。它不仅能将枯燥的数字转化为生动的图像&#xff0c;还能挖掘出数据背后隐藏的故事。然而&#xff0c;很多人对数据可视化的理解还停留在表…...

C++获取目录中所有图片路径的函数get_image_paths解析

本文将全面解析一个用于获取目录中图片路径的C函数get_image_paths&#xff0c;从基础语法到高级概念&#xff0c;涵盖C标准库、文件系统操作、异常处理等多个方面。 原始代码 std::vector<std::string> get_image_paths(const std::string& directory_path) {log_…...

物联网无线传感方向专业词汇解释

涡旋电磁波(VEMW)&#xff1a;一种具有轨道角动量的电磁波&#xff0c;其特性在于能够在传播过程中携带额外的相位信息&#xff0c;从而增加通信系统的容量和灵活性。波前&#xff1a;波动传播过程中&#xff0c;同一时刻振动相位相同的所有点构成的几何曲面&#xff0c;代表波…...

【C语言指针超详解(五)】--回调函数,qsort函数的理解和使用,qsort函数的模拟实现

目录 一.回调函数 1.1--回调函数的概念 1.2--回调函数改造计算器程序 二.qsort函数的理解和使用 2.1--qsort函数的理解 2.2--使用qsort函数排序整型数据 2.3--使用qsort函数排序结构数据 三.qsort函数的模拟实现 &#x1f525;个人主页&#xff1a;草莓熊Lotso的个人主…...

【Linux网络】————HTTP协议详解

作者主页&#xff1a; 作者主页 本篇博客专栏&#xff1a;Linux 创作时间 &#xff1a;2025年5月11日 1. HTTP 协议介绍 基本介绍&#xff1a; http协议全称&#xff1a;超文本传输协议&#xff0c;适用于从万维网服务器传输超文本到本地的传送协议。HTTP是一种应用层协议…...

使用WinSW工具将exe注册为window服务

下载工具WinSW(工具在GitHub上 打不开就需要魔法VPN) 文件准备 将以下文件放在同一个目录&#xff08;例如&#xff1a;WebSocketService 文件夹&#xff09;中&#xff1a; WebScoket.exe WinSW-x64.exe WebScoketService.xml ← 服务配置文件 install_service.bat ←…...

远程命令执行RCE概述

远程命令执行RCE诞生于1997年&#xff0c;比SQL注入早1年&#xff0c;据说当时的程序员发现在网站里可以随意的删除网页&#xff0c;就像删除本地文件一样简单&#xff0c;但是这种场景相对不多&#xff0c;因此没有SQL注入广泛&#xff0c;早期的web攻击像现在的护网一样&…...

在 .NET 8 开发的WinForms 程序中展示程序版本号的几种方式

前言 欢迎关注dotnet研习社&#xff0c;今天我们讨论一个Winform开发中的一个常见的需求内容“关于程序的版本号显示”。 在 WinForms 桌面应用程序开发中&#xff0c;向用户显示当前程序的版本号是一个常见的需求&#xff0c;尤其是在产品发布、更新提示或技术支持场景中尤为…...

[特殊字符] Spring Cloud 微服务项目中 common 模块依赖导致网关启动失败的排查与解决

在进行微服务开发时&#xff0c;我们通常会抽取一个 common 公共模块&#xff0c;封装一些通用配置类、工具类、拦截器、常用组件依赖等&#xff0c;供多个微服务共享使用。 但近期在实际开发中&#xff0c;出现了一个典型问题&#xff1a;在 Gateway 网关模块中引入 common 后…...