- 博客(248)
- 问答 (1)
- 收藏
- 关注
原创 终端复用Tmux
摘要:在Windows cmd中使用SSH连接服务器运行代码时,常因输出窗口崩溃导致不稳定。Tmux可解决此问题,让会话持续保存在服务器端。安装Tmux后,通过tmux attach命令可恢复之前会话。常用操作包括:Ctrl+b %左右分屏、Ctrl+b "上下分屏、Ctrl+b方向键切换分屏;标签页管理(Ctrl+b c/n/p创建/切换标签页);退出方式:exit或Ctrl+b x关闭分屏,Ctrl+b &关闭整个标签页。
2026-01-15 14:06:30
107
原创 判断能控,非常生动地判断是不是能控,现代控制原理,线代控制原理,自动控制原理
摘要:控制系统的分析表明,当方程中出现u(控制输入)时,系统具有可控性。公式2右侧出现X1变量,说明系统组件之间存在关联性,X1的状态变化会影响系统行为,从而实现对系统的控制。这种变量间的相互联系为系统控制提供了可能。
2026-01-09 23:53:51
197
原创 使用pandoc将markdown转换为docx
摘要:使用Pandoc轻松实现Markdown转Word文档并保留公式。只需三步:1)官网下载安装Pandoc;2)在MD文件目录打开GitBash;3)执行命令"pandoc input.md -o output.docx --mathml"即可完美转换,公式会通过MathML保留。该方法简单高效,解决了其他工具无法转换公式的问题。
2025-12-26 14:05:55
128
原创 Git实战:如何将当前未提交的修改迁移到新分支
摘要 本文介绍了如何将当前未提交的修改迁移到新分支的Git操作流程。针对开发中常见的"在主分支进行实验性修改后想独立保存"的场景,提供了完整的解决方案。核心步骤包括:1)使用git checkout -b创建并切换新分支;2)确认修改内容自动带入新分支;3)通过git add、git commit和git push完成提交推送。该方法既能保留工作区修改,又能保持主分支清洁,适用于需要隔离特定修改的场景。
2025-12-20 21:50:48
203
原创 环境配置。
本文提供了使用conda和pip安装PyTorch 2.5.1及相关深度学习工具包的完整命令。首先创建Python 3.10环境并激活,然后安装PyTorch核心组件及CUDA 12.1支持。接着安装PyTorch Geometric图神经网络库及其依赖项,以及transformers、accelerate等常用NLP工具。文中提供了清华源和阿里云两种镜像源安装方案,包含解决SSL证书问题的配置方法。最后还补充了数据科学常用库如numpy、pandas、scikit-learn等的安装命令,以及Jupyte
2025-12-20 18:45:56
156
原创 隐藏Gemini脚本
摘要:这个油猴脚本提供了强力隐藏Gemini网站左上角Logo的解决方案。通过CSS规则隐藏带有"Gemini"字样的链接、图片和标题元素,并使用JavaScript每500毫秒检查一次页面,应对动态加载内容。脚本采用多重检测机制:包括aria-label属性匹配、href链接检测、元素位置判断和字体大小验证,确保准确识别Logo元素。设置display:none、visibility:hidden等多重隐藏属性,并提供备用选择器防止误判。
2025-12-17 17:00:37
142
原创 xrdb: Connection timed out
在XLaunch中运行xfce4和小海龟时,发现必须执行export DISPLAY=:0才能正常显示。通过将该命令添加到~/.bashrc文件并执行source ~/.bashrc,可以避免每次手动输入,实现自动设置DISPLAY环境变量。
2025-11-23 14:26:06
36
原创 WPF中CommunityToolkit自带窗体传参工具WeakReferenceMessenger
摘要:本文演示了使用WeakReferenceMessenger进行对象参数传递的方法。首先定义User数据类和继承ValueChangedMessage的LoginMessage消息类;然后通过Send方法发送包含User对象的消息;最后在接收端通过Register方法处理消息,提取并显示对象属性。实现了一个完整的消息传递流程,展示了如何在不同组件间传递复杂对象数据。
2025-10-19 16:16:40
160
原创 UV环境+UV环境中CUDA安装
UV安装有两种方法:Windows可通过PowerShell命令安装,Mac/Linux参考官方教程;或从GitHub下载并配置环境变量。Python安装按官方文档操作。CUDA安装需先创建并激活虚拟环境,再使用uvpip命令安装PyTorch相关包。详细步骤可参阅官方文档。
2025-10-08 14:35:53
631
原创 Transformer自注意力机制
该代码实现了一个简化版的Self-Attention机制,用于处理二维词向量。核心部分包括:1)初始化三个线性变换层W_q、W_k、W_v来生成查询、键和值矩阵;2)前向传播时计算查询和键的点积相似度,并进行缩放;3)使用softmax将相似度转换为注意力权重;4)最后与值矩阵相乘得到注意力得分。该实现去除了偏置项以简化计算,适用于处理二维词向量数据,展示了自注意力机制的基本原理。
2025-09-12 18:18:27
197
原创 wpf依赖注入驱动的 MVVM实现(含免费源代码demo)
Avalonia实现依赖注入绑定的简化方案:通过Microsoft.Extensions.DependencyInjection替代Prism框架功能。关键步骤包括:1)安装相关NuGet包;2)正常编写View和ViewModel;3)创建ServiceLocator类,在构造函数中注册ViewModel并构建服务容器;4)在View中通过静态资源绑定DataContext。该方法避免了Prism框架的臃肿,提供了轻量级的MVVM实现方案。完整示例代码已开源在GitHub仓库wpf_test中。
2025-09-11 10:38:47
361
原创 pytorch环境配置,亲测有效
本文介绍了PyTorch深度学习环境的搭建方法。主要内容包括:1)安装Anaconda作为Python环境管理工具;2)配置PyTorch框架(支持GPU和CPU两种版本);3)安装PyCharm和VSCode两种主流开发工具。通过详细的安装步骤指导,帮助读者快速搭建完整的PyTorch开发环境,为后续深度学习项目开发做好准备。
2025-08-28 15:07:02
377
原创 .NET/C# webapi框架下给swagger的api文档中显示注释(可下载源码)
.NET 9 中实现带注释的 Swagger API 文档 本文介绍了在 .NET 9 中如何为 Web API 添加 Swagger 文档支持: 在 Controller 中创建 Post 和 Put 方法,使用 /// 注释添加方法说明 在项目属性中启用 XML 文档生成 在 Swagger 配置中添加 IncludeXmlComments 以包含注释 最终实现效果:Swagger UI 中会显示完整的 API 方法和注释说明 这种方法可以方便地为 API 添加文档支持,提升开发体验和 API 的可读性
2025-08-11 13:53:42
335
原创 机器学习sklearn:支持向量机svm
本文演示了使用SVM分类器绘制决策边界的过程。首先通过make_blobs生成50个二分类样本数据,然后用线性核SVM训练模型。可视化部分展示了:1) 按类别着色的数据点;2) 黑色实线决策边界和虚线间隔边界;3) 用空心圆标记的关键支持向量。代码使用contour函数绘制决策面,并通过decision_function计算间隔距离,清晰地展现了SVM如何找到最优分类超平面和间隔边界。该示例直观说明了SVM通过支持向量确定决策边界的基本原理。
2025-08-03 10:26:01
311
原创 机器学习sklearn:聚类
本文介绍了无监督学习中的聚类方法及其应用。首先通过生成四簇数据集并利用KMeans算法将其聚合为三簇,展示了聚类过程和相关评估指标(轮廓系数和Calinski-Harabasz指数)。其次,详细说明了轮廓系数分析图的绘制方法,用于评估聚类效果。最后,重点演示了如何运用KMeans聚类实现图像压缩:将图像颜色从96,615种减少到64种,通过比较KMeans和随机初始化的压缩效果,验证了KMeans在颜色聚类上的优势。文章还提及了KMeans参数max_iter的作用,为聚类分析提供了实用指导。
2025-08-02 19:44:23
473
原创 机器学习sklearn:逻辑回归
本文比较了L1和L2正则化的逻辑回归模型在乳腺癌数据集上的表现。实验使用scikit-learn库,通过调整正则化参数C值(0.05到1之间),评估了两种正则化方式在训练集和测试集上的准确率变化。结果显示,L1正则化在训练集上表现更优,而L2正则化在测试集上更具优势。可视化结果表明,随着C值增加,模型复杂度提高,过拟合风险增大。该研究为逻辑回归中正则化选择提供了参考,L2正则化可能更适合提升模型泛化能力。
2025-08-02 02:10:13
195
原创 机器学习sklearn:降维
本文使用PCA对鸢尾花数据集进行降维处理。首先导入matplotlib和sklearn相关模块,加载鸢尾花数据集。原始数据为4维,通过PCA降为2维以方便计算和可视化。降维过程会丢失部分信息且不可完全逆转,但能有效消除噪声。降维结果的可读性较差,但更便于数据分析和可视化展示。降维技术在机器视觉等领域有广泛应用。
2025-08-02 01:50:03
299
原创 机器学习sklearn:过滤
本文介绍了四种特征选择方法来优化机器学习模型性能:1)方差过滤通过方差阈值删除低方差特征;2)卡方过滤结合F检验或互信息法选择与标签相关的特征;3)嵌入法利用随机森林评估特征重要性;4)包装法通过递归特征消除逐步筛选最优特征集。每种方法都提供了代码实现,并通过交叉验证评估效果,最终目的是减少计算资源消耗并提升模型表现。
2025-08-02 01:30:01
258
原创 机器学习sklearn:编码、哑变量、二值化和分段
本文介绍了四种数据预处理方法以适配机器学习模型:1)标签编码(LabelEncoder)将分类变量转为数值;2)独热编码(OneHotEncoder)处理多分类特征;3)二值化(Binarizer)按阈值离散化数值;4)分段离散(KBinsDiscretizer)将连续值分箱处理,支持序数编码和独热编码两种输出方式。这些方法能有效将不同类型的数据转换为适合算法处理的数值格式。
2025-08-01 20:54:05
295
原创 机器学习sklearn:处理缺失值
摘要:本文介绍了使用Scikit-learn的SimpleImputer处理泰坦尼克号数据缺失值的方法。首先导入数据并检查缺失情况,然后针对Age列分别演示了均值、中位数和0值填补策略,最终选择中位数填补。对于Embarked列则采用众数填补。此外还展示了使用Pandas直接填充中位数的方法。全文通过具体代码示例展示了数据预处理的关键步骤,包括数据读取、缺失值识别和三种不同的填补策略应用。文末附有完整的原始数据集供参考。
2025-08-01 20:04:29
354
原创 机器学习sklearn:随机森林的决策树
本文比较了随机森林与决策树的性能差异。通过10折交叉验证实验发现,随机森林(n_estimators=25)的平均得分显著高于单棵决策树。重点探讨了随机森林的关键参数:n_estimators(树的数量)越大效果越好但更耗资源(实验测试1-200棵树),n_jobs控制CPU核心使用,oob_score可自动划分测试集。文章还介绍了predict_proba接口可输出各类别概率。实验通过可视化展示了不同参数对模型性能的影响。
2025-08-01 16:43:18
314
原创 机器学习sklearn:泰坦尼克幸存预测(决策树、网格搜索找最佳参数)
摘要:本文展示了使用决策树分类器预测泰坦尼克号生存率的完整流程。首先对数据进行预处理,删除无关特征并处理缺失值,将分类变量转换为数值类型。然后将数据划分为训练集和测试集,建立基础决策树模型进行评估。通过可视化不同max_depth参数下的训练/测试表现,发现并非拟合度越高模型效果越好。最后采用网格搜索(GridSearchCV)寻找最优参数组合,包括splitter、criterion、max_depth等参数的最佳配置。整个流程涵盖了数据清洗、特征工程、模型训练评估和参数调优等关键步骤。
2025-07-29 21:39:16
422
原创 机器学习sklearn:决策树的参数、属性、接口
本文介绍了决策树的8个核心参数、1个属性和4个接口。8个参数包括:Criterion(分裂标准)、random_state(随机种子)、splitter(分裂策略)以及5个剪枝参数(max_depth等)。特征重要性可通过feature_importances_属性查看。4个主要接口为:fit(训练)、score(评分)、predict(预测)和apply(获取叶节点索引)。文章以葡萄酒数据集为例,展示了决策树的完整使用流程,包括参数设置、模型训练和结果预测。重点说明了各参数的作用,如criterion选择
2025-07-28 22:20:10
645
原创 机器学习sklearn:不纯度与决策树构建
决策树通过不纯度指标(信息熵、基尼系数)选择最优分割节点,降低节点样本混杂程度。完全生长的决策树易过拟合,需采用剪枝方法:预剪枝限制参数(最大深度、最小样本数等),后剪枝剪除冗余分支。剪枝能简化树结构,提升模型泛化能力,防止对训练数据过度拟合。
2025-07-28 20:07:03
488
原创 机器学习sklearn入门:归一化和标准化
本文介绍了数据预处理中的归一化和标准化方法。归一化(MinMaxScaler)将数据线性变换到指定范围(默认[0,1]),适用于限定输入范围的情况;标准化(StandardScaler)将数据转换为均值为0、方差1的分布,适用于需要正态分布的算法。两种方法都可通过scikit-learn实现,支持一步转换(fit_transform)和逆向转换(inverse_transform)。归一化适合神经网络输入和图像处理,标准化适合PCA、线性回归等算法。文章还演示了改变归一化范围和使用标准化查看统计量的具体代码
2025-07-16 22:52:55
499
原创 机器学习sklearn入门:使用泰坦尼克号数据预测生存和使用网格搜索寻找最佳参数
摘要:本文展示了使用决策树对泰坦尼克号数据进行分类预测的过程。首先通过pandas进行数据预处理,包括缺失值填补、分类变量转换等。然后比较了两种参数优化方法:1)通过for循环结合交叉验证寻找最佳树深度;2)使用GridSearchCV网格搜索同时优化多个参数(分裂方式、准则、最大深度等)。结果表明网格搜索能更高效地找到最佳参数组合。整个过程涉及数据清洗、特征工程、模型训练和参数调优等关键步骤,体现了Scikit-learn在机器学习项目中的实际应用。
2025-07-15 15:00:04
279
原创 机器学习sklearn入门:使用KNN模型分类鸢尾花和使用交叉验证进行简单调参
Scikit-learn是一个优秀的机器学习库,简化了机器学习流程,特别适合新手学习。以Iris数据集为例,使用K近邻(KNN)分类器进行训练和预测,通过train_test_split划分训练集和测试集。通过交叉验证评估模型性能,并采用网格搜索方法寻找最优的n_neighbors参数(遍历1-10值),用matplotlib可视化参数与准确率的关系。结果表明KNN模型在Iris数据集上表现良好,且参数调优能进一步提升模型准确率。
2025-07-13 15:39:52
283
原创 Python入门之——Pandas plot简单画图
摘要:本文展示了使用Python的pandas和matplotlib库进行数据可视化的基本方法。代码首先生成了包含100个随机数的Series对象并进行累加,然后创建了一个包含4列1000行随机数的DataFrame并计算累加值。通过plot()方法绘制了4列数据的趋势线图,以及使用scatter()方法绘制了A列与B列、A列与C列的散点图,并添加了颜色和标签区分。这些简单的示例演示了如何利用pandas内置的绘图功能快速实现数据可视化。
2025-07-06 22:38:34
135
原创 Python入门之——Pandas合并Concat
本文演示了使用Pandas进行DataFrame合并的几种方法:1)使用concat()函数进行纵向(axis=0)和横向(axis=1)合并;2)通过ignore_index参数重置索引;3)使用join参数控制合并方式(inner取交集);4)使用_append()方法追加数据。示例展示了如何处理不同索引和列名的DataFrame,以及合并后缺失值的填充情况。这些操作适用于数据整合与清洗场景。
2025-07-06 21:21:22
121
原创 Python入门之——Pandas处理丢失数据和导入导出
本文演示了使用Pandas处理NaN值的几种方法。首先创建了一个6行4列的DataFrame,然后通过iloc方法在第0行1列和第1行2列插入NaN值。主要展示了两种处理NaN的方式:1) 使用dropna()删除包含NaN的行(axis=0, how='any');2) 使用fillna(0)将NaN值替换为0。最后介绍了检查DataFrame中是否存在NaN的方法:df.isnull()和np.any(df.isnull())。这些方法为数据清洗提供了基础工具。
2025-07-06 18:07:19
124
原创 Python入门之——Pandas设置值
这篇文章摘要介绍了如何使用Pandas进行数据操作,主要包括: 创建DataFrame并修改特定单元格值(使用iloc和loc定位) 条件修改数据(如将A列大于4的值设为0) 添加新列(包括添加空列和带值的列) 使用numpy生成数据并重新塑形 日期索引的使用方法 这些操作展示了Pandas在数据处理中的基础应用,包括数据定位、条件筛选和列操作等功能。
2025-07-06 17:54:42
122
原创 Python入门之——Pandas选择数据
摘要:本文记录了Pandas和NumPy的基础操作学习过程。主要内容包括:创建Series和DataFrame对象,使用日期序列作为索引,通过多种方式构建表格(随机数、范围数组、字典形式),以及常用的数据操作如转置、排序、筛选等。重点演示了.loc和.iloc索引方法的使用区别,以及条件筛选数据的技巧。这些操作展示了Pandas处理结构化数据的基本能力,为后续数据分析工作打下基础。
2025-07-06 17:37:19
215
原创 Python中numpy库入门
本文展示了NumPy的基本数据处理功能,包括数组创建(np.array、np.zeros、np.empty)、数值序列生成(np.arange、np.linspace)、数组操作(reshape、数学运算)、以及常用统计方法(sum、max、min)。特别演示了矩阵乘法(np.dot)和维度运算(axis参数),适用于数据分析和科学计算场景。代码示例简洁清晰,可作为NumPy入门的快速参考。
2025-06-21 00:24:18
337
原创 Pycharm中Jupyter Notebook 插件常用快捷键
Jupyter Notebook快捷键指南 Jupyter Notebook提供了一系列高效快捷键,让数据探索更便捷:执行单元格可用Shift+Enter(执行并跳转)、Ctrl+Enter(执行不跳转)或Alt+Enter(执行并插入新单元格);单元格操作包括Esc+A/B(上下插入)、Esc+D+D(删除)、Esc+M/Y(切换Markdown/Code格式);其他功能如Esc+L可显示/隐藏行号。这些快捷键与LINQPad类似,都旨在提升交互式编程效率,特别适合需要频繁查看中间结果的场景。
2025-06-20 22:52:08
421
原创 机器学习库scikit-learn的安装
如何在Windows安装scikit-learn 通过pip在Windows安装scikit-learn的步骤: 打开命令提示符终端 输入命令:pip install scikit-learn 验证安装: 方法1:终端输入 python -c "import sklearn;print(sklearn.version)" 方法2:运行Python代码: import sklearn print("scikit-learn版本:",sklearn.version) 该安
2025-06-20 00:44:55
324
原创 Python学习小结
本文总结了Python面向对象编程的几个特点:1)不支持方法重载,但可通过args实现可变参数;2)类字段默认公共,无严格字段属性区分;3)使用def定义方法,构造方法为__init__;4)创建对象无需new关键字;5)类定义直接使用class关键字。通过Student类的示例展示了构造函数、方法定义和对象调用的语法。与C#/Java不同,Python因动态语言特性无需方法重载,可通过参数灵活处理实现类似功能。文中示例说明了如何使用args处理不同参数数量的情况。
2025-06-14 19:05:48
236
原创 .NET 多线程题目汇总
2、让两个线程A和B将自己的ID轮番写入一个文件中,每个线程重复十次写入后执行一个回调函数,说“I'm OK”1、交替输出奇数和偶数。
2025-05-07 02:15:02
391
原创 SQL Server删除
【亲测20+遍【不重装系统】将 SQL Server 卸载干净】 https://www.bilibili.com/video/BV1U142117st/?
2025-05-02 15:15:00
145
txt打不开 淘宝看了5家店都没解决
2021-07-09
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅