Tensorflow 函数 API 中 axis轴的理解

Tensorflow 就是对 tensor进行一系列的操作,今天来讲解在很多tensorflow API中都存在的 axis 参数。

tensorflow 中的 axis 和 numpy 中的 axis 是一样的 

先来一张图

 

这里可以看到 axis = 0  是行数,axis = 1 是跨列的 ,一般化到高纬度的 tensor也是一样的,按照由外到内的顺序来判断 axis 的数值,外层的 axis = 0, 向内依次增加axis 的数值. 

这里引用一些tensorflow 中的 axis 实用的理解 

axis是跟shape相关的。
比如shape = [a, b, c, d],
axis = 0就是指a这个维度,
axis = 2就是指c这个维度,
axis = -1就是指d这个维度。(-1在python里指最后一个)

在 tf.argmax或 np.argmax中通常要指定axis。
对于二维,若shape=[height, width]时,tf.argmax(x, axis=0)则表示获得每一行的最大值的 index;tf.argmax(x, axis=1)表示获得每一列的最大值的下标。 此时 axis = -1同 axis=1情况。

对于

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
TensorFlow是一个流行的开源机器学习工具包,它提供了许多预先定义的损失函数,例如交叉熵损失、均方误差损失等。但是,在一些场景下,我们可能需要自定义损失函数以满足特定的任务要求。 创建自定义损失函数的步骤如下: 1. 采用TensorFlow的Keras API来定义损失函数。开发者可以通过继承tensorflow.keras.losses.Loss类来定义自己的损失函数。在这个类,我们必须实现call方法,它接收真实值和预测值,并返回批量的平均损失。 2. 在调用模型的编译函数时,将该自定义损失函数的名称传递给“loss”参数。 以下代码展示了一个简单的自定义损失函数的实例: ``` python import tensorflow as tf from tensorflow.keras import backend as K class CustomLoss(tf.keras.losses.Loss): def __init__(self, alpha, **kwargs): super().__init__(**kwargs) self.alpha = alpha def call(self, y_true, y_pred): squared_difference = tf.square(y_true - y_pred) return K.mean(squared_difference,axis=-1) + self.alpha * K.mean(y_pred,axis=-1) model = tf.keras.models.Sequential([ tf.keras.layers.Dense(64, activation='relu', input_shape=(784,)), tf.keras.layers.Dense(10, activation='softmax') ]) model.compile(optimizer='adam',loss=CustomLoss(alpha=0.1)) ``` 在上述代码,我们定义了一个自定义损失函数CustomLoss。它采用真实值和预测值作为输入,计算出平均损失,并加上一个可控的惩罚项alpha * mean(y_pred)。 最后我们使用这个自定义损失函数来编译了一个包含两个全连接层的神经网络模型。 总之,自定义损失函数TensorFlow平台的常见实践之一,至于要采用何种损失函数,则取决于具体的任务及其相关的性能需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Baobin Zhang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值