算法设计与分析课程作业仓库。当前仓库主要整理了“大作业 / 实习任务-专业领域问题”的完整提交材料,选题为:
高光谱图像分类中的动态规划波段选择
该任务面向已学过算法的同学,要求从自己的专业研究领域中选择一个可以用本学期算法思想解决的问题,并完成研究报告、算法设计、正确性证明、复杂度分析、代码实现、实验评估和 AI 大模型交互记录。
.
├── README.md
├── 大作业/
│ ├── 实习任务-专业领域问题.docx
│ └── 结果/
│ └── 任务_专业领域问题_高光谱图像分类/
│ ├── README.md
│ ├── 01_研究报告/
│ ├── 02_代码实现/
│ ├── 03_实验评估/
│ └── 04_交互记录/
├── 书/ # 本地教材资料,不提交到仓库
└── 课件/ # 本地课程课件,不提交到仓库
本次完成的是 大作业/实习任务-专业领域问题.docx 对应的专业领域问题任务,不是基础算法后四个任务。
选题将高光谱图像分类中的波段选择问题建模为动态规划问题:
- 专业背景:高光谱图像每个像元包含大量连续光谱波段,相邻波段高度相关,直接使用全部波段会带来维度高、冗余强和计算成本高等问题。
- 算法目标:从全部光谱波段中选择固定数量的代表性波段,使其类别判别力强、冗余度低。
- 算法策略:使用动态规划优化“波段判别力 - 相邻被选波段冗余惩罚”的目标函数。
- 实验验证:在可复现的合成高光谱数据上,对比 DP、贪心 mRMR、TopK 判别力、均匀间隔和随机选择等方法。
进入代码目录:
cd 大作业/结果/任务_专业领域问题_高光谱图像分类/02_代码实现安装依赖:
pip install -r requirements.txt运行单元测试:
python -m unittest discover -s tests运行实验:
python -m hsi_dp_band_selection.experiment实验结果会写入:
../03_实验评估/experiment_results.csv
在默认实验设置下,动态规划方法在较少波段数时已经取得较好的分类效果。例如:
| 选择波段数 k | DP 测试准确率 | DP 选择波段 |
|---|---|---|
| 4 | 1.000000 | 16 57 79 80 |
| 6 | 1.000000 | 20 36 48 58 79 80 |
| 8 | 1.000000 | 20 36 48 58 78 79 80 81 |
完整结果见 experiment_results.csv。
书/和课件/为本地学习资料目录,已在.gitignore中忽略,不作为作业提交内容。- 交互记录为提示词工程整理版,用于展示任务完成过程中的询问、表达见解、审辨、猜想、创新和苏格拉底式提问等交互方式。
- 代码实验使用合成高光谱数据,重点服务于算法设计、正确性证明与可复现实验展示。