文章目录
- 前言
- 所谓二项分布就是只会产生两种结果的概率
- 1.概念
前言
所谓二项分布就是只会产生两种结果的概率
1.概念
下面是一个二项分布的的theano实现
import numpy as np
import theano
import theano.tensor as T
from theano.tensor.nnet import conv
from theano.tensor.nnet import softmax
from theano.tensor import shared_randomstreams
x=T.matrix('x')
y =T.fscalars('y')
theano.config.floatX='float32'
# def dropout_layer(x,y):
# srng=shared_randomstreams.RandomStreams(np.random.RandomState(0).randint(999))
# mask=srng.binomial(n=1,p=1-y,size=x.shape)
# return x*T.cast(mask,theano.config.floatX)
a=np.random.randn(2,3)
srng=shared_randomstreams.RandomStreams(np.random.RandomState(0).randint(999))
mask=srng.binomial(n=1,p=1-y,size=x.shape)
d=x*T.cast(mask,theano.config.floatX)
fun=theano.function([x,y],d)
print(fun(a,0.6))
结果:
可以看到要么是0,要么是1,当然是近似