面具有什么用? 我经常看到使用掩码(C,C++,Python,java),比如蒙面的SoStMax或者其他东西。我不明白它的用途(我不是说计算机视觉中的面具,而是说编程中的面具)
我将掩码理解为在按位操作(如面具有什么用? 我经常看到使用掩码(C,C++,Python,java),比如蒙面的SoStMax或者其他东西。我不明白它的用途(我不是说计算机视觉中的面具,而是说编程中的面具),python,theano,Python,Theano,我将掩码理解为在按位操作(如x&1)中使用的掩码:这里1是一个在按位操作中执行某些操作的掩码 但是,我看到越来越多的人使用面具,如下所示: import theano import theano.tensor as tt # The context document (2D matrix of long type called context.) context_bt = tt.lmatrix('context') # Context document mask us
x&1
)中使用的掩码:这里1是一个在按位操作中执行某些操作的掩码
但是,我看到越来越多的人使用面具,如下所示:
import theano
import theano.tensor as tt
# The context document (2D matrix of long type called context.)
context_bt = tt.lmatrix('context')
# Context document mask used to distinguish real symbols from the sequence and padding symbols that are at the end.
context_mask_bt = tt.matrix('context_mask')
如果您能帮助我理解以下内容,我将不胜感激:
谢谢,干杯:)。与其说它只是一个面具,不如说它是一个小面具,因为这是完整的术语 位掩码通常用于检查是否设置了整数上的位,或者设置它们。它允许人们做一些形式上的事情
if (time & CHEESE_MASK) eat()
if (time & CAKE_MASK) tea()
您可能会注意到,在这个例子中,可能是时候吃奶酪和蛋糕了。
这提供了一种非常有用的方法,可以在内存中的一个小空间中进行“配置”,或者为函数参数提供一种易于阅读的格式,例如
shop (CHEESE_MASK | CAKE_MASK)
我想是时候去买奶酪和蛋糕了
什么是掩码变量
按位AND和OR操作具有以下属性:
X & 1 == X
X & 0 == 0
因此,如果你和任何一位都是1,它不会改变它的值。如果您和任何位为0,它将重置为0。因此,将一个值“1”和“0”组合在一起,进行运算和,可以将一些位重置为0,而其他位则保持不变
X | 1 == 1
X | 0 == X
在另一侧,如果或任何位为1,则将其设置为1。如果或
任何位为0,则不会更改其值。因此,您可以设置一些位,同时保持其他位不变
X | 1 == 1
X | 0 == X
它们在哪里使用
将多个位组合到一个变量中会创建掩码,您可以使用和
重置某些位,或使用或
设置它们
如何创建掩码变量
您可以确定需要设置或重置哪些位,并相应地进行计算。因为没有多少语言支持二进制表示法,而且它们通常用十六进制编写,因为二进制到十六进制之间有简单的映射,反之亦然(四位映射到一个十六进制数字)。我不理解否决票…它是重复的…我想这是因为你的问题太广泛了…有一个否决票(Upd:好的,现在有两个……)这个问题似乎太宽泛了。有很多东西叫做“面具”。问题中的示例是特定于应用程序的,没有显示任何上下文。@EugeneSh。我将添加上下文,请稍后再看。@n00dl3请再次看,我添加了上下文,谢谢。请再次看问题,我在此处添加了称为掩码的特定变量。不确定您的更改是否有助于使问题更清楚…在问题的代码中,为什么人们会把第二个varaiable称为面具???@John77,因为它打算用作面具