Ë
    ÷Q(hhº  ã                   óP  — d dl Z d dlZd dlZd dlZd dlZd dlmZ d dlmZ d dl	Z
d dlZd dlmZmZ d dlZd dlmZ d dlmZ d dlmZ d dlmZmZ d d	lmZ d d
lmZ d dlmZmZm Z m!Z!m"Z"m#Z#m$Z$ d dl%m&Z&m'Z'm(Z(m)Z) d dl*m+Z+ g d¢Z,d„ Z- G d„ d«      Z.d„ Z/d„ Z0d„ Z1d„ Z2d„ Z3d„ Z4d„ Z5d„ Z6d„ Z7d„ Z8d„ Z9d„ Z:d„ Z;ejx                  j{                  d«      ejx                  j}                  d g d!¢«      d"„ «       «       Z?d#„ Z@d$„ ZAd%„ ZBd&„ ZCd'„ ZDd(„ ZEd)„ ZFd*„ ZGd+„ ZHejx                  j{                  d«      ejx                  j}                  d,d-«      d.„ «       «       ZIejx                  j{                  d/«      d0„ «       ZJd1„ ZKd2„ ZLd3„ ZMd4„ ZNd5„ ZOd6„ ZPejx                  j{                  d/«      d7„ «       ZQd8„ ZRejx                  j}                  d9g d:¢«      d;„ «       ZSejx                  j}                  d9g d:¢«      d<„ «       ZTd=„ ZUd>„ ZVd?„ ZWd@„ ZXejx                  j}                  dAe,«      dB„ «       ZYdC„ ZZdD„ Z[y)Eé    N)ÚStringIO)ÚMock)ÚlinalgÚstats)ÚKMeans)ÚEmpiricalCovariance)Úmake_spd_matrix)ÚConvergenceWarningÚNotFittedError)Úadjusted_rand_score)ÚGaussianMixture)Ú_compute_log_det_choleskyÚ_compute_precision_choleskyÚ#_estimate_gaussian_covariances_diagÚ#_estimate_gaussian_covariances_fullÚ(_estimate_gaussian_covariances_sphericalÚ#_estimate_gaussian_covariances_tiedÚ_estimate_gaussian_parameters)Úassert_allcloseÚassert_almost_equalÚassert_array_almost_equalÚassert_array_equal)Úfast_logdet©ÚfullÚtiedÚdiagÚ	sphericalc                 ó  — t         j                  j                  d«      }g }|dk(  r|t        t	        |||d   «      «      D ]`  \  }\  }	}
}|j                  |j                  |
|t        j                  |«      z  t        t        j                  |	| z  «      «      «      «       Œb |dk(  ryt        t	        |||d   «      «      D ]]  \  }\  }	}
}|j                  |j                  |
t        j                  |«      t        t        j                  |	| z  «      «      «      «       Œ_ |dk(  rdt        t	        ||«      «      D ]L  \  }\  }	}
|j                  |j                  |
|d   t        t        j                  |	| z  «      «      «      «       ŒN |dk(  rft        t	        |||d   «      «      D ]J  \  }\  }	}
}|j                  |j                  |
|t        t        j                  |	| z  «      «      «      «       ŒL t        j                  |«      }|S )Nr   r   r   r   r   )ÚnpÚrandomÚRandomStateÚ	enumerateÚzipÚappendÚmultivariate_normalÚeyeÚintÚroundr   Úvstack)Ú	n_samplesÚ
n_featuresÚweightsÚmeansÚ
precisionsÚcovariance_typeÚrngÚXÚ_ÚwÚmÚcs               úi/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sklearn/mixture/tests/test_gaussian_mixture.pyÚgenerate_datar8   +   sÜ  € Ü
�)‰)×
Ñ
 Ó
"€Cà
€AØ˜+Ò%Ü%¤c¨'°5¸*À[Ñ:QÓ&RÓSò 	‰LˆA‰y��1�aØ�H‰HØ×'Ñ'Ø�qœ2Ÿ6™6 *Ó-Ñ-¬s´2·8±8¸AÀ	¹MÓ3JÓ/Kóõð	ð ˜&Ò Ü%¤c¨'°5¸*ÀVÑ:LÓ&MÓNò 	‰LˆA‰y��1�aØ�H‰HØ×'Ñ'¨¬2¯7©7°1«:´s¼2¿8¹8ÀAÈ	ÁMÓ;RÓ7SÓTõð	ð ˜&Ò Ü"¤3 w°Ó#6Ó7ò 	‰IˆA‰v��1Ø�H‰HØ×'Ñ'Ø�z &Ñ)¬3¬r¯x©x¸¸I¹Ó/FÓ+Góõð	ð ˜&Ò Ü%¤c¨'°5¸*ÀVÑ:LÓ&MÓNò 	R‰LˆA‰y��1�aØ�H‰H�S×,Ñ,¨Q°´3´r·x±xÀÀIÁÓ7NÓ3OÓPÕQð	Rô 	�	‰	�!‹€AØ€Hó    c                   ó   — e Zd Zdd„Zy)Ú
RandomDatac                 óÂ  — || _         || _        || _        |j                  |«      | _        | j                  | j                  j                  «       z  | _        |j                  ||«      |z  | _        d|j                  |«      z   d|j                  ||«      z   dz  t        ||¬«      t        j                  t        |«      D �cg c]  }t        ||¬«      dz  ‘Œ c}«      dœ| _        d| j                  d   z  d| j                  d   z  t        j                  | j                  d   «      t        j                  | j                  d	   D �cg c]  }t        j                  |«      ‘Œ c}«      dœ| _        t        t!        t"        t"        D �cg c]0  }t%        ||| j                  | j                  | j                  |«      ‘Œ2 c}«      «      | _        t        j(                  t+        | j                  «      D �	�
cg c]@  \  }	}
t        j,                  t/        t        j0                  |
|z  «      «      |	t.        ¬
«      ‘ŒB c}
}	«      | _        y c c}w c c}w c c}w c c}
}	w )Nç      à?é   )Úrandom_state©r   r   r   r   ç      ð?r   r   r   r   )Údtype)r+   Ún_componentsr,   Úrandr-   Úsumr.   r	   r    ÚarrayÚrangeÚcovariancesr   Úinvr/   Údictr$   ÚCOVARIANCE_TYPEr8   r2   Úhstackr#   r   r(   r)   ÚY)Úselfr1   r+   rC   r,   Úscaler3   Ú
covarianceÚ
covar_typeÚkr4   s              r7   Ú__init__zRandomData.__init__K   s  € Ø"ˆŒØ(ˆÔØ$ˆŒà—x‘x Ó-ˆŒØ—|‘| d§l¡l×&6Ñ&6Ó&8Ñ8ˆŒØ—X‘X˜l¨JÓ7¸%Ñ?ˆŒ
à˜sŸx™x¨Ó5Ñ5Ø˜3Ÿ8™8 L°*Ó=Ñ=À!ÑCÜ# J¸SÔAÜ—H‘Hô # <Ó0öàô $ J¸SÔAÀCÓGòóñ	

ˆÔð ˜t×/Ñ/°Ñ<Ñ<Ø˜$×*Ñ*¨6Ñ2Ñ2Ü—J‘J˜t×/Ñ/°Ñ7Ó8Ü—H‘HØ:>×:JÑ:JÈ6Ñ:RÖS¨J”—‘˜JÕ'ÒSóñ	
ˆŒô ÜÜô '6ö
ð #ô "Ø!Ø"ØŸ™ØŸ
™
Ø×(Ñ(Ø"õò
óó
ˆŒô  —‘ô & d§l¡lÓ3÷á�A�qô —‘œœBŸH™H Q¨¡]Ó3Ó4°a¼sÖCóó
ˆ�ùò?ùò Tùò
ùós   ÃIÅIÆ5IÇ9AI
N)éÈ   r>   r>   é2   )Ú__name__Ú
__module__Ú__qualname__rS   © r9   r7   r;   r;   J   s   „ ô1
r9   r;   c            	      ó°  — t         j                  j                  d«      } | j                  dd«      }d\  }}}}}d\  }}t	        |||||||¬«      j                  |«      }	|	j                  |k(  sJ ‚|	j                  |k(  sJ ‚|	j                  |k(  sJ ‚|	j                  |k(  sJ ‚|	j                  |k(  sJ ‚|	j                  |k(  sJ ‚|	j                  |k(  sJ ‚y )Nr   é
   r>   )r>   g-Cëâ6?é   é   çš™™™™™¹?)r   r!   )rC   ÚtolÚn_initÚmax_iterÚ	reg_covarr0   Úinit_params)r    r!   r"   rD   r   ÚfitrC   r0   r_   rb   ra   r`   rc   )
r1   r2   rC   r_   r`   ra   rb   r0   rc   Úgmms
             r7   Ú test_gaussian_mixture_attributesrf      sñ   € ä
�)‰)×
Ñ
 Ó
"€CØ�‰��Q‹€Að 6JÑ2€L�#�v˜x¨Ø#3Ñ €O�[Ü
Ø!ØØØØØ'Øô÷ 
�cˆ!ƒfð ð ×Ñ˜|Ò+Ð+Ð+Ø×Ñ /Ò1Ð1Ð1Ø�7‰7�cŠ>Ðˆ>Ø�=‰=˜IÒ%Ð%Ð%Ø�<‰<˜8Ò#Ð#Ð#Ø�:‰:˜ÒÐÐØ�?‰?˜kÒ)Ð)Ñ)r9   c                  ó¬  — t         j                  j                  d«      } t        | «      }|j                  }|j
                  d   }t        |¬«      }| j                  |d«      }||_        t        j                  d|› dt        |j                  «      › �«      }t        j                  t        |¬«      5  |j!                  |«       d d d «       | j                  |«      dz   }||_        t        j                  dt        j"                  |«      d	›d
t        j$                  |«      d	›�«      }t        j                  t        |¬«      5  |j!                  |«       d d d «       | j                  |«      }||j'                  «       dz   z  }||_        t        j                  dt        j&                  |«      d	›�«      }t        j                  t        |¬«      5  |j!                  |«       d d d «       |j(                  }	t        |	|¬«      }|j!                  |«       t+        |	|j                  «       y # 1 sw Y   �ŒmxY w# 1 sw Y   ŒæxY w# 1 sw Y   ŒcxY w)Nr   r   ©rC   é   z2The parameter 'weights' should have the shape of (z,), but got ©ÚmatchzIThe parameter 'weights' should be in the range [0, 1], but got max value z.5fz, min value zEThe parameter 'weights' should be normalized, but got sum(weights) = )Úweights_initrC   )r    r!   r"   r;   rC   r2   r   rD   rl   ÚreÚescapeÚstrÚshapeÚpytestÚraisesÚ
ValueErrorrd   ÚminÚmaxrE   r-   r   )
r1   Ú	rand_datarC   r2   ÚgÚweights_bad_shapeÚmsgÚweights_bad_rangeÚweights_bad_normr-   s
             r7   Útest_check_weightsr|   š   s
  € Ü
�)‰)×
Ñ
 Ó
"€CÜ˜3“€Ià×)Ñ)€LØ�‰�FÑ€Aä \Ô2€Að Ÿ™ ¨qÓ1ÐØ&€A„NÜ
�)‰)ð	Øˆ>˜¤cÐ*;×*AÑ*AÓ&BÐ%Cð	Eó€Cô 
�‰”z¨Ô	-ñ Ø	�‰ˆaŒ÷ð Ÿ™ Ó.°Ñ2ÐØ&€A„NÜ
�)‰)ð	Ü—f‘fÐ.Ó/°Ð4ð 5Ü—V‘VÐ-Ó.¨sÐ3ð	5ó€Cô
 
�‰”z¨Ô	-ñ Ø	�‰ˆaŒ÷ð —x‘x Ó-ÐØ'Ð+;×+?Ñ+?Ó+AÀAÑ+EÑFÐØ%€A„NÜ
�)‰)ð	"Ü"$§&¡&Ð)9Ó":¸3Ð!?ð	Aó€Cô 
�‰”z¨Ô	-ñ Ø	�‰ˆaŒ÷ð ×Ñ€GÜ W¸<ÔH€AØ‡E�Eˆ!„HÜ�w §¡Õ/÷;ñ ú÷ð ú÷ð ús$   Â4H1ÅH>ÇI
È1H;È>IÉ
Ic                  óð  — t         j                  j                  d«      } t        | «      }|j                  |j
                  }}|j                  d   }t        |¬«      }| j                  |dz   |«      }||_	        d}t        j                  t        |¬«      5  |j                  |«       d d d «       |j                  }||_	        |j                  |«       t        ||j                  «       y # 1 sw Y   ŒDxY w)Nr   r   rh   ri   z/The parameter 'means' should have the shape of rj   )r    r!   r"   r;   rC   r,   r2   r   rD   Ú
means_initrq   rr   rs   rd   r.   r   )	r1   rv   rC   r,   r2   rw   Úmeans_bad_shapery   r.   s	            r7   Útest_check_meansr€   Ê   sÈ   € Ü
�)‰)×
Ñ
 Ó
"€CÜ˜3“€Ià(×5Ñ5°y×7KÑ7K�*€LØ�‰�FÑ€Aä \Ô2€Að —h‘h˜|¨aÑ/°Ó<€OØ"€A„LØ
;€CÜ	�‰”z¨Ô	-ñ Ø	�‰ˆaŒ÷ð �O‰O€EØ€A„LØ‡E�Eˆ!„HÜ�u˜aŸl™lÕ+÷ð ús   ÂC,Ã,C5c                  ó~  — t         j                  j                  d«      } t        | «      }|j                  |j
                  }}t        j                  |dz   ||f«      t        j                  |dz   |dz   f«      t        j                  |dz   |f«      t        j                  |dz   «      dœ}t        j                  |||f«      }t        j                  |«      |d<   d|d<   ||d   t        j                  ||fd«      t        j                  |d«      dœ}dddddœ}t        D �]   }t        | «      j                  |   }	t        ||| ¬«      }
||   |
_        d	|› d
�}t        j                  t        |¬«      5  |
j!                  |	«       d d d «       ||   |
_        d|› d||   › �}t        j                  t        |¬«      5  |
j!                  |	«       d d d «       |j"                  |   |
_        |
j!                  |	«       t%        |j"                  |   |
j                  «       �Œ y # 1 sw Y   ŒŸxY w# 1 sw Y   ŒaxY w)Nr   ri   r   g      ð¿)r   r   r   zsymmetric, positive-definiteÚpositive©rC   r0   r?   zThe parameter 'z$ precision' should have the shape ofrj   ú'z precision' should be )r    r!   r"   r;   rC   r,   Úonesr'   r   rK   r2   r   Úprecisions_initrq   rr   rs   rd   r/   r   )r1   rv   rC   r,   Úprecisions_bad_shapeÚprecisions_not_posÚprecisions_not_positiveÚnot_positive_errorsrQ   r2   rw   ry   s               r7   Útest_check_precisionsr‹   á   s0  € Ü
�)‰)×
Ñ
 Ó
"€CÜ˜3“€Ià(×5Ñ5°y×7KÑ7K�*€Lô —‘˜¨Ñ)¨:°zÐBÓCÜ—‘˜ a™¨°a©Ð8Ó9Ü—‘˜¨Ñ)¨:Ð6Ó7Ü—W‘W˜l¨QÑ.Ó0ñ	Ðô Ÿ™ ,°
¸JÐ!GÓHÐÜŸF™F :Ó.Ð�qÑØ"&Ð�wÑð #Ø" 1Ñ%Ü—‘˜ zÐ2°DÓ9Ü—W‘W˜\¨4Ó0ñ	Ðð /Ø.ØØñ	Ðô &ó Pˆ
Ü�s‹O×Ñ˜jÑ)ˆÜØ%°zÐPSô
ˆð
 1°Ñ<ˆÔØ 
˜|Ð+OÐPˆÜ�]‰]œ:¨SÔ1ñ 	Ø�E‰E�!ŒH÷	ð 4°JÑ?ˆÔØ�*�Ð3Ð4GÈ
Ñ4SÐ3TÐUˆÜ�]‰]œ:¨SÔ1ñ 	Ø�E‰E�!ŒH÷	ð &×0Ñ0°Ñ<ˆÔØ	�‰ˆaŒÜ˜9×/Ñ/°
Ñ;¸Q×=NÑ=NÖOñ+P÷	ð 	ú÷	ð 	ús   Å7H'ÇH3È'H0	È3H<	c            	      óÎ  — t         j                  j                  d«      } d\  }}| j                  ||«      }| j                  |d«      }t        j                  |«      |z  }t        j
                  |g«      }t        j                  d|f«      }t        ||||d«      }t        d¬«      }	|	j                  |«       t        |	j                  |d   d¬«      d«       t        |	j                  |d   d¬«      d«       t        |d	«      }
t        j
                  |
D �cg c]"  }t        j                  ||j                  «      ‘Œ$ c}«      }t        j
                  |D �cg c]  }t        j                   |«      ‘Œ c}«      }t#        ||«       t        j$                  |df«      }t        j
                  |g«      }|j'                  d¬
«      j)                  d«      }t        ||||d«      }t        d¬«      }	|	j                  |«       t        |	j                  |d   d¬«      d«       t        |	j                  |d   d¬«      d«       t        |d	«      }
t        j
                  |
D �cg c]"  }t        j                  ||j                  «      ‘Œ$ c}«      }t        j
                  |D �cg c]  }t        j                   |«      ‘Œ c}«      }t#        ||«       y c c}w c c}w c c}w c c}w )Nr   ©éô  r>   ri   T)Úassume_centeredÚ	frobenius©ÚnormÚspectralr   ©Úaxis)ri   éÿÿÿÿF)r    r!   r"   rD   ÚsqrtrF   Úzerosr   r   rd   r   Ú
error_normr   ÚdotÚTr   rI   r   r…   ÚmeanÚreshape)r1   r+   r,   r2   ÚrespÚX_respÚnkÚxkÚcovars_predÚecovÚprecs_chol_predÚprecÚ
precs_predÚcovÚ	precs_ests                  r7   Útest_suffstat_sk_fullr©     sE  € ô �)‰)×
Ñ
 Ó
"€CØ"Ñ€Iˆzð 	�‰�˜JÓ'€AØ�8‰8�I˜qÓ!€DÜ�W‰W�T‹]˜QÑ€FÜ	�‰�9�+Ó	€BÜ	�‰�1�j�/Ó	"€BÜ5°d¸A¸rÀ2ÀqÓI€KÜ¨tÔ4€DØ‡H�HˆVÔÜ˜Ÿ™¨°A©¸[˜ÓIÈ1ÔMÜ˜Ÿ™¨°A©¸Z˜ÓHÈ!ÔLô 2°+¸vÓF€OÜ—‘¸OÖL°Dœ2Ÿ6™6 $¨¯©Õ/ÒLÓM€JÜ—‘°[ÖA¨cœ&Ÿ*™* S�/ÒAÓB€IÜ˜i¨Ô4ô �7‰7�I˜q�>Ó"€DÜ	�‰�9�+Ó	€BØ	
�‰�Qˆ‹×	Ñ	 Ó	(€BÜ5°d¸A¸rÀ2ÀqÓI€KÜ¨uÔ5€DØ‡H�HˆQ„KÜ˜Ÿ™¨°A©¸[˜ÓIÈ1ÔMÜ˜Ÿ™¨°A©¸Z˜ÓHÈ!ÔLô 2°+¸vÓF€OÜ—‘¸OÖL°Dœ2Ÿ6™6 $¨¯©Õ/ÒLÓM€JÜ—‘°[ÖA¨cœ&Ÿ*™* S�/ÒAÓB€IÜ˜i¨Õ4ùò% MùÚAùò MùÚAs   Ä'KÅKÉ"'KÊ#K"c                  ój  — t         j                  j                  d«      } d\  }}}| j                  ||«      }||j	                  d¬«      d d …t         j
                  f   z  }| j                  ||«      }|j	                  d¬«      }t        j                  |j                  |«      |d d …t         j
                  f   z  }t        ||||d«      }t        j                  |d d …t         j
                  t         j
                  f   |z  d«      |z  }t        ||||d«      }	t        «       }
||
_        t        |
j                  |	d¬«      d«       t        |
j                  |	d¬«      d«       t        |	d«      }t        j                  ||j                  «      }t        j                   |	«      }t#        ||«       y )	Nr   ©rŽ   r>   r>   ri   r”   r�   r‘   r“   r   )r    r!   r"   rD   rE   Únewaxisrš   r›   r   r   r   Úcovariance_r   r™   r   r   rI   r   )r1   r+   r,   rC   rž   r2   r    r¡   Úcovars_pred_fullÚcovars_pred_tiedr£   r¤   r¦   r¨   s                 r7   Útest_suffstat_sk_tiedr°   D  sr  € ä
�)‰)×
Ñ
 Ó
"€CØ*3Ñ'€Iˆz˜<à�8‰8�I˜|Ó,€DØ�$—(‘( �(Ó"¢1¤b§j¡j =Ñ1Ñ1€DØ�‰�˜JÓ'€AØ	�‰�qˆÓ	€BÜ	�‰�—‘˜Ó	˜R¢¤2§:¡: Ñ.Ñ	.€Bä:¸4ÀÀBÈÈAÓNÐä
�‰ˆr’!”R—Z‘Z¤§¡Ð+Ñ,Ð/?Ñ?ÀÓCÀiÑOð ô ;¸4ÀÀBÈÈAÓNÐäÓ €DØ'€DÔÜ˜Ÿ™Ð(8¸{˜ÓKÈQÔOÜ˜Ÿ™Ð(8¸z˜ÓJÈAÔNô 2Ð2BÀFÓK€OÜ—‘˜¨×):Ñ):Ó;€JÜ—
‘
Ð+Ó,€IÜ˜i¨Õ4r9   c                  ó*  — t         j                  j                  d«      } d\  }}}| j                  ||«      }||j	                  d¬«      d d …t         j
                  f   z  }| j                  ||«      }|j	                  d¬«      }t        j                  |j                  |«      |d d …t         j
                  f   z  }t        ||||d«      }t        ||||d«      }	t        «       }
t        ||	«      D ]�  \  }}t        j                  t        j                  |«      «      |
_        t        j                  |«      }t        |
j                  |d¬«      d«       t        |
j                  |d¬«      d«       Œƒ t!        |	d«      }t        |	d	|d
z  z  «       y )Nr   r«   ri   r”   r�   r‘   r“   r   rA   r>   )r    r!   r"   rD   rE   r¬   rš   r›   r   r   r   r$   r   r­   r   r™   r   )r1   r+   r,   rC   rž   r2   r    r¡   r®   Úcovars_pred_diagr£   Úcov_fullÚcov_diagr¤   s                 r7   Útest_suffstat_sk_diagrµ   b  sa  € ä
�)‰)×
Ñ
 Ó
"€CØ*3Ñ'€Iˆz˜<à�8‰8�I˜|Ó,€DØ�$—(‘( �(Ó"¢1¤b§j¡j =Ñ1Ñ1€DØ�‰�˜JÓ'€AØ	�‰�qˆÓ	€BÜ	�‰�—‘˜Ó	˜R¢¤2§:¡: Ñ.Ñ	.€BÜ:¸4ÀÀBÈÈAÓNÐÜ:¸4ÀÀBÈÈAÓNÐäÓ €DÜ!Ð"2Ð4DÓEò KÑˆ�(ÜŸ7™7¤2§7¡7¨8Ó#4Ó5ˆÔÜ—7‘7˜8Ó$ˆÜ˜DŸO™O¨H¸;˜OÓGÈÔKÜ˜DŸO™O¨H¸:˜OÓFÈÕJð	Kô 2Ð2BÀFÓK€OÜÐ(¨#°ÀÑ0BÑ*BÕCr9   c                  ó  — t         j                  j                  d«      } d\  }}| j                  ||«      }||j	                  «       z
  }t        j
                  |df«      }t        j                  |g«      }|j	                  «       }t        ||||d«      }t        j                  |j                  «       j                  |j                  «       «      ||z  z  }t        ||«       t        |d«      }	t        |d|	dz  z  «       y )Nr   r�   ri   r   rA   r>   )r    r!   r"   rD   rœ   r…   rF   r   rš   Úflattenr›   r   r   )
r1   r+   r,   r2   rž   r    r¡   Úcovars_pred_sphericalÚcovars_pred_spherical2r¤   s
             r7   Ú#test_gaussian_suffstat_sk_sphericalrº   {  sã   € ô �)‰)×
Ñ
 Ó
"€CØ"Ñ€Iˆzà�‰�˜JÓ'€AØ	ˆA�F‰F‹H‰€AÜ�7‰7�I˜q�>Ó"€DÜ	�‰�9�+Ó	€BØ	
�‰‹€BÜDÀTÈ1ÈbÐRTÐVWÓXÐÜŸV™V A§I¡I£K§M¡M°1·9±9³;Ó?Ø�YÑñÐô Ð-Ð/EÔFô 2Ð2GÈÓU€OÜÐ-¨s°_ÀaÑ5GÑ/GÕHr9   c            	      óN  — d} t        t        j                  j                  d«      «      }t        D ]è  }|j
                  |   }|dk(  r7t        j                  |D �cg c]  }t        j                  |«      ‘Œ c}«      }na|dk(  rt        j                  |«      }nF|dk(  r7t        j                  |D �cg c]  }t        j                  |«      ‘Œ c}«      }n
|dk(  r|| z  }t        t        ||«      || ¬«      }t        |dt        j                  «      z  «       Œê y c c}w c c}w )	Nr>   r   r   r   r   r   )r,   g      à¿)r;   r    r!   r"   rK   rH   rF   r   ÚdetÚprodr   r   r   Úlog)r,   rv   rQ   rP   r§   Úpredected_detÚexpected_dets          r7   Útest_compute_log_det_choleskyrÁ   ‘  sý   € Ø€JÜœ2Ÿ9™9×0Ñ0°Ó3Ó4€Iä%ò Nˆ
Ø×*Ñ*¨:Ñ6ˆ
à˜ÒÜŸH™HÀÖ%L¸#¤f§j¡j°¥oÒ%LÓM‰MØ˜6Ò!Ü"ŸJ™J zÓ2‰MØ˜6Ò!ÜŸH™H¸jÖ%I°s¤b§g¡g¨c¥lÒ%IÓJ‰MØ˜;Ò&Ø&¨
Ñ2ˆMô 1Ü'¨
°JÓ?ØØ!ô
ˆô
 	" ,°´r·v±v¸mÓ7LÑ0LÕMñ%Nùò &Mùò &Js   ÁD
Â2D"
c                 ó2  — t        j                  t        | «      t        |«      f«      }t        j                  |«      }t	        t        ||«      «      D ]@  \  }\  }}t        j                  j                  | ||«      j                  d¬«      |d d …|f<   ŒB |S )Nri   r”   )
r    ÚemptyÚlenr—   r#   r$   r   r’   ÚlogpdfrE   )r2   r.   Úcovarsrž   ÚstdsÚirœ   Ústds           r7   Ú_naive_lmvnpdf_diagrÊ   ª  s‚   € Ü�8‰8”S˜“VœS ›ZÐ(Ó)€DÜ�7‰7�6‹?€DÜ#¤C¨¨tÓ$4Ó5ò A‰ˆ‰;ˆD�#Ü—Z‘Z×&Ñ& q¨$°Ó4×8Ñ8¸aÐ8Ó@ˆŠQ�ˆTŠ
ðAà€Kr9   c                  ó@  — ddl m}  t        j                  j	                  d«      }t        |«      }d}|j                  }|j                  }|j                  }|j                  ||«      }|j                  ||«      }t        |||«      }	t        j                  |D �
cg c]-  }
t        j                  dt        j                  |
«      z  «      ‘Œ/ c}
«      } | |||d«      }t        ||	«       dt        j                  |«      z  } | |||d«      }t        ||	«       t        j                  |D �
cg c]  }
|
‘Œ c}
«      j                  d¬«      }t        j                  t        j                  d|z  «      «      }t        |||g|z  «      }	 | |||d«      }t        ||	«       |j                  d	¬«      }dt        j                  |j                  d	¬«      «      z  }t        |||D �cg c]  }|g|z  ‘Œ
 c}«      }	 | |||d
«      }t        ||	«       y c c}
w c c}
w c c}w )Nr   )Ú_estimate_log_gaussian_probrŽ   rA   r   r   r”   r   ri   r   )Ú!sklearn.mixture._gaussian_mixturerÌ   r    r!   r"   r;   r,   rC   r.   rD   rÊ   rF   r   r—   r   rœ   )rÌ   r1   rv   r+   r,   rC   r.   Úcovars_diagr2   Úlog_prob_naiveÚxÚ
precs_fullÚlog_probÚprecs_chol_diagÚcovars_tiedÚ
precs_tiedÚcovars_sphericalÚprecs_sphericalrR   s                      r7   Ú'test_gaussian_mixture_log_probabilitiesrØ   ²  së  € ÝMô �)‰)×
Ñ
 Ó
"€CÜ˜3“€IØ€IØ×%Ñ%€JØ×)Ñ)€Là�O‰O€EØ—(‘(˜<¨Ó4€KØ�‰�˜JÓ'€AÜ(¨¨E°;Ó?€Nô —‘¸kÖJ¸œ2Ÿ7™7 3¬¯©°«Ñ#3Õ4ÒJÓK€Já*¨1¨e°ZÀÓH€HÜ˜h¨Ô7ð œBŸG™G KÓ0Ñ0€OÙ*¨1¨e°_ÀfÓM€HÜ˜h¨Ô7ô —(‘( {Ö3 !šAÒ3Ó4×9Ñ9¸qÐ9ÓA€KÜ—‘œŸ™  {Ñ!2Ó3Ó4€Jä(¨¨E°K°=À<Ñ3OÓP€NÙ*¨1¨e°ZÀÓH€Hä˜h¨Ô7ð #×'Ñ'¨QÐ'Ó/ÐØœBŸG™G K×$4Ñ$4¸!Ð$4Ó$<Ó=Ñ=€OÜ(Ø	ˆ5Ð-=Ö>¨�A�3˜Ó#Ò>ó€Nñ +¨1¨e°_ÀkÓR€HÜ˜h¨Õ7ùò5 Kùò 4ùò ?s   Â2HÄ-	HÇ%Hc            	      ót  — t         j                  j                  d«      } t        | d¬«      }|j                  }|j
                  }|j                  }| j                  ||«      }t        D ]Í  }|j                  }|j                  }|j                  |   }	t        || |||	|¬«      }
|
j                  |«       |
j                  |«      }t        |j!                  d¬«      t        j"                  |«      «       t%        |
j&                  |«       t%        |
j(                  |«       t%        |
j*                  |	«       ŒÏ y )Nr   é   ©rO   ©rC   r?   rl   r~   r†   r0   ri   r”   )r    r!   r"   r;   r+   r,   rC   rD   rK   r-   r.   r/   r   rd   Úpredict_probar   rE   r…   r   rl   r~   r†   )r1   rv   r+   r,   rC   r2   rQ   r-   r.   r/   rw   rž   s               r7   Ú,test_gaussian_mixture_estimate_log_prob_resprÞ   â  s  € ä
�)‰)×
Ñ
 Ó
"€CÜ˜3 aÔ(€IØ×#Ñ#€IØ×%Ñ%€JØ×)Ñ)€Là�‰�˜JÓ'€AÜ%ò :ˆ
Ø×#Ñ#ˆØ—‘ˆØ×)Ñ)¨*Ñ5ˆ
ÜØ%ØØ ØØ&Ø&ô
ˆð 	
�‰ˆaŒØ�‰˜qÓ!ˆÜ! $§(¡(° (Ó"2´B·G±G¸IÓ4FÔGÜ˜1Ÿ>™>¨7Ô3Ü˜1Ÿ<™<¨Ô/Ü˜1×,Ñ,¨jÕ9ñ#:r9   c            	      ób  — t         j                  j                  d«      } t        | «      }t        D ]ð  }|j
                  |   }|j                  }t        |j                  | |j                  |j                  |j                  |   |¬«      }d}t        j                  t        |¬«      5  |j                  |«       d d d «       |j!                  |«       |j                  |«      }|j#                  |«      j%                  d¬«      }t'        ||«       t)        ||«      dkD  rŒðJ ‚ y # 1 sw Y   ŒlxY w)Nr   rÜ   úsThis GaussianMixture instance is not fitted yet. Call 'fit' with appropriate arguments before using this estimator.rj   ri   r”   çffffffî?)r    r!   r"   r;   rK   r2   rM   r   rC   r-   r.   r/   rq   rr   r   Úpredictrd   rÝ   Úargmaxr   r   )	r1   rv   rQ   r2   rM   rw   ry   ÚY_predÚY_pred_probas	            r7   Ú+test_gaussian_mixture_predict_predict_probaræ   ÿ  s  € Ü
�)‰)×
Ñ
 Ó
"€CÜ˜3“€IÜ%ò 5ˆ
Ø�K‰K˜
Ñ#ˆØ�K‰KˆÜØ"×/Ñ/ØØ"×*Ñ*Ø —‘Ø%×0Ñ0°Ñ<Ø&ô
ˆðFð 	ô �]‰]œ>°Ô5ñ 	Ø�I‰I�aŒL÷	ð 	
�‰ˆaŒØ—‘˜1“ˆØ—‘ qÓ)×0Ñ0°aÐ0Ó8ˆÜ˜6 <Ô0Ü" 1 fÓ-°Ó4Ð4Ð4ñ15÷"	ð 	ús   Â(D%Ä%D.	zignore:.*did not converge.*zseed, max_iter, tol))r   r>   çH¯¼šò×z>)ri   r>   r^   )r\   é,  rç   )é   rè   r^   c                 óæ  — t         j                  j                  | «      }t        |«      }t        D ]¾  }|j
                  |   }|j                  }t        |j                  ||j                  |j                  |j                  |   |||¬«      }t        j                  |«      }	|	j                  |«      j                  |«      }
|j!                  |«      }t#        |
|«       t%        ||«      dkD  rŒ¾J ‚ y )N)rC   r?   rl   r~   r†   r0   ra   r_   rá   )r    r!   r"   r;   rK   r2   rM   r   rC   r-   r.   r/   ÚcopyÚdeepcopyrd   râ   Úfit_predictr   r   )Úseedra   r_   r1   rv   rQ   r2   rM   rw   ÚfÚY_pred1ÚY_pred2s               r7   Ú!test_gaussian_mixture_fit_predictrò     sÙ   € ô �)‰)×
Ñ
 Ó
%€CÜ˜3“€IÜ%ò 6ˆ
Ø�K‰K˜
Ñ#ˆØ�K‰KˆÜØ"×/Ñ/ØØ"×*Ñ*Ø —‘Ø%×0Ñ0°Ñ<Ø&ØØô	
ˆô �M‰M˜!ÓˆØ—%‘%˜“(×"Ñ" 1Ó%ˆØ—-‘- Ó"ˆÜ˜7 GÔ,Ü" 1 gÓ.°Ó5Ð5Ð5ñ'6r9   c                  óÚ   — t         j                  j                  d«      j                  dd«      } t	        ddd¬«      }|j                  | «      }|j                  | «      }t        ||«       y )Nr   éè  rÚ   )rC   r`   r?   )r    r!   r"   Úrandnr   rí   râ   r   )r2   ÚgmÚy_pred1Úy_pred2s       r7   Ú(test_gaussian_mixture_fit_predict_n_initrù   @  sV   € ä
�	‰	×Ñ˜aÓ ×&Ñ& t¨QÓ/€AÜ	 a°ÀÔ	B€BØ�n‰n˜QÓ€GØ�j‰j˜‹m€GÜ�w Õ(r9   c            	      óÌ  — t         j                  j                  d«      } t        | «      }|j                  }|j
                  }t        D �]  }|j                  |   }t        |dd| |¬«      }|j                  |«       t        t        j                  |j                  «      t        j                  |j                  «      dd¬«       |j                  d d …df   j                  «       }|j                   d d …df   j                  «       }t        |j                  |   |j                   |   dd¬«       |dk(  r|j"                  }	|j$                  d   }
�ng|dk(  rKt        j&                  |j"                  g|z  «      }	t        j&                  |j$                  d   g|z  «      }
�n|d	k(  rŠt        j&                  |j"                  D �cg c]  }t        j(                  |«      |z  ‘Œ c}«      }	t        j&                  |j$                  d	   D �cg c]  }t        j(                  |«      |z  ‘Œ c}«      }
nˆ|d
k(  rƒt        j&                  |j"                  D �cg c]  }t        j*                  |«      ‘Œ c}«      }	t        j&                  |j$                  d
   D �cg c]  }t        j*                  |«      ‘Œ c}«      }
t        j,                  	dd¬«      j                  «       }t        j,                  
dd¬«      j                  «       }t/        ||«      D ]9  \  }}t1        «       }|
|   |_        t        |j5                  |	|   «      dd¬«       Œ; �Œ y c c}w c c}w c c}w c c}w )Nr   é   ©rC   r`   rb   r?   r0   r^   g{®Gáz„?)ÚrtolÚatolr   r   r   r   ri   r>   )Úaxis1Úaxis2g333333Ã?)rþ   )r    r!   r"   r;   r,   rC   rK   r2   r   rd   r   ÚsortÚweights_r-   Úmeans_Úargsortr.   Úprecisions_r/   rF   r'   r   Útracer$   r   r­   r™   )r1   rv   r,   rC   rQ   r2   rw   Úarg_idx1Úarg_idx2Ú	prec_predÚ	prec_testr6   ÚdrR   Úhr£   s                   r7   Útest_gaussian_mixture_fitr  I  s½  € ä
�)‰)×
Ñ
 Ó
"€CÜ˜3“€IØ×%Ñ%€JØ×)Ñ)€Lä%ó +Iˆ
Ø�K‰K˜
Ñ#ˆÜØ%ØØØØ&ô
ˆð 	
�‰ˆaŒô 	Ü�G‰G�A—J‘JÓ¤§¡¨×):Ñ):Ó!;À#ÈDõ	
ð —8‘8šA˜q˜D‘>×)Ñ)Ó+ˆØ—?‘?¢1 a 4Ñ(×0Ñ0Ó2ˆÜØ�H‰H�XÑ 	§¡°Ñ 9ÀÈ$õ	
ð ˜ÒØŸ™ˆIØ!×,Ñ,¨VÑ4ŠIØ˜6Ò!ÜŸ™ !§-¡- °<Ñ!?Ó@ˆIÜŸ™ )×"6Ñ"6°vÑ">Ð!?À,Ñ!NÓOŠIØ˜;Ò&ÜŸ™À!Ç-Á-Ö!P¸Q¤"§&¡&¨Ó"4°qÓ"8Ò!PÓQˆIÜŸ™Ø1:×1EÑ1EÀkÑ1RÖS¨A”—‘˜
Ó# aÓ'ÒSó‰Ið ˜6Ò!ÜŸ™°a·m±mÖ!D°¤"§'¡'¨!¥*Ò!DÓEˆIÜŸ™°i×6JÑ6JÈ6Ñ6RÖ!S°¤"§'¡'¨!¥*Ò!SÓTˆIä—8‘8˜I¨Q°aÔ8×@Ñ@ÓBˆÜ—8‘8˜I¨Q°aÔ8×@Ñ@ÓBˆÜ˜ (Ó+ò 	I‰DˆAˆqÜ&Ó(ˆDØ(¨™|ˆDÔä˜DŸO™O¨I°a©LÓ9¸1À4ÖHò		IñO+Iùò: "QùâSùò "EùÚ!Ss   ÇM
ÈM
ÉM
ÊM!
c                  ó  — t         j                  j                  d«      } t        | «      }|j                  }d}t
        D ]Ã  }|j                  |   }t        |dd| |¬«      }g }t        |«      D ]3  }|j                  |«       |j                  |j                  |«      «       Œ5 t        j                  |«      }t        ||d| |¬«      }	|	j                  |«       t        |j                  «       |	j                  |«      «       ŒÅ y )Nr   r[   ri   rü   )r    r!   r"   r;   rC   rK   r2   r   rG   rd   r%   ÚscorerF   r   rt   )
r1   rv   rC   r`   rQ   r2   rw   Úllr3   Úg_bests
             r7   Ú%test_gaussian_mixture_fit_best_paramsr  ~  së   € Ü
�)‰)×
Ñ
 Ó
"€CÜ˜3“€IØ×)Ñ)€LØ€FÜ%ò 7ˆ
Ø�K‰K˜
Ñ#ˆÜØ%ØØØØ&ô
ˆð ˆÜ�v“ò 	"ˆAØ�E‰E�!ŒHØ�I‰I�a—g‘g˜a“jÕ!ð	"ô �X‰X�b‹\ˆÜ Ø%ØØØØ&ô
ˆð 	�
‰
�1ŒÜ˜BŸF™F›H f§l¡l°1£oÕ6ñ-7r9   c            	      óT  — t         j                  j                  d«      } t        | d¬«      }|j                  }d}t
        D ]Y  }|j                  |   }t        |d|d| |¬«      }d}t        j                  t        |¬«      5  |j                  |«       d d d «       Œ[ y # 1 sw Y   ŒfxY w)Nr   ri   rÛ   ©rC   r`   ra   rb   r?   r0   zˆBest performing initialization did not converge. Try different init parameters, or increase max_iter, tol, or check for degenerate data.rj   )r    r!   r"   r;   rC   rK   r2   r   rq   Úwarnsr
   rd   )r1   rv   rC   ra   rQ   r2   rw   ry   s           r7   Ú-test_gaussian_mixture_fit_convergence_warningr  œ  s«   € Ü
�)‰)×
Ñ
 Ó
"€CÜ˜3 aÔ(€IØ×)Ñ)€LØ€HÜ%ò ˆ
Ø�K‰K˜
Ñ#ˆÜØ%ØØØØØ&ô
ˆð1ð 	ô
 �\‰\Ô,°CÔ8ñ 	Ø�E‰E�!ŒH÷	ð 	ñ÷	ð 	ús   ÂBÂB'	c                  óH  — t         j                  j                  d«      } d\  }}}| j                  ||«      }t        D ]b  }t        ||d¬«      j                  |«      j                  |«      }t        ||dd¬«      j                  |«      j                  |«      }||k\  rŒbJ ‚ y )Nr   ©rU   rÚ   r>   rƒ   rÚ   ©rC   r0   r?   r`   )r    r!   r"   rõ   rK   r   rd   r  )r1   r+   r,   rC   r2   Úcv_typeÚtrain1Útrain2s           r7   Útest_multiple_initr  ´  s©   € ä
�)‰)×
Ñ
 Ó
"€CØ*2Ñ'€Iˆz˜<Ø�	‰	�)˜ZÓ(€AÜ"ò  ˆäØ)¸7ÐQRô÷ ‰S�‹Vß‰U�1‹Xð 	ô Ø)Ø 'ØØô	÷ ‰S�‹Vß‰U�1‹Xð 	ð ˜ÓÐÐñ% r9   c                  ó   — t         j                  j                  d«      } d\  }}}| j                  ||«      }dddddœ}t        D ]7  }t        ||| ¬«      j                  |«      }|j                  «       ||   k(  rŒ7J ‚ y )	Nr   r  é   é   é   é)   r@   rƒ   )r    r!   r"   rõ   rK   r   rd   Ú_n_parameters)r1   r+   r,   rC   r2   Ún_paramsr  rw   s           r7   Ú"test_gaussian_mixture_n_parametersr%  Î  sˆ   € ä
�)‰)×
Ñ
 Ó
"€CØ*2Ñ'€Iˆz˜<Ø�	‰	�)˜ZÓ(€AØ¨°RÀÑD€HÜ"ò 6ˆÜØ%°wÈSô
ç
‰#ˆa‹&ð 	
ð �‰Ó  H¨WÑ$5Ó5Ð5Ð5ñ	6r9   c                  óH  — t         j                  j                  d«      } d\  }}}| j                  ||«      }t	        |d| ¬«      j                  |«      j                  |«      }dD ]:  }t	        ||| ¬«      j                  |«      j                  |«      }t        ||«       Œ< y )Nr   )éd   ri   ri   r   rƒ   )r   r   r   )r    r!   r"   rõ   r   rd   Úbicr   )r1   r+   Ún_dimrC   r2   Úbic_fullr0   r(  s           r7   Útest_bic_1d_1componentr+  Û  s£   € ô �)‰)×
Ñ
 Ó
"€CØ%.Ñ"€Iˆu�lØ�	‰	�)˜UÓ#€AäØ%°vÈCô	
÷ 
‰ˆQ‹ß	‰ˆQ‹ð ð 9ò 
+ˆäØ)Ø /Ø ô÷
 ‰S�‹Vß‰S�‹Vð 	ô 	˜H cÕ*ñ
+r9   c                  ó²  — t         j                  j                  d«      } d\  }}}| j                  ||«      }dt	        t        j
                  |j                  d¬«      «      |dt        j                  dt         j                  z  «      z   z  z   z  }t        D ]½  }t        ||| d¬«      }|j                  |«       d|z  |z  d|j                  «       z  z   }d|z  |z  t        j                  |«      |j                  «       z  z   }	|t        j                  |«      z  }
|j                  |«      |z
  |z  |
k  sJ ‚|j                  |«      |	z
  |z  |
k  rŒ½J ‚ y )	Nr   )rU   r\   r>   r=   ri   )Úbiasr>   rT   )rC   r0   r?   ra   )r    r!   r"   rõ   r   r§   r›   r¾   ÚpirK   r   rd   r#  r—   Úaicr(  )r1   r+   r,   rC   r2   Úsghr  rw   r/  r(  Úbounds              r7   Útest_gaussian_mixture_aic_bicr2  õ  s?  € ä
�)‰)×
Ñ
 Ó
"€CØ*2Ñ'€Iˆz˜<Ø�	‰	�)˜ZÓ(€Aà
Ü”B—F‘F˜1Ÿ3™3 QÔ'Ó(¨:¸¼R¿V¹VÀAÌÏÉÁIÓ=NÑ9NÑ+OÑOñ€Cô #ò 4ˆÜØ%Ø#ØØô	
ˆð 	
�‰ˆaŒØ�)‰m˜cÑ! A¨¯©Ó(9Ñ$9Ñ9ˆØ�)‰m˜cÑ!¤B§F¡F¨9Ó$5¸¿¹Ó8IÑ$IÑIˆØœRŸW™W YÓ/Ñ/ˆØ—‘�a“˜3‘ )Ñ+¨eÒ3Ð3Ð3Ø—‘�a“˜3‘ )Ñ+¨eÓ3Ð3Ð3ñ4r9   c            	      óª  — t         j                  j                  d«      } t        | «      }|j                  }t
        D ]„  }|j                  |   }t        |dd| |d¬«      }t        |dd| |d¬«      }t        j                  }t        «       t        _	        	 |j                  |«       |j                  |«       |t        _	        Œ† y # |t        _	        w xY w)Nr   ri   )rC   r`   rb   r?   r0   Úverboser>   )r    r!   r"   r;   rC   rK   r2   r   ÚsysÚstdoutr   rd   )r1   rv   rC   rQ   r2   rw   r  Ú
old_stdouts           r7   Útest_gaussian_mixture_verboser8    sÂ   € Ü
�)‰)×
Ñ
 Ó
"€CÜ˜3“€IØ×)Ñ)€LÜ%ò $ˆ
Ø�K‰K˜
Ñ#ˆÜØ%ØØØØ&Øô
ˆô Ø%ØØØØ&Øô
ˆô —Z‘Zˆ
Ü“ZŒŒ
ð	$Ø�E‰E�!ŒHØ�E‰E�!ŒHà#ŒC�Jñ1$øð0 $ŒC�Jús   Â"CÃCrî   )r   ri   r>   c           	      óL  — | }t         j                  j                  |«      }d\  }}}|j                  ||«      }t	        |ddd|d¬«      }t	        |ddd|d¬«      }|j                  |«       |j                  |«      j                  |«      }	|j                  |«      j                  |«      }
t        |j                  |j                  «       t        |j                  |j                  «       t        |j                  |j                  «       |
|	kD  sJ ‚t	        |ddd|dd	¬
«      }t	        |ddd|dd	¬
«      }|j                  |«       |j                  rJ ‚|j                  |«       t        d«      D ]!  }|j                  |«       |j                  sŒ! n |j                  sJ ‚y )Nr«   ri   r>   r   F)rC   r`   ra   rb   r?   Ú
warm_startTrÚ   ç�íµ ÷Æ°>)rC   r`   ra   rb   r?   r:  r_   rô   )r    r!   r"   rD   r   rd   r  r   r  r  r  Ú
converged_rG   )rî   r?   r1   r+   r,   rC   r2   rw   r  Úscore1Úscore2r3   s               r7   Útest_warm_startr?  ,  s�  € ð €LÜ
�)‰)×
Ñ
 Ó
-€CØ*3Ñ'€Iˆz˜<Ø�‰�˜JÓ'€Aô 	Ø!ØØØØ!Øô	€Aô 	Ø!ØØØØ!Øô	€Að ‡E�Eˆ!„HØ�U‰U�1‹X�^‰^˜AÓ€FØ�U‰U�1‹X�^‰^˜AÓ€Fä˜Ÿ
™
 A§J¡JÔ/Ü˜Ÿ™ !§(¡(Ô+Ü˜Ÿ™ q§}¡}Ô5Ø�FŠ?Ðˆ?ô 	Ø!ØØØØ!ØØô	€Aô 	Ø!ØØØØ!ØØô	€Að ‡E�Eˆ!„HØ�|Š|ÐÐà‡E�Eˆ!„Hô �4‹[ò ˆØ	�‰ˆaŒØ�<‹<Ùðð �<Š<Ð‰<r9   z-ignore::sklearn.exceptions.ConvergenceWarningc                  óV  — t         j                  j                  d«      } t        | «      }|j                  }|j
                  d   }dD ]_  }t        |d|| ¬«      }t        d«      D ]!  }|j                  |«       |j                  sŒ! n |j                  sJ ‚||j                  k\  rŒ_J ‚ y )Nr   r   )ri   r>   rU   T)rC   r:  ra   r?   r'  )r    r!   r"   r;   rC   r2   r   rG   rd   r<  Ún_iter_)r1   rv   rC   r2   ra   re   r3   s          r7   Ú)test_convergence_detected_with_warm_startrB  q  s©   € ô �)‰)×
Ñ
 Ó
"€CÜ˜3“€IØ×)Ñ)€LØ�‰�FÑ€Aàò 'ˆÜØ%ØØØô	
ˆô �s“ò 	ˆAØ�G‰G�AŒJØ�~‹~Ùð	ð �~Š~Ðˆ~Ø˜3Ÿ;™;Ó&Ð&Ð&ñ'r9   c                  óæ  — d} t         j                  j                  d«      }t        |d¬«      }|j                  }|j
                  |    }t        |ddd|| ¬«      }d}t        j                  t        |¬«      5  |j                  |«       d d d «       t        j                  «       5  t        j                  d	t        «       |j                  |«       d d d «       |j                  |«      }|j!                  |«      j#                  «       }t%        ||«       t        |dd|| ¬
«      j                  |«      }	|	j                  |«      |j                  |«      kD  sJ ‚y # 1 sw Y   ŒÒxY w# 1 sw Y   Œ–xY w)Nr   r   é   rÛ   ri   r  rà   rj   Úignorerü   )r    r!   r"   r;   rC   r2   r   rq   rr   r   r  ÚwarningsÚcatch_warningsÚsimplefilterr
   rd   Úscore_samplesrœ   r   )
rQ   r1   rv   rC   r2   Úgmm1ry   Ú	gmm_scoreÚgmm_score_probaÚgmm2s
             r7   Ú
test_scorerN  ˆ  sR  € Ø€JÜ
�)‰)×
Ñ
 Ó
"€CÜ˜3 aÔ(€IØ×)Ñ)€LØ�‰�JÑ€Aô Ø!ØØØØØ"ô€Dð	=ð ô 
�‰”~¨SÔ	1ñ Ø�
‰
�1Œ÷ô 
×	 Ñ	 Ó	"ñ Ü×Ñ˜hÔ(:Ô;Ø�‰�Œ÷ð —
‘
˜1“€IØ×(Ñ(¨Ó+×0Ñ0Ó2€OÜ˜	 ?Ô3ô Ø!ØØØØ"ô÷ 
�cˆ!ƒfð 	ð �:‰:�a‹=˜4Ÿ:™: a›=Ò(Ð(Ñ(÷'ð ú÷ð ús   Á8EÂ&,E'ÅE$Å'E0c                  ó¸  — d} t         j                  j                  d«      }t        |d¬«      }|j                  }|j
                  |    }t        |dd|| ¬«      }d}t        j                  t        |¬«      5  |j                  |«       d d d «       |j                  |«      j                  |«      }|j                  d   |j                  k(  sJ ‚y # 1 sw Y   ŒHxY w)	Nr   r   rD  rÛ   ri   rü   rà   rj   )r    r!   r"   r;   rC   r2   r   rq   rr   r   rI  rd   rp   r+   )rQ   r1   rv   rC   r2   re   ry   Úgmm_score_sampless           r7   Útest_score_samplesrQ  ²  sÒ   € Ø€JÜ
�)‰)×
Ñ
 Ó
"€CÜ˜3 aÔ(€IØ×)Ñ)€LØ�‰�JÑ€Aô Ø!ØØØØ"ô€Cð	=ð ô 
�‰”~¨SÔ	1ñ Ø×Ñ˜!Ô÷ð Ÿ™ ›
×0Ñ0°Ó3ÐØ×"Ñ" 1Ñ%¨×)<Ñ)<Ò<Ð<Ñ<÷	ð ús   Á7CÃCc            
      ó   — t         j                  j                  d«      } t        | d¬«      }|j                  }t
        D ]Á  }|j                  |   }t        ||ddd| d¬«      }t         j                   }t        j                  «       5  t        j                  dt        «       t        d	«      D ]9  }|}|j                  |«      j                  |«      }||k\  sJ ‚|j                   sŒ9 n |j                   sJ ‚	 d d d «       ŒÃ y # 1 sw Y   ŒÎxY w)
Nr   rD  rÛ   Tri   rç   )rC   r0   rb   r:  ra   r?   r_   rE  iX  )r    r!   r"   r;   rC   rK   r2   r   ÚinfrF  rG  rH  r
   rG   rd   r  r<  )	r1   rv   rC   rQ   r2   re   Úcurrent_log_likelihoodr3   Úprev_log_likelihoods	            r7   Útest_monotonic_likelihoodrV  Ì  s  € ô �)‰)×
Ñ
 Ó
"€CÜ˜3 aÔ(€IØ×)Ñ)€Lä%ò "ˆ
Ø�K‰K˜
Ñ#ˆÜØ%Ø&ØØØØØô
ˆô #%§&¡& ÐÜ×$Ñ$Ó&ñ 	"Ü×!Ñ! (Ô,>Ô?ô ˜3“Zò �Ø&<Ð#Ø),¯©°«×)9Ñ)9¸!Ó)<Ð&Ø-Ð1DÒDÐDÐDà—>“>Ùðð —>’>Ð!‘>÷	"ð 	"ñ"÷	"ð 	"ús   ÂADÃ'DÄD	c                  ó‚  — t         j                  j                  d«      } d\  }}t        j                  t        j                  |dz  |f«      t        j
                  |dz  |f«      f«      }t        D ]³  }t        |d|| ¬«      }t        j                  «       5  t        j                  dt        «       t        j                  d«      }t        j                  t         |¬«      5  |j#                  |«       d d d «       |j%                  d¬	«      j#                  |«       d d d «       Œµ y # 1 sw Y   Œ5xY w# 1 sw Y   ŒÌxY w)
Nr   )r[   rÚ   r>   )rC   rb   r0   r?   rE  zØFitting the mixture model failed because some components have ill-defined empirical covariance (for instance caused by singleton or collapsed samples). Try to decrease the number of components, or increase reg_covar.rj   r;  )rb   )r    r!   r"   r*   r…   r˜   rK   r   rF  rG  rH  ÚRuntimeWarningrm   rn   rq   rr   rs   rd   Ú
set_params)r1   r+   r,   r2   rQ   re   ry   s          r7   Útest_regularisationrZ  î  s  € ô �)‰)×
Ñ
 Ó
"€CØ!Ñ€Iˆzä
�	‰	Ü	�‰�)˜q‘. *Ð-Ó	.´·±¸)Àq¹.È*Ð9UÓ0VÐWó	€Aô &ò 2ˆ
ÜØ"ØØ&Øô	
ˆô ×$Ñ$Ó&ñ 	2Ü×!Ñ! (¬NÔ;Ü—)‘)ð8óˆCô —‘œz°Ô5ñ Ø—‘˜”
÷ð �N‰N TˆNÓ*×.Ñ.¨qÔ1÷	2ð 	2ñ2÷ ð ú÷	2ð 	2ús%   ÂAD5Ã#D)Ã5)D5Ä)D2Ä.D5Ä5D>	c                  ó:  — t         j                  j                  d«      } t        | d¬«      }|j                  }t
        D ]Ú  }|j                  |   }t        ||| d¬«      }|j                  |«       |dk(  rHt        |j                  |j                  «      D ]$  \  }}t        t        j                  |«      |«       Œ& Œ|dk(  r4t        t        j                  |j                  «      |j                  «       Œ¸t        |j                  d|j                  z  «       ŒÜ y )	Nr   rD  rÛ   rÚ   r  r   r   rA   )r    r!   r"   r;   rC   rK   r2   r   rd   r$   r  Úcovariances_r   r   rI   )r1   rv   rC   rQ   r2   re   r¥   Úcovars           r7   Útest_propertyr^    sî   € Ü
�)‰)×
Ñ
 Ó
"€CÜ˜3 aÔ(€IØ×)Ñ)€Lä%ò Oˆ
Ø�K‰K˜
Ñ#ˆÜØ%Ø&ØØô	
ˆð 	�‰�Œ
Ø˜ÒÜ" 3§?¡?°C×4DÑ4DÓEò C‘��eÜ)¬&¯*©*°TÓ*:¸EÕBñCà˜6Ò!Ü%¤f§j¡j°·±Ó&AÀ3×CSÑCSÕTä% c§o¡o°s¸S×=MÑ=MÑ7MÕNñOr9   c                  ó   — t         j                  j                  d«      } t        | dd¬«      }|j                  |j
                  }}t        D �]�  }|j                  |   }t        ||| ¬«      }d}t        j                  t        |¬«      5  |j                  d«       d d d «       |j                  |«       d}t        j                  t        |¬«      5  |j                  d«       d d d «       d	}|j                  |«      \  }	}
t        |«      D �]#  }|d
k(  r?t!        |j"                  |   t        j$                  |	|
|k(     j&                  «      d¬«       ŒH|dk(  r<t!        |j"                  t        j$                  |	|
|k(     j&                  «      d¬«       Œ‰|dk(  rRt!        |j"                  |   t        j(                  t        j$                  |	|
|k(     j&                  «      «      d¬«       Œàt!        |j"                  |   t        j*                  |	|
|k(     |j,                  |   z
  «      d¬«       �Œ& t        j.                  t        |«      D �cg c]  }t        j0                  |	|
|k(     d«      ‘Œ  c}«      }t!        |j,                  |d¬«       |	j2                  ||fk(  sJ ‚t        dd«      D ])  }|j                  |«      \  }	}|	j2                  ||fk(  rŒ)J ‚ �Œ“ y # 1 sw Y   �ŒGxY w# 1 sw Y   �ŒxY wc c}w )Nr   rD  r\   )rO   rC   rƒ   z+This GaussianMixture instance is not fittedrj   zInvalid value for 'n_samples'i N  r   ri   )Údecimalr   r   r'  )r    r!   r"   r;   r,   rC   rK   r2   r   rq   rr   r   Úsamplerd   rs   rG   r   r\  r§   r›   r   Úvarr  rF   rœ   rp   )r1   rv   r,   rC   rQ   r2   re   ry   r+   ÚX_sÚy_srR   Úmeans_sÚsample_sizer3   s                  r7   Útest_samplerg  %  s’  € Ü
�)‰)×
Ñ
 Ó
"€CÜ˜3 a°aÔ8€IØ(×3Ñ3°Y×5KÑ5K�€Jä%ó 1:ˆ
Ø�K‰K˜
Ñ#ˆäØ%°zÐPSô
ˆð <ˆÜ�]‰]œ>°Ô5ñ 	Ø�J‰J�qŒM÷	à�‰�Œ
à-ˆÜ�]‰]œ:¨SÔ1ñ 	Ø�J‰J�qŒM÷	ð ˆ	Ø—:‘:˜iÓ(‰ˆˆSä�|Ó$ó 	ˆAØ˜VÒ#Ü)Ø×$Ñ$ QÑ'¬¯©°°C¸1±H±·±Ó)@È!öð ˜vÒ%Ü)Ø×$Ñ$¤b§f¡f¨S°¸±©]¯_©_Ó&=Àqöð ˜vÒ%Ü)Ø×$Ñ$ QÑ'¬¯©´·±¸¸CÀ1¹H¹¿¹Ó1HÓ)IÐSTöô *Ø×$Ñ$ QÑ'Ü—F‘F˜3˜s a™x™=¨3¯:©:°a©=Ñ8Ó9Ø÷ð	ô( —(‘(¼uÀ\Ó?RÖS¸!œBŸG™G C¨¨q©¡M°1Õ5ÒSÓTˆÜ! #§*¡*¨g¸qÕAð �y‰y˜Y¨
Ð3Ò3Ð3Ð3ä   C›=ò 	:ˆKØ—Z‘Z Ó,‰FˆC�Ø—9‘9 ¨jÐ 9Ó9Ð9Ð9ò	:ñ_1:÷	ñ 	ú÷
	ñ 	üò6 Ts   Â
K!ÃK.É#K;
Ë!K+	Ë.K8	c                  ó^  — t        d«      D ]Ÿ  } t        t        j                  j	                  | «      dd¬«      }|j
                  }|j                  d   }t        |dd| ¬«      j                  |«      }t        |dd| ¬«      j                  |«      }|j                  |j                  k\  rŒŸJ ‚ y )Né   rU   ri   )r+   rO   r   )rC   r`   ra   r?   r[   )
rG   r;   r    r!   r"   rC   r2   r   rd   Úlower_bound_)r?   rv   rC   r2   rJ  rM  s         r7   Ú	test_initrk  ^  s®   € ô ˜b›	ò 6ˆÜÜ�I‰I×!Ñ! ,Ó/¸2ÀQô
ˆ	ð !×-Ñ-ˆØ�K‰K˜ÑˆäØ%¨a¸!È,ô
ç
‰#ˆa‹&ð 	ô Ø%¨b¸1È<ô
ç
‰#ˆa‹&ð 	ð × Ñ  D×$5Ñ$5Ó5Ð5Ð5ñ6r9   c            
      ó’  — t         j                  j                  d«      } d}| j                  |df¬«      }t        j                  g d¢g d¢g d¢g d¢g d	¢g d
¢g«      }t        j                  g d¢«      }g d¢}t        dd||| t        |«      |d¬«      }|j                  |«       |j                  rJ ‚dD ]  }t        ||«      rŒJ ‚ y)zÛ`GaussianMixture`'s best_parameters, `n_iter_` and `lower_bound_`
    must be set appropriately in the case of divergence.

    Non-regression test for:
    https://github.com/scikit-learn/scikit-learn/issues/18216
    r   r]   r\   ©Úsize)gß¯ŒÝuå?g³ýºÕÐíÊ?gnÏ,¨€À?)gqz=|¸?gdUX'nâ?g.baË¼í?)g£Úê8à?gà—�ŸŸî?g½Í×�ƒ'¶?)g{á¼ÇÇ?g
 ³á?g(}I�^ÑÈ?)gLœähÝ?gtªã“M„Ö?gŽÈ§@.â?)g»YáŒ8ã?g›ïj4}_é?g$%ˆŸÈÈî?)g§(Ìÿ„.Ag_Sˆÿ„.Ag]°IN�@g¬òÅ•&™i@g’âçî¼/@gYa2¤i]U@)ç¡?ro  ç±?rp  ggfffffæ?gŸ™™™™™¹?r   ri   )r0   rb   r~   rl   r?   rC   r†   ra   )r  r  r\  Úprecisions_cholesky_rA  rj  N)
r    r!   r"   ÚuniformrF   r   rÄ   rd   r<  Úhasattr)Úrndr+   r2   r~   r†   rl   re   Úattrs           r7   Ú)test_gaussian_mixture_setting_best_paramsrv  r  sÜ   € ô �)‰)×
Ñ
 Ó
"€CØ€IØ�‰˜) Q˜ˆÓ(€Aô —‘âIÚHÚIÚJÚHÚGð	
ó	€Jô —h‘hò	
ó	€Oò€Lô Ø#ØØØ!ØÜ˜Ó&Ø'Øô	€Cð ‡G�GˆA„Jð �~Š~ÐÐðò "ˆô �s˜DÕ!Ð!Ð!ñ"r9   rc   )r!   Úrandom_from_dataz	k-means++Úkmeansc                 óX  — t         j                  j                  |«      }t        |d¬«      }|j                  }|j
                  d   }t        || |d¬«      }|j                  |«       |j                  }t        j                  |d¬«      D ]  \  }}	t        j                  ||	«      sŒJ ‚ y )NrÚ   rÛ   r   r   )rC   rc   r?   ra   r>   )Úr)r    r!   r"   r;   rC   r2   r   rd   r  Ú	itertoolsÚcombinationsÚallclose)
rc   Úglobal_random_seedr1   rv   rC   r2   re   r.   Úi_meanÚj_means
             r7   Útest_init_means_not_duplicatedr�  ·  sœ   € ô
 �)‰)×
Ñ
Ð 2Ó
3€CÜ˜3 aÔ(€IØ×)Ñ)€LØ�‰�FÑ€Aä
Ø!¨{ÈÐWXô€Cð ‡G�GˆA„Jà�J‰J€EÜ#×0Ñ0°¸!Ô<ò /‰ˆ�Ü—;‘;˜v vÕ.Ð.Ð.ñ/r9   c                 ó  — t         j                  j                  |«      }t        |d¬«      }|j                  }|j
                  d   }t        || |¬«      }|j                  |«       |j                  j                  ||j                  d   fk(  sJ ‚t        j                  |j                  d¬«      |j                  k  «      sJ ‚t        j                  |j                  |j                  d¬«      k  «      sJ ‚|j                  sJ ‚y )NrÚ   rÛ   r   )rC   rc   r?   ri   r   r”   )r    r!   r"   r;   rC   r2   r   rd   r  rp   Úallrt   ru   r<  )rc   r~  r1   rv   rC   r2   re   s          r7   Útest_means_for_all_initsr„  Ë  s×   € ô
 �)‰)×
Ñ
Ð 2Ó
3€CÜ˜3 aÔ(€IØ×)Ñ)€LØ�‰�FÑ€Aä
Ø!¨{Èô€Cð ‡G�GˆA„Jà�:‰:×Ñ ¨a¯g©g°a©jÐ9Ò9Ð9Ð9Ü�6‰6�!—%‘%˜Q�%“- 3§:¡:Ñ-Ô.Ð.Ð.Ü�6‰6�#—*‘* §¡¨1 £Ñ-Ô.Ð.Ð.Ø�>Š>Ð‰>r9   c                  ó  — t         j                  j                  d«      } t        | d¬«      }|j                  }|j
                  d   }ddgddgg}t        || |dd¬	«      }|j                  |«       t        |j                  |«       y )
Nr   rÚ   rÛ   r   rû   r]   é   r;  )rC   r?   r~   r_   ra   )
r    r!   r"   r;   rC   r2   r   rd   r   r  )r1   rv   rC   r2   r~   re   s         r7   Útest_max_iter_zeror‡  à  sƒ   € ô �)‰)×
Ñ
 Ó
"€CÜ˜3 aÔ(€IØ×)Ñ)€LØ�‰�FÑ€AØ�r�(˜R ˜HÐ%€JÜ
Ø!ØØØØô€Cð ‡G�GˆA„Jä�C—J‘J 
Õ+r9   c                  ó\  — d} t         j                  j                  d«      }|j                  | d«      t        j                  ddg«      z   }t        j                  ddgddgg«      }t        j
                  |j                  | d«      |«      }t        j                  ||g«      }d	\  }}}}	t        j                  |j                  d   |f«      }
t        |d
|	¬«      j                  |«      j                  }d
|
t        j                  |j                  d   «      |f<   t        ||
||¬«      \  }}}d
|z  }t        |||||	¬«      j                  |«      }t        ||||	¬«      j                  |«      }|j                  |j                  k(  sJ ‚t!        |j"                  |j"                  «       y)aü  Check that we properly initialize `precision_cholesky_` when we manually
    provide the precision matrix.

    In this regard, we check the consistency between estimating the precision
    matrix and providing the same precision matrix as initialization. It should
    lead to the same results with the same number of iterations.

    If the initialization is wrong then the number of iterations will increase.

    Non-regression test for:
    https://github.com/scikit-learn/scikit-learn/issues/16944
    rè   r   r>   rû   g        gffffffæ¿g      @gffffffæ?)r>   r   r;  r   ri   )Ú
n_clustersr`   r?   )rb   r0   )rC   r0   rb   r†   r?   )rC   r0   rb   r?   N)r    r!   r"   rõ   rF   rš   r*   r˜   rp   r   rd   Úlabels_Úaranger   r   rA  r   rq  )r+   r1   Úshifted_gaussianÚCÚstretched_gaussianr2   rC   r0   rb   r?   rž   Úlabelr3   rP   r†   Úgm_with_initÚgm_without_inits                    r7   Ú*test_gaussian_mixture_precisions_init_diagr’  ô  s¢  € ð €IÜ
�)‰)×
Ñ
 Ó
"€CØ—y‘y ¨AÓ.´·±¸2¸r¸(Ó1CÑCÐÜ
�‰�3˜�+  S˜zÐ*Ó+€AÜŸ™ §	¡	¨)°QÓ 7¸Ó;ÐÜ
�	‰	Ð#Ð%7Ð8Ó9€Að >PÑ:€L�/ 9¨lô �8‰8�Q—W‘W˜Q‘Z Ð.Ó/€Dä˜,¨q¸|ÔLß	‰ˆQ‹ß	‰ð 
ð
 *+€DŒ�‰�1—7‘7˜1‘:Ó	 Ð	%Ñ&Ü4Ø	ˆ4˜9°oôÑ€A€qˆ*ð ˜*‘n€Oä"Ø!Ø'ØØ'Ø!ô÷ 
�cˆ!ƒfð ô &Ø!Ø'ØØ!ô	÷
 
�cˆ!ƒfð ð ×"Ñ" l×&:Ñ&:Ò:Ð:Ð:ÜØ×)Ñ)¨?×+OÑ+Oõr9   c                 óè   — t         j                  j                  | «      }|j                  ||f«      }|j                  ||f«      }||j	                  d¬«      dd…t         j
                  f   z  }||fS )z/Randomly generate samples and responsibilities.ri   r”   N)r    r!   r"   Úrandom_samplerE   r¬   )rî   r+   r,   rC   Úrsr2   rž   s          r7   Ú_generate_datar–  1  sk   € ä	�‰×	Ñ	˜tÓ	$€BØ
×Ñ˜) ZÐ0Ó1€AØ×Ñ˜Y¨Ð5Ó6€DØˆD�H‰H˜!ˆHÓšQ¤§
¡
˜]Ñ+Ñ+€DØˆdˆ7€Nr9   c                 óØ   — d}t        | |||«      \  }}}t        ||«      }|j                  \  }}	t        |	|¬«      }
||||f}|
j	                  |«       |
j
                  |
j                  fS )zfCalculate precision matrix of X and its Cholesky decomposition
    for the given covariance type.
    r;  )rC   r0   )r   r   rp   r   Ú_set_parametersr  rq  )r2   rž   r0   rb   r-   r.   rH   Úprecisions_choleskyr3   rC   re   Úparamss               r7   Ú_calculate_precisionsr›  :  s   € ð €IÜ"?Ø	ˆ4�˜Oó#Ñ€GˆU�Kô 6°kÀ?ÓSÐà—j‘j�O€A€|ô
  |À_Ô
U€CØ�u˜kÐ+>Ð?€FØ×Ñ˜ÔØ�?‰?˜C×4Ñ4Ð4Ð4r9   r0   c                 ó¶   — t        |ddd¬«      \  }}t        ||| «      \  }}t        | |¬«      }|j                  ||«       |j                  }t        ||«       y)zNon-regression test for #26415.r'  r\   ré   )rî   r+   r,   rC   )r0   r†   N)r–  r›  r   Ú_initializerq  r   )r0   r~  r2   rž   r†   Údesired_precisions_choleskyre   Úactual_precisions_choleskys           r7   Ú%test_gaussian_mixture_precisions_initr   O  sq   € ô ØØØØô	�G€A€tô 4IØ	ˆ4�ó4Ñ0€OÐ0ô Ø'¸ô€Cð ‡O�O�A�tÔØ!$×!9Ñ!9ÐÜÐ.Ð0KÕLr9   c                  ó  — t         j                  j                  d«      } | j                  t        j                  d«      t        j
                  d«      d¬«      }t        d¬«      }|j                  |«      j                  «        y)za
    Non-regression test for #23032 ensuring 1-component GM works on only a
    few samples.
    r   r>   r\   rm  ri   rh   N)	r    r!   r"   r&   r˜   Úidentityr   rd   ra  )r1   r2   rö   s      r7   Ú-test_gaussian_mixture_single_component_stabler£  e  s]   € ô
 �)‰)×
Ñ
 Ó
"€CØ×Ñ¤§¡¨£¬R¯[©[¸«^À!ÐÓD€AÜ	 aÔ	(€BØ‡F�Fˆ1ƒI×ÑÕr9   c                 ó¶  — t        t        ¬«      }| j                  t        j                  j
                  d|«       t        j                  j                  |«      }t        |«      }t        |j                  |j                  |j                  |j                  d   |¬«      }|j                  |j                   d   «       |j"                  |j$                  k(  sJ ‚y)z�When all init parameters are provided, the Gaussian parameters
    are not estimated.

    Non-regression test for gh-26015.
    )Úside_effectr   r   )rC   rl   r~   r†   r?   N)r   r   ÚsetattrÚsklearnÚmixtureÚ_gaussian_mixturer    r!   r"   r;   r   rC   r-   r.   r/   rd   r2   Ú
call_countrA  )Úmonkeypatchr~  Úmockr1   rv   rö   s         r7   ÚDtest_gaussian_mixture_all_init_does_not_estimate_gaussian_parametersr­  p  s²   € ô Ô9Ô:€DØ×ÑÜ�‰×)Ñ)Ð+JÈDôô �)‰)×
Ñ
Ð 2Ó
3€CÜ˜3“€Iä	Ø×+Ñ+Ø×&Ñ&Ø—?‘?Ø!×,Ñ,¨VÑ4Øô
€Bð ‡F�Fˆ9�;‰;�vÑÔð �?‰?˜bŸj™jÒ(Ð(Ñ(r9   )\rë   r{  rm   r5  rF  Úior   Úunittest.mockr   Únumpyr    rq   Úscipyr   r   r§  Úsklearn.clusterr   Úsklearn.covariancer   Úsklearn.datasetsr	   Úsklearn.exceptionsr
   r   Úsklearn.metrics.clusterr   Úsklearn.mixturer   rÍ   r   r   r   r   r   r   r   Úsklearn.utils._testingr   r   r   r   Úsklearn.utils.extmathr   rK   r8   r;   rf   r|   r€   r‹   r©   r°   rµ   rº   rÁ   rÊ   rØ   rÞ   ræ   ÚmarkÚfilterwarningsÚparametrizerò   rù   r  r  r  r  r%  r+  r2  r8  r?  rB  rN  rQ  rV  rZ  r^  rg  rk  rv  r�  r„  r‡  r’  r–  r›  r   r£  r­  rY   r9   r7   ú<module>r½     su  ðó Û Û 	Û 
Û Ý Ý ã Û ß ã Ý "Ý 2Ý ,ß AÝ 7Ý +÷÷ ñ ÷ó õ .â7€ò÷>2
ñ 2
òj*ò6-0ò`,ò.6Pòr'5òT5ò<Dò2Iò,Nò2ò*8ò`:ò:5ð< ‡�×ÑÐ9Ó:Ø‡�×ÑØòóñ6óó ;ð6ò2)ò2Iòj7ò<ò0 ò4
6ò+ò44ò0$ð> ‡�×ÑÐ9Ó:Ø‡�×Ñ˜ Ó+ñ@ó ,ó ;ð@ðF ‡�×ÑÐKÓLñ'ó Mð'ò,')òT=ò4"òD2ò@Oò.6:ðr ‡�×ÑÐKÓLñ6ó Mð6ò&B"ðJ ‡�×ÑØÒHóñ/óð/ð" ‡�×ÑØÒHóñóðò$,ò(:òzò5ð* ‡�×ÑÐ*¨OÓ<ñMó =ðMò*ó)r9   