函数的非线性逼近(c#.net和数学)
我有一个函数的形式是函数的非线性逼近(c#.net和数学),c#,math,regression,C#,Math,Regression,我有一个函数的形式是y=a/(a-(x+b))和几个数据{x,y}。 我需要用这些数据来近似a和b,所以可能是非线性回归 我如何才能做到这一点,并可能在C#中实现它 谢谢你的回答。 巴斯蒂安非线性回归可能很困难。如果您知道如何进行线性回归,您可以将函数/数据转换为线性回归问题。在您的情况下,如果您定义一个新变量z=1/y,那么您的问题将是: 找到一条方程a+b-x=a z最适合数据集{(x0,z0=1/y0),(x1,z1=1/y1),…}非线性回归可能很困难。如果您知道如何进行线性回归,您可以
y=a/(a-(x+b))
和几个数据{x,y}
。
我需要用这些数据来近似a和b,所以可能是非线性回归
我如何才能做到这一点,并可能在C#中实现它
谢谢你的回答。
巴斯蒂安非线性回归可能很困难。如果您知道如何进行线性回归,您可以将函数/数据转换为线性回归问题。在您的情况下,如果您定义一个新变量
z=1/y
,那么您的问题将是:
找到一条方程
a+b-x=a z
最适合数据集{(x0,z0=1/y0),(x1,z1=1/y1),…}
非线性回归可能很困难。如果您知道如何进行线性回归,您可以将函数/数据转换为线性回归问题。在您的情况下,如果您定义一个新变量z=1/y
,那么您的问题将是:
找一行方程
a+b-x=Az
最适合数据集{(x0,z0=1/y0),(x1,z1=1/y1),…}
如果你不能用代数或几何方法求解这个问题,那么:要么你做O(n^2)
蛮力搜索,要么a,b
对y
和x
具有单调依赖性,那么您可以使用二进制搜索O(log^2(n))
但对于任意近似值,您可以使用我链接的重复QA中的答案(参见其中的示例)。为什么不能使用最小二乘拟合来近似函数?你需要多准确?共轭梯度解会让你达到目的。您的范围必须排除点x=(a-b);这里是单数的。有一些线性回归的东西可以帮助你。如果你不能用代数或几何的方法解决这个问题:要么你做O(n^2)
蛮力搜索,要么如果a,b
对y
和x
有单调依赖,那么你可以使用二进制搜索O(log^2(n))
但是对于任意近似,您可以使用我链接的重复QA中的答案(参见其中的示例)。为什么您不能进行最小二乘拟合来近似函数?你需要多准确?共轭梯度解会让你达到目的。您的范围必须排除点x=(a-b);这里是单数的。有一些线性回归的东西,可能会帮助你。谢谢你,这将肯定是我要做的!谢谢你,这绝对是我要做的!