TCA笔记2:TCA代码调试
Transfer Component Analysis属于边缘分布自适应方法本次尝试跑王晋东在GitHub的开源TCA代码学习过程中参考:https://github.com/jindongwang/transferlearning-tutorialhttps://zhuanlan.zhihu.com/p/63026435https://zhuanlan.zhihu.com/p/110594052
![](https://csdnimg.cn/release/devpress/public/img/ic-book.4f347164.png)
Transfer Component Analysis
属于边缘分布自适应方法
本文为TCA代码的调试
TCA计算过程的公式见:
https://blog.csdn.net/lagoon_lala/article/details/120514537
对TCA开源代码的详细阅读分析:
https://blog.csdn.net/lagoon_lala/article/details/120800667
本次尝试跑王晋东在GitHub的开源TCA代码
学习过程中参考:
https://github.com/jindongwang/transferlearning-tutorial
https://zhuanlan.zhihu.com/p/63026435
https://zhuanlan.zhihu.com/p/110594052
https://zhuanlan.zhihu.com/p/26764147
尝试跑TCA代码
使用数据集(Office-Caltech10):
该网站第一组
https://github.com/jindongwang/transferlearning/tree/master/data
使用代码:
https://github.com/jindongwang/transferlearning/tree/cfaf1174dff7390a861cc4abd5ede37dfa1063f5/code/traditional/TCA
激活虚拟环境
(base) C:\Users\Lenovo>activate Liver
进入项目文件夹路径
(Liver) C:\Users\Lenovo>cd /d D:\anacondaProject\TCA
运行py文件:
python TCA.py
报错:
FileNotFoundError: [Errno 2] No such file or directory: 'data_office_caltech_10/amazon.mat' |
看了一下, 文件夹里都是图片, 没有.mat形式
参考:
https://blog.csdn.net/zuoriqingkong/article/details/79986785
.mat的是特征文件.
3个对象领域Amazon(在线电商图片)、Webcam(网络摄像头拍摄的低解析度图片)、DSLR(单反相机拍摄的高解析度图片)
注意不要下载原图original images, SURF dataset中有.mat文件, DeCAF dataset用之前需要运行readme中的normr代码. 这里为了快捷就使用SURF了
运行报错:
Xs, Ys, Xt, Yt = src_domain['feas'], src_domain['labels'], tar_domain['feas'], tar_domain['labels'] KeyError: 'labels' |
打印src_domain
print('src_domain type:',type(src_domain),'\nsrc_domain:',src_domain) |
src_domain type: <class 'dict'> src_domain: {'__header__': …, 'feas': array([[-0.29043361, …, -0.19295982], [-0.29043361, …, -0.19295982], ... ]), 'label': array([[ 1],… |
这里的label键名少了个s, 修改读取行:
Xs, Ys, Xt, Yt = src_domain['feas'], src_domain['label'], tar_domain['feas'], tar_domain['label'] |
运行成功.
Accuracy of mapped source and target1 data : 0.400 Accuracy of mapped target2 data : 0.371 |
这效果不行啊, 换DeCAF版本的数据集试试
这个版本的读入标签为
Xs, Ys, Xt, Yt = src_domain['feas'], src_domain['labels'], tar_domain['feas'], tar_domain['labels'] |
运行得:
Accuracy of mapped source and target1 data : 0.800 Accuracy of mapped target2 data : 0.706 |
更多推荐
所有评论(0)