Keras で自前の評価関数を作成する

Keras の出力で異なる活性化関数を使いそれぞれの損失関数を指定する - プログラマのメモ書き で、評価関数 を作成してみました。この評価関数で、bbox の評価値として Intersection over Union (IOU) を計算します。

続きを読む

Keras の出力で異なる活性化関数を使いそれぞれの損失関数を指定する

画像を認識する機械学習のプログラムを勉強しています。Keras を使って、次のことが学習できるかためしてみました。

  • 画像中に物体が存在するかどうか。
  • 物体が存在するならば、その物体を囲む長方形の位置。

このモデルで、出力に異なる 2 種類の 活性化関数 を使い、それぞれに 損失関数 を指定してみました。

続きを読む

Linqの遅延評価と処理内容

LinqIEnumerableの内容は遅延評価される。その内容を生成する処理は、

  • その処理が呼び出されたときではなく、
  • その内容が使われるときに実行される。

そのため処理の内容によっては、思わぬ結果になることがある。

続きを読む

SelectとSelectManyの違い

LinqSelectSelectManyの違いについて。

public static IEnumerable<TResult> Select<TSource, TResult>(
    this IEnumerable<TSource> source,
    Func<TSource, TResult> selector)
//                -------
public static IEnumerable<TResult> SelectMany<TSource, TResult>(
    this IEnumerable<TSource> source,
    Func<TSource, IEnumerable<TResult>> selector)
//                --------------------

これらの違いは、引数に指定する関数selectorの戻り値の型が、TResultかIEnumerable<TResult>かだけである。

続きを読む