當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python tf.nn.isotonic_regression用法及代碼示例

沿給定軸解決等滲回歸問題。

用法

tf.nn.isotonic_regression(
    inputs, decreasing=True, axis=-1
)

參數

  • inputs 保持輸入的張量。
  • decreasing 如果設置為 False,則優化約束中的不等式將被翻轉。
  • axis 解決問題的軸線。

返回

  • output 解決方案的形狀與輸入的類型相同。
  • segments 一個 int32 張量,與輸入的形狀相同,指示具有相同值的段。具體來說,那些具有相同值的位置對應於相同的段。這些值從零開始,並且對於每個解決方案都單調遞增。

對於每個向量 x,解決的問題是

由於解決方案是component-wise 常量,因此會返回對段進行編碼的第二個張量。問題在給定的軸上得到解決。

考慮下麵的例子,我們解決了一批兩個問題。第一個輸入是 [3, 1, 2],而第二個輸入是 1, 3, 4

>>> x = tf.constant([[3, 1, 2], [1, 3, 4]], dtype=tf.float32)
>>> y, segments = tf.nn.isotonic_regression(x, axis=1)
>>> y  # The solution.
<tf.Tensor: shape=(2, 3), dtype=float32, numpy=
array([[3.       , 1.5      , 1.5      ],
       [2.6666667, 2.6666667, 2.6666667]], dtype=float32)>

請注意,第一個解決方案有兩個塊 [2] 和 [1.5, 1.5]。第二個解是恒定的,因此隻有一個段。這些段正是第二個返回的張量編碼的內容:

segments
<tf.Tensor: shape=(2, 3), dtype=int32, numpy=
array([[0, 1, 1],
       [0, 0, 0]], dtype=int32)>

相關用法


注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.nn.isotonic_regression。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。