ó ùµÈ[c@shdZyddlZWn*ek rBddd„ƒYZeZnXyddlZWnek rfnXyddlmZWn*ek r§ddd„ƒYZeZnXyddl Z Wn*ek räddd „ƒYZ e Z nXddl Z d „Z d „Zd efd „ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZd„ZdS(s Visualization callback function iÿÿÿÿNtDatetime_Failed_To_ImportcBseZRS((t__name__t __module__(((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyRs(t defaultdicttDefaultdict_Failed_To_ImportcBseZRS((RR(((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyR$stPandas_Failed_To_ImportcBseZRS((RR(((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyR*scCs>t|jƒƒt|jƒ}x|D]}d||(R#((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyt callback_argsÀs  (RRt__doc__R$tpropertyR%R&R'R(R)R,R0R1R.R>RB(((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyRGs        tLiveBokehChartcBsheZdZdd dd„Zd„Zd„Zd„Zd„Zd„Z d „Z d „Z d „Z RS( sCallback object that renders a bokeh chart in a jupyter notebook that gets updated as the training run proceeds. Requires a PandasLogger to collect the data it will render. This is an abstract base-class. Sub-classes define the specific chart. i i2cCsk|r||_ntd|d|ƒ|_||_tjƒ|_||_tjjƒ|j ƒ|_ dS(NRR( t pandas_loggerRt display_freqRt last_updatet metric_nametbokehtiotoutput_notebookt setup_chartthandle(R#RFRIRGRR((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyR$Ôs    cCstdƒ‚dS(s9Render a bokeh object and return a handle to it. s9Incomplete base class: LiveBokehChart must be sub-classedN(tNotImplementedError(R#((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyRMáscCstdƒ‚dS(s/Update the bokeh object with new data. s9Incomplete base class: LiveBokehChart must be sub-classedN(RO(R#((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pytupdate_chart_dataæscCstjƒ|j|jkS(sCheck whether it is time to update plot. Returns ------- Boolean value of whethe to update now (RRHRG(R#((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pytinterval_elapsedëscCs)tjjd|jƒtjƒ|_dS(s<Render the plot with bokeh.io and push to notebook. RNN(RJRKt push_notebookRNRRH(R#((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyt _push_renderóscCs|jƒ|jƒdS(s;Update the plot chart data and render the updates. N(RPRS(R#((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyt _do_updateùs cCs|jƒr|jƒndS(s3Callback function after a completed batch. N(RQRT(R#R/((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pytbatch_cbÿs cCs|jƒdS(s/Callback function after an evaluation. N(RT(R#R/((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyR1scCsi|jd6|jd6S(s¢returns **kwargs parameters for model.fit() to enable all callbacks. e.g. model.fit(X=train, eval_data=test, **pdlogger.callback_args()) R?R@(RUR1(R#((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyRB s N( RRRCR R$RMRPRQRSRTRUR1RB(((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyREÌs       tLiveTimeSeriescBs2eZdZd„Zd„Zd„Zd„ZRS(s0Plot the elasped time during live learning. cKs>tjjdddd||_tt|ƒjddƒdS(Nt x_axis_typeRt x_axis_labels Elapsed time(RJtplottingtFiguretfigtsuperRVR$R (R#t fig_params((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyR$scCsVtjjƒ|_g|_g|_|jj|j|jƒtjj |jdt ƒS(Ntnotebook_handle( RR R!t x_axis_valt y_axis_valR[tlineRJRYtshowtTrue(R#((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyRMs   cCstjjƒ|jS(s-Calculate elasped time from starting (RR R!(R#((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyR)%scCs4|jj|jƒƒ|jj|ƒ|jƒdS(N(R_tappendR)R`RS(R#tvalue((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyRP*s(RRRCR$RMR)RP(((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyRVs    tLiveLearningCurvecBsSeZdZddd„Zd„Zd„Zd„Zd„Zd„Zd „Z RS( scDraws a learning curve with training & validation metrics over time as the network trains. i i2cCsc||_tjjƒ|_iigd6d6igd6d6|_tt|ƒjd|||ƒdS(NR)RR( RRR R!t_dataR\RfR$R (R#RIRGR((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyR$4s  c CsNtjjddddƒ|_g|_g|_|jj|j|jddddd d ƒ|_|jj|j|jd d d dddd d ƒ|_ t |j _ g|_ g|_ |jj|j |j ddddd dƒ|_|jj|j |j ddddd dƒ|_d|jj_|j|jj_tjj|jdtƒS(NRWRRXs Training timet line_dashtdottedtalphag333333Ó?tlegendRtsizegø?t line_alphat fill_alphat line_colortgreent line_widthit validationt bottom_rightR^(RJRYRZR[t x_axis_val1t y_axis_val1Rattrain1tcirclettrain2tFalsetvisiblet x_axis_val2t y_axis_val2tvalid1R tvalid2RktlocationRItyaxist axis_labelRbRc(R#((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyRM=s,        cCs|jƒ|jƒdS(N(RPRS(R#((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyRTYs cCsF|j|jdkr)|j|dƒn|jƒrB|jƒndS(NiR(R-RR.RQRT(R#R/((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyRU]s cCs|j|dƒ|jƒdS(NR(R.RT(R#R/((sW/usr/local/lib/python2.7/site-packages/mxnet-1.3.1-py2.7.egg/mxnet/notebook/callback.pyR1cscCs´|jdk r4t|jjƒƒ}|jjƒni}tjjƒ|j|ds6          …JX