- 博客(80)
- 收藏
- 关注
原创 WSL学习(四)——开发环境验证阶段
已成功搭建Ubuntu 26.04 LTS WSL2开发环境,完成G++、CMake、Git、Boost等工具链验证。通过编译并运行Hello World程序,确认Linux→C++→CMake→编译→运行链路畅通。随后成功下载、编译并安装vSomeIP 3.7.5,配置CMake路径,验证头文件与动态库可被正确链接。最终编写最小测试程序,实现C++调用vSomeIP Runtime并创建Application,输出“vSomeIP application created successfully!”,证明
2026-09-15 21:11:18
280
原创 WSL学习(三)——搭建Linux + C++ + SOME/IP 基础开发环境
本文记录在WSL Ubuntu中搭建Linux+C++/SOME/IP开发环境的全过程。通过更新软件源、安装build-essential、CMake、Git及Boost库,完成基础工具链配置。最终验证g++、CMake、Git版本及Boost安装状态,确保环境可用,为后续SOME/IP开发奠定基础。
2026-09-15 21:09:48
187
原创 WSL学习(二)——将WSL Ubuntu 迁移到 D 盘
本文详细介绍了将WSL2中的Ubuntu系统迁移至D盘的完整步骤:通过wsl -l -v确认名称,关闭WSL,创建目标目录,导出系统为.tar文件,注销原实例,再导入至D盘指定路径。由于导入后默认用户可能为root,需修改/etc/wsl.conf设置默认用户。最后验证系统完整性,确认ext4.vhdx文件存在并作为虚拟硬盘存储所有数据。迁移完成后可删除临时.tar文件,确保系统正常运行且不误操作虚拟磁盘。
2026-09-15 21:09:07
239
原创 WSL学习——WSL 与 Ubuntu 安装配置完整指南
本文详细介绍在 Windows 上安装 WSL 与 Ubuntu 的完整流程,包括环境检查、安装命令、用户创建、密码设置、目录调整、系统更新检查,以及三种启动 WSL 的常用方法,帮助读者从零开始搭建 Linux 开发环境。
2026-09-10 23:09:42
215
原创 word中给论文图片图标添加题注和交叉引用
4、之后交叉引用,就会有每个图的图标,选择‘仅标签和编号’,插入即可。1、建立自己需要的标签:图,表,Fig.等。3、对每个图或表挨个插入题注。
2026-06-15 19:18:15
301
原创 mathtype公式和word文字高度不对齐问题解决
摘要:针对Mathtype公式与文字高度不对齐问题,可通过两个方法解决:1)调整公式格式避免杂乱显示;2)修正公式位置偏高问题。具体操作包括检查行距设置、调整公式基线对齐方式等,确保公式与文本完美对齐。(98字)
2026-01-28 18:42:55
107
原创 simulink与python联合仿真(一)安装MATLAB引擎
摘要:本文详细介绍了安装MATLAB Engine API for Python的步骤和注意事项。首先需确认Python版本兼容性(64位),然后根据MATLAB版本选择安装方式:R2023a及以上版本可直接使用pip安装,较早版本需修改setup.py中的版本号为纯数字格式。文章提供了5种安装方法(包括虚拟环境安装),并给出安装验证方法。最后演示了Python端启动MATLAB引擎的基本操作流程,包括启动引擎、调用功能及关闭引擎等核心操作。
2025-12-13 10:59:19
1268
原创 Python 版本确认方法
适用于验证 Anaconda 虚拟环境(如 env1)的 Python 版本,确保运行代码时使用指定版本(如 3.8.20)。适用于验证 MATLAB 调用的 Python 版本是否为目标版本(如 env1 的 3.8.20)。适用于排查系统中已安装的所有 Python 路径,区分 “有效解释器” 和 “占位符”。适用于通过 Anaconda 工具直接查询环境信息,无需激活环境。1、若 CMD 未识别。
2025-12-13 10:08:19
514
原创 聚类算法(五)- HDBSCAN 与DBSCAN 区别
HDBSCAN是DBSCAN的升级版,核心区别在于:1)HDBSCAN无需手动设置eps参数,改用更易调的min_cluster_size;2)通过构建密度层次树自动处理不同密度区域,而DBSCAN只能适应单一密度;3)采用互可达距离和稳定性选择机制,使聚类结果更准确稳定。实际应用中,HDBSCAN在复杂数据(密度不均/形状不规则/含噪声)上表现显著优于DBSCAN,参数调节也更简单,推荐优先使用。DBSCAN仅适合简单均匀的数据场景。
2025-11-24 16:35:18
974
原创 聚类方法(四)- HDBSCAN
HDBSCAN是一种先进的密度聚类算法,全称"Hierarchical Density-Based Spatial Clustering of Applications with Noise"。它通过智能分析数据点密度自动发现不规则形状的簇,无需预先指定簇数量,并能识别噪声点。相比DBSCAN,HDBSCAN能处理不同密度的簇,通过构建最小生成树和计算簇稳定性来优化聚类结果。使用只需设置min_cluster_size参数,适合处理未知簇数、不规则形状或含噪声的数据。
2025-11-24 16:31:08
1727
原创 聚类方法(三)- DBSCAN
DBSCAN是一种基于密度的聚类算法,能自动识别任意形状的簇和噪声点。其核心原理是通过两个参数(邻域半径eps和最小样本数min_samples)将数据点分为核心点、边界点和噪声点三类。相比K-Means,DBSCAN无需预设簇数量,对离群点更鲁棒,能处理复杂形状的数据分布,但存在对参数敏感、高维效果差等缺点。使用时可调用sklearn的DBSCAN模块,结果中-1表示噪声点。该算法特别适合处理密度不均匀的空间数据聚类问题。
2025-11-24 16:25:40
1201
原创 Ai笔记(二)-PyTorch 中各类数据类型(numpy array、list、FloatTensor、LongTensor、Tensor)的区别
PyTorch中数据类型转换的必要性:Numpy数组需转为Tensor才能用于模型输入,支持GPU加速和自动求导;FloatTensor用于浮点计算,LongTensor用于分类标签,BoolTensor用于掩码;反向转换(Tensor→numpy)则用于可视化、保存数据或传统机器学习。正确选择数据类型可避免常见报错,如CrossEntropyLoss要求LongTensor标签。这些转换确保数据适配不同场景需求,是深度学习流程中的关键环节。
2025-11-23 20:11:00
778
原创 Ai笔记(一)1×1 Conv 和线性层(nn.Linear)区别
特性1×1 ConvLinear输入格式[B, C, T][B*T, C]是否需要 reshape❌ 不需要✅ 需要是否快⭐ 更快(cuDNN 优化)较慢是否与卷积网络匹配完美需要 permute是否支持序列位移等效性✔✘性能高一般。
2025-11-23 19:57:38
510
原创 时间序列预测(十九)——卷积神经网络(CNN)在时间序列中的应用
1、优点CNN 可以有效提取局部时序特征,适合模式识别和短期依赖特征的建模。权重共享和池化操作可以减少模型参数,缓解过拟合问题。可以与其他深度学习模型(如 LSTM)结合,用于复杂时序数据的处理。2、缺点CNN 难以捕捉长时间依赖关系,适合短期或局部特征的提取。参数调优较复杂,卷积核大小、步长、池化窗口等参数需要多次尝试。对非平稳时间序列的数据敏感,通常需要在预处理阶段去除趋势和季节性。CNN 在时间序列分析中展现了强大的特征提取能力,适用于分类、预测和异常检测等任务。
2025-03-13 19:52:12
2842
原创 MathType常用快捷键
先选取要移动的公式,再用“Ctrl+箭头键”配合操作即可实现上、下、左、右的平移;先按“Ctrl+T”,再按N(n次根式)、S(求和符号)、P(乘积符号)。大写希腊字母(先按Ctrl+G,再按Shift+希腊字母英文名的首字母)小写希腊字母(先按Ctrl+G,再按相应的希腊字母英文名的首字母)这里选中文本后再使用Ctrl+B没用,得先Ctrl+B再输入文本。选中公式用鼠标左键拖到工具栏中适当位置就行,删除则右击工具图标,Ctrl+shift+空格。
2025-02-25 12:30:17
906
原创 Visio 2021 常用快捷键总结
这是一组快捷键的功能总结:用于调整文本格式的快捷键包括:将选定文本设置为下标、上标、斜体、加粗以及添加下划线。编辑操作快捷键允许用户快速删除光标前后的内容,以及通过鼠标拖拽进行复制。图形编辑快捷键提供了放大缩小视图的便捷方式,同时支持水平和垂直移动选中的对象。此外,还能调整视图以适应窗口大小。对于选中的形状,可以使用快捷键进行左右旋转、水平翻转和垂直翻转。在编辑工具之间快速切换的快捷键包括指针工具、文本添加工具、连接线添加工具和矩形添加工具。特别地,在添加矩形时,同时按下Shift键可以绘制正方
2025-01-13 19:50:03
1314
原创 时间序列预测(二十)—— 各种滤波方法对比
在数据采集过程中,由于各种因素(如电路干扰、电源噪声、电磁干扰、采样技术的限制等)的影响,原始数据中往往会掺杂一些噪声或误差。这些噪声数据可能会严重影响最终数据的准确性,从而对后续的数据分析、模型构建或决策制定产生误导。因此,为了获得更准确、更可靠的数据,需要对原始数据进行滤波处理。
2025-01-08 17:36:12
3056
1
原创 Python(四)——SVG 图坐标轴数字和其他文本设置总结
全局设置字体为 Times New Roman# 创建图表fig, ax = plt.subplots(figsize=(6, 4)) # 设置图表大小# 绘制简单的曲线ax.plot(x, y, label='曲线示例', color='blue', linewidth=2, marker='o') # 增加颜色、线宽、标记样式# 设置坐标轴标签和标题ax.set_xlabel('X 轴', fontname='SimSun', fontsize=12) # 使用宋体。
2025-01-03 16:35:15
1400
原创 Python——几行代码展示Python的强大和神奇
了解一些C++的应该知道,要想实现相同的功能可能需要手动遍历数据数组,再检查每个值是否满足条件,然后存储满足条件的索引和数据点,最后使用图形库绘制这些点,非常麻烦。下面是我整理的一部分代码,短短几行,却轻易地就将不合格的数据可视化,比起C++不知简化了多少倍,突然感觉到了Python的功强大,就想分享一下。太神奇了,这也许就是为什么Python在科学计算、数据分析、机器学习等领域如此受欢迎的原因之一。
2025-01-03 12:16:29
336
原创 在visio2021 中插入MathType公式
1、打开visio2021,之后点击“插入”-“对象”3、确定后就会弹出MathType编辑器。2、打开后,选择MathType,确定。首先要确保有着两个软件,且能用。
2024-12-07 18:30:09
5479
原创 MATLAB 中有关figure图表绘制函数设计(论文中常用)
将函数保存为一个独立的.m文件,例如% customize_plot - 自定义图表样式以满足论文要求% 输入参数:% figHandle - 图形句柄 (figure handle),指定要自定义的图形% xLabel - X轴标签 (string),如 '时间 (s)'% yLabel - Y轴标签 (string),如 '幅值 (m)'% titleText - 图表标题 (string),如 '实验结果对比'
2024-11-26 20:57:50
1877
原创 zotero安卓测试版下载和使用
到这一步,其实你是打不开文献的,因为你只进行了登录,还没配置好同步功能,所以pdf是下载不下来的(会出现小叹号报错,我这里是配置好了),接下来进行同步功能配置,但也要确保你电脑端已经配置好了webDAV同步功能,若未配置好,可参考这篇博文先将电脑端的同步功能配置好。注意:这里的密码不是网盘登录密码,而是应用密码,是下图这个,可能还要重新生成,重新生成后电脑端的也需要更改,如果报错,可以稍等一会儿,因为刚更新密码还需要一点时间。注意:我也试着安装了第二个,但到这一步就不知道怎么用了,所以后面就没再试了。
2024-11-25 10:30:47
11251
5
原创 怎么在google play上保存APK安装包
在APK下载器网站上,粘贴刚才复制的Google Play商店应用URL,然后搜索,选择相应的软件生成下载链接。在搜索栏中输入想要下载的应用名称(如zotero),找到该应用。点击生成的下载链接,将APK文件保存到电脑或设备上。这里以下载zotero为例。
2024-11-25 10:30:33
12608
原创 Python(三)——对于反斜杆(\)使用了原始字符串 r““仍会报错
在 Python 中,建议使用作为路径分隔符,尤其是跨平台开发时。但如果非要使用原始字符串 r""去搭配使用反斜杆(\)也可以。但有可能出错,其中一种情况是:路径以 \结尾且直接使用原始字符串 (r开头的字符串),这里可能会有人将错误归咎于引号,但其实无论是还是都会报错。错误的根本原因是:Python 解释器会认为最后的\" 或 \'是对双引号的转义,但实际字符串已经结束,这会导致语法错误。
2024-11-25 09:47:58
1050
原创 Python(二)——设置文件路径:反斜杠 \ 、双反斜杠 \\和正斜杠 /的区别
注意:在文件路径中直接写反斜杠,可能引发误解或错误(如。仅在需要表示换行、制表符、引号等特殊字符时使用,或者。不适合直接用于路径,需额外处理,代码可读性较差。跨平台路径分隔符,Windows 同样支持。简洁易读,兼容性强,是路径操作的最佳选择。Windows 路径(传统写法)。跨平台路径或任何文件路径操作场景。必须手动写两次反斜杠,容易出错。表示真正的反斜杠,避免被转义。或双反斜杠,否则会引发问题。转义符,用于表示特殊字符。路径中的反斜杠必须结合。会被解释为换行符)。
2024-11-25 09:45:56
6361
原创 Python(一)——双引号 (“) 和 单引号 (‘) 的区别
在 Python 中,双引号 (") 和 单引号 (') 在功能上是等效的,用来定义字符串时没有区别。可以根据个人习惯、代码风格或实际需求选择任意一种,但在某些特定场景下,它们的选择可能会影响代码的可读性或减少转义字符的使用。
2024-11-25 09:41:48
3081
原创 针对曲率中的局部抖动进行平滑
在计算曲率的过程中,采用平滑函数确实能够有效降低数据的抖动现象。然而,若对整个数据集实施平滑处理,则可能会引发数据失真的问题。为了最大程度地减少抖动并尽可能确保曲率计算的准确性,我们应当仅针对曲率中的局部抖动进行平滑处理,而非对整个数据集进行平滑。为此,可以考虑采用“自适应平滑”或“局部平滑”的方法,以精准地应对高频噪声点,从而实现更为精确和平滑的曲率计算。
2024-11-08 15:11:34
866
1
原创 Prescan——Lane Marker Sensor
车道标记传感器提供有关道路上车道线的信息。该信息作为车道线与相对于传感器的扫描线之间的交点提供。
2024-11-06 15:37:05
1352
原创 MATLAB 将fig格式另存为可编辑的eps格式,但乱码问题解决
fig格式图像正常,但通过手动导出后的eps格式图像导入到AI中会乱码,如下图所示。
2024-11-06 10:36:48
1029
原创 时间序列预测(十八)——实现配置管理和扩展命令行参数解析器
通过上述步骤,可以灵活地使用命令行参数来控制程序的行为,无需修改代码。只需在运行时指定需要的参数,程序就会根据这些参数执行相应的功能。这样可以方便地调整配置和选择操作,适应不同的需求。
2024-11-04 20:14:57
1102
原创 时间序列预测(十七)——滑动窗口的使用
滑动窗口是一种常用的技术,它通过使用固定大小的窗口来创建训练样本,以便捕捉时间序列中的模式。适用于多种时间序列模型,包括 LSTM、GRU 和其他类型的递归神经网络(RNN),因为这些模型能够处理输入的时间依赖性。注意:在使用滑动窗口生成训练样本之前,通常需要对数据进行标准化或归一化,以提高模型的收敛速度和预测准确性。输出预测结果时也要反归一化。
2024-11-04 20:14:21
10967
原创 时间序列预测(十四)——计算图追踪
计算图追踪是深度学习模型训练中的核心部分,通过自动微分和动态计算图的特性,极大地提高了模型构建和训练的灵活性和效率。
2024-10-31 15:20:30
760
原创 时间序列预测(十六)——Python项目框架总结
│├── project/ # 主要的项目代码目录(包含源代码)│ ├── __init__.py # 表示这是一个包的标识│ ├── data_processing.py # 数据处理模块(预处理、特征提取等)│ ├── model.py # LSTM模型定义和构建│ ├── train.py # 训练脚本│ ├── evaluate.py # 模型评估脚本│ └── predict.py # 预测脚本│├── data/ # 数据文件目录。
2024-10-30 13:07:45
1290
2
原创 时间序列预测(十五)——有关Python项目框架的实例(LSTM预测股票价格)分析
定义一个名为Net的类,包含了LSTM(长短期记忆)层和全连接层。这个模型通过LSTM层处理时间序列数据,捕获数据中的长期依赖关系,然后通过全连接层将LSTM的输出(形状是 [batch_size, sequence_length, hidden_size])映射到期望的输出大小(形状是[batch_size, hidden_size])。# 定义模型类'''定义包含LSTM和全连接层的PyTorch模型,用于时间序列预测。'''
2024-10-28 17:26:23
2899
原创 时间序列预测(十二)——训练模式、评估模式和预测模式的区别
训练模式:在训练模式下,模型通过不断学习训练数据集中的样本和标签来更新其权重和参数。这一阶段的目的是使模型能够准确地拟合训练数据,并尽可能提高其在未见过的数据上的泛化能力。评估模式:在评估模式下,模型使用已经训练好的权重和参数来进行预测,并评估其性能。这一阶段的目的是测试模型在未见过的数据上的表现,以验证其泛化能力和准确性。预测模式(推断模式):在预测模式下,模型使用已经训练好的权重和参数,对新的、未见过的数据进行预测或分类。这一阶段的目的是利用模型的实际应用价值,对新的输入数据产生有意义的输出。
2024-10-28 17:22:59
1026
原创 时间序列预测(十三)——增量训练(Incremental Learning)
首先,需要定义一个适合时间序列预测的模型,如 LSTM,和训练函数。# 定义简单的LSTM时间序列模型# 通用的训练函数# 保存模型该函数第一次训练模型,保存权重,并且初始只能调用一次。# 初次训练函数# 数据准备# 定义损失和优化器# 初次训练该函数加载预训练的模型权重(如果可用),并从最后保存的状态继续训练,非常适合使用新数据更新模型或继续训练。# 增量训练函数# 尝试加载已有模型try:# 数据准备# 定义损失和优化器# 增量训练。
2024-10-28 17:05:42
2617
时间序列预测(一)-线性回归(linear regression)数据集
2024-10-30
C++设计学生成绩管理系统
2024-09-08
人工智能技术选修课 课程报告及作业
2024-09-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅