
    |-j                     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  G d	 d
e          Z	dS )    N)Path   )abspath   )
ClsTrainer   )MODELSc                   "    e Zd ZdZeZd Zd ZdS )FaceRecTrainerzFace Recognition Model Trainerc                    | j         j        r$| j                            | j         j                   | j         j        r$| j                            | j         j                   | j         j        r$| j                            | j         j                   |                                  | j         j	        $| j        
                    | j         j	                   | j         j        dk    r$| j                            | j         j                   t          | j        j                                      d          }|                                r|                     |           | j         j        $| j                            | j         j                   | j         j        $| j                            | j         j                   | j         j        $| j                            | j         j                   | j         j        $| j                            | j         j                   | j        j        &| j                            | j        j                   dS dS )zupdate training configN 	label.txt)train_configlog_interval
pdx_configupdate_log_intervaleval_intervalupdate_eval_intervalsave_intervalupdate_save_intervalupdate_dataset_cfgnum_classesupdate_num_classespretrain_weight_pathupdate_pretrained_weightsr   global_configdataset_dirjoinpathexistsdump_label_dict
batch_sizeupdate_batch_sizelearning_rateupdate_learning_rateepochs_iters_update_epochswarmup_stepsupdate_warmup_epochsoutput_update_output_dir)selflabel_dict_paths     h/var/www/html/banglarbhumi/venv/lib/python3.11/site-packages/paddlex/modules/face_recognition/trainer.pyupdate_configzFaceRecTrainer.update_config   s   ) 	PO//0A0NOOO* 	RO001B1PQQQ* 	RO001B1PQQQ!!!(4O..t/@/LMMM1R77O55!6   t1=>>GGTT!!## 	2  111'3O--d.?.JKKK*6O001B1PQQQ)5O**4+<+IJJJ)5O001B1OPPP$0O..t/A/HIIIII 10    c                    t          t          j                            | j        j        d                    }t          t          j                            | j        j        d                    }t          t          j                            |d                    }t          t          j                            |d                    }dd| d| dd	| d
| g}| j                            |           d S )Ntrainvalr   zpair_label.txtz(DataLoader.Train.dataset.name=ClsDatasetz$DataLoader.Train.dataset.image_root=z(DataLoader.Train.dataset.cls_label_path=z,DataLoader.Eval.dataset.name=FaceEvalDatasetz%DataLoader.Eval.dataset.dataset_root=z(DataLoader.Eval.dataset.pair_label_path=)r   ospathjoinr   r   r   update)r+   train_dataset_dirval_dataset_dirtrain_list_pathval_list_pathds_cfgs         r-   r   z!FaceRecTrainer.update_dataset_cfg;   s    #GLL+7AA
 
 ""',,t/A/Mu"U"UVV!"',,/@+"N"NOO_>N O OPP 8F3DFFHHH;EOEEF}FF
 	v&&&&&r/   N)__name__
__module____qualname____doc__r	   entitiesr.   r    r/   r-   r   r      s@        ((HJ J J>' ' ' ' 'r/   r   )
r3   pathlibr   
utils.miscr   image_classificationr   
model_listr	   r   rA   r/   r-   <module>rF      s    
			       ! ! ! ! ! ! - - - - - -      4' 4' 4' 4' 4'Z 4' 4' 4' 4' 4'r/   