当知识图谱遇上文本智能处理,会擦出怎样的火花?
目前以理解人类语言为入口的认知智能成为了人工智能发展的突破点,而知识图谱则是迈向认知智能的关键要素。达观数据在2018AIIA人工智能开发者大会承办的语言认知智能与知识图谱公开课上,三位来自企业和学术领域的专家分别从不同角度讲述的知识图谱的应用和发展。文本根据达观数据副总裁王文广演讲内容《知识图谱与文本智能处理》整理所得,内容略有删减。
人们一些模糊词义的表达,比如:以前没有钱买华为,现在没有钱买华为。”这两句“没有钱”的意思很不一样,我们人理解这样的句子很容易,但对于计算机来说理解便很困难。
同一句话在不同场景下含义也很不一样,比如说从青岛开高速出来在车上谈“G20”是指高速有没有堵车,如果是北京或者是杭州谈G20有可能是高铁的票,在一些环境下G20也可能是20国集团峰会,这些表达的意思非常需要语境和背景知识的理解。计算机做文字阅读理解面临的挑战主要包括三个方面:
(1)缺乏常识体系
因为没有丰富的知识体系难以对文字背后的含义进行深入理解和推导
(2)缺乏领域的专家经验
人类的业务、法务、财务专家因为有行业知识,所以阅读文字后与知识对比后可以形成专业的见解
(3)模糊、歧义、抽象会增加困难
语言中模糊不清的现象比比皆是,需结合语境去理解
知识图谱是其中一个为解决问题提出来的方法——我们可以把人类的各种知识以知识图谱的形式沉淀下来,让计算机利用这个知识图谱理解更加复杂的含义。
知识图谱基本概念
知识图谱本身是从语义网发展出来的,也是谷歌提出来的概念,知识图谱的构建也是现在AI领域里面的非常大的难点,这是因为不仅涉及到AI领域各方面的技术,还包括人类各种领域的知识所形成的专家系统。
构建高质量的不断演化知识图谱也是AI领域的难点之一,因为知识图谱本身研究的意义就是可以为语言提供更多的背景知识,让计算机更好的读写文字。基本现状像谷歌、百度、搜狗都有大量的通用知识图谱,还有垂直领域的医疗或者是金融领域的知识图谱的广泛应用也很多,如何结合业务场景使用好知识图谱是落地的根本要素。
知识图谱本质上是一种语义网络,将客观的经验沉淀在巨大的网络中,结点代表实体(entity)或者概念(concept),边(edge)代表实体/概念之间的语义关系,成熟的图数据库如neo4j,Dgraph,JanusGraph等可以用来存储知识图谱。
知识图谱更加广泛的被认知的是一个三元组的表示形式。就是有三个值,第一个表示第一个实体,第二个值表示第二个实体,中间值是两者之间的关系。三元组本身基于三元组的语义网发展起来,有RDF的检索语言,还有基于RDF的存储的开源的方式,都是很方便使用方式。
深度学习的发展促使知识的表示从三元组迈向稠密向量表示,从Word2Vec到对三元组的表示学习,稠密向量,实体等本身可以用Word2Vec等进行表示学习,例如 Vector(山东省) - Vector(威海市) = Vector(广东省) - Vector(佛山市) ,对于三元组的表示学习,有各类深度学习算法,如TransE、TransH、TransR、TransG、KBGAN、等。
知识图谱上的应用非常多,比如推荐系统可以用上知识图谱来实现更加智能的推荐,除此之外,知识问答、文档审核等也是知识图谱常见的应用场景。
通用型知识图谱和行业型知识图谱
一般来讲会把知识图谱分成通用和行业的知识图谱,通用型的就是刚刚提过像谷歌,构建知识图谱就是一个面向全领域,没有一些特别的偏好,国内有百度或者是搜狗的知识图谱,还有一些是开放式的像wikidata 以及中文openKG等。
行业垂直型知识图谱是面向某一特定领域,如金融、法律、财会、教育等,以专家知识为主,通过结合业务场景,基于行业数据构建,打造“语义层面的行业知识库”,通常也更加专业。
比如向百度或者是搜狗搜一些人名地名会以卡片的形式展现出来,这个是知识图谱的现实的应用。金融领域会用知识图谱分析借贷关系或者是企业的信贷状况等,这是非常强的应用场景。
目前达观达观构建一些企业信息法律类的知识图谱用来帮助我们的文档智能审阅系统更好的审核合同或者是专业文本,像财报或者是上交所的公告等。
如何构建知识图谱?
知识图谱有这么多好处,我们怎么去构建一个知识图谱?简单来说,构建知识图谱其实是一个系统性的工程,不是单一的算法能够完成。
如果要构造一个完整的知识图谱则是非常复杂的系统工程,会涉及到schema(本体)的构造,然后会有一些知识抽取或者是关系抽取的概念语言。其次,需要对知识推理(关系推理)的结果进行质量评估。此外,需要对知识抽取的监督算法进行样本标注,或者对自动标注的样本进行效果确认。
另外对于知识图谱来说非常重要的一点是反馈机制,我们怎么样利用反馈系统不断地让知识图谱进行进化?这个在构建知识图谱的过程当中非常需要考虑的问题。此外,工程上详细的logging和报表系统以在需要的时候进行分析和纠正。
分层次的领域模式(Schema)非常重要
schema的构造是层级的方式,专业领域是先按照专家经验构造出一个知识图谱的schema,然后在实践过程当中不断完善,像通用的谷歌或者是百度他们自上而下利用类算法抽取知识图谱,然后归类到已经有的schema,如果归类不到就想方设法生成新的schema的模式匹配它。
在这里面知识图谱构建过程当中,除了schema之外就是往图谱里填内容,这个过程就是知识抽取,本身是包括了实体抽取和关系抽取,还有属性抽取这几个概念,在实践过程当中,其实不完全是像在论文里面看到的各种抽取,有可能是从结构化数据库里面按照某一种专业的规则直接转化,因为很多的知识其实已经存储在各个企业里面关系数据库里面。这种情况下可能是用了简单的规则就转化成知识图谱的一部分的内容。
另外一部分是半结构数据,维基百科很多的标签是已经存在在里面的,还有国家企业信息公示网的各种实体公司名或者是企业法人都是以半结构化存在,这个用模板匹配就可以完成了。
这里面简单的就总结了刚刚提到的点,在不同的背景下可能选择不同的知识抽取的算法可以更好的去帮助我们构建一个完整的知识图谱。
这是一个像BiLSTM-CRF用于命名实体识别常用的办法,帮助我们识别非结构化文本,比如说书籍或者是合同或者是新闻里面的实体。
Bi-LSTM双向网络分别从前往后和从后往前进行序列信号的记忆和传递是常见做法,CRF等经典方法结果可控性好,在序列标注时,在顶层用CRF对Bi-LSTM的结果进行二次操作可得到更好的结果。
除了刚刚提到的知识抽取之外,其实抽取完之后在不同的地方表现方法和表达方式不一样,在不同来源的知识里面如何融合成一个相同的?这个是我们需要考虑的点,这里有几个例子:比如说苏东坡在不同的地方会被提到,而且有不同的名字,可能是历书里面有东坡学士这样的说法,还有苏轼的叫法。
另外这些不仅仅存在中国,因为多元跨国之间的交流也导致很大的问题,比如说后面的例子是美国总统特朗普,中文的官方名称是特朗普,大家还有称他为川普,还有其他的语言西班牙或者是土耳其语。在多元的环境下如何进行知识图谱?其实对知识图谱构建是非常大的挑战。
这是一个网络上的例子,来自于几个不同的影视剧或者是小说,里面的部分人是同一个人,但是不同的小说可能有不同的名字或是不同影视剧里面的主角,这样如果做成一个知识图谱如何归结好?利用各种影视剧小说里面的内容进行推理,其实是多元知识融合里面非常通俗易懂的例子。这个是人工整理,人有专业的知识非常好做,但是耗费了大量的人力,不能把各种知识都做很好的融合,所以我们需要发掘更多算法去实现这个目标。
除了刚刚提到的抽取和融合之外,对于知识图谱的存储其实也是非常大的挑战。大一点的通用的知识图谱都是几十亿甚至上百亿的节点,可能百亿千亿级别的关系,如何做好存储系统是极其需要考虑的点,下图总结目前常见的几种存储类型,像RDF和ApacheJena以三元组的形式表现的,NoSQL也可以存储,但是如果量大会很吃力,开源的Neo4j是单机的,DGraph正在发展,按照官方的说法支持千亿级别的,但是现在还没有达到,但亿级别是完全没有问题的。
下图一个JanusGraph,有如下几个特点:
十亿以上的节点和边C* 或 Hbase等与Spark无缝集成支持使用ElasticSearch进行高效检索最终一致性支持Gremlin语言进行在线分析开源
除了以上这些点,如果构建好了知识图谱,要对知识进行推理和评估,知识推理本身可以补充知识图谱的内容,或者是进行完善或者是较验。对于知识图谱大部分还是需要人工的参与。
Path Ranking Algorithm(PRA)算法和DeepPath: A Reinforcement Learning Method for Knowledge Graph Reasoning,这两个是知识推理的前沿进展,有兴趣可以去看一下。
总之,从合适的业务场景出发是成功构建和使用行业知识图谱的关键。
知识图谱行业应用
知识图谱的作用是衔接企业的数据和业务需求。
对于企业来说,是把原有的分散的数据变成集中化的管理。可能是遇到比较大的集团企业他的传统的数据是分散的,不同的部门和公司之间,这部分的知识是没有被更好的利用起来。如何利用好这些数据?更好的支持业务,让整个业务更高效的运行?其实是整个企业在做知识图谱需要考虑的一个点。
对于我们来说他的难点就是在于因为本身的数据非常的分散,不同的数据结构表示不一样,存在不同的地方有不同的表达方式,如何做好这部分融合的工作其实是很大的难点。
知识图谱的应用场景可以是简单的利用,即直接用知识图谱的分析,下图比是早的阿里巴巴的分析图,当时发生了一个事件马云把支付宝私有化,当时他们画了一个阿里巴巴的股权结构图,像这种股权分析在金融领域里面是非常直接的知识图谱的应用。
除此之外,信贷分析也是经典的应用场景,直接用知识图谱或者是知识推理进行分析,生成相应的报告或者得出一些结论,这个是最直接的应用场景。
第二是利用知识图谱做一些舆情分析热点分析,把知识图谱和其他的结合起来使用。
达观擅长的VOC用户评论分析,会涉及到用户评论归类到哪一个实体里面,比如说一个企业会抓他的所有的评论和微博数据,会归纳到具体的品牌和产品上,甚至是归到产品的某些类别中。比如说手机,有不同的品牌,每个品牌下面有不同的型号,每个型号下有不同的版本,手机本身有不同的零件——屏幕或者是相机之类。每个评论过来之后其实针对的是某一个具体手机的型号,在这个型号里面有可能是针对整机进行评价,有可能是针对整机里面的部件。那么我们需要做的更好的分析就是可以利用像手机这种类似的知识图谱对它进行更深入的分析。
招聘也是达观目前在做的,有企业在用,可以对候选人和职位构建出图谱进行分析,更好的理解这个职位需要招什么人?也可以更好的了解候选人适合哪一个职位。
此外,基于知识图谱实现更加智能的搜索。基于知识图谱的检索最早用在搜索引擎上面,搜索利用这些之后可以更好的理解用户的意图,达到更好的效果。
推荐系统也可以用知识图谱,这个是达观在做的,达观的推荐系统在业界比较领先,知识图谱可以针对不同的场景或者是不同的类型还有不同的领域推荐。推荐中最重要的一点是冷启动问题,如果完全没有数据的系统或者是刚构建的系统,想达到好的推荐效果比较难,利用知识图谱里面的内容能更好的在冷启动的环境下达到更好的效果。如何利用深度学习把知识图谱用在推荐系统上,也是达观数据在研究的内容。
构建知识图谱之上的问答系统是最直接的,知识问答是你需要了解用户问的问题是什么意思?然后给他一个最直接的答案。知识问答除了像各种搜索引擎,这个里面的例子有几个,一个是问范冰冰的男友
前面就是一些通用场景下的应用场景,下面讲讲达观数据对知识图谱的的一些应用。
这个场景是合同审阅,自动化的帮企业审阅各种合同文本和公告,合同需要符合合同法规定的,以及企业内部的法务部门对合同有一些要求,以及本身合同是一个非常规范的文本,不允许有错别字等。
达观文档智能审阅系统能利用知识图谱里面包括对法律文本的语义化的图谱应用,自动完成审阅。以及对企业信息可以从工商信息网的信息里面可以做一些较验。
推荐系统刚刚提到过,推荐系统里面应用到知识图谱,这个是简单的例子,比如说达观数据和人工智能公司,是属于人工智能的一个领域,如果一个用户对人工智能感兴趣,对达观相关的信息就感兴趣,比如说达观的融资信息,这个对人工智能来说是一个比较有用的新闻,可以判断这个领域是不是繁荣?估值是不是上涨了还是下降了?
上图是达观用深度学习的方式把知识图谱的三元组表示应用到协同过滤和推荐相关的领域。
总结
前面简单的介绍了整个知识图谱的相关的内容,最后做一些总结。
1.构建知识图谱本身是非常系统性的工程,包括计算机的方方面面还有实践过程,以及企业真实应用场景中包括对企业的不断的沟通,不同部门之间整合的过程2.整个知识图谱的构建没有"银弹",没有一个统一或者是完美的方法搞定一个事情,在做事情的过程当中需要因时因地制宜的实现3.知识图谱的构建能有效提升文本智能处理的效果4.知识图谱可能是走向认知智能的关键要素5.知识图谱需要结合应用场景做分析落地,落地之后还要不断的优化总结来提升整个效果
ABOUT关于嘉宾王文广,达观数据副总裁,在人工智能领域和系统架构设计上有十余年工作经验,浙江大学计算机硕士。曾担任金融AI公司Kavout首席架构师,将人工智能(AI)和自然语言处理(NLP)技术应用于金融、证券、量化交易等领域,效果得到美国大型基金公司认可。曾负责盛大创新院搜索、推荐、广告等多个项目的架构设计工作,所设计和开发的系统具备海量数据的快速处理和高度智能的挖掘能力,多次获得嘉奖。早期在百度负责MP3搜索、语音识别与搜索和音频指纹等系统的核心研发。
相关文章:
当知识图谱遇上文本智能处理,会擦出怎样的火花?
目前以理解人类语言为入口的认知智能成为了人工智能发展的突破点,而知识图谱则是迈向认知智能的关键要素。达观数据在2018AIIA人工智能开发者大会承办的语言认知智能与知识图谱公开课上,三位来自企业和学术领域的专家分别从不同角度讲述的知识图谱的应用…...
SpringBootWeb案例-1
文章目录 SpringBootWeb案例1. 准备工作1.1 需求&环境搭建1.1.1 需求说明1.1.2 环境搭建 1.2 开发规范 2. 部门管理2.1 查询部门2.1.1 原型和需求2.1.2 接口文档2.1.3 思路分析2.1.4 功能开发2.1.5 功能测试 2.2 前后端联调2.3 删除部门2.3.1 需求2.3.2 接口文档2.3.3 思路…...
在正则表达式中,\1 是用来引用第一个捕获组的内容的。捕获组是用括号 () 包裹的部分
在正则表达式中,\1 是用来引用第一个捕获组的内容的。捕获组是用括号 () 包裹的部分,它们会保存正则表达式匹配到的内容。在替换操作中,\1 就是对第一个捕获组内容的引用,表示你希望将捕获组中的内容放到替换文本中的某个位置。 …...
免费下载 | 2024年具身大模型关键技术与应用报告
这份报告的核心内容涉及具身智能的关键技术与应用,主要包括以下几个方面: 具身智能的定义与重要性: 具身智能是基于物理身体进行感知和行动的智能系统,通过与环境的交互获取信息、理解问题、做出决策并实现行动,产生智…...
[API测试] Karate 之独立运行方式
在 Karate 介绍与快速示例(API测试自动化、模拟、性能测试与UI自动化工具) 这一篇中介绍了如何在Maven项目中,如何结合JUnit 运行 Karate的API测试, 如果是专职的QA人员来测试, 对Java语言或者Maven完全不熟悉的话要怎么来运行 Karate的测试呢? 答案就是使用Karate的独立运…...
WeNet:面向生产的流式和非流式端到端语音识别工具包
这篇文章介绍了WeNet,一个面向生产的开源端到端(E2E)语音识别工具包。WeNet的主要特点和贡献如下: 统一流式和非流式识别:提出了一种名为U2的两阶段框架,能够在单一模型中同时支持流式和非流式语音识别&…...
《我在技术交流群算命》(二):QGraphicsItem怎么写自定义信号啊(QObject多继承顺序问题)
某位群友突然无征兆的抛出以下问题: QGraphicsItem怎么写自定义信号啊 看到这个问题的时候我是比较疑惑的,按鄙人对 Qt 的了解,自定义信号只需: 继承QObject类中加入Q_OBJECT宏声明一个信号并使用 但该群友毕竟也不是一个Qt新手࿰…...
实践深度学习:构建一个简单的图像分类器
引言 深度学习在图像识别领域取得了巨大的成功。本文将指导你如何使用深度学习框架来构建一个简单的图像分类器,我们将以Python和TensorFlow为例,展示从数据准备到模型训练的完整流程。 环境准备 在开始之前,请确保你的环境中安装了以下工…...
实践:事件循环
实践:事件循环 代码示例 console.log(1); setTimeout(() > console.log(2), 0); Promise.resolve(3).then(res > console.log(res)); console.log(4);上述的代码的输出结果是什么 1和4肯定优先输出,因为他们会立即方式堆栈的执行上下文中执行&am…...
基于Python的医院预约挂号与诊断系统
作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…...
计算机网络基础
文章目录 名词含义1.应用层1.1网络应用原理1.1.1网络应用体系1.1.2进程通信1.1.3可供程序使用的运输服务1.1.4因特网的运输服务1.1.5应用层协议 1.2WEB和HTTP1.2.1HTTP概述1.2.2持续与非持续连接1.2.3报文格式 名词含义 ISP(Internet Service Provider,因特网服务提…...
Rabbitmq追问1
如果消费端代码异常,未手动确认,那么这个消息去哪里 2024-12-31 21:19:12 如果消费端代码发生异常,未手动确认(ACK)的情况下,消息的处理行为取决于消息队列的实现和配置,以下是基于 RabbitMQ …...
基于SpringBoot和OAuth2,实现通过Github授权登录应用
基于SpringBoot和OAuth2,实现通过Github授权登录应用 文章目录 基于SpringBoot和OAuth2,实现通过Github授权登录应用0. 引言1. 创建Github应用2. 创建SpringBoot测试项目2.1 初始化项目2.2 设置配置文件信息2.3 创建Controller层2.4 创建Html页面 3. 启动…...
python数据分析:使用pandas库读取和编辑Excel表
使用 Pandas,我们可以轻松地读取和写入Excel 文件,之前文章我们介绍了其他多种方法。 使用前确保已经安装pandas和 openpyxl库(默认使用该库处理Excel文件)。没有安装的可以使用pip命令安装: pip install pandas ope…...
SpringCloud源码分析-Lettue Redis
redis connection异步发送 底层是nio channel...
Linux(13)——网络概述
目录 一、TCP/IP 网络模型: 1、应用层(Application): 2、传输层(Transport): 3、互联网层(Internet or network): 4、链路层(Link࿰…...
PHP框架+gatewayworker实现在线1对1聊天--聊天界面布局+创建websocket连接(5)
文章目录 聊天界面布局html代码 创建websocket连接为什么要绑定? 聊天界面布局 在View/Index目录下创建index.html html代码 <div id"chat"><div id"nbar"><div class"pull-left">与牛德胜正在聊天...</div…...
Qos的详细解释
QoS(Quality of Service),即服务质量,是一种用于网络管理的技术,旨在确保不同类型的数据流(如语音、视频、文件传输等)在网络中按优先级和要求得到适当的带宽、延迟、抖动和丢包率等服务&#x…...
未来20年在大语言模型相关研究方向--大语言模型的优化与改进
未来20年在大语言模型相关研究方向 模型性能优化 模型架构创新:研究新型的模型架构,如探索更高效的Transformer变体、融合递归神经网络(RNN)和卷积神经网络(CNN)的优点,以提高模型的性能、可扩展性和适应性,满足不同应用场景对模型效率和效果的要求。高效训练算法:开…...
【Vue】vue-router使用addRoute动态加载路由后刷新页面404
场景:动态加载路由,点击菜单路由跳转正常,但刷新页面报404 原因:使用404做异常路由捕获 刷新页面会导致路由丢失,重建路由时先加载了静态路由(包含异常路由捕获404),此时动态路由还未…...
《计算机组成及汇编语言原理》阅读笔记:p177-p177
《计算机组成及汇编语言原理》学习第 13 天,p177-p177 总结,总计 1 页。 一、技术总结 1.real mode A programming model where the program has access to the entire capability of the machine, bypassing security and memory management. Useful…...
《从入门到精通:蓝桥杯编程大赛知识点全攻略》(一)-递归实现指数型枚举、递归实现排列型枚举
本篇博客将聚焦于通过递归来实现两种经典的枚举方法:指数型枚举和排列型枚举。这两种枚举方式在计算机科学和算法竞赛中都有广泛应用,无论是在解题中,还是在实际工作中都极具价值。 目录 前言 斐波那契数列递归 递归实现指数型枚举 算法思…...
游泳溺水识别数据集,对25729张图片进行YOLO,COCO JSON, VOC XML 格式的标注,溺水平均识别率在89.9%
游泳溺水识别数据集,对25729张图片进行YOLO,COCO JSON, VOC XML 格式的标注,溺水识别率在92% 训练结果 数据集和标签 验证 游泳测试视频 根据测试的视频来获取检测结果: 游泳测试视频的置信度设置60% 检测结果如下&…...
coredns报错plugin/forward: no nameservers found
coredns报错plugin/forward: no nameservers found并且pod无法启动 出现该报错原因 是coredns获取不到宿主机配置的dns地址 查看宿主机是否有dns地址 resolvectl status 我这里是配置正确后,如果没配置过以下是不会显示出dns地址的 给宿主机增加静态dns地址之后将…...
【欢迎讨论方案一的可行性】SpringBoot集成netty,在handler中调用@Component注解的类
在Netty中处理请求时,调用一个由Spring Boot管理的Component注解的类 在Netty中处理请求时,调用一个由Spring Boot管理的Component注解的类,需要确保Spring上下文能够正确地注入这些组件。 方法一:使用Autowired注入Spring组件 …...
如何在LaTeX文档中为脚注添加横线,并调整横线的长度和厚度。
当然,以下是一个简单的例子,展示了如何在LaTeX文档中使用scrextend宏包来为脚注添加横线,并调整横线的长度和厚度。 ### 步骤1:导入scrextend宏包 在你的LaTeX文档的导言区(\begin{document}之前的部分)&…...
【C语言】可移植性陷阱与缺陷(三):整数的大小
目录 一、概述 二、整数类型的大小差异 三、 跨平台代码中的整数大小问题 3.1. 内存使用 3.2. 性能问题 3.3. 数据截断 3.4. 序列化/反序列化 四、解决整数大小问题的策略 4.1. 使用固定大小的整数类型 4.2. 条件编译 4.3. 避免假设 4.4. 文档化 五、总结 在C语言编…...
nginx基础篇 - 控制命令详解:启动/停止、配置文件检查/重新加载、nginx平滑升级
文章目录 1. nginx命令2 使用Unix工具发送信号3 常用操作3.1 检查配置文件3.2 启动nginx3.3 停止nginx3.4 重启nginx 4 平滑升级nginx 1. nginx命令 执行nginx -h命令可以看到所有的nginx命令及其解释: nginx命令使用方法: nginx [-?hvVtTq] [-s signal] [-p p…...
汽车驾校转型做无人机执照培训详解, “驾” 起无人机培训新未来?
汽车驾校转型做无人机执照培训,这一趋势确实在一定程度上预示着无人机培训领域的新未来。以下是对这一转型的详细分析: 一、转型背景 1. 无人机行业快速发展: 无人机技术在农业、影视、安防、物流等多个领域的应用不断拓展,市场…...
如何科学评估与选择新版本 Python 编程语言和工具
文章目录 摘要引言评估新版本的关键因素适用性评估成本与收益分析 新版本功能的实际应用示例代码模块详细解析示例代码模块代码模块解析实际应用场景如何运行与配图 QA环节总结参考资料 摘要 随着技术的快速发展,编程语言和软件工具不断推出新版本,带来…...
TS中的enum变量和普通object区别
文章目录 一、定义二、编译后的输出三、类型安全四、使用场景五、混合使用 这两种数据经常混用,但是也有一定区别,特殊情况下混用会报错 一、定义 enum变量通常用使用常量object则没有限制值的类型 // 案例 enum Direction {Up,Down,Left,Right } const …...
SOT23-6封装小功率H桥常用直流电机、磁保持继电器驱动芯片大全
H桥常用直流电机、磁保持继电器驱动芯片大全 前言替换规则 引脚定义1:GR6205 | 2~5.5V | 200mAFM116C | 2.5V~5V | 500mATMI8118 | 1.6V~7.2V | 1.35AMX116L | 2~7V | 500mAMX116H | 2~8V | 800/1000 mAHT7K1201 | 1.8…...
Spring中的反射
反射是框架设计的灵魂,它可以使框架更加灵活和可扩展。框架是一种半成品软件,可以在其基础上进行软件开发,极大地简化了编码过程。而反射机制则是将类的各个组成部分封装为其他对象,对类进行解剖。通过反射,我们可以在…...
5.12--DenseNet
1.网络结构介绍 DenseNet最大的特点是对相同大小的特征图来说,每一层都与前馈层和后序层相连,以及两层之间是拼接起来的而不是简单的相加。该网络主要由Dense块和Transition层组成。 结构介绍: 密集连接:每层都和前馈层和后面的…...
PeaZip:支持200+格式,跨平台解压工具,安全又高效
PeaZip 作为一款功能全面的压缩工具,不仅完全免费且开源,兼容多种主流操作系统,包括 Windows、Linux 和 macOS。它不仅支持常见的压缩格式如 ZIP、RAR、7Z、TAR 和 GZIP,还能处理超过 200 种不同的文件格式,满足用户多…...
go项目使用gentool生成model的gen.go问题
Gen Tool 是一个没有依赖关系的二进制文件,可以用来从数据库生成结构。 使用方法: go install gorm.io/gen/tools/gentoollatest在项目根目录,执行连接的数据库中指定某几张表结构生成数据库model层 gentool -dsn "root:123456tcp(localhost:330…...
物理知识1——电流
说起电流,应该从电荷说起,而说起电荷,应该从原子说起。 1 原子及其结构 常见的物质是由分子构成的,而分子又是由原子构成的,有的分子是由多个原子构成,有的分子只由一个原子构成。而原子的构成如图1所示。…...
VDSuit-FuLL全身惯性动捕设备在人形机器人遥操作的具体应用
随着具身智能的火热,人形机器人遥操作的话题又回到了大众视野。人形机器人的遥操作有众多实现方案,其中基于动作捕捉设备进行人形机器人的遥操作成为了目前业内讨论较多的方向。动作捕捉指的是一种可以实时跟踪、记录、重建角色运动轨迹,并将…...
从零开始学TiDB(8) TiFlash 主要架构
一.TiFlash的主要架构 二.TiFlash 主要功能 1.异步复制 2.一致性读取 T0 时刻从客户端写入两行数据 k1 value100 k999 value7 分别写入到了两个region,并且产生raft log 此时TiFlash还没有TiKV的这两行数据 此时TiFlash同步了key1 value100的数据 还没有同步 …...
LeetCode题解:2625. 扁平化嵌套数组,递归
原题链接 https://leetcode.cn/problems/flatten-deeply-nested-array/ 题目解析 题目要求我们将一个多维数组扁平化到指定的深度。具体来说,我们需要将数组中的子数组扁平化,直到达到给定的深度n。如果子数组的深度大于n,则不进行扁平化。…...
基于深度学习的视觉检测小项目(五) 项目真正的开端
之前的所有都是项目概况和基础知识的铺垫,从今天开始真正进入项目。 首先明确一下项目的流程: • 任务分解分块,并作出每一块的大致功能规划 • 拆解工种,任务分派,约定工种间的接口方式和数据交互方式 • 按照任务块…...
使用ExecutorService和@Async来使用多线程
文章目录 使用ExecutorService和Async来使用多线程采用ExecutorService来使用多线程多线程过程的详细解释注意事项优点 使用Async来使用多线程对比Async和ExecutorService的多线程使用方式使用 ExecutorService 的服务类使用 Async 的服务类异步任务类自定义线程池主应用类解释…...
ArcGIS基础:使用【标识】工具完成分区统计线要素的长度
如上所示,有某个地区的部分管线数据,都是一些线要素。 如上所示,这片区域有好几个管理员,并有自己的管辖范围,现在需要根据这个范围,简单统计一下各自管理员(张三、李四、王五)范围内…...
专业高程转换工具 | 海拔高度与椭球高度在线转换系统
海拔高度转换工具:专业的高程转换系统 在线体验 立即使用 欢迎访问我的博客:https://cdtools.click,这里有更多实用的工具和技术分享。 工具背景 在测绘、工程、GIS 等领域,经常需要处理不同高程系统之间的转换。最常见的需求…...
springboot自定义注解的使用
目录 背景分析代码 背景 需求:对现有系统中所有数据库表都建立一张对应的备份表;在对主表进行增加,修改,删除操作的同时对备份表进行相同的操作。首先想到的应该是备份一个数据库就完事了~不过实际情况没这么简单,总之…...
Wallpaper壁纸制作学习记录13
骨骼物理模拟 Wallpaper Engine还允许您为人偶变形骨骼配置某些物理模拟。选择骨骼时,点击编辑约束来配置骨骼这些属性。 警告 请记住,物理模拟可能会根据用户的最大FPS设置略微改变其行为。 Wallpaper Engine编辑器将始终以高帧速率渲染。您可以将壁纸…...
Linux系统离线部署MySQL详细教程(带每步骤图文教程)
1、登录官网下载对应的安装包 MySQL :: Developer Zone 2、将压缩包上传到服务器上,这里直接上传到/usr/local路径上 使用sftp工具上传到/usr/local目录上 3、解压压缩包 tar -xf mysql-8.0.39-linux-glibc2.17-x86_64.tar.xz 4、将mysql-8.0.39-linux-glibc2.17…...
慧集通iPaaS集成平台低代码训练-实践篇
练习使用帐号信息: 1.致远A8平台(请自行准备测试环境) 慧集通连接器配置相关信息 访问地址: rest账号:rest rest密码: OA账号: 2.云星空(请自行准备测试环境) 连接…...
C程序设计:计算球的体积
问题:根据输入的半径值,计算球的体积。…...
AWS re:Invent 2024 - Dr. Werner Vogels 主题演讲
今年,我有幸亲临现场参加了所有的 keynote,每一场都让我感受到深深的震撼。无论是全新的功能发布,还是令人眼前一亮的新特性展示,每一场 keynote 都精彩纷呈,充满干货,值得反复学习和回味。 恰好ÿ…...