用神经网络做权重优化的目标检测项目,融合了CNNDQNSVM这三块内容。说白了,就是用强化学习来教一个智能体去找图像里的目标,还挺有意思的。训练是在 Google Cloud GPU 上跑的,效果还不错,跑完能自动框出目标位置。

特征提取靠的是预训练的 CNN,像是先把图像切出几个区域,提取每一块的特征。用Deep Q Network,一步步调整边框的位置,目标就是尽少地移动几次就把对象框出来。再用一个SVM 分类器确认框出来的东西是不是目标类别。

项目结构也清晰,Matlab代码整理得还行,比较适合用来做强化学习和图像的结合实验。适合已经有点深度学习基础、又想试试强化学习落地的同学。

代码原作者是Tashrif BillahAlexander Loh,哥伦比亚大学那边搞出来的,研究味挺浓,但你要是会用也能直接上项目。不想用 Google Cloud?没事,本地有 GPU 照样能跑。

运行建议:先从数据集中抽图像和框信息,再搞特征提取,训练那部分可以用你自己的 GPU 资源。代码整体可读性还行,模块拆得清楚。

如果你想看看相关技术的其他实现,比如网络安全、入侵检测、SVM 分类,不妨瞄一眼下面这些:

,强化学习+图像这个组合,还是蛮值得一试的。如果你对 DQN 感兴趣,或者想找点可落地的目标检测练手项目,这份代码还挺适合拿来研究下的。