问题标签 [algebraic-number]
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.
c++ - 代数数的计算
我想对正多边形进行精确计算。为此,我编写了您在下面找到的代码。但表达式cos*cos
不会编译。显然,我使用的代数类型没有定义乘法。我想我将不得不尝试其他方法。目前似乎有两个候选人:
- RS显然提供了一些更高级的代数功能,CGAL 也支持它。但我在相关标题中没有看到乘法运算符,所以我怀疑它是否会按照我想要的方式进行乘法运算。
- leda::real似乎是代数实数的一种类型。我可能不得不重写我的代码,但应该可以实现类似的结果。也许我什至可以将
cos
在 CGAL 中计算的 I 转换为这样的leda::real
. LEDA 标头至少看起来有一个operator*
. LEDA 对我来说是免费的,但仍然是封闭源代码。而leda_real.h
CGAL 4.3 看起来很奇怪:它指的是leda_real
notleda::real
,所以它可能是为 LEDA 的过时版本编写的。它显然包括自己,这看起来毫无意义。
这些替代方案中的哪一个最适合构建能够描述任意n的常规n边形的精确 CGAL 内核?这些中的任何一个都有效吗?我还有另一种选择吗?
由于我的计算机上没有安装 RS 或 LEDA,所以在开始构建它们之前,我更喜欢有根据的意见,甚至可能为我的 Gentoo linux 编写安装说明(“ebuilds”)。
python - Keras 自定义损失实现:ValueError: An operation has `None` for gradient
我正在尝试实现此损失函数:本文档中的MCFD_loss_function (P6):损失函数
所以我创建了一个这样的新函数:
但是当我开始训练时,会出现这个错误:
ValueError:一个操作有
None
梯度。请确保您的所有操作都定义了渐变(即可微分)。没有梯度的常见操作:K.argmax、K.round、K.eval。
我不知道我错过了哪一点。似乎引发了错误,因为我使用了更大的功能。我不知道这个错误是什么意思以及如何纠正我的问题。
谢谢。