ゼロから作るDeep Learning ? ―自然言語処理編
- 作者: 斎藤康毅
- 出版社/メーカー: オライリージャパン
- 発売日: 2018/07/21
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (3件) を見る
「ゼロから作るディープラーニング②」を購入した。
あまり内容を詳細に記録するつもりはないので、読んで纏めていったものをGistに張り付けていく。
- Jupyter Notebook Viewer: 4章 word2vecの高速化
word2vecは、語彙数が増えてくと計算量が非常に大きくなるという問題があり、これを解決するために様々なテクニックを導入する。
- Embeddeingレイヤによる入力レイヤの削減
- 多値問題から二値分類に変換することで、計算量を減らす。
- 二値分類になったことで、計算量が削減された分、外れた値(負例)をサンプリングして別の解を探す(Negative Sampling)
グラフ: 高速化したword2vecの学習経過。
まとめは以下。
- word2vecを使うと計算量が増加するので、近似計算を行う。
- Embeddingレイヤを使って、単語のIDを抽出する。計算量を減らす役割がある。
- Negative Samplingを使って、負例をいくつかサンプリングする。
- 二値分類を使用して、計算量を減らす。
- 単語の分散表現は、単語の意味が含まれており、単語ベクトル空間上で似た単語は近い位置に表示されるようになる。
- word2vecの単語の分散表現は、類推問題をベクトルの加算と減算によって解ける性質を持つ。
- word2vecは転移学習の点で特に重要である。様々な自然言語処理に適用可能である。