上QQ阅读APP看书,第一时间看更新
2.1.7 多输入多输出TensorFlow编译方法(选学)
读者已经知道了对于多输入单一输出的TensorFlow的写法,那么在实际编程中有没有可能遇到多输入多输出的情况呢?事实上是有的。虽然读者可能遇到的情况会很少,但是在必要的时候还是需要设计多输出的神经网络模型去进行训练,例如“bert”模型。
对于多输出模型的写法,实际上也可以仿照单一输出模型改为多输入模型的写法,将output的数据使用中括号进行包裹。
第一步:数据的修正和设计
首先是对数据的修正和设计,数据的输入被平均分成2组,每组有2个特征。这实际上没什么变化。对于特征的分类,在引入one-hot处理的分类数据集外,还保留了数据分类本身的真实值做目标的辅助分类计算结果。无论是多输入还是多输出,都要使用打包的形式将数据重新打包成一个整体的数据集合。
在fit函数中,直接调用打包后的输入数据即可。
model.fit(x = train_data, epochs=500)
完整代码如下所示。
【程序2-8】
输出结果如图2.10所示。
图2.10 数据结果
限于篇幅关系,这里也只给出一部分结果,相信读者能够理解输出的数据内容。