ニューラルネットワークで多項式の最大根を求める
チャレンジ 整数エントリを持つ3次元入力ベクトルが与えられると、ネットワークは、多項式、誤差はより厳密に小さい。(a,b,c)(a,b,c)(a,b,c)[−10,10][−10,10][-10,10]x3+ax2+bx+cx3+ax2+bx+cx^3+ax^2+bx+c0.10.10.1 許容性 私の以前のニューラルネットゴルフチャレンジの許容性の概念は少し制限的であるように思われたので、このチャレンジでは、フィードフォワードニューラルネットワークのより寛大な定義を使用しています。 ニューロンは、機能であるのベクトルで指定されるの重み、バイアスとアクティベーション関数は次のようになります。ν:Rn→Rν:Rn→R\nu\colon\mathbf{R}^n\to\mathbf{R}w∈Rnw∈Rんw\in\mathbf{R}^{n} b∈Rb∈Rb\in\mathbf{R} f:R→Rf:R→Rf\colon\mathbf{R}\to\mathbf{R} ν(x):=f(w⊤x+b),x∈Rn.ν(バツ):=f(w⊤バツ+b)、バツ∈Rん。 \nu(x) := f(w^\top x+b), \qquad x\in\mathbf{R}^n. 有するフィードフォワードニューラルネットワークの入力ノード の関数であるそれが配列から構築することができるのニューロン。各はとスカラーを出力します。出力ノードの指定されたセットが与えられた場合、ニューラルネットワークの出力はベクトルです。{1,…,n}{1、…、ん}\{1,\ldots,n\}(x1,…,xn)∈Rn(バツ1、…、バツん)∈Rん(x_1,\ldots,x_n)\in\mathbf{R}^n(νk)Nk=n+1(νk)k=ん+1N(\nu_k)_{k=n+1}^Nνk:Rk−1→Rνk:Rk−1→R\nu_k\colon\mathbf{R}^{k-1}\to\mathbf{R}(x1,…,xk−1)(x1,…,xk−1)(x_1,\ldots,x_{k-1})xkxkx_kS⊆{1,…,N}S⊆{1,…,N}S\subseteq\{1,\ldots,N\}(xk)k∈S(xk)k∈S(x_k)_{k\in S} アクティブ化関数は任意のタスクに合わせて調整できるため、この課題を面白く保つために、アクティブ化関数のクラスを制限する必要があります。以下のアクティベーション機能が許可されています。 身元。 f(t)=tf(t)=tf(t)=t ReLU。 f(t)=max(t,0)f(t)=max(t,0)f(t)=\operatorname{max}(t,0) SoftPlus。 f(t )= ln(et+1)f(t)=ln(et+1)f(t)=\ln(e^t+1) シグモイド。 f(t)=etet+1f(t)=etet+1f(t)=\frac{e^t}{e^t+1} 正弦波。 f(t)=sintf(t)=sintf(t)=\sin t 全体として、許容ニューラルネットは、入力ノード、ニューロンのシーケンス、および出力ノードによって指定されますが、各ニューロンは、重みのベクトル、バイアス、および上記のリストからのアクティブ化関数によって指定されます。たとえば、次のニューラルネットは許容されますが、この課題のパフォーマンス目標を満たしていません。 入力ノード: {1,2}{1,2}\{1,2\} ニューロン: forνk(x1,…,xk−1):=xk−2+xk−1νk(x1,…,xk−1):=xk−2+xk−1\nu_k(x_1,\ldots,x_{k-1}):=x_{k-2}+x_{k-1}k∈{3,…,10}k∈{3,…,10}k\in\{3,\ldots,10\} 出力ノード: {5,9,10}{5,9,10}\{5,9,10\} このネットワークは8つのニューロンで構成されており、それぞれにバイアスとアイデンティティのアクティブ化がありません。つまり、このネットワークは、とによって生成された一般化フィボナッチ数列を計算し、この列から5番目、9番目、10番目の数をこの順序で出力します。x1x1x_1x2x2x_2 得点 実数所与小数拡張を終了すると、聞かせて最小の非負整数であるのための、およびlet最小の非負整数であるのためのこのは整数です。その後、我々は言うある精度の。xxxp(x)p(x)p(x)ppp10−p⋅|x|<110−p⋅|x|<110^{-p}\cdot |x|<1q(x)q(x)q(x)qqq10q⋅x10q⋅x10^q \cdot xp(x)+q(x)p(x)+q(x)p(x)+q(x)xxx たとえば、の精度はが、の精度はです。x=1.001x=1.001x=1.001444x=0x=0x=0000 スコアは、ニューラルネットワークの重みとバイアスの精度の合計です。 (たとえば、上記の例のスコアは16です。) 検証 根は3次式で表現できますが、最大の根はおそらく数値的手段で最も簡単にアクセスできます。XNORの提案、@の後、私は整数のすべての選択のための最大のルートを計算し、との結果がここで見つけることができます。このテキストファイルの各行の形式はです。たとえば、最初の行は、の最大ルートが約ます。a,b,c∈[−10,10]a,b,c∈[−10,10]a,b,c\in[-10,10]xは3 - …