1. A mixture model estimation device comprising: a data input unit that inputs data of a mixture model to be estimated, and candidate values for a mixture number, and types and parameters of components constituting the mixture model that are necessary for estimating the mixture model of the data; a processing unit comprising a computer hardware processor that sets the mixture number from the candidate values, calculates a variation probability of a hidden variable for a random variable which is a target for estimating the mixture model of the data with respect to the set mixture number, and optimally estimates the mixture model by optimizing the types and parameters of the components using the calculated variation probability of the hidden variable so that a lower bound of a model posterior probability separated for each of the components of the mixture model is maximized; and a model estimation result output unit that outputs a model estimation result obtained by the processing unit, wherein: the mixture number is denoted by C, the random variable is denoted by X, the types of the components are denoted by S 1 ,. .. , S C , and the parameters of the components are denoted by θ=(π 1 ,. .. , π C , φ 1 S1 ,. .. , φ C SC ) (π 1 ,. .. , π C are mixture ratios when the mixture number is 1 to C, and φ 1 S1 ,. .. , φ C SC are parameters of distributions of components S 1 to S C when the mixture number is 1 to C), the mixture model is expressed by equation 1: P ⁡ ( X | θ ) = ∑ c = 1 C ⁢ π c ⁢ P c ⁡ ( X ; ϕ c S c ) ( 1 ) when the hidden variable for the random variable X is denoted by Z 1 =(Z 1 ,. .. , Z C ), a joint distribution of a complete variable that is a pair of the random variable X and the hidden variable Z is defined by equation 2: P ⁡ ( X , Z | θ ) = ∑ c = 1 C ⁢ ( π c ⁢ P c ⁡ ( X ; ϕ c S c ) ) Z c ( 2 ) when N data values of the random variable X are denoted by X n (n=1,. .. , N), and N values of the hidden variable Z for the values X n are denoted by Z n (n=1,. .. , N), a posterior probability of the hidden variable Z is expressed by equation 3: 
 P ( z n |x n ,θ)∝π c P c ( x n ;φ c S C )  (3) the processing unit calculates the variation probability of the hidden variable by solving an optimization problem expressed by equation 4: q ( t ) = arg ⁢ ⁢ max q ( Z N ) ⁢ { max q _ ( Z N ) ∈ Q ( t - 1 ) ⁢ ( G ⁡ ( H ( t - 1 ) , θ ( t - 1 ) , q ⁡ ( Z N ) , q _ ⁡ ( Z N ) ) ) } ( 4 ) where Z N =Z 1 ,. .. , Z N denotes the hidden variable, Q (t) ={q (0) , q (1) ,. .. , q (t) } (a superscript (t) means a value calculated after t iterations) denotes the variation probability of the hidden variable, H=(S 1 ,. .. , S C ) denotes the mixture model, and G denotes the lower bound of the model posterior probability, the processing unit calculates the lower bound of the model posterior probability by equation 5: G ⁡ ( H , θ , q ⁡ ( Z N ) , q _ ⁡ ( Z N ) ) = ∑ Z N ⁢ q ⁡ ( Z N ) ⁢ { log ⁢ ⁢ P ⁡ ( X N , Z N | θ ) - C - 1 2 ⁢ log ⁢ ⁢ N - ∑ c = 1 C ⁢ J c 2 ⁢ ( log ⁢ ( ∑ n = 1 N ⁢ q _ ⁡ ( Z nc ) ) + ∑ n = 1 N ⁢ Z nc - ∑ n = 1 N ⁢ q _ ⁡ ( Z nc ) ∑ n = 1 N ⁢ q _ ⁡ ( Z nc ) ) - log ⁢ ⁢ q ⁡ ( Z N ) } ( 5 ) the processing unit calculates an optimal mixture model H (t) and parameters θ (t) of components of the optimal mixture model after t iterations by using the variation probability of the hidden variable by equation 6: H ( t ) , θ ( t ) = arg ⁢ ⁢ max H , θ ⁢ { max q _ ⁡ ( Z N ) ∈ Q ( t ) ⁢ ( G ⁡ ( H , θ , q ( t ) ⁡ ( Z N ) , q _ ⁡ ( Z N ) ) ) } ( 6 ) the processing unit determines whether the lower bound of the model posterior probability converges by using equation 7: max q _ ⁡ ( Z N ) ∈ Q ( t ) ⁢ G ⁡ ( H ( t ) , θ ( t ) , q ( t ) ⁡ ( Z N ) , q _ ⁢ ( Z N ) ) - max q _ ⁡ ( Z N ) ∈ Q ( t - 1 ) ⁢ G ⁡ ( H ( t - 1 ) , θ ( t - 1 ) , q ( t - 1 ) ⁡ ( Z N ) , q _ ⁢ ( Z N ) ) ( 7 ) when the processing unit determines that the lower bound of the model posterior probability does not converge, the processing unit repeats processes of equation 4 to equation 7, and if the processing unit determines that the lower bound converges, the processing unit compares a lower bound of a model posterior probability of a currently-set optimal mixture model with the lower bound of the model posterior probability obtained through calculations, and sets the larger value as the optimal mixture model, and the processing unit repeats the processes of equation 4 to equation 7 for all the candidate values for the mixture number so as to estimate the mixture model optimally.