broadcast的翻译

一直不明白为什么这个行为要起 broadcast 这么个名,广播这个翻译对于无相关背景的人来说简直是八杆子打不着的。。。

  • 广播
  • 不译
0 投票人

补充语境
都是 arrays 章节出现的专有名词

  • Broadcasting
  • dot broadcasting
  • fused broadcasting operations
  • broadcast
    This is wasteful when dimensions get large, so Julia offers broadcast, which expands⏎
    singleton dimensions in array arguments to match the corresponding dimension in the other array⏎
    without using extra memory, and applies the given function elementwise:

这些年我发现编程里面最令我头疼的就是给variable取名字,每次都纠结。翻译比取名字更头痛,所以我从来不敢涉足这个area…

2 个赞

这个行为实际上应该是matlab最早有的,然后numpy也有,大家都叫broadcast。broadcast译为广播确实很奇怪,也许大家都搞不明白该怎么说。

我觉得matlab里的说法更明白,一般称为implicit expansion, see here, here。Numpy的解释是 Broadcasting — NumPy v1.25 Manual

如果要翻译的话,更建议翻译为"(隐式)扩展"。不译也行,相当于把理解的工作交给阅读的人。

其实接触多了之后,无论是broadcast也好,广播也好,都无伤大雅。
说白了,就是希望同一件时间,好多人都要做,就好比村里通知大家一起来看露天电影,怎么办呢?
大喇叭广播一下,村民朋友们,今天晚上19:00点大操场放电影。广播一下大家都知道了。差不多就是这个意思吧。

2 个赞

话是这么说,但并不意味着起名字或者翻译名词是没有意义的,或者随便的。还是要尽量能够说明那个概念所表达的真实功能和含义。

无论是numpy还是Julia的解释中,broadcast所完成的都是将值,向量,或者矩阵的维数自动扩展,使之能够实现不同维数的变量的计算。也有说法是broadcast实际上可以理解为,cast broadly,说的也是扩展变量维数,实现元素对元素的计算。

翻不翻译,倒不是重点,帮助读者理解这个概念才是重点。不翻译的话,最好能够注释一下为什么会起这个名字,或者它的核心目的是什么,帮助更好理解。

1 个赞

其实在文档中不翻译的原因部分就是,当第一次提这个概念的时候,文档紧接着就会做解释,甚至还有代码和例子,所以才感觉既然后面的解释和例子译了,那术语再译的价值就不大了。