提问人: 提问时间:10/23/2023 最后编辑:kjetil b halvorsen 更新时间:10/28/2023 访问量:16
如何对包含实际值的损失函数进行归一化?
How to Normalise a loss function containing actual values?
问:
我定义了一个损失函数,我正在尝试优化它,它由两个元素组成。假设 A 和 B:
w1 * (a_actual - a_measured)^2 + w2* (b_actual - b_measured)^2
我正在尝试通过将 w1 和 w2 都设置为 1 来简化优化过程。我希望两个项具有相同的贡献,但 an 和 b 具有不同的量表。除以平均值是行不通的,因为这也会导致权重不相等。最好的方法是什么?
答:
这是 w1/2 的工作。你不能把它们丢掉。损失函数的确切定义会影响结果及其解释。如果您期望获得真正有意义的结果,最好使用 chi-2 或对数似然损失函数,并具有清晰易懂的统计数据。
细节很大程度上取决于你手头的数据,你在问题中没有说明这一点。例如,如果 as 和 bs 是测量值,具有实际测量不确定度 Ea 和 Eb,则可以使用:
w1=1/Ea^2
和w2=1/Eb^2
如果你对不确定性一无所知,但你的数据是“计数”数据,你可以假设泊松误差:
w1=1/a_actual
和(如果值为零,则使用值)。w2=1/b_actual
expected
actual
或者,如果您知道数据的方差/RMS,您也可以使用以下方法:
w1=1/VarA
和。w2=1/VarB
正如你自己尝试的那样,使用平均值在统计方面是没有意义的。
考虑到在所有这些情况下,优化的期望值肯定会随着 w1 和 w2 的选择而变化。所以它们绝对重要。合理优化的另一个结果是轮廓,或“误差”(或您想如何称呼它),在这里,w1 和 w2 的选择更为重要。1-sigma
如果想优化某些东西,我想了解结果的不确定性。你可能需要多考虑一下......
如果停止所有服务使其正常工作,请尝试一次停止一个服务。最终你会发现它是哪一个。
希望有人能从经验中知道它是什么,但如果没有,你可以自己找到它。
听起来您有代理服务器问题 - 您检查过了吗?
评论
我能够通过执行以下操作在我的计算机上解决此问题:
我的主机文件包含 localhost 条目的这一行,这是 Vista 附带的主机文件,我从未修改过这一行 ::1 本地主机
将“::1 localhost”替换为: 127.0.0.1 本地主机
“::1 localhost”对我来说已经工作了一年多,直到今天早上。Windows defender安装了两个更新,一个是昨天,一个是今天早上,我的猜测是其中一个更新中的某些内容导致此条目不再起作用。
评论
我今晚也开始遇到这个问题,以为我昨天安装了 Windows 更新包。
我正在运行 VS 2008 (9.0.30729.1 SP) 和 Vista Ultimate SP1(32 位)。
用 127.0.0.1 替换 localhost 对我有用。
http://localhost:49227/testsite/Default.aspx http://127.0.0.1:49227/testsite/Default.aspx
我有同样的问题。昨晚在我的网站上工作,前一分钟该网站在浏览器中工作,下一分钟它无法连接到本地主机。
将 localhost 替换为 127.0.0.1 对我有用。我仍然没有 asp.net 经验,有没有你更改的文件
http://localhost:49227/testsite/Default.aspx 至
http://127.0.0.1:49227/testsite/Default.aspx
因为我只是在浏览器中更改网址
这个也对我有用。我所做的是:
- 转到我的项目的属性页。
- 然后在“开始选项”下,查找“服务器”,而不是“使用默认 Web 服务器”,而是将其更改为“使用自定义服务器”。
- 在基 URL 中键入 http://127.0.0.1:49227/MyProject/。
就是这样。它使用此链接自动打开站点。
我已经解决了这个问题。
问题来了,因为不知何故,host文件中的条目被删除了localhost。
您必须在保存在 System32/etc 文件夹中的主机文件中添加条目。
只需将其添加到文件末尾即可。
127.0.0.1 本地主机。
保存此文件并尝试从 cmd 提示符 ping localhost。
我认为这将解决您的问题。
现在尝试运行您的网站。
祝一切顺利.............
使用Visual Studio 2008 Express时存在同样的问题
将“localhost”更改为“127.0.0.1”,然后出现页面。 这个问题似乎对 Internet Explorer 和 Firefox 有影响
Opera 还没有看到这个问题:-)
格茨
将“localhost”更改为“127.0.0.1”对我来说也很好用。
但只是为了澄清那些不熟悉 Vista 的人,以下是要更改的指南:
- 浏览到“开始”->“所有程序”-“>附件”
- 右键单击“记事本”,然后选择“以管理员身份运行”
- 在 UAC 提示符下单击“继续”
- 单击“文件”->“打开”
- 浏览到“C:\Windows\System32\Drivers\etc”
- 将文件筛选器下拉框从“文本文档 (.txt)”更改为“所有文件 (.*)”
- 选择“主机”,然后单击“打开”
- 进行所需的更改并关闭记事本。出现提示时保存。
问题来了,因为不知何故,host文件中的条目被删除了localhost。
您必须在保存在文件夹中的主机文件中添加条目。System32/etc
只需将其添加到文件末尾即可。
127.0.0.1 localhost
.
保存此文件并尝试从 cmd 提示符 ping localhost。
评论