- 博客(42)
- 收藏
- 关注
原创 dataframe 自己不理解的一些方法
dataframe.apply() 表示用于对。:返回值会广播回原 DataFrame 大小。:将返回的序列拆成 DataFrame 列。应用函数,每次处理一列(Series)。应用函数,每次处理一行(Series)。:传入的是 ndarray,通常效率更高。:要应用的函数,可以是自定义函数或。(默认):传入的是 Series。:额外参数传给 func。
2025-12-09 17:40:11
199
原创 正确理解类中的公共方法、内部方法和私有方法
而里面的方法(function)就是这家工厂的“机器”和“操作流程”。就像你走进了工厂的生产车间 —— 虽然门没锁,但不该随便进去。类自己在后台处理事情,比如下载模型、加载数据、初始化系统。提供对外功能,比如“提问”“预测”“保存结果”等。这就像你去银行窗口办业务,窗口是开放的,欢迎你来用。这个方法是“公开的”,别人(外部)可以放心调用。存放类的机密逻辑或不希望外部直接调用的底层实现。“内部使用的工具方法”,不建议外部随便用。就像工厂有个上锁的实验室,只有厂长有钥匙。“真正隐藏”的方法,外部几乎访问不到。
2025-11-10 14:22:24
294
原创 如何将本地项目上传至github
第一步:为本地项目生成requirements.txt 和 README.md 文件;4. 将本地仓库连接到 GitHub 远程仓库。第四步:进入代码目录下,使用git。第二步:登录github,找到。点击new ,即创建新的仓库;第三步:填写仓库名字、描述。2.添加文件到临时区。3. 进行第一次提交。
2025-10-29 17:54:00
234
原创 高频数据与低频数据合并的方式汇总
本文介绍了化工软测量项目中生产过程数据(30秒/点)与化验数据(1小时/点)的匹配方法。首先分析pd.merge()的四种合并方式(inner/outer/left/right)及其局限性,指出其无法处理时间戳非精确匹配的情况。重点推荐使用pd.merge_asof()进行最近邻匹配,详述其核心参数:on(时间列)、direction(匹配方向)、tolerance(最大时间差)等,特别适合处理时间序列的非对齐匹配问题,如选择时间上最接近的生产数据对应化验值。该方法有效解决了工业场景中不同采样频率数据的关联
2025-10-28 15:42:10
304
原创 中控TPT2非常火!尝试复现一下
中控发布的TPT2时序大模型专为流程工业设计,聚焦模拟、优化与控制等核心问题。本文以AI生产参数预测专家为例,对比分析了TPT2的技术路线:基于Transformer架构实现对话式预测方案生成。通过延迟焦化炉管温度预测案例,尝试使用LSTM小模型+DeepSeek大模型复现预测流程,但存在API封装不足、缺乏行业微调等问题。未来优化方向包括:拆解预测流程为多API、使用行业数据微调模型,以提升预测准确性和交互体验。
2025-09-22 17:24:24
562
原创 python + unicorn + xgboost + pytorch 搭建机器学习训练平台遇到的问题
本文总结了使用PyInstaller打包Python机器学习项目为exe时遇到的问题及解决方案。项目包含Python+Unicorn+XGBoost+PyTorch的后端服务,需支持本地加载和Web服务。主要问题:(1)打包体积过大(从2G缩减到800MB);(2)执行效率大幅降低(比VS Code运行慢5-6倍)。尝试了多种优化方法:创建虚拟环境精简依赖、使用Nuitka编译器、嵌入式Python方案以及Conda+MKL环境,但均未能显著改善性能问题。文章最后提出了对性能下降原因的思考。
2025-08-21 11:50:22
225
原创 使用fastapi 开发模型,用于仿真平台使用遇到的一些问题【记录】
将 fastapi 使用pyinstaller 打包成.exe 后,运行性能下降明显,会变得特别慢。
2025-08-13 17:32:44
220
原创 pyinstaller 打包成.exe 性能下降的原因[测试]
-----------------------------通过pyinstaller 打包成.exe 文件后---------------------------------------------------【测试1】最简程序启动...⏱️ 启动+计算耗时: 0.3468 ms按回车键退出...【测试1】最简程序启动...⏱️ 启动+计算耗时: 0.3754 ms按回车键退出...【测试1】最简程序启动...⏱️ 启动+计算耗时: 0.3403 ms。
2025-08-11 16:28:39
661
原创 os.path 常用的使用方法
Python文件路径操作常用方法:1)__file__获取当前文件路径;2)os.path.abspath()获取绝对路径;3)os.path.dirname()获取父目录;4)os.path.join()自动拼接路径;5)os.path.exists()检查路径是否存在;6)os.path.getctime()获取创建时间戳。典型用法包括获取当前路径(currpath)、拼接子路径(modelpath)以及路径存在性检查。这些方法能有效处理文件路径相关问题,注意os.path.join()会自动添加路径分
2025-07-17 09:55:37
204
原创 常见的文件保存与读取方式【python】
说明:w 是写入, r 是读取,但有时会看到wb ,rb。适用:任意 Python 对象(模型、类、函数等)适用:配置文件、结构化参数(更人类可读)适用:大规模数组数据,高效压缩。适用:字典、列表、嵌套结构。
2025-07-08 17:52:26
299
原创 如何轻量级将python 代码打包成.exe 文件
摘要:在混合语言开发环境中,使用PyInstaller将Python代码打包成.exe时遇到依赖问题。首先通过激活虚拟环境并添加hiddenimports解决py4j问题,随后针对XGBoost报错,参考技术博客修改spec文件仍无效,最终将虚拟环境中的xgboost文件手动复制到dist目录后成功运行。该方案解决了跨语言调用时的Python模块依赖打包难题。(149字)
2025-06-25 17:32:27
542
原创 强化学习学习笔记(一)
(1)强化学习会试错探索,它通过探索环境来获取对环境的理解。(2)强化学习智能体会从环境里面获得延迟的奖励。(3)在强化学习的训练过程中,时间非常重要。因为我们得到的是有时间关联的数据(sequential data), 而不是独立同分布的数据。在机器学习中,如果观测数据有非常强的关联,会使得训练非常不稳定。这也是为什么在监督学习中,我们希望数据尽量满足独立同分布,这样就可以消除数据之间的相关性。(4)智能体的动作会影响它随后得到的数据,这一点是非常重要的。
2025-06-18 17:57:00
762
原创 时序预测模型测试总结
公司最近需要在仿真平台上增加一些AI功能,针对于时序数据,想到的肯定是时序数据处理模型,典型的就两大类:LSTM 和 tranformer。查阅文献,找到一篇中石化安全工程研究院有限公司的文章,题目为《基于的化工过程关键工艺参数预测》,想着对该论文思路进行复现。并与lstm 做对比,看看引入CNN 、时间注意力机制后和双向LSTM 是否对模型预测精度有提升效果。1.模拟生成数据模型训练需要数据,因此,我按照文章要求,模拟生成了一组数据集(9000),74列特征,目标值是某炉温度。
2025-06-05 17:26:43
967
原创 谈一谈我对强化学习的理解
例如,在某些任务中,关键的奖励可能只在很久之后才出现,这使得算法很难确定哪些早期的动作对最终的奖励产生了影响。通过这种方式,RUDDER能够将延迟的奖励重新分配到那些关键的早期动作上,使得强化学习算法能够更有效地学习策略,尤其是在奖励稀疏或延迟的环境中。Q_laerning 算法的本质是维护一张Q_table 表,通过不断迭代,修正Q(s,a),然后根据s,推荐s 下最大的Q 对应的动作。:在新状态s'下,所有可能动作a'的最大Q值,决定了朝着奖励值最大的方向执行。:执行动作a后获得的即时奖励。
2025-05-28 17:58:01
519
原创 pytorch LSTM 结构详解
最近项目用到了LSTM ,但是对LSTM 的输入输出不是很理解,对此,我详细查找了lstm 的资料。:堆叠的 LSTM 层数,增加层数可以提升模型的表达能力。:一个全连接层,将 LSTM 的输出映射到最终的预测值。:LSTM 隐藏层的维度,决定了模型的记忆能力。:将提取的输出通过全连接层,得到最终的预测结果。分别表示初始的隐藏状态和细胞状态,形状为。:输入特征的维度,适用于单变量时间序列。:提取序列中最后一个时间步的输出。:指定输入和输出的张量形状为。,包含了每个时间步的输出。
2025-05-23 14:32:27
633
原创 本地部署dify+ragflow+deepseek ,结合小模型实现故障预测,并结合本地知识库和大模型给出维修建议
本文介绍了如何利用Ragflow和Dify构建一个基于检索增强生成(RAG)的工作流,特别适用于处理复杂文档和高精度检索的场景。Ragflow用于文档处理,而Dify则用于模型部署和agent开发,旨在降低大型语言模型(LLM)应用开发的门槛。文章详细描述了在本地部署Dify和Ragflow的步骤,并提供了一个使用Dify搭建离心泵智能诊断助手的示例。此外,文章还讨论了在不同环境下选择合适的技术栈,如ollama的轻量化特性适合资源受限的环境,而vllm则适用于需要高性能推力的生产环境。最后,文章强调了在实
2025-05-19 17:42:23
970
原创 本地电脑存在2个python 解释器,pip list 具体对应的是哪个环境下的包列表呢?
python39 -m pip list 通过指定python 版本。在vscode 中终端上,如何查看python39 的包列表。本地电脑存在2个python 解释器。
2025-05-15 16:40:44
213
原创 详细分析python 中的deque 以及和list 的用法区别
dqque :双端队列,可以快速的从另外一侧追加和推出对象,deque是一个双向链表,针对list连续的数据结构插入和删除进行优化。我现在有一个需求,要求有一个数组,长度为5 ,每次都更新插入,将旧的删除。#------------采用列表方式,先append 插入,在使用.pop(0)删除-----------------我们发现,使用deque 的方式不仅代码量减少,而且所用时间也比list的方式要高效。# 采用双向队列,采用.append()插入,会自动将最左边的的删除。
2025-05-15 14:01:04
386
原创 window 系统 使用ollama + docker + deepseek R1+ Dify 搭建本地个人助手
在项目根目录下,复制.env.example文件并重命名为.env。下载完成后,可在终端 使用 ollama --version。2. 下载 本地大模型,这里下载deepseek r1 7b。Embed模型 是文本工具向量化的核心工具。然后就可以在工作室中创建自己的应用了。,查看各个Embed 模型的排名。可在docker 配置中修改镜像源。这个时候,可能会报错,具体可参考。4.最难的就是配置docker。分别添加大模型和向量化模型,3.下载Embed模型。,选择 Window。然后·上传本地知识库。
2025-05-05 12:06:54
542
原创 流程工业先进过程控制(深入理解)
一个模型是线性的齐次性(Homogeneity)如果输入乘以一个常数,输出也乘以同样的常数。例:如果y = f(x),那么。可加性(Additivity)多个输入的总响应等于单独响应的总和。例:如果f(x₁) = y₁且f(x₂) = y₂,那么。只要不满足上述两个条件之一的模型,就是非线性模型。
2025-04-29 15:45:51
854
原创 基于启发式算法的化工稳态流程模拟参数优化(hysys-python)
假设我们基于工厂工艺开发了一套仿真模型,将仿真模型部署到服务器上,该如何实现工艺寻优呢?为此,我了解到Hysys 提供了COM 接口,因此,我想到,可以通过python 连接仿真模型,利用启发式算法,如遗传算法、粒子群等,实现稳态工艺寻优。
2025-04-18 17:22:04
1255
原创 python 添加环境变量,是在用户变量,还是系统变量添加好?
python 在下载安装之后,需要配置环境变量,每次配置,我都会看到。因此,我们优先在用户变量中进行添加路径即可。那么Path 添加在用户变量还是系统变量中?因此,我们优先在用户变量中进行添加路径即可。
2025-04-11 16:17:33
364
原创 详细解释python 安装后,环境变量设置的作用
csdn 上搜索python 安装,会出来各个安装教程等等,非常之多。基本的流程大致2步:1.从官网下载python解释器,傻瓜式一键安装(可修改安装地址)2.环境变量设置。
2025-04-11 16:05:51
762
原创 避免读取.csv 文件,格式报错的统一方法
因此为避免在读取时,报错,或者乱码,我们可以在读取文件之前,先对文件格式进行检测,然后将检测的格式带入到pd.read_csv(file,encoding = '检测的格式')这是由于我们的csv 文件格式不确定导致的,有的时候是gbk 格式,有的时候是utf-8格式,大家在使用pd.read_csv()读取csv 文件时,是否遇到过。
2025-04-01 15:48:02
349
原创 深度学习超参数优化Hyperot和NNI 对比[3]
hyperot 和NNi 对比,发现超参数优化的结果,学习率一致,但其他几个参数,均存在差异。可能和空间范围给的不够宽,有关系,但范围给大,训练时长会加大,后面有感兴趣的小伙伴可进行探究。关于 Hyperot 和 NNI 的使用,我在前面部分进行了详细介绍,包括具体的使用案例,接下来,我对这两种优化方法进行了对比。对比发现,重复性很差,因此,我增加迭代次数至100次(由于设置了早停机制,并没有运行100次,就停止了)
2025-03-26 16:56:51
253
原创 深度学习超参数优化方法汇总[2]
第一、总体介绍:查看NNI 官网第一、总体介绍:通过对NNI官网及上述资料的阅读,整理快速上手NNI 进行深度学习调参步骤:1、已经完成训练模型代码的编写model.py,即可以手动给定超参数,进行模型训练;2、下载nni库,pip install nni;3. 添加配置文件,search_space.json;4. 编写主文件 main.py。因此整体代码包括:数据集、main.py 、model.py 、search_space.json(nni 是自动生成的)
2025-03-26 15:24:03
723
原创 深度学习超参数优化方法汇总[1]
Hyperopt是一个强大的python库,用于超参数优化,由jamesbergstra开发。Hyperopt使用贝叶斯优化的形式进行参数调整,允许你为给定模型获得最佳参数。它可以在大范围内优化具有数百个参数的模型。但是有个问题,由于Hyperopt 是随机搜索,导致每次训练的结果都不一致,不稳定,大家如果有稳定的优化调参工具可评论分享出来。trials = Trials() 的作用是记录中间过程和最终结果,可使用trials.best_trial。1.定义神经网络、模型训练类。有需要数据集的,可私信我。
2025-03-25 17:19:59
556
原创 如何理解深度学习中的隐藏层个数和隐藏层尺寸
神经网络结构包括输入层、隐藏层和输出层,其中输入层大小取决于输入特征数,输出层大小由输出目标值确定,而隐藏层的个数和尺寸,如何确定?首先理解一下,隐藏层个数和尺寸,如下图所示:x,y 中间的就是隐藏层个数,而每个隐藏层的神经元数量就是隐藏层的尺寸。隐藏层个数和尺寸如果比较小,容易欠拟合,而如果过大,又会导致过拟合,因此合理使用隐藏层的个数和尺寸,是决定模型效果好坏的关键参数。注:对于非时序数据,一般2个隐藏层足够了,如果涉及CV、NLP 可能需要更多(2-10个左右)
2025-03-25 15:44:43
1704
原创 如何在anaconda 中导出和导入虚拟环境(window)
1. 在电脑开始菜单下,找到anaconda3 下的prompt ,右击以管理员身份运行;虚拟环境导出成功,且保存在当前地址下,该地址未C:\Window\systerm32\。4.输入 conda env export > myenvironment.yaml。2.使用conda env list ,查看虚拟环境;3. 激活所需要导出的虚拟环境,如 pytocch。可视化点击inport ,选择导入地址即可。二、将导出的虚拟环境导入到另一台电脑中。一、导出虚拟环境步骤。
2025-02-12 15:32:49
1848
原创 强化学习在化工装置中应用落地
因为公司项目需求,某环保公司找到我们,希望能实现蓄热式热力氧化炉节能控制,为此我们给出的方案是:蓄热式热力氧化炉动态模拟环境+强化学习训练,训练效果稳定后,在实体装置上继续训练,实现强化学习在蓄热式热力氧化炉节能控制方案。
2024-12-02 14:33:58
614
原创 Python 创建虚拟环境的三种方式
为实现项目与项目之间的环境隔离,避免库之间的版本冲突,在全局开发环境开发一片净土,用于不同的项目方式一:virtualenv步骤一:pip install virtualenv步骤二:virtualenv myenv 创建虚拟文件夹myenv步骤三:myenv\Scripts\activate 激活虚拟环境;步骤四:安装第三方库,pip install -r -requirements.text;
2024-09-06 18:06:53
4294
2
原创 常用异常检测算法汇总
孤立森林(Isolation Forest)是一种基于树结构的异常检测算法,其原理可以简述为:通过随机选择特征和随机选择分割点的方式,将数据集逐步分割成较小的子集,直到每个子集只包含一个数据点,这样就形成了许多隔离的数据点,而异常点只需要经过较少的分割就可以被隔离出来,因此它们的路径长度会比正常点短,在所有树中平均路径越短的样本、异常得分越高。自编码器,是一种无监督学习模型,本质是通过神经网络构建一个降维模型,与PCA相似,但Autoencoder在使用非线性激活函数时克服了PCA线性的限制。
2024-07-15 14:03:13
1301
原创 pyqt5 可视化 算法训练耗时长,会导致界面卡死,解决方案
注:这里有一个点,需要注意:如果信号发射的,就有整数、字符串、列表等,可以将其放到一个容器中(list/dict),统一进行发射输出,等SearchLstm() 接收之后,内部进行拆解;但是对于小白来说,尤其是通过qtdesigner 实现信号与槽的同学来说,好像还是不知道怎么去实现。因此,我讲解一下,我是如何一步一步实现的!3)最后一步,明确信号的触发机制,我们确定了信号以及信号控制的槽函数,那么什么时候发出这个消息呢,这就需要信号的触发机制,2)在主函数中,实例化类,并与主函数通讯;
2024-06-10 16:03:44
376
原创 使用regsvr32 注册dll 文件相关问题
原因在于文件路径中CPP Source 中间有空格,因此应使用。一般出现这个问题的原因在于 权限问题,使用管理员权限注册即可。开始->右击->终端管理员->双击,进入之后,输入。
2024-04-05 21:54:02
3416
1
原创 阿里云线上服务器安装虚拟环境(python)
vim ~/.bashrc后,增加 export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3。原文链接:https://blog.csdn.net/qq_51921514/article/details/129209145。2.我们可以在安装一个virtualenvwrapper工具,它可以更加方便的帮我们管理虚拟环境。1.安装virtualenv以后,已经可以创建和激活虚拟环境了,但是使用起来却不是那么的方便。workon demo # 切换到demo虚拟环境。
2023-06-04 20:04:33
607
1
原创 【rancher 拉取发布更新镜像没反应】
公司通过阿里云codeup 构建镜像推送,然后通过rancher拉取 发布,之前项目部署一直没问题,后来突然,rancher 拉取发布没反应,更新新镜像之后,仍然在旧镜像上run,如下所示。这些都做完之后,还是无反应,因此使出必杀技,重启节点 (节点就是机器),也就是进入虚拟机,之后reboot 就好了,最终通过重启节点解决了这个问题,和个人容器镜像没关系。并容器镜像服务里,创建了镜像仓库,命名空间,和代码源,对代码元进行授权。之后修改流水线yaml ,改为自己的。弄好之后就可以点击运行镜像构建了。
2023-03-23 21:33:46
1176
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅