本文主要是介绍二项分布以及实现,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 前言
- 所谓二项分布就是只会产生两种结果的概率
- 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_randomstreamsx=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,当然是近似
这篇关于二项分布以及实现的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!