HelloZicky / Persona

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tackling Device Distribution Real-time Shift via Prototype-based Parameter Editing

Folder Structure

.
├── Cohn-Kanade-Database #data
│   ├── CK+
│   ├── small
│   ├── large
│   ├── dataset_partition
│   └── ...preprocessed data files
├── Persona_Vision_0 #code
│   ├── checkpoint
│   ├── dataset
│   ├── diagrams
│   ├── main
│   ├── models
│   ├── modules
│   ├── paper_figs
│   ├── scripts
│   ├── statistics
│   └── utils
└── README.md

Data Preprocessing

  1. Data preprocessing
cd Cohn-Kanade-Database
python generate_dataset.py
python generate_dataset_pair.py
  1. Data Partition
cd dataset_partition
bash tsne_kmeans_image.sh
python dataset_partition.py

Train

  1. Base train
cd Persona_Vision_0/scripts/facial_expression_recognition/0base/mobilenetv3
bash ck+_base_mobilenetv3_train.sh
  1. Meta train
cd Persona_Vision_0/scripts/facial_expression_recognition/2meta/mobilenetv3
bash ck+_meta_mobilenetv3_classifier_train.sh
  1. Ours train
cd Persona_Vision_0/scripts/facial_expression_recognition/2meta/mobilenetv3
bash ck+_meta_mobilenetv3_classifier_train_grad.sh

Inference

  1. Base inference
cd Persona_Vision_0/scripts/facial_expression_recognition/0base/mobilenetv3
bash base_test.sh
  1. Meta inference
cd Persona_Vision_0/scripts/facial_expression_recognition/2meta/mobilenetv3
bash ck+_meta_mobilenetv3_classifier_test.sh
  1. Ours inference
cd Persona_Vision_0/scripts/facial_expression_recognition/2meta/mobilenetv3
bash ck+_meta_mobilenetv3_classifier_test_grad.sh

Train Parameter Editor

For group training,parameter in shell need to be modified, for instance,

classnum=2  # 2 groups
cluster=cluster_0  # the 1st group
size=small  # model=mobilenetv3_small
  1. Finetune on group data
cd Persona_Vision_0/scripts/facial_expression_recognition/0base/mobilenetv3
bash ck+_base_mobilenetv3_finetune.sh
  1. Train each group's parameter editor
cd Persona_Vision_0/scripts/facial_expression_recognition/2meta/mobilenetv3
bash ck+_meta_mobilenetv3_classifier_train_grad_group.sh
  1. Inference
cd Persona_Vision_0/scripts/facial_expression_recognition/2meta/mobilenetv3
bash ck+_meta_mobilenetv3_classifier_test_grad_group.sh

About


Languages

Language:Python 67.5%Language:Shell 32.5%