最近的碎片化阅读,有两个相关联的文章让我产生了尝试用深度学习去优化素数计算这个想法。第一个是对深度学习为什么能发挥作用的一些解释,第二个是与素数计算对网络安全加密的重要性的介绍。
接下来一段时间我准备按照这样的思路去推进:
1、第一阶段:尝试训练出能判断一个数为质数的概率的神经网络(1亿以内准确率99%+):
1)学习深度学习的基本理论,并通过具体的实验来掌握相关软件工具的使用;
2)编程实现素数遍历查找的工具脚本,获得训练数据库;
3)尝试训练出可用的神经网络,对任意给定自然数(<1亿)可以判断为质数的概率。
2、第二阶段:尝试训练出一个能分解大合数的两个质数因子的神经网络
1)首先结合第一阶段工作,判断给定数是否为大合数;
2)判断大合数平方根分开的两端中,质数因子的区间命中概率(转换后的空间中,如何转换要具体去探索);
3)交互学习机制的构建。
3、第三阶段:尝试对RSA加密算法进行破解
1)学习RSA算法的具体实现,并获取彩虹表;
2)进行破解尝试;
希望能够尽快取得一些进展,个人感觉成功的可能性是大于50%的!