并行计算向量的欧式距离和KL距离

参考思路有: https://blog.csdn.net/lavorange/article/details/42125029

0. 说明

问题1:计算一个D维的向量A[D]到二维矩阵B[N][D]的每一行的对称KL散度,并且将每一组距离保存在一个向量dis[N]中并返回, 最后根据dis[N]选出最小值。由于N很大, 需要并行来进行实现

问题2:计算一个D维的向量A[D]到二维矩阵B[N][D]的每一行的欧氏距离,并且将每一组距离保存在一个向量dis[N]中并返回, 最后根据dis[N]选出最小值。由于N很大, 需要并行来进行实现

使用numpy的代码的定义如下:

1. 使用Numpy并行

2. 使用PyTorch并行

参考:

  1. https://blog.csdn.net/Answer3664/article/details/106265132
  2. http://www.noobyard.com/article/p-cihinnwl-ev.html
  3. https://www.cnblogs.com/journeyonmyway/p/12520818.html
  4. https://pytorch.org/docs/stable/nn.functional.html

2.1. dist2_PyTorch_findA_forChineseSpeaker_outPPGSPEC.py

  1. 采用audio_10ms.py
  2. 原句子是英文, 目标说话人是中文
  3. 原句子不加以区分时train set还是validation set, 其实应该区分TODO
  4. 全部语料的英文句子都VC到中文说话人, meta list: /datapool/home/hujk17/ppg_decode_spec_10ms_sch_Multi/meta_good_merge_ljspeech_v2.txt
  5. 计算部分加上.cuda(), 但是不确定是不是运算用了GPUTODO
  6. 没确认GPU的entropy是不是和之前的一致, 包括转到GPU的误差, 需要测TODO
  7.