keras中的后端backend及其相关函数(K.prod,K.cast)

【时间】2019.02.25

【题目】keras中的后端backend及其相关函数(K.prod,K.cast)

具体参考:Keras 后端,其中

一、K.prod

prod

keras.backend.prod(x, axis=None, keepdims=False)

功能:在某一指定轴,计算张量中的值的乘积。

参数

  • x: 张量或变量。
  • axis: 一个整数需要计算乘积的轴。
  • keepdims: 布尔值,是否保留原尺寸。 如果 keepdims 为 False,则张量的秩减 1。 如果 keepdims 为 True,缩小的维度保留为长度 1。

返回

x 的元素的乘积的张量。

Numpy 实现

def prod(x, axis=None, keepdims=False):
    if isinstance(axis, list):
        axis = tuple(axis)
    return np.prod(x, axis=axis, keepdims=keepdims)

具体例子:

import numpy as np
x=np.array([[2,4,6],[2,4,6]])

scaling = np.prod(x, axis=1, keepdims=False)
print(x)
print(scaling)

【运行结果】

keras中的后端backend及其相关函数(K.prod,K.cast)_第1张图片

二、K.cast

cast

keras.backend.cast(x, dtype)

功能:将张量转换到不同的 dtype 并返回。

你可以转换一个 Keras 变量,但它仍然返回一个 Keras 张量。

参数

  • x: Keras 张量(或变量)。
  • dtype: 字符串, ('float16''float32' 或 'float64')。

返回

Keras 张量,类型为 dtype

例子

>>> from keras import backend as K
>>> input = K.placeholder((2, 3), dtype='float32')
>>> input

# It doesn't work in-place as below.
>>> K.cast(input, dtype='float16')

>>> input

# you need to assign it.
>>> input = K.cast(input, dtype='float16')
>>> input

 

你可能感兴趣的:(Keras后端,K.cast,K.prod,backend,Keras)