1.对LIL格式的深入理解:
list of list,嵌套列表
network.py, transductive_train():
(134) _ :这里的单下划线表示某个变量是临时的或者无关紧要的,这里应该是指train.op的返回值是没用的,这里只需要执行train_op而并不需要它返回的结果
基础补充:优化器:就是在深度学习反向传播中,指引损失函数的各个参数往正确的方向更新合适的值,使得更新后的参数让损失函数的值不断逼近全局最小。
2.???目前问题,这里面大量运用了tuple格式的矩阵,这个格式长啥样?为啥要用?
比如utils.py sparse_to_tuple,这里得到的结果长啥样?
3.然后更严重的问题是我目前看的训练过程的所有代码都没有与layers.py ,models.py这两个文件有关系。。。。所有的函数调用似乎都没有用到这两个文件???
4.邻接矩阵加上自环:也就是加一个维度一样的单位矩阵:缓解梯度爆炸以及数值不稳定的问题
5.tf.app.flags:这里是可以用命令行进行一些参数的改写,见下面博客所示:
7.tf.nn.top_k():就是返回对应张量的最后一个维度的最大的k个值
比如一个向量,就返回最大的k个值;那如果是一个矩阵,就返回每行的最大的k个值
8.tf.expand_dims():增加输入的张量的维度,axis=这个参数值是多少就是在第几维增加维度。
ops.py:
1.batch_norm():该函数对训练批次进行一个标准化,达到一个加速神经网络训练的效果。
9.inputs:超级坑,实际上在network.py里面的pack_trans_dict函数里面对feed_dict这个字典进行了update,这个操作实际上导致了transductive_train中的train过程的时候的四个ops中的inputs等值,之前用的placeholder占位,在这里就可以得到替换。