- 主题:求助,拟合的实际问题
这是来自商业软件的实际问题,一个函数,定义域是正整数,值域是(0,1),单调递增,以f(x)=1为渐近线。
已知函数在某些点的近似值。
f(1)=0.77389
f(2)=0.79667
f(3)=0.81728
f(4)=0.835
f(5)=0.85185
f(6)=0.86667
…
f(15)=0.949
…
f(30)=0.984
通过这些点的f(x)有无数个,需要找到一个表达式最简单的。
求思路,有啥软件能暴力求解吗?谢谢
--
FROM 106.120.85.*
表达式最简单的当然就是f(x)=1。所以,这种问题,还需要有更进一步的要求。
【 在 operater (人肉学步车) 的大作中提到: 】
: 这是来自商业软件的实际问题,一个函数,定义域是正整数,值域是(0,1),单调递增,以f(x)=1为渐近线。
: 已知函数在某些点的近似值。
: f(1)=0.77389
: ...................
--
FROM 180.111.3.*
f(x)=1不对,和f(1), f(2), ...不近似。
原文的数值值是解析值的四舍五入,或取整。
【 在 zxf 的大作中提到: 】
: 表达式最简单的当然就是f(x)=1。所以,这种问题,还需要有更进一步的要求。
--
FROM 106.120.85.*
哪有什么不近似的说法,只能说你要求误差在什么范围。拟合越精确,函数形式越复杂,反之简单的拟合函数必然比较粗糙。
【 在 operater (人肉学步车) 的大作中提到: 】
: f(x)=1不对,和f(1), f(2), ...不近似。
: 原文的数值值是解析值的四舍五入,或取整。
--
FROM 180.111.3.*
让人免费回答问题,藏着掖着不太好。我也很好奇是什么实际问题。
【 在 operater 的大作中提到: 】
: 这是来自商业软件的实际问题,一个函数,定义域是正整数,值域是(0,1),单调递增,以f(x)=1为渐近线。
: 已知函数在某些点的近似值。
: f(1)=0.77389
: ...................
--
FROM 68.97.41.*
感谢各位,实际问题是这样:
一个软件,用于文本数据的处理,统计某些关键字出现的次数。例如统计出现“翻红”“涨停”“拉高”等词汇的次数,算出一篇新闻对应的情绪的分值。
命中关键词的次数阅多,分值越高。所以定义域是正整数,命中0次分数为0,分数不超过1。
以上算法是行业内通行的算法。具体用什么算法,各厂家不一样。我们有一套老旧代码,开发者早离职了,在代码里看到了一楼写着的数值,给定了某些点的值,其它点的值使用线性插值。无公式,无文档,不知道这些值为什么这样定义。
有客户问这些值的具体含义是什么?所以我们要给出一个公式。
关于背景,没有藏着掖着,如果没说清楚,欢迎问我。感谢各位。
对于精度问题。在编程时,如果代码里写了0.995,那么默认解析值在0.994到0.996之间。如果我们找到的f(x)超出范围,说明公式不对。
【 在 cafitren 的大作中提到: 】
: 让人免费回答问题,藏着掖着不太好。我也很好奇是什么实际问题。
:
--
FROM 106.120.85.*
他既然都用线性插值了,说明他很可能也没有公式啊,不然何不直接用公式算呢?
【 在 operater (人肉学步车) 的大作中提到: 】
: 感谢各位,实际问题是这样:
: 一个软件,用于文本数据的处理,统计某些关键字出现的次数。例如统计出现“翻红”“涨停”“拉高”等词汇的次数,算出一篇新闻对应的情绪的分值。
: 命中关键词的次数阅多,分值越高。所以定义域是正整数,命中0次分数为0,分数不超过1。
: ...................
--
FROM 182.149.108.*
我们觉得这些数值必定有些依据,不是他凭空编造的。
【 在 gloop 的大作中提到: 】
: 他既然都用线性插值了,说明他很可能也没有公式啊,不然何不直接用公式算呢?
--
FROM 106.120.85.*
经验,可以算依据吗?
【 在 operater (人肉学步车) 的大作中提到: 】
: 我们觉得这些数值必定有些依据,不是他凭空编造的。
--
FROM 182.149.108.*
在已知公式,但公式中的参数未知的时候,可以用(非线性)最小二乘法拟合参数。但是公式怎么定可能就得靠试验了。
【 在 operater (人肉学步车) 的大作中提到: 】
: 这是来自商业软件的实际问题,一个函数,定义域是正整数,值域是(0,1),单调递增,以f(x)=1为渐近线。
: 已知函数在某些点的近似值。
: f(1)=0.77389
: ...................
--
FROM 182.149.108.*