云学到《深度学习实战手册.R语言版》第30页,使用TensorFlow执行逻辑回归时,出现tf$...语句报错的问题,解决过程如下:
1)下载并安装Docker,执行几句后tf语句仍旧报错,将该语句改写放入Spyder发现在Python环境中也不能运行,当然在R调用Python时也就无法运行了。
2)发现问题出在原书使用的TensorFlow是1.x,当前下载的TensorFlow是2.x版,且当前Anoconda所用Python不兼容TensorFlow1.x,也就是不能简单卸载TensorFlow2.x装TensorFlow1.x。否则,执行别的程序又会出问题了。故在RStudio执行:
tf<-import("tensorflow.compat.v1")#命名Docker默认的tf即TensorFlow为tensorflow.compat.v1
tf$disable_v2_behavior()#关闭tf即tensorflow默认的V2,如果缺了这个语句有时也会报错
3)顺利执行原书中的程序,得到理想结果: