神经网络可以检测素数吗?


21

我不是在寻找找到素数的有效方法(这当然是一个已解决的问题)。这更多是一个“假设”问题。

因此,从理论上讲:您能否训练神经网络来预测给定数字n是合成还是素数?这样的网络将如何布局?



2
如果素数遵循某种模式,并且有人恰巧训练了一个具有足够多隐藏节点的神经网络以定义分类边界,那么我想它会起作用。但是,我们不知道该分类是否存在,即使存在,我们也必须证明边界是什么,以便证明神经网络确实找到了正确的模式。
quintumnia,2015年

Answers:


11

LászlóEgri,Thomas R. Shultz,2006年的“素数测试的组合神经网络解决方案”中介绍了通过人工网络进行素数测试的早期成功。基于知识的级联相关(KBCC)网络方法显示出最大的希望,尽管该方法的实用性通常被其他主要检测算法所掩盖,这些算法通常首先检查最低有效位,立即将搜索减少一半,然后再搜索基于其他定理和启发式,直到。但是,与KBCC进行的基于知识的学习仍在继续进行,Shultz等。2006年floor(x)

02n1n

  1. 是否可以仅存储整数范围内的质数?
  2. 可以通过学习分解和应用素数的定义来实现吗?
  3. 可以通过学习已知的算法吗?
  4. 在培训过程中能否通过开发自己的新颖算法来解决问题?

直接答案是肯定的,并且它已经按照上面的1.完成了,但是它是通过过度拟合来完成的,而不是学习素数检测方法。我们知道人脑包含一个可以完成2.,3和4.的神经网络,因此,如果将人工网络发展到人们认为可以达到的程度,那么答案是肯定的。在撰写本文时,没有反证明可以将它们排除在可能范围之外。

由于素数在离散数学中的重要性,其在密码学中的应用,尤其是在密码分析中的重要性,因此已经进行了针对素数测试的人工网络训练工作,这并不奇怪。我们可以确定数字网络素数检测在诸如以下方面的智能数字安全研究和开发中的重要性 RSA密码系统中的神经网络方法的首次研究,Gc Meletius等人的。等,2002。密码学与我们各自国家的安全之间的联系也是为什么并非该领域当前的所有研究都将公开的原因。我们这些可能有许可和风险的人只能说未分类的内容。

在民用方面,正在进行的新奇检测工作是重要的研究方向。像Markos Markou和Sameer Singh这样的公司正在从信号处理方面进行新颖性检测,对于那些了解人工网络本质上是具有多点自整定功能的数字信号处理器的人来说,显而易见的是,他们可以看到他们的工作如何直接应用于此领域。题。Markou和Singh写道:“在新颖性检测极为重要的许多应用中,包括信号处理,计算机视觉,模式识别,数据挖掘和机器人技术。”

在认知数学方面,惊奇数学的发展,例如《惊奇学习:理论与应用》(论文),Mohammadjavad Faraji,2016年,可能会进一步推动Ergi和Shultz的发展。


1

理论上,神经网络可以映射任何给定的函数(source)。

但是,如果你训练的网络与数字0N,你不能保证该网络将正确分类该范围以外的号码(n > N)。

这样的网络将是常规前馈网络(MLP),因为递归不会给给定输入的分类增加任何内容。层和节点的数量只能通过反复试验才能找到。


1
通用定理适用于紧子集上的连续函数。素数/非素数不是这种功能。
pasaba por aqui

1
@pasabaporaqui:在这种情况下,素数函数可以通过一个连续的函数来很好地近似,该函数的峰值为素数。因此,NN可能输出90%的机会获得6.93的质数-这显然是胡说八道,但是如果离散化输入和输出,则您实际上并不关心NN对非整数的预测。我认为这个答案基本上是正确的。
尼尔·斯莱特

1

我是Prairie View A&M大学的一名本科生研究员。我想我会发表评论,因为我只花了几周时间对MLPRegressor模型进行调整,以预测第n个素数。最近,它跌落到一个极低的最小值,在训练数据之外的前1000个外推产生的误差小于0.2%。即使达到300000的灌注量,也要降低约0.5%。我的模型很简单:10个隐藏层,在单个处理器上训练不到2小时。

对我来说,这是一个问题,“是否存在产生第n个质数的合理函数?” 现在,算法在计算极限n时变得非常繁琐。找出最近发现的最大素数之间的时间差。其中一些相隔数年。我知道已经证明,如果存在这样的函数,它将不会是多项式的。


欢迎来到AI.SE!请注意,答案部分只允许回答(而不是评论),因此我对您的帖子进行了一些改进,以专注于解决问题。有关我们网站的介绍,请参见游览
本ñ

嗨,科迪,不久前。但我想和您聊聊您所做的测试。您愿意就您所做的事情和您的看法进行实时聊天吗?我想看看是否有可能对此做进一步试验。
momomo

-1

是的,这是可行的,但请考虑整数分解问题是NP-something问题BQP问题

因此,除非P = NP,否则单纯基于经典计算的神经网络不可能以100%的精度找到素数。


正如问题所解释的,检查数字是否为质数不是NP问题。
pasaba por aqui
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.