- 博客(10)
- 收藏
- 关注
原创 Vision Transformer(ViT)项目源码解析:从模型构建到训练测试全流程
使用 torchvision 的 ViT (无需 Hugging Face)# 修改分类头为 27 类# Data Transforms (使用 torchvision 推荐的 transforms)transform = weights.transforms() # 使用 ViT 官方预处理# 但 EMNIST 是灰度图,需要调整])plt.show()plt.show()# Train。
2026-08-05 15:53:05
179
原创 Geant4学习笔记(一):从零理解Geant4——为什么核探测一定离不开它?
本文介绍了Geant4蒙特卡洛模拟工具在核探测器故障诊断研究中的应用。Geant4由CERN开发,可模拟粒子在物质中的输运过程,广泛应用于高能物理、核医学等领域。作者阐述了Geant4的核心功能:通过几何建模、材料定义、放射源设置等步骤,模拟粒子与探测器的相互作用并生成能谱数据。相比真实实验,Geant4能高效模拟各种实验条件,为故障诊断提供理论数据基础。该研究旨在通过Geant4理解能谱形成机制,构建故障数据集,最终结合机器学习算法实现核探测器故障诊断与定位。文章是作者学习Geant4的首篇笔记,后续将深
2026-07-22 20:02:28
172
原创 从计算机到电子信息:研究生入门笔记(二)——统计规律与粒子和物质相互作用
上一篇文章中,我梳理了核探测器、脉冲和能谱之间的关系,也对整个研究方向有了一个初步认识。知道了核探测器是如何将核辐射转换为电信号,最终形成能谱之后,我很好奇:辐射粒子进入探测器后,到底经历了哪些物理过程,才能最终形成电信号?然后我开始学习师兄推荐的第一门专业基础课程——统计学基础与带电粒子和物质相互作用。
2026-07-22 19:44:43
198
原创 从计算机到电子信息:研究生入门笔记(一)核探测器、能谱与脉冲波形知识梳理
核探测器(Radiation Detector)就是把看不见的核辐射转换成可以测量的电信号的装置。能够探测的对象包括:α粒子、β粒子、γ射线、X射线、中子。探测器的核心作用就是:把粒子沉积的能量转换成电脉冲。老师让学习"光谱脉冲波形"时,我一开始很困惑。后来发现探测器最原始输出其实就是一个一个电脉冲。例如:某个γ光子进入探测器,探测器输出:这就是一个脉冲,如果一分钟检测到100万个γ射线,那么就会产生100万个脉冲。为什么脉冲高度不同?因为:不同γ射线沉积能量不同,
2026-07-15 01:20:11
210
原创 Python函数中列表参数修改与作用 实例分析
本文深入解析了Python函数中可变对象(如列表)作为参数的传递机制。通过三个典型面试题,揭示了关键知识点:1) 使用append或索引修改列表会直接影响原始对象;2) 函数内重新赋值(=操作)会创建新引用而不影响原列表;3) +=操作符是就地修改,会改变原始列表。总结指出,只有"="会改变引用,其他修改操作都会反映到原始对象上。这些特性对理解Python参数传递机制至关重要。
2026-04-02 13:34:19
228
原创 Linux基础命令详解:从入门到实战
本文为Linux初学者提供了软件测试场景下的常用命令指南,涵盖目录操作(cd、pwd、ls、mkdir)、文件操作(touch、rm、cp、mv、cat、more)、权限管理、查找工具(grep、find)、打包压缩(tar、gzip)以及系统管理命令。每个命令配有实用示例和详细说明,帮助读者理解命令逻辑。通过掌握这些基础命令,测试人员和运维新手能够独立完成Linux环境下的日常操作,为后续工作奠定基础。文章特别强调命令的实际应用场景,如文件搜索、权限设置和日志查看等测试常见需求。
2026-03-24 21:18:53
377
原创 DAY4:贪心算法入门训练(力扣121:买卖股票的最佳时期)
本题需要的是找到最大利润,找到最大价格max并不代表就是最大利润,因为最大价格max可能在买入日之前。贪心算法(Greedy Algorithm)是一种常见的算法设计范式,它的基本思想是:在每一步选择中,都采取当前状态下最优的选择(也就是局部最优),希望通过局部最优的选择能达到全局最优的结果。再循环结束计算的利润不是最大利润(i与j不一定就是当前能够达到最大利润的位置),需要在每次循环都计算利润,然后更新利润。:通过不断更新最大利润,我们最终能够得到从整个价格数组中得到的最大利润,即全局最优解。
2025-08-03 17:18:06
649
原创 DAY2:数组+数学力扣入门(力扣1281、1822)
不为0:使用 sign 记录元素值乘积的符号,1 为表示正,−1 表示为负,初始时 sign=1。这是因为在处理n的值时,没有对n进行更新,一直都在处理同一个数字,也就是一直在处理最后一个数字,程序永远在处理个位数字,无法跳出循环。1、m,s的值没有初始化,在 C 语言中,局部变量如果不初始化,它们的值是不确定的(随机的垃圾值)。2、z=m-s应在循环外,如果按照错误代码2的写法,把它放在循环内,那么每次循环都会计算z的值,这是没有必要的。输入:nums = [-1,-2,-3,-4,3,2,1]
2025-07-26 15:31:18
908
原创 Day 1 :数组 + 数学题型入门(力扣1523、1491)
先假设max、min初始值就是数组的第一个元素salary[0],然后设置一个for循环遍历整个数组,当有元素小于min,大于max,则更新max和min的值,直到整个数组元素遍历完,就找到了数组的max和min。平均值=sum/工资个数,此时工资个数只剩下salarysize-2;先找到0~high,0~low的奇数个数,然后相减就可以得到它们之间的奇数个数。4、计算平均值:average=(sum-max-min)/(n-2);1、遍历整个数组,找到最大值max和最小值min,同时计算总和sum;
2025-07-24 17:38:25
961
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅