UDTL
Source codes for the paper "Applications of Unsupervised Deep Transfer Learning to Intelligent Fault Diagnosis: A Survey and Comparative Study" published in TIM
Install / Use
/learn @ZhaoZhibin/UDTLREADME
UDTL-based-Intelligent-Diagnosis
Source codes for the paper "Applications of Unsupervised Deep Transfer Learning to Intelligent Fault Diagnosis: A Survey and Comparative Study"
This repository contains the implementation details of our paper: [IEEE Transactions on Instrumentation and Measurement] Applications of Unsupervised Deep Transfer Learning to Intelligent Fault Diagnosis: A Survey and Comparative Study by Zhibin Zhao, Qiyang Zhang, and Xiaolei Yu. The methods about multi-domain TL can be found in (https://github.com/zhanghuanwang1/UDTL_multi_domain) and the methods about label-inconsistent TL can be found in (https://github.com/xiaoleimiao/UDTL_Lable_Inconsistent).
Correction
- 2020.06.02, we modified the errors in util/train_utils_combines. (class_num --> num_classes).
Guide
This project just provides the baseline (lower bound) accuracies and a unified intelligent fault diagnosis library based on unsupervised deep transfer learning (UDTL) which retains an extended interface for everyone to load their own datasets and models by themselves to carry out new studies. Meanwhile, all the experiments are executed under Window 10 and Pytorch 1.3 through running on a computer with an Intel Core i7-9700K, GeForce RTX 2080Ti, and 16G RAM.
Requirements
- Python 3.7
- Numpy 1.16.2
- Pandas 0.24.2
- Pickle
- tqdm 4.31.1
- sklearn 0.21.3
- Scipy 1.2.1
- opencv-python 4.1.0.25
- PyWavelets 1.0.2
- pytorch >= 1.1
- torchvision >= 0.40
Datasets
References
Part of the code refers to the following open source code:
- CORAL.py from the paper "Deep CORAL: Correlation Alignment for Deep Domain Adaptation" proposed by Sun et al.
- DAN.py and JAN.py from the paper "Deep Transfer Learning with Joint Adaptation Networks" proposed by Long et al.
- AdversarialNet.py and entropy_CDA.py from the paper "Conditional adversarial domain adaptation" proposed by Long et al.
Pakages
This repository is organized as:
- loss contains different loss functions for Mapping-based DTL.
- datasets contains the data augmentation methods and the Pytorch datasets for time and frequency domains.
- models contains the models used in this project.
- utils contains the functions for realization of the training procedure.
Usage
-
download datasets
-
use the train_base.py to test Basis and AdaBN (network-based DTL and instanced-based DTL)
-
for example, use the following commands to test Basis for CWRU with the transfer_task 0-->1
-
python train_base.py --data_name CWRU --data_dir D:/Data/CWRU --transfer_task [0],[1] --adabn "" -
for example, use the following commands to test AdaBN for CWRU with the transfer_task 0-->1
-
python train_base.py --data_name CWRU --data_dir D:/Data/CWRU --transfer_task [0],[1] -
use the train_advanced.py to test (mapping-based DTL and adversarial-based DTL)
-
for example, use the following commands to test DANN for CWRU with the transfer_task 0-->1
-
python train_advanced.py --data_name CWRU --data_dir D:/Data/CWRU --transfer_task [0],[1] --last_batch "" --distance_metric "" --domain_adversarial True --adversarial_loss DA -
for example, use the following commands to test MK-MMD for CWRU with the transfer_task 0-->1
-
python train_advanced.py --data_name CWRU --data_dir D:/Data/CWRU --transfer_task [0],[1] --last_batch True --distance_metric True --distance_loss MK-MMD --domain_adversarial ""
Citation
Codes:
@misc{Zhao2019,
author = {Zhibin Zhao and Qiyang Zhang and Xiaolei Yu and Chuang Sun and Shibin Wang and Ruqiang Yan and Xuefeng Chen},
title = {Unsupervised Deep Transfer Learning for Intelligent Fault Diagnosis},
year = {2019},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/ZhaoZhibin/UDTL}},
}
Paper:
@article{zhao2021applications,
title={Applications of Unsupervised Deep Transfer Learning to Intelligent Fault Diagnosis: A Survey and Comparative Study},
author={Zhibin Zhao and Qiyang Zhang and Xiaolei Yu and Chuang Sun and Shibin Wang and Ruqiang Yan and Xuefeng Chen},
journal={IEEE Transactions on Instrumentation and Measurement},
year={2021}
}
Contact
- zhibinzhao1993@gmail.com
Related Skills
YC-Killer
2.7kA library of enterprise-grade AI agents designed to democratize artificial intelligence and provide free, open-source alternatives to overvalued Y Combinator startups. If you are excited about democratizing AI access & AI agents, please star ⭐️ this repository and use the link in the readme to join our open source AI research team.
best-practices-researcher
The most comprehensive Claude Code skills registry | Web Search: https://skills-registry-web.vercel.app
groundhog
398Groundhog's primary purpose is to teach people how Cursor and all these other coding agents work under the hood. If you understand how these coding assistants work from first principles, then you can drive these tools harder (or perhaps make your own!).
isf-agent
a repo for an agent that helps researchers apply for isf funding
