canvasにキーボードイベントを設定する

HTML5 canvasにキーボードイベントを設定するには, canvas要素のtabindexを0に設定しなければならない.

<canvas id="canvas" tabindex="0"></canvas>
var canvas = document.getElementById("canvas");
canvas.addEventListener("keydown", function(e){
    if (e.keyCode == 13){
        console.log("Enter is pressed")
    }
}, false);

Improved GANに記載の半教師あり学習のメモ

Improved GANの半教師あり学習読んだメモ.ちゃんとは読んでなくてつまみ食いしただけだが. 通常GANのDiscriminatorは訓練データ(True)と生成データ(False)を区別するだけだが, これに訓練データのクラス分類を混ぜる,という話だった.

K個のラベルを分類するのだったら, Discriminatorの出力ユニットとして,

  • 訓練データをKクラスに分類(True)
  • 生成データをK+1番目のクラスに分類(False)

するようにする. ポイントは,

  • 訓練データかつラベルありの場合
    • K+1番目に分類されるか否かの誤差と,Kクラス分類の誤差を計算
  • 訓練データかつラベルなしの場合
    • 通常のGANと同じ.
    • K+1番目に分類されるか否かの誤差を計算
  • 生成データ(ラベルなし)
    • 通常のGANと同じ
    • K+1番目に分類されるか否かの誤差を計算