问题标签 [optimizer-hints]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - 如果依赖于数据/行过滤,内部连接中的类型转换是否安全?
如果连接条件进行仅对某些行有效的数据转换,但您的 where 条件将行过滤为“有效”行,那么这是一个“安全”连接条件吗?
我认为不是,但我绝不是专家,我只是想理解。AFAIK 优化器几乎可以做任何它想做的事情,只要在一天结束时所有的连接都发生并且所有的条件最终都会运行。
我试过用谷歌搜索,但没有看到任何具体的东西
据我了解,连接条件在内部连接上应该是可交换的,并且这两个查询应该彼此等价。然而,由于类型强制问题,第二个爆炸了。这是否证明这是一种不好的做法,您应该安全地将 a 的 ID 转换为 varchar 而不是 b 的 ID 转换为 int?或者是否有一些 ansi 规范保证这没问题?
python - 有没有办法在 Pytorch 中监控优化器的步骤?
假设您正在使用 Pytorch 优化器,例如 torch.optim.Adam(model_parameters)。
因此,在您的训练循环中,您将拥有以下内容:
有没有办法监控你的优化器正在采取哪些步骤?确保您不在平坦区域,因此由于渐变为空,因此不采取任何步骤。也许检查学习率将是一个解决方案?
oracle - 在生产中修复 Oracle 查询性能的最佳方法是什么?更改应用程序代码?使用计划基线?
假设有一个 C++ 应用程序在 Oracle 数据库上执行特定的 SQL 查询。
该查询在过去几年在客户环境中的生产环境中运行良好,但突然有一天,查询开始花费大约 10 倍的时间来执行。(假设在此查询工作的表中不断添加数据)。
在进行分析时,专家发现Oracle 的优化器没有生成最佳计划,原因可能与数据库统计/数据倾斜/所有其他可能影响优化器生成次优计划的参数有关。
通过在查询中放置提示来强制优化器生成一个好的执行计划非常有效。
应用程序开发团队现在被迫更改应用程序代码并在构建查询时将提示注入查询中。
应用程序开发团队不想更改应用程序代码,因为他们有数百名其他客户没有抱怨这种特定的查询性能。更改应用程序代码也意味着更多的维护成本,因为他们需要适当的机制来禁用提示,当客户将数据库升级到新版本时不再需要提示。
有问题的客户不愿意聘请可以执行 SQL 命令以使用计划基线功能调整查询的 DBA。
在这种情况下,应用程序开发团队有哪些选择?
pytorch - 仅当当前批次的损失小于前一个时如何更新模型的权重
我试图在训练期间只为那些损失小于前一批获得的损失的批次更新模型的权重。
因此,在批处理循环中,我存储了每次迭代获得的损失,然后我尝试评估一个条件:如果时间 t-1 的损失小于时间 t,那么我继续如下:
然后,在 else 部分什么都不应该做。尽管如此,我收到一条错误消息,说 CUDA 内存不足。
当然,在计算损失之前,我执行了一个 optimizer.zero_grad() 语句。
批量运行的 for 循环似乎运行良好,但内存使用量激增。我读到也许将梯度设置为 None 会阻止权重更新过程,但我尝试了很多句子(output.clone().detach()
也optimizer.zero_grad(set_to_none=True)
)但我不确定它们是否有效。我认为他们没有。尽管如此,内存使用爆炸仍然发生。
有没有办法做到这一点?
tensorflow - I'm getting this error : 'AttributeError: module 'keras.optimizers' has no attribute 'Adam''
I'm trying to run this code in Google Colab :
from keras import optimizers from tensorflow.keras.optimizers import Adam
for i in range(5):
It worked fine before but now it is giving me an error. Can someone help me to fix it?