見出し画像

社内勉強会レポート|Stanford CS230 ディープラーニングのご紹介(その2)

こんにちは。Airitechの小野です。当社で行っているディープラーニングの勉強会の記録の続きです。ここでは主として、ビデオ教材"Stanford CS230 Deep Learning: Lecture 2 - Deep Learning Intuition"で話されている内容について考察してみます。

前回の内容はこちらです。

前回の講義のおさらい

機械学習の基本構造は「入力→モデル→出力」
モデル=アーキテクチャ+パラメータ
学習の方法:出力から「損失」→「勾配」と戻していきます。

ロジスティック回帰モデル

画像データから動物の判定:イメージを3次元ベクトル(RGB)で表します。
ターゲットのラベル付け:one hot(ダミー変数)では一画面に複数の動物の場合が扱えない。Softmax関数を用います。

プロジェクト事例(1):画像データから昼か夜かの判定

集めるイメージの数はアーキテクチャに依存するのではなく、判定の難易度によって決めます。屋外の写真だけなら10,000で十分ですが、室内などより複雑なケースでは100,000が必要です。

8,000が学習用、2,000が検証用でよいでしょう。サンプルサイズ百万ならば98%学習用でよいでしょう。解像度は64*64*3でよい。動物の識別ならより高い解像度が必要です。

この場合は浅いネットワークで十分機能します。

損失関数:この場合は対数尤度でよい。凸関数で最適化が容易です。

ビデオ二日目画像1

プロジェクト事例(2):大学の施設を利用する生徒の顔認識

学習用にラベル付きの写真を使います。

入力画像の解像度は412*412*3です。顔のパーツが識別できるレベルです。背景の明暗、化粧やひげなどが問題になります。写真についての情報をエンコードしてベクトルとして表します。

anchor(元の写真)、positive(同一人物の他の写真)、negative(全く違う人の写真)です。anchorとpositiveの距離を最小に、anchorとnegativeの距離を最大にします。

エッジ、顔のパーツ、パーツ間の距離というようにネットワークが深くなります。

ビデオ二日目画像2

プロジェクト事例(3):アート創作

入力はcontent imageとstyle imageからなります。

パラメータを訓練するのではなく、絵そのものを訓練します。

最初の層でエッジを識別、エッジはコンテントイメージを表現します。

スタイルは(右側に木があるといった)ローカル化された情報ではありません。例えば、ImageNetで訓練された既存モデルをロードします。

 生成スタイルを手本スタイルに近づけ、生成コンテンツを手本コンテンツに近づけます。

ホワイトノイズの画像から出発します。その方がバイアスがなく効率的です。

ビデオ二日目画像3


プロジェクト事例(4):スピーチの音声からあるキーワードを検出する

異なるアクセント、音高などを聞き分けるために大量の10秒音声クリップをデータとして用います。リカレントニューラルネットワークのような構造になります。

正しい単語の音声、違う単語の音声、雑音をそれぞれサンプルとして収集します。

(入力データは)雑音に正しい単語、違う単語をいくつかランダムに挟み込みます。ラベリングの自動化をします。

フーリエ変換で周波数毎の頻度を抽出します。
(一般に)自ら試行錯誤するだけでなく、専門家の助言を仰ぐことも時として必要です。

他のアプローチは、triplet lossアルゴリズムを用いるものです。

ビデオ二日目画像4

まとめ

この回の講義では、実際の機械学習のプロジェクトの事例毎に、プロジェクトを進める上でカギとなる入力データの用意の仕方や損失関数の選び方について、学生に問いかける形で説明がされています。

実際に機械学習のプロジェクトで実データを扱ってモデルを構築したい場合に、非常に参考になる内容となっています。

Airitechでは定期的に社内勉強会を行っています

採用情報はこちら


この記事が気に入ったらサポートをしてみませんか?