AIが高度な数学の核心を突破、微分方程式と不定積分を1秒以内に解き、その性能はMatlabをはるかに上回る

AIが高度な数学の核心を突破、微分方程式と不定積分を1秒以内に解き、その性能はMatlabをはるかに上回る

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載しています。転載の際は出典元にご連絡ください。

AI(ニューラルネットワーク)は足し算や引き算のような簡単な計算すらできないことは誰もが知っています。

しかし現在、AI はすでに微積分を理解しており、皆さんのお気に入りの高度な数学にまでその爪痕を伸ばしています。

不定積分を求めるだけではありません。

常微分方程式も解くことができます。

第一レベルでも第二レベルでもどちらでも構いません。

これはFacebookが発表した新しいモデルです。有料の数学ソフトウェアであるMathematicaとMatlabの30秒を上回り、1秒で答えを出すことができます。

研究チームによれば、これはSeq2SeqTransformerを併用した結果だという。

自然言語処理 (NLP) 手法を使用して数学を理解すると、実際に効果があります。

この成果はTwitterで1,700件のいいねを獲得しました。多くの友人が次のように驚きを表明しました。

ありがとう!私の当初の想像では、これはまったく不可能でした!

さらに、このアルゴリズムはまもなくオープンソースになると言われています。

では有料ソフトウェアの場合はどうすればいいのでしょうか?

膨大なデータセットからポーズを生成する

微積分の問題を解くモデルをトレーニングするための最も重要な前提条件は、大規模なデータセットを持つことです。

積分データセット常微分方程式データセットを作成する方法は次のとおりです。

機能とその積分

まず、「関数とその微分」のようなデータのペアを作成する必要があります。チームは次の 3 つのアプローチを使用しました。

1 つ目は順方向生成 (Fwd) で、ランダム関数 (最大 n 個の演算子) を生成し、すぐに利用できるツールを使用してそれを積分します。ツールが見つけられない関数を破棄します。

2 つ目は逆生成 (Bwd) で、ランダム関数を生成し、その関数の導関数を取ることを指します。これにより、最初の方法では収集できないいくつかの関数が埋められます。これは、ツールが積分を見つけられない場合でも、導関数を確実に見つけることができるためです。

3 番目の方法では、部分積分の逆生成 (Ibp) を使用します。これまでの逆生成の問題点は、f(x)=x3sin(x)の積分をカバーできない可能性が高いことです。

F(x)=-x3cos(x)+3x2sin(x)+6xcos(x)-6sin(x)

この関数は非常に長いため、ランダム生成を行うことは困難です。

さらに、逆生成の積分では、関数の積分が関数よりも短くなることがほとんどですが、順生成の場合はその逆になります。

この問題を解決するために、チームは部分積分を使用しました。つまり、2 つのランダム関数 F と G を生成し、それぞれ導関数 f と g を計算しました。

最初の2つの方法で得られたトレーニング セットに fG が出現した場合、その積分は既知であり、Fg を見つけるために使用できます。

∫Fg=FG-∫fG

逆もまた真なりです。Fg がすでにトレーニング セットに含まれている場合は、その積分を使用して fG を見つけます。

新しい関数が統合されるたびに、それがトレーニング セットに追加されます。

fG も Fg もトレーニング セットに含まれていない場合は、新しい F と G のペアが生成されます。

この方法では、外部の統合ツールを使用せずに、 x10sin(x)などの関数を簡単に取得できます。

1階常微分方程式とその解

バイナリ関数F(x,y)から始めましょう。

F(x,y)=c という方程式があり、これを y について解くとy=f(x,c)が得られます。つまり、任意の x と c に対して次を満たすバイナリ関数 f が存在します。

x に関して導関数をとると、微分方程式が得られます。

fcはxからf(x,c)への写像を表し、これがこの微分方程式の解となります。

したがって、任意の定数 c に対して、fc は 1 次微分方程式の解になります。

fc を y に代入すると、きれいな微分方程式が得られます。

このように、「 1 次常微分方程式と解」のペアデータセットを作成する場合は、c の解を持つ f(x,c) を生成し、それが満たす微分方程式 F を見つけるだけで済みます。たとえば、次のようになります。

2階常微分方程式とその解

2 次原理は 1 次原理から拡張されます。f(x,c) が f(x,c1,c2) に変換される限り、c2 の解が存在します。

微分方程式 F は次を満たさなければなりません:

x を微分すると次のようになります。

fc1,c2はxからf(x,c1,c2)へのマッピングを表します。

この方程式が c1 に対して解を持つ場合、任意の x を満たす別の 3 値関数 G を導出できます。

x に関して微分すると次のようになります。

最後に、きれいな微分方程式を整理します。

その解はfc1,c2です。

生成プロセスについては、たとえば次のようになります。

これで、積分微分方程式を解くためのトレーニング セットが両方とも揃いました。そこで疑問になるのが、AI はどのようにしてこれらの複雑な数式を理解し、その解き方を学習できるのかということです。

自然言語としての数学

積分方程式と微分方程式はどちらも、ある表現を別の表現に変換するものと見ることができます。研究者は、これは NLP 手法を使用して解決できる機械翻訳の特殊な例であると考えています。

最初のステップは、数式をツリーの形式で表現することです。

演算子と関数は内部ノードであり、数値、定数、変数はリーフノードです。

たとえば、3x^2 + cos(2x) - 1 は次のように表すことができます。

もっと複雑な例として、次のような偏微分式を見てみましょう。

ツリー形式で表現すると次のようになります。

ツリー形式を使用すると、演算順序の曖昧さがなくなり、優先順位と結合性が考慮され、括弧が不要になります。

スペース、句読点、余分な括弧などの意味のない記号がない場合、異なる式によって異なるツリーが生成されます。式とツリーの間には 1 対 1 の対応があります。

2 番目のステップは、 seq2seq モデルを導入することです。

seq2seq モデルには 2 つの重要な特性があります。

入力シーケンスと出力シーケンスはどちらも任意の長さにすることができ、異なる長さにすることもできます。

入力シーケンス内の単語と出力シーケンス内の単語の間に 1 対 1 の対応関係がある必要はありません。

したがって、seq2seq モデルは微積分問題を解くのに非常に適しています。

seq2seq モデルを使用してツリーを生成するには、まずツリーをシーケンスにマッピングする必要があります。

プレフィックス表記法を使用して、各親ノードをその子ノードの前に記述し、左から右にリストします。

たとえば、2 + 3 * (5 + 2) はツリーとして表されます。

数列で表すと[+ 2 * 3 + 5 2]となります。

ツリーとプレフィックスシーケンスの間にも 1 対 1 のマッピングがあります。

3 番目のステップは、ランダムな式を生成することです。

トレーニング データを作成するには、ランダムな数式を生成する必要があります。前回の記事では、データセットを生成するための戦略を紹介しました。ここでは、ランダムな表現を生成するアルゴリズムに焦点を当てます。

n 個の内部ノードを使用した式の均一なサンプリングは簡単ではありません。たとえば、再帰のような方法では、幅の広いツリーよりも深いツリーが生成される傾向があり、右に偏ったツリーよりも左に偏ったツリーが生成される傾向があります。実際、同じ確率で異なるタイプのツリーを生成することは不可能です。

したがって、ランダムバイナリツリーを例にとると、具体的な方法は、空のルートノードから開始し、各ステップで空のノード内の次の内部ノードの位置を決定することです。すべての内部ノードが割り当てられるまで繰り返します。

ただし、一般に、数式ツリーは必ずしも二分木であるとは限らず、内部ノードには子ノードが 1 つだけ存在する場合もあります。この場合、ルートノードと次の内部ノードのパラメータの数の2次元確率分布(L(e,n)と表記)を考慮する必要があります。

次のステップは、ランダム ツリーをサンプリングし、可能な演算子と整数、変数、定数のリストから内部ノードとリーフ ノードをランダムに選択して、ツリーを「装飾」することです。

最後に、式の数をカウントします

前の手順から、式は実際には変数、定数、整数、および一連の演算子の有限セットで構成されていることがわかります。

したがって、問題は次のように要約できます。

  • 最大でn個の内部ノードを持つ木
  • p1 単項演算子のセット (cos、sin、exp、log など)
  • p2 二項演算子のセット (+、-、​​×、pow など)
  • L リーフ値のセット。変数 (x、y、z など)、定数 (e、π など)、整数 ({-10、...、10} など) が含まれます。

p1 = 0 の場合、式はバイナリ ツリーで表されます。

したがって、n 個の内部ノードを持つ二分木には、正確に n + 1 個のリーフ ノードが存在します。各ノードとリーフはそれぞれ異なる値 p1 と L を取ることができます。

n 個の二項演算子を持つ式の数は次のように表すことができます。

p1 > 0 の場合、式の数は次のように表されます。

リーフ ノードとバイナリ演算子の数は、問題空間のサイズに大きく影響することがわかります。

△演算子とリーフノードの数が異なる式の数

商用ソフトウェアを上回る

実験では、研究者らは与えられた問題の解決策を予測する seq2seq モデルをトレーニングしました。使用されるモデルは、8 つのアテンション ヘッド、6 つのレイヤー、512 次元の Transformer モデルです。

研究者らは、5,000 個の方程式のデータセットで微積分方程式を解くモデルの精度を評価しました。

結果は、微分方程式の場合、ビームサーチデコードによってモデルの精度が大幅に向上することを示しています。

最先端の商用科学計算ソフトウェアと比較すると、新しいモデルはより高速であるだけでなく、より正確でもあります。

500 個の方程式のテスト セットでは、最も優れた商用ソフトウェアは Mathematica でした。

たとえば、1 次微分方程式では、Mathematica は貪欲探索デコード アルゴリズム (バンチ サイズは 1) を使用する新しいモデルに匹敵しますが、新しい方法では通常 1 秒未満で方程式を解くことができますが、Mathematica ではそれよりはるかに長い時間がかかります (時間制限は 30 秒で、30 秒を超えると解がないと見なされます)。

新しい方法でサイズ 50 のビーム検索を実行すると、モデルの精度は 81.2% から 97% に向上し、Mathematica (77.2%) よりもはるかに優れています。

さらに、新しいモデルは、Mathematica や Matlab では解決できないいくつかの問題に対して効果的なソリューションを提供します。

△市販の科学計算ソフトウェアでは解けない方程式

IMOにAIを招待する

微積分を解くことができるこのAIが登場するやいなや、多くのネットユーザーの注目を集め、白熱した議論が巻き起こった。ネットユーザー絶賛:ガチョウ娘イン。

あるネットユーザーはこう言った。

この論文の非常に興味深い点は、統合よりもはるかに複雑な問題を解決する可能性があることです。

一部のネットユーザーも、この研究は非常に素晴らしいと考えており、このモデルは sympy では実現できないいくつかの機能を要約して統合できると考えています。

しかし、一部のネットユーザーは、研究者の実験設定はMathematicaと比較すると十分に厳密ではないと考えています。

デフォルトでは、Mathematica は複素数の領域で計算を実行するため、操作がより困難になります。しかし、著者は複素係数を含む式を「無効」とみなしています。ということは、Mathematica を使用するときに、実際のドメインに合わせて設定を調整したということですか?

このシステムでは解決できない問題を Mathematica が解決できるかどうか興味があります。

30 秒という時間制限は、コンピュータ代数システムにとっては少々恣意的です。

しかし、簡単に言えば、ますます知能化する AI に直面して、AI に IMO 金メダルへの挑戦を呼びかけ、挑戦状をたたきつけた人々がいるのです。

Facebook AI Researchが制作

この論文には2人の共同筆頭著者がいます。

フランス・ブレスト出身のギヨーム・ランプルは、Facebook AI Research およびピエール・マリー・キュリー大学の博士課程の学生です。

[[286083]]

彼はエコール・ポリテクニークで数学とコンピュータサイエンスの修士号を取得し、CMU で人工知能の修士号を取得しています。 2014年にFacebookでインターンシップを開始。

フランソワ・シャルトンは Facebook AI リサーチの客員起業家であり、数学と因果関係を研究しています。

[[286084]]

<<:  Reddit で話題: 言葉では言い表せない写真に透かしを追加することに特化したアプリが AI によって解読されました!

>>:  ネットワークセキュリティにおける人工知能の4つの主要な応用シナリオ

ブログ    

推薦する

ハイブリッドAIは企業がデータの価値を掘り出すための好ましい方法である

人工知能については、誰もがよくご存知だと思います。実際、人工知能には幅広い知識が含まれており、さまざ...

ビッグデータと人工知能のために生まれた新しい職業:アルゴリズム専門家

ビッグデータとは、さまざまな種類のデータから貴重な情報を迅速に取得する能力を指します。これを理解する...

人工知能開発の新たな方向性

1. 大規模収集:あらゆる方向から情報を収集するデータ収集システムは、信号、センサー、アクチュエータ...

AIが自動運転データセンターを構築する方法

人工知能 (AI) に関する議論のほとんどは、自動運転車、チャットボット、デジタルツイン、ロボット工...

最新の! 2018年中国プログラマーの給与と生活に関する調査レポート

中国インターネット情報センター(CNNIC)が発表した第41回中国インターネット発展統計報告によると...

人工知能産業は活況を呈しているが、スタートアップ企業は資金調達が難しくなっている

12月13日、人工知能(AI)スタートアップ企業へのベンチャーキャピタルの収益が鈍化している可能性が...

素晴らしい配達でした!インテルビジョン観測室は、実体経済の発展に向けた新たな道を切り開きます|インテルビジョン

5月23日、 「実体経済の新たなエンジンを動かす『中核』のダイナミックエネルギー」をテーマにしたイ...

AI専門家の李牧氏の「5年間の仕事の反省」が人気に、ネットユーザー「また感動した」

[[401713]]この記事はAI新メディアQuantum Bit(公開アカウントID:QbitA...

...

グラフのディープラーニングのための 7 つのオープンソース ライブラリ

[51CTO.com クイック翻訳]ディープラーニングの愛好家であれば、強力なディープニューラルネッ...

ビジネスオートメーション、斗山の市場成功の鍵

ますます激化する競争の中で、どのように効率的に生産するかと問われれば、答えは自動化の助けを借りること...

ボーダーライン上の質問:テクノロジー企業はAIアルゴリズムを使って従業員の採用と解雇を行っている

アルゴリズムによる採用は珍しいことではありません。膨大な履歴書の審査を自動化するために AI アルゴ...

調査によると、米国の公共部門のIT意思決定者の70%にとってAIは「ミッションクリティカル」

テキサス州に拠点を置くラックスペース テクノロジーズが実施した調査によると、公共部門の IT 意思決...

北京、宜荘市の111の道路で初の自動運転試験を開始

本日、北京市は有人自動運転試験を正式に開始した。北京経済技術開発区は40平方キロメートルのエリアを自...

第一線のSASEがエッジAIを護衛

データの共有と流通が厳格な要求になると、もともと孤立していたビジネス ネットワークは境界を打ち破り、...