Flexible-PU复现踩坑

我的配置:cuda 10.2,tensorflow 13.1.0,python 3.6,gcc 8.4.0

放入训练集和测试集

mkdir data
ln -s /home/lyl/pu/flex-data/train ./data/
ln -s /home/lyl/pu/flex-data/test_2048 ./data/

tf_ops编译文件修改 

tf_ops的编译文件有问题,更改后成功跑通的结果如下:

(1)修改compile.sh:

CD:

#!/bin/bash

CUDA=/home/lyl/cuda/cuda-10.2
TF=$(python -c 'import tensorflow as tf; print(tf.sysconfig.get_lib())')

$CUDA/bin/nvcc tf_nndistance_g.cu -o tf_nndistance_g.cu.o -c -O2 -DGOOGLE_CUDA=1 -x cu -Xcompiler -fPIC  -std=c++11 -I $TF/include 
g++ -std=c++11 tf_nndistance.cpp tf_nndistance_g.cu.o -o tf_nndistance_so.so -shared -fPIC -I $TF/include -lcudart -L $CUDA/lib64 -O2 -I $TF/include/external/nsync/public -L $TF -ltensorflow_framework -D_GLIBCXX_USE_CXX11_ABI=0

sampling:

#/bin/bash
CUDA=/home/lyl/cuda/cuda-10.2
TF=$(python -c 'import tensorflow as tf; print(tf.sysconfig.get_lib())')

$CUDA/bin/nvcc -std=c++11 tf_sampling_g.cu -o tf_sampling_g.cu.o -c -O2 -DGOOGLE_CUDA=1 -x cu -Xcompiler -fPIC

g++ -std=c++11 tf_sampling.cpp tf_sampling_g.cu.o -o tf_sampling_so.so -shared -fPIC -I $TF/include -I $CUDA/include -I $TF/include/external/nsync/public -lcudart -L $CUDA/lib64/ -L $TF -ltensorflow_framework -O2 -D_GLIBCXX_USE_CXX11_ABI=0

grouping:

#/bin/bash
CUDA=/home/lyl/cuda/cuda-10.2
TF=$(python -c 'import tensorflow as tf; print(tf.sysconfig.get_lib())')

$CUDA/bin/nvcc tf_grouping_g.cu -o tf_grouping_g.cu.o -c -O2 -DGOOGLE_CUDA=1 -x cu -Xcompiler -fPIC
g++ -std=c++11 tf_grouping.cpp tf_grouping_g.cu.o -o tf_grouping_so.so -shared -fPIC -I $TF/include -I $TF/include/external/nsync/public -L $TF -ltensorflow_framework -I $CUDA/include -lcudart -L $CUDA/lib64/ -O2 -D_GLIBCXX_USE_CXX11_ABI=0

为啥这么改就好了我也不知道,是参考PU-GCN的编译文件更改的。

之前的报错信息为:

NotFoundError: undefined symbol: _ZN10tensorflow12OpDefBuilder4AttrENSt7__cxx1112basic_stringIcSt11char_traitsIcESa

这三个文件都报了一遍类似的错误。

cd CD
sh compile.sh

(2)修改3个py文件:

print语法有问题,挨个加上括号

修改tf_util_1.py:print语法有问题

修改main.py

(1)更改测试集输出的文件名:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值