数学を使わずに円の面積を計算する方法

数学を使わずに円の面積を計算する方法

機械学習の手法を使用して円の面積を計算します。

円の面積はいくらかと誰かに尋ねると、r²だと答えるでしょう。しかし、なぜかと尋ねても、おそらく彼らは知らないでしょう。

これは、円の面積の公式の証明が、ほとんどの場合、直感的でなかったり、満足のいくものでなかったり、積分などの高度な数学的概念で満たされていたりするためです。

統計学習と機械学習の基本原理を活用して、モンテカルロ シミュレーションと多項式/二次回帰を使用して、円の面積の公式を見つけるための計算ベースのアプローチを作成できます。

数学的な演算を一切使用せずに円の面積を求めるために、モンテカルロ法を使用しました。モンテカルロ法は、不規則な形状の領域の探索から株式市場の状況の予測まで、あらゆる場面で使用されています。この方法の中心的な考え方は、ランダム性を導入し、それに対するシステムのフィードバックを測定することです。これにより、システムの原理を理解していなくても効果的な情報を得ることができます。

モンテカルロを使用して円の面積を概算する場合、最初にランダムな座標点 (x1、x2) をいくつか生成します。ここで、両方向の座標は、負の半径値から正の半径値までの均一分布から描画されます。私たちは円の中にそのような座標点を 250,000 個配置しました。中心極限定理 (または大数の法則) が示すように、研究で使用する真のランダム サンプル ポイントが多ければ多いほど、結果はより正確になります。

円内の各点に対して、円内に含まれる点の数を数える変数を導入できます。すべてのランダムなドットが落とされた後、円内のドットの数をドットの総数(この研究では 250,000 個)で割った値が、正方形内の円の面積の割合を表します。正方形の辺の長さは円の半径の 2 倍なので、正方形の面積は 4r² です。ここで、r は円の半径です。先ほど求めた分数に 4r² を掛けると、円の面積が得られます。モンテカルロ法を使用すると、数式を必要とせずに円の実際の面積に非常に近づくことができます。

アイデアはシンプルで、結果もほぼ正確です。

半径 r が与えられれば、任意の円の面積を求めることができますが、この時点ではまだ円の公式を導き出せていません。式を見つけるには、半径を必要とし、面積を出力しようとするモデリング用の二次方程式を作成する必要があります。方程式を正しく当てはめるには、各半径のモンテカルロ近似領域のデータを収集する必要があります。

  1. numpyをnpとしてインポートする
  2. from tqdm import tqdm #プログレスバーインジケーターのみ
  3.  
  4. #近似ごとに生成するランダム点の数
  5. ポイント数= 250_000  
  6.  
  7. #半径とそれに対応する面積の近似値を格納するリスト
  8. 半径= []
  9. エリア= []
  10.  
  11. #1から100までの500個の等間隔の値のそれぞれについて:
  12. tqdm(np.linspace(1,100,500))の半径の場合:
  13.  
  14. #円内の点の数のカウンター
  15. 円内= 0  
  16.  
  17. i が範囲内(num_points)の場合:
  18.  
  19. #接線ボックスで囲まれた一様分布からx座標とy座標を生成する
  20. xcoor = np.random.uniform (-半径,半径)
  21. ycoor = np .random.uniform(-半径,半径)
  22.  
  23. #点が円の内側にある場合は、in_circleに1を加算します
  24. xcoor**2 + ycoor**2 <の場合 半径**2:
  25. 円内 += 1
  26.  
  27. #円の内側にある点の割合を取得します
  28. area_frac =円内/ ポイント数
  29.  
  30. #おおよその面積と半径を追加します
  31. エリア.append(area_frac*(4*(半径**2)))
  32. 半径.append(半径)

次のステップは、データ y = ax² に適合する二次モデル (回帰モデル) を記述することです。プロットすることで、データが 3 次または 4 次多項式ではなく、2 次項であることを確認できます。本質的には、これは基本的な機械学習の問題なので、いくつかの基本的な用語を確認しましょう。

  • モデル パラメーター: モデルは自動的に調整され、最適なパラメーター (この場合は a) が検出されます。 n 個のパラメータがある場合、モデルは n 次元であると言われます。私たちが使用する最も基本的なモデルは 1 次元ですが、画像を分類するディープ ニューラル ネットワークは数百万の次元を持つことができます。
  • 損失関数: 損失関数は、現在のシミュレーション状況を評価し、最小のエラーを取得できるパラメータのセットを見つけて、損失関数を最小化しようとします。たとえば、パラメータ値 j の損失関数値が 3 で、パラメータ値 k の損失関数値が 2 の場合、パラメータ値 k を選択する必要があります。
  • 平均絶対誤差 (MAE): 使いやすく理解しやすいため、損失関数/誤差メトリックを使用します。現在のパラメータ (a) とモデル予測を前提として、平均絶対誤差は予測値と実際の値の間の差が平均してどのくらい大きいかを示します。MAE が低いほど、モデルがデータに適合していることを意味します。
  • 学習率: パラメータを最適化するために、モデルは特定の「方向」にパラメータを徐々に調整します。現在のモデルは 1 つのパラメータ (a) のみを最適化しているため、1 次元平面でパラメータ値を増やすか減らすかを決定するだけで済みます (変更すると損失関数は低くなります)。調整プロセス中にモデルが移動する量を学習率と呼びます。学習率が高いということは、モデルが短期間でより良いパラメータのセットを取得する可能性が高いことを意味しますが、その精度は保証されません。学習率が低いと、非常に優れたパラメータを取得でき、精度が高くなります。唯一の欠点は、トレーニングに多くの時間が必要になることです。

これらの変数があれば、このデータに適合する非常に基本的なプログラムを構築できます。

  • パラメータcoef(a)を0.1に初期化します。
  • トレーニング サイクルの各反復について:
  • coef には、coef+lr と coef-lr の 2 つのパスが提案されています。ここで、lr は学習率です。
  • 平均絶対誤差は、coef=coef+lr を使用するモデルと coef=coef-lr を使用するモデルで評価されました。

coef を、coef+lr と coef-lr の平均絶対誤差値の小さい方に設定します。

平均絶対誤差を繰り返し最適化することで、モデルは最終的に「最適な」係数値に収束します (したがって、平均絶対誤差が最小化されます)。この考え方は機械学習の中核となる原則です。推論、評価、修正を繰り返すことで、コンピューターは最適なパラメータのセットを「改良」することができます。

  1. coef = 0.1 #初期係数値
  2. learning_rate = 0.00001 #モデルがどれだけ速く「学習」するか
  3. iterations = 100000 #モデルに「練習と修正」を何回実行させたいか
  4.  
  5. for i in tqdm(range(iterations)): #注意 - tqdm は単なるプログレスバーです
  6.  
  7. #係数に2つのパスを提案します:
  8. up_coef = coef + learning_rate #上に移動
  9. down_coef = coef - learning_rate #または下に移動
  10.  
  11. #パラメータup_coefとdown_coefを使用してモデルの予測を保存します
  12. アップ_予測= []
  13. ダウン予測= []
  14.  
  15. # 以前に作成したリスト radii 内の各半径値について:
  16. 半径rの場合:
  17.  
  18. #up_coef と down_coef の予測値 (a*r^2) を使用してモデルを追加します
  19. up_pred.append(up_coef*(r**2))
  20. ダウン予測.append(ダウン係数*(r**2))
  21.  
  22. #MAE を見つけます。どちらも操作しやすいように NumPy 配列に変換されます。
  23. up_coef_mae = np .abs(np.array([up_pred])-np.array([areas])).mean()
  24. 下向きの係数= np .abs(np.array([下向きの予測])-np.array([領域])).mean()
  25.  
  26. #係数を下げるとMAEが低くなる(良くなる)場合:
  27. 下向き係数<  アップ係数:  
  28.  
  29. #down_coefと同じ値に設定します
  30. 係数=下向き係数 
  31.  
  32. #それ以外の場合(係数を上に移動すると、MAE は低くなる(良くなる)か同等になります)。
  33. それ以外:
  34.  
  35. #up_coefと同じ値に設定します
  36. 係数=上方係数 

訓練された係数の値を見ると、π に等しいことがわかります。

  1. print(str(coef)[:5]) #係数の最初の4桁(小数点は文字としてカウントされます)
  2. [出力]: '3.141'

もちろん、円の面積を計算する公式は覚えやすいです:𝜋r²。微積分やその他の証明からの複雑な数学を使わずに、その公式を見つけ、モンテカルロシミュレーションと二次回帰を使用して 𝜋 の値を見つける方法を見つけることができます。この考え方を使用すると、円の面積を計算する方法を見つけることができます。もちろん、パラメータで輪郭を記述できる限り、楕円、ハート、2 次元のカメなど、あらゆる形状の面積を計算する公式を見つけることができます。

近年、コンピューターが主流となり、複雑で変化に富んだ数学の問題を解くようになりましたが、円の面積の計算は単なる一例にすぎません。もっと複雑で画期的なものがお望みなら、もちろんそれは 4 色定理です (飛び地のないすべてのマップは 4 色以上で色付けできず、隣接する 2 つの領域が同じ色になることはありません)。これはコンピュータによって証明され、数学者によって広く受け入れられた最初の結果でした。

コンピュータの助けにより、人間はこれまでは踏み込むことが不可能だった数学の極めて複雑な領域を探求することができます。

オリジナルリンク: https://medium.com/swlh/finding-the-formula-for-circle-area-without-using-any-math-898cbee70253

[この記事は51CTOコラム「Machine Heart」、WeChatパブリックアカウント「Machine Heart(id:almosthuman2014)」によるオリジナル翻訳です]

この著者の他の記事を読むにはここをクリックしてください

<<:  ジャック・マー:機械が人間に取って代わることは決してできない!それは何に代わるのでしょうか?

>>:  人工知能の3つの主要分野とその産業応用

ブログ    

推薦する

MITの新しい研究によると、機械学習ではフェイクニュースを検知できない

MITの研究者らが発表した2つの新しい論文は、現在の機械学習モデルがフェイクニュース報道を区別する能...

特定のイベントが発生した正確な時刻を特定します。 Byte&復旦大学のマルチモーダル大型モデル解釈ビデオはとても良い

Byte & 復旦大学のマルチモーダル理解モデルはこちらです:ビデオ内の特定のイベントが発生...

強力な人工知能まであとどれくらいでしょうか?まず、これらの5つの数学の問題を解くのに10年から20年かかります

[[272461]] 7月30日、成都ハイテクゾーンの景栄会で開催された2019年世界人工知能サミッ...

OpenAIの内部抗争による被害はまだまだ終わっていない

OpenAI の最近の論争を受けて、AI エンジニアや企業はその API への依存を減らしたり、完全...

人工知能はクラウドストレージとデータサービスの革新を推進する

[[358649]]従来のストレージとデータ構造が、クラウドネイティブ アプリケーションに必要な移植...

2022年に注目すべき8つのAIトレンド

1. 5G上のAI 2022年には産業用AIとAI-on-5G IoTアプリケーションが主流になるで...

李嘉誠は率直に言った。「人工知能の時代には、これらのいくつかの業界だけが大きな成功を達成するのに役立ちます。」

李嘉誠氏はこう語った。「人工知能の時代には、世界がどう変化しても、経済サイクルがどう変動しても、常に...

AIがシュレーディンガー方程式を正確かつ計算効率よく解く、Nature Chemistry誌に発表

量子力学の基本方程式の一つとして、シュレーディンガー方程式は常に幅広い注目を集めてきました。昨年、D...

アンドリュー・ン氏の新演説:AIは業界の状況を変えており、企業の障壁はアルゴリズムではなくデータである

[[204846]] 1. 人工知能の応用と価値Andrew Ng 氏は、AI は新しい電気であると...

...

2021年までに自動運転は普及するでしょうか?業界の専門家は、さらに30年かかるかもしれないと述べている

[[402242]] 7年前、グーグルの親会社アルファベットの子会社であるウェイモは、花やシャボン玉...

人工知能が再び警告を発する!研究者は懸念している:将来、研究者が全てを支配することになる

人間と超人工知能の関係の発展は、長年にわたり話題となっている。少し前に、「人工知能研究ジャーナル」で...

...