Ë L i6ãóŒ—ddlZddlmZmZddlZddlmZmZmZddlm Z m Z ddl m Z ddl mZmZddlmZdgZGd „de «Zy) éN)ÚOptionalÚUnion)ÚinfÚnanÚTensor)ÚChi2Ú constraints)Ú Distribution)Ú_standard_normalÚ broadcast_all)Ú_sizeÚStudentTc óT‡—eZdZdZej ej ej dœZej ZdZ e de fd„«Z e de fd„«Z e de fd„«Z dd ee efd ee efd ee efd eeddf ˆfd „ Zdˆfd„ Zej,«fdede fd„Zd„Zd„ZˆxZS)ra Creates a Student's t-distribution parameterized by degree of freedom :attr:`df`, mean :attr:`loc` and scale :attr:`scale`. Example:: >>> # xdoctest: +IGNORE_WANT("non-deterministic") >>> m = StudentT(torch.tensor([2.0])) >>> m.sample() # Student's t-distributed with degrees of freedom=2 tensor([ 0.1046]) Args: df (float or Tensor): degrees of freedom loc (float or Tensor): mean of the distribution scale (float or Tensor): scale of the distribution )ÚdfÚlocÚscaleTÚreturncó†—|jjtj¬«}t||j dk<|S)N©Ú memory_formaté)rÚcloneÚtorchÚcontiguous_formatrr©ÚselfÚms úb/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/torch/distributions/studentT.pyÚmeanz StudentT.mean*s2€à H‰HN‰N¬×)@Ñ)@ˆNÓ AˆÜˆˆ$'‰'Q‰,‰Øˆócó—|jS©N)r)rs rÚmodez StudentT.mode0s €àx‰xˆr có—|jjtj¬«}|j|jdkDj d«|j|jdkDz|j|jdkDdz z ||jdkD<t ||jdk|jdkDz<t||jdk<|S)Nrér)rrrrrÚpowrrrs rÚvariancezStudentT.variance4sº€à G‰GM‰M¬×(?Ñ(?ˆMÓ @ˆà J‰Jt—w‘w ‘{Ñ #× 'Ñ '¨Ó *Øg‰gd—g‘g ‘kÑ"ñ #àw‰wt—w‘w ‘{Ñ# aÑ'ñ )ð ˆ$'‰'A‰+‰ô -0ˆˆ47‰7a‰<˜DŸG™G a™KÑ (Ñ)܈ˆ$'‰'Q‰,‰Øˆr NrrrÚ validate_argscóЕ—t|||«\|_|_|_t |j«|_|jj «}t‰|!||¬«y)N©r() r rrrrÚ_chi2ÚsizeÚsuperÚ__init__)rrrrr(Ú batch_shapeÚ __class__s €rr.zStudentT.__init__@sPø€ô)6°b¸#¸uÓ(EÑ%ˆŒ”˜4œ:ܘ$Ÿ'™'“]ˆŒ Ø—g‘g—l‘l“nˆ Ü ‰Ñ˜°MÐÕBr c󪕗|jt|«}tj|«}|jj |«|_|j j |«|_|jj |«|_|jj |«|_tt|+|d¬«|j|_ |S)NFr*) Ú_get_checked_instancerrÚSizerÚexpandrrr+r-r.Ú_validate_args)rr/Ú _instanceÚnewr0s €rr4zStudentT.expandLsžø€Ø×(Ñ(¬°9Ó=ˆÜ—j‘j Ó-ˆ Ø—‘—‘  Ó,ˆŒØ—(‘(—/‘/ +Ó.ˆŒØ—J‘J×%Ñ% kÓ2ˆŒ Ø—J‘J×%Ñ% kÓ2ˆŒ Ü Œh˜Ñ% kÀÐ%ÔGØ!×0Ñ0ˆÔ؈ r Ú sample_shapecóH—|j|«}t||jj|jj¬«}|j j |«}|tj||jz «z}|j|j|zzS)N)ÚdtypeÚdevice) Ú_extended_shaper rr:r;r+ÚrsamplerÚrsqrtrr)rr8ÚshapeÚXÚZÚYs rr=zStudentT.rsampleWsx€ð×$Ñ$ \Ó2ˆÜ ˜U¨$¯'©'¯-©-ÀÇÁÇÁÔ OˆØ J‰J× Ñ ˜|Ó ,ˆØ ”— ‘ ˜A §¡™KÓ(Ñ (ˆØx‰x˜$Ÿ*™* q™.Ñ(Ð(r có:—|jr|j|«||jz |jz }|jj «d|j j «zzdt jt j«zztjd|j z«ztjd|j dzz«z }d|j dzztj|dz|j z «z|z S)Nçà?çð?gà¿g@) r5Ú_validate_samplerrÚlogrÚmathÚpirÚlgammaÚlog1p)rÚvalueÚyrAs rÚlog_probzStudentT.log_probes䀨 × Ò Ø × !Ñ ! %Ô (Ø T—X‘XÑ  §¡Ñ +ˆà J‰JN‰NÓ ØD—G‘G—K‘K“MÑ!ñ "à”D—H‘HœTŸW™WÓ%Ñ%ñ &ôl‰l˜3 §¡™=Ó)ñ *ôl‰l˜3 $§'¡'¨C¡-Ñ0Ó1ñ  2ð ðt—w‘w ‘}Ñ%¬¯ © °A°s±F¸T¿W¹WÑ4DÓ(EÑEÈÑIÐIr cóì—tjd|jz«tjd«ztjd|jdzz«z }|jj «d|jdzztj d|jdzz«tj d|jz«z zzd|jj «zz|zS)NrDr)rrJrrHrrGÚdigamma)rÚlbetas rÚentropyzStudentT.entropyrsЀä L‰L˜˜tŸw™w™Ó 'Ük‰k˜#Óñ äl‰l˜3 $§'¡'¨A¡+Ñ.Ó/ñ 0ð ð J‰JN‰NÓ ØØw‰w˜‰{ñä}‰}˜S D§G¡G¨a¡KÑ0Ó1´E·M±MÀ#ÈÏÉÁ-Ó4PÑPñRñ RðD—G‘G—K‘K“MÑ!ñ  "ð ñ  ð r )grENr")Ú__name__Ú __module__Ú __qualname__Ú__doc__r ÚpositiveÚrealÚarg_constraintsÚsupportÚ has_rsampleÚpropertyrrr#r'rÚfloatrÚboolr.r4rr3r r=rNrRÚ __classcell__)r0s@rrrs"ø„ñð$×"Ñ"Ø×ÑØ×%Ñ%ñ€Oð ×Ñ€GØ€Kà ðfòóðð ðfòóððð ˜&ò óð ð%(Ø&)Ø(,ñ Cà &˜%-Ñ ð Cð6˜5=Ñ !ð CðV˜U]Ñ#ð Cð   ‘~ð Cð õ Cõ ð-7¨E¯J©J«Lñ ) Eð )¸Vó )ò Jö  r )rHÚtypingrrrrrrÚtorch.distributionsrr Ú torch.distributions.distributionr Útorch.distributions.utilsr r Ú torch.typesr Ú__all__r©r rúrgs7ðã ß"ã ß"Ñ"ß1Ý9ßEÝð ˆ,€ôo ˆ|õo r