SLAM特征提取新变革:神经符号学结合自适应优化,实现环境适应性大飞跃!

news2024/11/15 8:50:20

论文标题:

A Neurosymbolic Approach to Adaptive Feature Extraction in SLAM

论文作者:

Yasra Chandio, Momin A. Khan, Khotso Selialia, Luis Garcia, Joseph DeGol, Fatima M. Anwar

导读:

本研究提出了一种创新的神经符号学方法(nFEX),用于自适应地改进SLAM中的特征提取模块。nFEX结合了深度学习和符号推理的优势,通过领域特定语言(DSL)动态选择和配置最优的特征提取器,以适应不断变化的环境条件。实验结果表明,nFEX在多个数据集上显著提高了特征提取的质量,减少了姿态误差,并在没有GPU支持的情况下实现了实时性能。©️【深蓝AI】编译

1. 摘要

自主机器人、自动驾驶车辆以及各类VR、AR设备需要在动态变化的真实世界环境中进行精确且可靠的跟踪定位,然而,诸如SLAM等现有的跟踪方法,尽管经过了广泛的手动调整,但仍然不能很好地适应环境变化和边界条件;另一方面,基于深度学习的方法虽可以更好地适应环境变化,但它们通常需要大量的训练数据,并且在适应新领域时往往缺乏灵活性。为了解决这个问题,本研究提出了利用神经符号学程序合成方法来构建可适应的SLAM流程,这些流程整合了传统SLAM方法的领域知识,同时利用数据学习复杂关系。该研究首先设计了一种领域特定语言(DSL),它可以封装特征提取的重要属性和各种特征提取器在现实世界中的表现;然后,神经符号学架构进行自适应特征提取,通过学习优化参数,同时使用符号推理来选择最合适的特征提取器。实验评估表明,神经符号学特征提取(nFEX)能够产生更高质量的特征,还可将观察到的ORB和SIFT这些最先进基线特征提取器的姿态误差分别降低了高达90%和66%,从而增强了系统在新环境中的效率和适应性。

本文的主要贡献如下:

●神经符号学方法(nFEX):提出了一种新颖的神经符号学方法,用于自适应地改进SLAM系统中的特征提取模块;

●领域特定语言(DSL):开发了一种DSL,用于封装特征提取的重要属性和不同特征提取器在现实世界中的性能表现;

●自适应特征提取:通过学习优化参数,并使用符号推理来动态选择最合适的特征提取器。

2. nFEX

2.1 nFEX概述

在传统的SLAM中,图像由预先选择的具有固定参数的特征提取器处理,产生一个特征向量,并将其馈送到剩余的SLAM步骤(里程计和其他优化)中用于姿态生成。为此,本研究提出的方法nFEX如图1所示,合成了一个神经符号程序,旨在根据实时环境输入动态选择和配置特征提取器,即用神经符号特征提取取代传统的手动调优特征提取模块,如图2中蓝色突出显示。

在这里插入图片描述
图1|nFEX概述©️【深蓝AI】编译

在这里插入图片描述
图2|nFEX(篮框)在SLAM框架中的贡献©️【深蓝AI】编译

2.2 DSL架构

nFEX基于DSL框架进行搭建,DSL框架概述了以下结构:

(1)特征提取器选择(α),用于识别给定场景条件下的最佳特征提取器架构;

(2)参数配置(Θ),用于确定了增强特征提取器性能的最佳参数设置。

DSL框架使用知识图将领域洞察封装到特征提取模块中,知识图充当领域信息数据库,帮助理解和导航模块的操作和参数。DSL框架下的知识图如图3所示,其包含了表示各种特征提取操作的节点,例如尺度空间表示、关键点检测和描述符,图中的边根据性能指标、计算考虑和对环境因素的适应性描述了这些操作之间的关系和兼容性。

在这里插入图片描述
图3|特征提取知识图谱©️【深蓝AI】编译

nFEX构建了相关的DSL语法(语法示意如图4所示),使用图概念,及相关语法解析输入条件的结构(例如室内/室外场景、代理类型、照明条件等),并根据描述的每个规则选择合适的α及其Θ。nFEX中的DSL语法增强了适应性,并简化了新应用程序的每次重新校准,使用户可以直接添加新的输入条件和参数。这种DSL确保了合成的程序在逻辑上是一致且可操作的,允许自动解析和执行特征提取。一旦DSL建立起来,就能够确保程序的逻辑连贯性和可操作性,从而实现特征提取的自动解析和执行。

在这里插入图片描述
图4|解析nFEX的DSL语法©️【深蓝AI】编译

nFEX通过参数调优(Θ)和特征提取器选择(α)两步适应度函数实现一个DSL程序来实现其目的:

(1)参数调优(Θ):给定一组特征提取器 α = α 1 , α 2 , . . . , α y α = {α_1, α_2, ..., α_y} α=α1,α2,...,αy,为每个特征提取器的初始参数 Θ = θ 1 , θ 2 , . . . , θ n Θ = {θ_1, θ_2, ..., θ_n} Θ=θ1,θ2,...,θn,以及一组符号环境条件 E = e 1 , e 2 , . . . , e c E = {e_1, e_2, ..., e_c} E=e1,e2,...,ec,优化过程由一个变换函数 g ( θ , E ) g(θ, E) g(θ,E)定义,该函数根据 E E E动态调整 Θ Θ Θ,得到优化后的参数集 Θ ′ = θ 1 ′ , θ 2 ′ , . . . , θ n ′ Θ^′ = {θ^′_1, θ^′_2, ..., θ^′_n} Θ=θ1,θ2,...,θn,其中 w k w_k wk为每个参数 k k k的权重,权重表示为如下公式:

Θ ′ = g ( Θ , E ) , w k = ∏ j = 1 f k j ( e j ) θ k ′ = w k ⋅ θ k = ( ∏ j = 1 c f k j ( e j ) ) ⋅ θ k for each  k ∈ { 1 , 2 , … n } \Theta^{\prime}=g(\Theta,E),\quad w_{k}=\prod_{j=1}f_{kj}(e_{j})\\\theta_{k}^{\prime}=w_{k}\cdot\theta_{k}=\left(\prod_{j=1}^{c}f_{kj}(e_{j})\right)\cdot\theta_{k}\quad\text{for each }k\in\{1,2,\ldots n\} Θ=g(Θ,E),wk=j=1fkj(ej)θk=wkθk=(j=1cfkj(ej))θkfor each k{1,2,n}左右滑动查看完整公式

其中 ∏ j = 1 c f k j ( e j ) \prod_{j=1}^cf_{kj}(e_j) j=1cfkj(ej)是给定参数 k k k的所有环境条件调整的累积积。

在环境条件 E E E的情况下,优化参数 θ ′ \theta^′ θ的适应度由适应度函数 F F F来评估:

F ( Θ ′ ∣ E ) = f ( Θ ′ ∣ E ) F(\Theta'|E)=f(\Theta'|E) F(ΘE)=f(ΘE)

该公式演示了场景条件如何直接影响参数优化,从而允许基于环境的自适应特征提取。

特征参数Θ主要包含五4个部分:NF、SF、NL、ST。功能数量NF影响系统识别和跟踪环境标志的能力,优化NF对于平衡细节捕获和计算负载至关重要,确保检测到足够的特征来准确地表示场景,而不会淹没处理能力,特别是在复杂或稀疏的环境中;尺度因子(SF)决定了图像金字塔中连续尺度之间的间隔,影响系统尺度不变特征检测的能力,适当调整的SF允许特征提取器始终如一地识别图像中的特征,无论它们在图像中的大小如何,使系统能够保持健壮,以应对受光照条件和运动影响的物体的大小或距离变化;金字塔级别的数量(NL)调整跨对象大小的特征,它扩展了系统在整个场景中识别各种尺寸特征的能力,直接影响了系统在处理具有不同空间特征的场景中的多功能性;关键点选择性阈值(ST),确保了不同且可靠的关键点匹配跨图像,关键是处理反射表面或不一致的纹理通过促进均匀的特征分布。

(2)特征提取器选择(α):一旦为每个特征提取器 α i \alpha_i αi获得了 θ ′ \theta^′ θ,并给定了一组符号指标 M = m 1 , m 2 , … , m p M=m_1,m_2,…,m_p M=m1,m2,,mp,其中每个指标 x ∈ { 1 , 2 , … , p } x \in \{1,2,\ldots,p\} x{1,2,,p}的权重是动态调整的 p x = h x ( E ) p_x=h_x(E) px=hx(E) h x ( E ) h_x(E) hx(E)是一个基于环境条件 E E E计算第 x t h x^{th} xth个指标权重的函数。评估每个特征提取器 α i \alpha_i αi的检测特征质量(其参数已优化为 Θ ′ \Theta^′ Θ)可用以下公式:

F metrics ( α i ∣ Θ i ′ , E ) = ∑ x = 1 p ρ x ⋅ m x ( α i ′ ) = ∑ x = 1 p h x ( E ) ⋅ m x ( α i ′ ) F_\text{metrics}(\alpha_i|\Theta_i',E)=\sum_{x=1}^p\rho_x\cdot m_x(\alpha_i')=\sum_{x=1}^ph_x(E)\cdot m_x(\alpha_i') Fmetrics(αiΘi,E)=x=1pρxmx(αi)=x=1phx(E)mx(αi)

其中特征质量指标M强调特征提取过程中固有的指标,确保神经符号优化可以直接影响它们,而不依赖于下游SLAM组件的数据。M具体包括如下几个部分:

1.纹理度( m 1 = ∑ ( I ( a , b ) − I ˉ ) 2 m_1=\sqrt{\sum(I(a,b)-\bar{I})^2} m1=(I(a,b)Iˉ)2 ): 将图像内的纹理方差进行积分,其中 I ( a , b ) I(a, b) I(a,b)为像素强度, I ˉ \bar{I} Iˉ为平均强度;

2.差异度( m 2   =   ∑ ∣ I f e a t u r e   −   I s u r r o u n d i n g ∣ m_{2}~=~\sum|I_{\mathrm{feature}}~-~I_{\mathrm{surrounding}}| m2 = Ifeature  Isurrounding): 衡量特征与周围环境的独特性;

3.运动捕捉( m 3 = ∥ a t + 1 − a t ∥ m_3 = \|\mathbf{a}_{t+1}-\mathbf{a}_t\| m3=at+1at): 量化帧之间的特征移动;

4.稳定性( m 4 = N u m b e r   o f   s t a b l e   f e a t u r e s T o t a l   n u m b e r   o f   f e a t u r e s m_{4} = \frac{\mathrm{Number~of~stable~features}}{\mathrm{Total~number~of~features}} m4=Total number of featuresNumber of stable features): 评估随时间变化的检测一致性;

5.空间密度( m 5 = N u m b e r   o f   F e a t u r e s A r e a   o f   R e g i o n m_5 = \frac{\mathrm{Number~of~Features}}{\mathrm{Area~of~Region}} m5=Area of RegionNumber of Features): 检查特征分布的均匀性;

6.特殊性( m 6 = 1 ∑ s i m i l a r i t y ( f e a t u r e ,   o t h e r   f e a t u r e s ) m_{6} = \frac{1}{\sum\mathrm{similarity(feature,~other~features)}} m6=similarity(feature, other features)1): 衡量特征的独特性;

7.再现性( m 7 = N u m b e r   o f   R e − d e t e c t e d   F e a t u r e s T o t a l   N u m b e r   o f   F e a t u r e s m_{7} = \frac{\mathrm{Number~of~Re-detected~Features}}{\mathrm{Total~Number~of~Features}} m7=Total Number of FeaturesNumber of Redetected Features): 度量一致性特征检测。

最终选择能够最大化 F m e t r i c s F_{metrics} Fmetrics的特征提取器 α ∗ \alpha^∗ α

α ∗ = arg ⁡ max ⁡ α i ∈ { α 1 , α 2 , . . . , α y } F metrics ( α i ∣ Θ i ′ , E ) \alpha^*=\arg\max_{\alpha_i\in\{\alpha_1,\alpha_2,...,\alpha_y\}}F_{\text{metrics}}(\alpha_i|\Theta_i',E) α=argαi{α1,α2,...,αy}maxFmetrics(αiΘi,E)

这确保了特征提取器的选择和性能评估能够适应环境上下文。

2.3 合成训练

nFEX首先使用神经网络优化特征提取器参数(Θ),以概括提取器在不同上下文中的性能。为了处理现实场景中固有的不确定性和部分非结构化信息,采用平滑解释技术进行细微适应。然后针对优化的Θ,程序进行评估,以做出关于给定上下文最合适的α及其配置的明智决策。这种选择过程类似于神经架构搜索,其本质就是评估各种架构在当前情况下的所选择的特征提取器的上下文性能。最后再采用与此阶段相结合的反馈机制,允许基于下游性能(例如姿态)的持续程序优化。这种迭代过程确保了项目保持最佳配置,以适应新的挑战和环境。

在适应度函数训练上,本研究使用两步神经网络优化特征提取参数 F ( Θ ′ ∣ E ) F(\Theta^{\prime}|E) F(ΘE)和特征提取器选择 α ∗ \alpha^∗ α F ( Θ ′ ∣ E ) F(\Theta^{\prime}|E) F(ΘE)训练采用多层感知器(MLP),具有三个完全连接的层和ReLU激活,以防止姿势误差的均方误差(MSE)损失。 α ∗ \alpha^∗ α训练采用混合神经网络通过处理数值数据和图像来评估特征提取器的有效性。该阶段使用卷积神经网络(CNN)层进行图像分析,并将其与完全连接的层集成在一起进行数值分析,评估特征质量。该网络基于特征质量分数的交叉熵最小化损失函数。在两个模型中都应用了特征缩放,使用标准缩放器对特征进行归一化,通过确保它们的均值为零,标准差为1,使它们更有利于神经网络训练。

2.4 推理使用

在推理过程中,上述合成程序在实时场景中动态应用优化的 θ \theta θ α \alpha α。它可以动态地适应不断变化的环境,分析场景数据以进行准确的特征提取并集成到SLAM框架中。该阶段强调实时适应和从新数据中持续学习,从而实现持续的系统性能改进,并提高对不同场景的适应性。

3. 实验

本研究将nFEX与ORBSLAM3进行了相关的性能测试,使用绝对轨迹误差(ATE)进行性能比较。实验中使用ORB及SIFT的默认参数(参数来自OpenCV)和动态优化参数(Θ)作为基线,在序列EuroC-MH 02, KITTI-00和HolosetSuburb-seq-1上训练模型,在NVIDIA GeForce RTX 2070 GPU上运行了所有测试,批处理大小为8,使用Adam优化器,学习率为 1 e − 4 1e^{−4} 1e4

3.1 端到端性能

表1展示了nFEX方法以及ORB和SIFT特征提取器使用默认和动态优化参数在三个数据集序列的平均ATE。可以看到动态优化显著提高了ORB的性能,特别是在KITTI序列中,强调了参数调优的重要性。然而,面对KITTI序列中SIFT在其默认参数下出现失败的情况,动态优化也起到了显著改进。在具有挑战性的EuRoC室内场景和HoloSet混合环境中,nFEX也达到了最低的平均ATE,突出了其在复杂环境中的有效性。即使经过优化,SIFT在KITTI默认配置中的失败及其滞后性能也凸显了nFEX在实现鲁棒特征提取和计算效率之间的平衡方面的优势。总的来说,nFEX通过适应操作环境、选择最佳特征提取器和动态优化参数,显示了其显著增强SLAM可靠性的潜力。

在这里插入图片描述
表1|不同特征提取器平均ATE(单位:m)的性能比较(10次运行的平均值)©️【深蓝AI】编译

3.2 泛化性能

表2突出了nFEX的泛化能力。在第一个案例MH01 - MH01中,对前70%的序列进行训练,对剩余30%的序列进行测试,平均ATE为0.792m,证明了nFEX在熟悉环境下的有效性。在MH01(简单序列)上训练后,在MH05(困难序列)上进行测试时,ATE增加到1.329m,表明在新的环境和运动动态下,在同一数据集中对不同序列的合理泛化。当从MH01上的训练过渡到KITTI-6上的测试时ATE跳跃到2.476米,但仍在合理范围内,反映了nFEX适应完全不同的环境条件的挑战,例如室外与室内设置差异以及无人机与汽车运动载体差异。上述这些结果突显了nFEX跨环境泛化的潜力。

在这里插入图片描述
表2|nFEX的泛化性能展示(将第一个或部分序列上训练所得用在第二个序列上进行测试)©️【深蓝AI】编译

3.3 消融实验

(1)参数优化的影响:

在图5中,展示了各个参数(NF、SF、NL、ST)对ORB特征提取器ATE的影响。在测试过程中,固定了一个参数,并保持其余参数的动态调整,而具有所有动态参数或所有默认参数的ORB分别用黑线和红线突出显示。这种比较显示了动态参数配置的潜力,特别是在复杂多变的环境中。与默认设置相比,nFEX和动态优化的ORB显著增加了特征匹配准确性(如表3所示)。nFEX明显优于默认ORB (ORB- def),展示了其自适应优化特征提取的能力,以获得更高的匹配质量。

在这里插入图片描述
图5|动态参数消融实验结果©️【深蓝AI】编译

在这里插入图片描述
表3|MH01序列不同特征提取器的平均特征匹配数©️【深蓝AI】编译

(2)特征提取器选择的影响:

在表4中展示了nFEX对MH01序列的特征提取器选择能力,它在ORB和SIFT提取器之间动态选择。选择过程产生了不同的分布:ORB-Dyn在3638帧中被选择了1366帧,显示了它在某些条件下的偏好,其次是SIFT-Dyn的1124帧。ORB-Def和SIFT- def(带有默认参数的SIFT)的选择频率较低,表明动态参数优化通常优于默认设置。

在这里插入图片描述
表4|nFEX对MH01序列内不同帧选择不同的特征提取器©️【深蓝AI】编译

3.4 运行效率

将nFEX定位为提高SLAM性能的可行解决方案,处理速度是一大考量因素。在表5中,展示了nFEX在10次运行中的平均计算效率。参数和特征提取器的选择执行迅速,确保快速适应,112毫秒的帧处理仍然在实时应用的可接受范围内。

在这里插入图片描述
表5|nFEX中任务的定时©️【深蓝AI】编译

4. 结论

精准的自适应跟踪是实现自主智能体在动态环境中安全鲁棒运行的关键挑战。本研究所提方法利用符号推理和数据驱动学习的优势,根据遇到的环境动态选择和配置最合适的特征提取器。与传统方法相比,nFEX的动态精准性在不同领域的三个代表性基准数据集上性能显著提高。虽然该研究的重点是自适应SLAM特征提取,但也为SLAM框架中的其他模块融入神经符号程序提供了坚实基础。

编译|唐僧洗头用飘柔

审核|Los

移步公众号【深蓝AI】,第一时间获取自动驾驶、人工智能与机器人行业最新最前沿论文和科技动态👇
深蓝AI·赋能AI+智驾+机器人

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

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

相关文章

Mybatis进阶提升-(一)Mybatis入门

前言 Mybatis是Java 项目开发使用率非常高的一款持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO&#xff08…

python+selenium+unittest自动化测试框架

前言 关于自动化测试的介绍,网上已有很多资料,这里不再赘述,UI自动化测试是自动化测试的一种,也是测试金字塔最上面的一层,selenium是应用于web的自动化测试工具,支持多平台、多浏览器、多语言来实现自动化…

【实战】SpringBoot整合ffmpeg实现动态拉流转推

SpringBoot整合ffmpeg实现动态拉流转推 在最近的开发中,遇到一个 rtsp 协议的视频流,前端vue并不能直接播放,因此需要对流进行处理。在网上查阅后,ffmpeg和webrtc是最多的解决方案,但是使用webrtc的时候没成功&#x…

交通 | 不确定条件下旅行者路径选择的K阶均值偏差模型

摘要 现实世界中的交通网络通常具有随机特性,旅行时间可靠性自然成为影响旅行者路线选择的关键因素。在这种情况下,仅凭平均路径旅行时间可能无法充分代表路径对旅行者的吸引力,本研究引入了 k k k 阶均值偏差模型,用于优化大型…

紫辉创投开启Destiny of Gods首轮投资,伯乐与千里马的故事仍在继续

近日,上海紫辉创业投资有限公司(以下简称“紫辉创投”)宣布开启GameFi链游聚合平台Destiny of Gods首轮投资500,000美金,并与其达成全面战略及业务层合作,双方将协同布局链上生态,共同推动链游行业健康发展…

研究人员可以采用什么策略来批判性地评估和综合其领域的不同文献

VersaBot Literature Review 一键生成文献综述 研究人员可以采用各种策略来批判性地评估和综合其领域内的不同文献; 评估策略 审查方法论: 分析每个来源中使用的研究设计、样本选择、数据收集和分析方法。考虑每种方法的潜在偏见、局限性和优势。评估…

宝通科技携手昇腾技术首席陈仲铭,共探工业大模型与生态发展

在人工智能技术的浪潮中,宝通科技始终致力于探索和应用前沿技术,推动工业智能化的发展。7月26日,宝通科技特邀昇腾生态技术首席陈仲铭博士,为宝通员工带来了一场主题为《工业大模型与业界发展生态》的技术分享会。本次分享会不仅为…

从CNN到Transformer:基于PyTorch的遥感影像、无人机影像的地物分类、目标检测、语义分割和点云分类教程

原文链接:从CNN到Transformer:基于PyTorch的遥感影像、无人机影像的地物分类、目标检测、语义分割和点云分类教程https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247610610&idx5&snf973c3e430c89d6123ca8f4892086c55&chksmfa8271…

nameparser,一个强大的 Python 库!

更多资料获取 📚 个人网站:ipengtao.com 大家好,今天为大家分享一个强大的 Python 库 - nameparser。 Github地址:https://github.com/derek73/python-nameparser 在处理用户数据时,尤其是涉及到用户姓名的场景下&am…

最佳需求管理工具:2024年10大主流工具

本文将分享2024年排名靠前的10款需求管理工具:PingCode、Worktile、Teambition、TAPD、禅道、明道云、CODING、Jama Connect、Jira、Codebeamer。 在选择需求管理工具时,你是否感到不知从何下手?面对市场上数不清的选项,确定哪一款…

远程办公访问优化指南:如何打造高效企业组网

当今数字化时代,远程办公已成为许多企业不可或缺的工作模式。面对地理位置分散、网络环境复杂等挑战,如何打造高效、稳定、安全的企业组网,成为企业IT部门亟需解决的问题。本文将为您提供一份远程办公访问优化指南,帮助您构建高效…

坐牢二十天 20240731(IO)

一.作业 1> 使用父子进程完成两个文件的拷贝 父进程拷贝前一半内容&#xff0c;子进程拷贝后一半内容 子进程结束后退出&#xff0c;父进程回收子进程的资源 #include <myhead.h> //定义求源文件长度的函数 int lenmain(const char *src,const char *dst) {int fd…

各类基于虚拟主机的应用及上线商城系统

一、基于域名访问 查看没有空行&#xff0c;没有注释的文件内容 [rootweb ~]# grep -Ev "#|^$" /usr/local/nginx/conf/nginx.conf [rootweb ~]# cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak [rootweb ~]# grep -Ev "#|^$"…

temu插件丨temu插件下载免费体验-特喵数据

在当今这个日新月异的电商时代&#xff0c;每一个细微的洞察都可能是商家决胜千里的关键。随着跨境电商平台的蓬勃兴起&#xff0c;Temu作为一股不可忽视的新兴力量&#xff0c;正以其独特的模式和强大的数据分析能力&#xff0c;引领着行业的新风尚。接下来看看让您的Temu店铺…

解决TensorFlow非法指令 (核心已转储)问题

背景 测试环境使用TensorFlow 1.14.0运行实体抽取和事项要素项目正常&#xff0c;打包项目和miniconda3环境进行部署&#xff0c;进行predict时报错。然后使用dockerfile生成环境镜像进行部署&#xff0c;发现仍报错。最后查资料解决该问题。 Using TensorFlow backend. 非法指…

《CSS创意项目实战指南》:点亮网页,从实战中掌握CSS的无限创意

CSS创意项目实战指南 在数字时代&#xff0c;网页不仅是信息的载体&#xff0c;更是艺术与技术的融合体。通过CSS&#xff0c;你可以将平凡的网页转变为引人入胜的视觉盛宴&#xff0c;让用户体验跃升至全新高度。《CSS创意项目实战指南》正是这样一本引领你探索CSS无限可能的…

【全志H616开发】SQLite打开/创建数据库的C接口

文章目录 打开/创建数据库的C接口函数介绍sqlite3_open函数sqlite3_close函数sqlite3_errmsg函数 代码示例 打开/创建数据库的C接口函数介绍 sqlite3_open函数 sqlite3_open 是 SQLite 数据库库中的一个函数&#xff0c;用于打开一个新的数据库连接。如果指定的数据库文件不存…

大厂linux面试题攻略一之网络基础

一、网络基础类面试题 1.简述ISO/OSI七层模型&#xff08;理论模型&#xff09;的分层与作用 ISO&#xff1a;国际标准化组织 OSI&#xff1a;开放系统互联 第7层应用层&#xff1a;为用户提供服务&#xff0c;给用户一个操作界面 第6层表示层&#xff1a;数据提供表示、加密…

从零入门 AI for Science(AI+药物) #Datawhale AI 夏令营 Task2

书接上回: 从零入门 AI for Science&#xff08;AI药物) #Datawhale AI 夏令营 Task2 前面了解了赛题&#xff0c;这个主要讲baseline代码&#xff0c;入门RNN和特征工程 解读官方baseline set_random_seed 统一设置随机种子 def set_random_seed(seed):"""设…

一万亿token!34亿张图像,扩大10倍!史上最大开源多模态数据集MINT-1T发布!

众所周知&#xff0c;现在训练AI最需要的是什么&#xff1f; 数据&#xff0c;数据&#xff0c;还是数据。——毕竟只有让AI学好了&#xff0c;AI才能好好地回答你的问题&#xff0c;否则就会答非所问。 但是喂给AI的数据&#xff0c;现在和GPU一样&#xff0c;成了紧缺资源。…