如何计算圆面积 圆面积的计算公式

圆面积计算公式(如何计算圆面积)
我们用机器学习来计算圆的面积 。
问任何人圆的面积是多少,他们会告诉资源网你是r,但如果你问他们为什么,他们可能不知道 。
这是因为圆的面积公式的证明在大多数情况下要么不直观,要么不令人满意,要么充满了积分等高级数学概念 。
借鉴统计学习和机器学习的核心原理,我们可以利用蒙特卡罗模拟和多项式/二次回归创建一种基于计算的方法来寻找圆的面积公式 。
我们用蒙特卡罗方法得到圆的面积,不需要任何数学运算 。从探索不规则形状的区域到预测股票市场,采用了蒙特卡罗方法 。这种方法的核心思想是引入随机性,度量来自系统的反馈,甚至在不了解系统原理的情况下获取有效信息 。
在用蒙特卡罗方法逼近圆的面积时,我们创建了一些随机坐标点(x1,x2),这两个方向的坐标是从负半径值到正半径值的均匀分布绘制的 。我们在圆里放了25万个这样的坐标点 。正如中心极限定理(或大数定律)所描述的,研究中使用的随机样本点越多,结果就越准确 。

如何计算圆面积 圆面积的计算公式

文章插图

对于圆中的每个点,我们可以引入落入圆中的点数的计数变量 。将所有随机点放入后,圆圈中的点数除以总点数(本研究中为250,000)代表正方形中圆圈面积的分数 。正方形的边长是圆半径的两倍,所以正方形的面积是4r,其中r是圆的半径 。将之前获得的分数乘以4r,得到圆的面积 。用蒙特卡罗方法,不用数学公式就能非常接近地求出圆的真实面积 。
如何计算圆面积 圆面积的计算公式

文章插图

原因很简单,结果几乎完全正确!
我们可以求出任意给定半径r的圆的面积,但此时我们还没有总结出圆的公式 。为了找到公式,我们需要创建一个用于建模的二次方程,它需要一个半径并尝试输出面积 。为了正确拟合方程,我们必须收集每个半径的蒙特卡罗近似面积的数据 。
将numpy作为np导入
从tqdm导入tqdm资源网络#只是一个进度条指示器 。
#为每个近似值生成的随机化点数
数量_点数= 250_000
#列出存储半径及其相应的面积近似值
半径= []
面积= []
#对于1到100之间的500个等距值中的每一个:
对于tqdm(np.linspace(1,100,500))中的半径:
#圆圈中点数的计数器
in_circle = 0
对于范围内的I(num _ points):
#从由切线框界定的均匀分布中生成x和y坐标
xcoor = NP . random . uniform(-半径,半径)
y cor = NP . random . uniform(-半径,半径)
#如果该点在圆内,则向in_circle添加一个
如果xcoor * * 2+ycor * * 2
in_circle += 1
#获取圆内点的分数
area_frac = in_circle/num_points
#附加近似面积和半径
areas.append(area_frac*(4*(半径**2)))
半径.追加(半径)
下一步是编写一个二次模型(回归模型)来拟合数据,y =ax 。我们可以通过作图来验证数据是二次项,而不是三阶或四阶多项式 。本质上,这是一个基本的机器学习问题,所以复习一些基本术语:
参数:模型会自动调整以找到最佳参数 。在这种情况下,参数是..如果有n个参数,这个模型就叫做n维 。我们使用的最基本的模型是一维的,而用于图像分类的深度神经网络可能有数百万个维度 。
损失函数:损失函数评估当前的仿真情况,希望找到能得到最低误差资源网络度的参数集,从而使损失函数最小 。例如,如果参数值j的损失函数值为3,参数值k的损失函数值为2,那么应该选择参数值k 。
平均误差(MAE):我们将使用损失函数/误差度量,因为它易于使用和理解 。给定模型的当前参数(a)和预测值,平均绝对误差是指预测值和真实值之间的平均差异,较低的MAE意味着模型更适合数据 。
学习率:为了优化参数,模型在特定的“方向”上逐渐调整参数 。由于我们目前的模型只优化了一个参数(a),我们只需要决定在一维平面上是增加还是减少参数值(任何改变都会产生一个更低的损失函数) 。模型在调整过程中的运动称为学习率 。更高的学习速度意味着模型可以在短时间内得到一组效果更好的参数,但其精度无法保证 。然而,较低的学习率可以获得非常好的参数,并且具有较高的精度,唯一的一点是它需要大量的训练时间 。
有了这些变量,我们可以构建一个非常基本和简单的程序来拟合这些数据:
参数coef(a)初始化为0.1 。
对于训练周期中的每次迭代:


推荐阅读