原文:Hezaveh, Levasseur, & Marshall, 2017, Nature, Fast automated analysis of strong gravitational lenses with convolutional neural networks

源代码位于 GitHub,基于 TensorFlow


引力透镜是广义相对论预言的一种效应。有质量就有引力,引力会让光线弯曲,质量越大弯曲程度越厉害,就像一个透镜的效果。不同的质量分布对来自其后面的天体发出的光线会有不同的扭曲方式,形成不同形状、不同个数的像,那么反过来,通过对被扭曲后的图像的分析,就可以推测这些光线路过的物质的分布方式。

这个工作的主要内容,就是用近几年流行的卷积神经网络来做这种“反演”计算,号称比传统的方法快了约千万倍。


  • 之前这方面的工作主要是用神经网络来寻找引力透镜。
  • 训练了四种网络:Inception-v4, AlexNet, OverFeat, 以及他们自己设计的一种
    • 网络的最后一层给出分类,那么移除最后一层之后,剩下的最后一个全连接层的输出就可以被解读为引力透镜的参数
    • 随机初始化
  • 奇异等温椭球模型 (singular isothermal ellipsoid)
    • 五个参数
      • 爱因斯坦半径
      • 复椭率
      • 透镜中心坐标
    • 成本函数:均方差
  • 训练样本容易获得:通过模拟得到的五十万个强引力透镜系统
    • 背景源:三类
      • 来自 GalaxyZoo 机器学习挑战的真实星系图像
      • GREAT3 的真实星系图像
      • 模拟的星系图像
    • 背景源的位置:随机,但确保强引力透镜能发生
  • 随机梯度下降
    • 随机选取模拟样本
    • 添加随机生成的符合实际的观测效应,避免了过拟合
      • 点扩散函数
      • 泊松散粒噪声
      • 高斯噪声
      • 宇宙线
      • 热像素
      • 暗场
      • 随机圆形 mask
        • 移除真实数据中的瑕疵
        • 让网络对数据缺失不敏感
  • 测试样本
    • 用相同的流程生成,但使用不同的随机数种子,并且背景星系图像在训练阶段没被用过
    • 预测精度
      • 包含预测参数的 68% 的区间大小
      • 与最大似然方法的精度相当
  • 透镜星系对爱因斯坦弧的污染
    • 通过模型拟合移除
      • 有局限性,不能完全移除
    • 独立成分分析 (independent component analysis, ICA)
      • 把独立信号的加性混合分开
      • 背景和前景星系的形态是统计独立的
      • 内禀和引力红移导致的颜色差异使得不同波段的线性混合方式不同
      • 可以用来移除爱因斯坦弧上前景星系的贡献
      • 非完美 ICA
      • 应用于哈勃望远镜 SL2S 巡天透镜数据
        • 9 个最好的
        • 手工预处理:标记出亮的宇宙线
        • 与过去研究的结果吻合
  • 对比:最大似然法
    • 需要几百到几千个其它参数,描述背景源的形态
    • 复杂度高,计算慢
  • 可以修改网络来预测背景源的形态以及更复杂的密度结构
    • 在预测阶段计算量变化不大
    • 传统方法对类似的问题需要几天时间
    • 本文的方法速度快了七个数量级
  • 不经过 ICA 步骤,直接给出密度分布的参数
    • 精度降低一些
  • 这个方法只给出参数值,不能给出误差范围
    • 原则上结合别的方法可以给出误差范围
  • 读后感
    • 是否被作者用来做对比的“极慢”的传统方法 (基于 MCMC?) 给出了误差范围?
    • 按说五个参数的非线性拟合用“传统方法”不会很慢才对 (虽然不一定能得到全局最优解,但神经网络一样有局部最优的问题,并且用于解决神经网络局部最优问题的方法多半也能应用于传统方法)。
      • 神经网络的历史有几十年了,其实也很“传统”
      • 如果被拟合的非线性函数的计算本身就很慢 (比如涉及到复杂的 ray-tracing 计算),那传统方法的确会很慢
    • 神经网络的训练比较慢 (以天计),但好处是训练一次就可以一直用 (对于同类样本)
      • 预测阶段类似于查表
      • 传统方法对于新样本得重新计算
      • 如果传统方法能够从图像有意识地提取特征,并保留每次的计算结果 (神经网络相当于做了这两件事),那么之后的计算也可以重用之前的结果,提高速度