‫さて､ モデルを作ってくれる美しい関数ができましたが､ 実際にもう使ってみました｡
‫モデルをインスタンス化し､ サマリーを取得しました｡
‫これを見て､ 「どうしたんだろう」と思うかもしれません｡
‫これを見ていても､ どうなっているんだ？
‫では､ 実際に何が起こっているのか､ 順を追って考えてみましょう｡
‫そこでまず､ モデルをインスタンス化するので､ model equalsでsequentialを予測するようにモデル層を設定する｡
‫どうしたんですか？
‫レイヤーを直線的に積み重ねたもの｡
‫ということは､ そう書いてあっても､ 実際のところはどうなんだろう｡
‫ある種の入力を受け､ その入力のパターンを見つけて､ ある種の出力をするレイヤーのスタックに過ぎません｡
‫それが､ リニアスタックの意味です｡
‫ここで､ 最初のレイヤーを見てみましょう｡
‫上から下まで走り回る｡
‫そして､ ここからが本番です｡
‫ここにもコラボエラーが｡
‫見ることができるかもしれません｡
‫直ることを祈っています｡
‫そうでなければ､ 後で修正すればいいのです｡
‫1層目はハブキャップ層です｡
‫モデルのURLです｡
‫これは､ tensorflow hubに介護者のレイヤーを作成するように指示しているのです｡
‫そこで私たちが行っているのは､ 介護士を使ってディープラーニングのモデルを構築することです｡
‫これは､ モバイルNAT V2アーキテクチャであるモデルURLの介助者レイヤーを作成するように指示しているのです｡
‫では､ モバイルネット拒否権はどうなっているのかというと､ そうではありません｡
‫また､ なぜ2層しかないのでしょうか？
‫では､ それを確認してみましょう｡
‫さあ､ 行こう｡
‫モバイルネットV2アーキテクチャ｡
‫それでは､ どうぞ｡
‫軽量モデル画像分類「Mobile Net v2」をレビューします｡
‫ですから､ 私が使っているモデルで何が起こっているのかを把握するときは､ このようにします｡
‫TensorFlowのハブからモデルを見つけたかもしれないし､ チュートリアルを見たかもしれないし､ 何らかのモデルを使ったかもしれない｡
‫何が起きているのか把握したい｡
‫そこで､ モバイルネットワークを畳み込みブロックにしたのです｡
‫さて､ それを確認したかったら､ 調べるといいかもしれない｡
‫このcomはコンボリューションの略なので､ コンボリューションとは何かということを調べてみるとよいでしょう｡
‫ネットワークがない｡
‫そこで､ 素晴らしい資料を置いておきますので､ それをご覧になってください｡
‫しかし､ 本質的に起こっていることはこうです｡
‫いいイメージですね､ 実際｡
‫ああ｡
‫もう一つの媒体記事｡
‫美しい｡
‫そこで､ こんなことがありました｡
‫入力画像があり､ モバイルネットv2には､ このようなレイヤーがたくさん組み込まれています｡
‫つまり､ 入力画像を見て､ それに何らかのデータ変換を施し､ 何かに出力するのです｡
‫A. K. A. 番号のリストです｡
‫だから､ これが私たちの仕事なんです｡
‫キーノートに戻ると､ インプットを用意して､ それを機械学習アルゴリズム（この場合はモバイルネットv2）に渡すと､
‫何かを出力してくれるわけです｡
‫モバイルネットV2を使えば､ こうした部分をすべて解決できるのが､ トランスファーラーニングの素晴らしいところです｡
‫インプットを定義し､ 最後にある種のアウトプットを求めます｡
‫さて､ ここでモバイルネットV2のレビューに戻りますが､ ここで何が起こっているのかについて完全に理解できなくても大丈夫です｡
‫これは､ ディープラーニングや機械学習の実験の一環です｡
‫データを変換するときに､ 何が起こっているのか､ 何が起こっているのかを解明するのです｡
‫私たちは､ 常に動作するコードを書き､ その後に何が起こっているかを把握することを第一に考えています｡
‫もっと深く掘り下げようと思えば､ できるのです｡
‫つまり､ モバイルネットv2の全体的なアーキテクチャは､ 224の2乗×3のサイズ､ aの入力を受け取ります｡
‫k. a 画像の高さと幅を色チャンネルで指定します｡
‫一通りの変身をします｡
‫この入力を受けて､ このような変換が行われるわけです｡
‫なるほど｡
‫そして最後に1280の大きさの数字のリストを1つだけ出力します｡
‫それが最後のレイヤーですね｡
‫そして今､ あなたはこの全体的な建築や論文などを目にすることになるでしょう｡
‫願わくば､ 良い論文であれば､ これを含めて､ また､ コードを含めたより良い論文があれば､ それを含めて欲しいものです｡
‫そして､ これを見て､ これは何だろうと思うはずです｡
‫まあ､ 今回もこんなもんでしょう｡
‫なんだこれは､ と思われることでしょう｡
‫では､ numpyでどのように見えるか見てみましょう｡
‫だから､ 出力がイコールnpなら､ シェイプのイコール1 1280のものをやればいいんです｡
‫そして､ 出力｡
‫だから､ いろいろな数字の羅列になるんです｡
‫でも､ 1280､ 実は必要ないんです｡
‫そうですね｡
‫そこで登場するのが､ 高密度なレイヤーです｡
‫そこで､ 私たちの出番となるわけです｡
‫フォームでのアウトプットを求めます｡
‫あるいは､ ラベルの数が多いので､ 120の形をしています｡
‫では､ これをまとめてみましょう｡
‫画像という入力があります｡
‫モバイルネット2は､ 私たちのために､ すべてのパターンを見つけて､ それを1つの長い数字の配列に凝縮してくれます｡
‫1280の長さ｡
‫でも､ これがトランスファーラーニングの素晴らしいところなんです｡
‫あとは､ 「1280の代わりに､ ラベルの数だけ出力したいんだけど」と言えばいいんです｡
‫と､ 今更ながら疑問に思うかもしれません｡
‫なるほど｡
‫ダンスは何をするものなのか？
‫docstringを見てみましょう｡
‫通常のMN層が密に接続されているだけです｡
‫なるほど､ docstringさんありがとうございます｡
‫それは､ 実はあまり意味がないんです｡
‫でも､ 今さら活性化ってなんだよって思うかもしれませんね､ ソフは｡
‫マックス､ それを確認しよう｡
‫ソフトマックとは？
‫そして､ ここからが数学の専門用語の出番です｡
‫ただ､ ウィキペディアを見てみましょう｡
‫さて､ その1行目を読むと
‫数学の学位を持っている人とかでないと､ かなり分かりにくいと思うかもしれませんね｡
‫しかし､ ここで重要なのは､ そのことです｡
‫self maxを適用すると､ 各成分は区間ゼロの1となり､ 成分を足すと1になる｡
‫さて､ これは後ほど見ていくとして､ 今はこれだけ知っていればいい｡
‫そして､ 私が使っているソフトマックは何かというと
‫2値分類を行う場合､ どの活性化でどの機能を失ったか｡
‫活性化関数はシグモイドである｡
‫それで､ ここにシグモイドがあるんです｡
‫そして､ マルチクラス分類を行う場合は､ アクティベーションはソフトマックスになります｡
‫ソフトMax.
‫ここでは､ そういうことが起こっているわけです｡
‫ケアラーモデルを作るんです｡
‫順次稼働していく予定です｡
‫最初のレイヤーは､ モデルURLと呼ばれるもので､ これは実際に私たちのために実装されたモバイルネットV2アーキテクチャです｡
‫そして､ そのモバイルネットV2の中で､ アーキテクチャは錯綜を繰り返していくことになります｡
‫入力画像の中からパターンを見つけて､ その画像の特徴を学習するものです｡
‫機能って何だろうと思われた方は､ イメージに寄ってみましょう｡
‫取ろう｡
‫例えばこれ｡
‫コンボリューションは､ この画像の各ピクセルを見て､ よし､ ここに縦線がある､ ここに丸がある､
‫ここに丸がある､ ここに横線がある､ と判断することができます｡
‫ここで重要なのは､ どの特徴を学習させるかはモデルには教えないということです｡
‫自分で考えるんです｡
‫そこが重要なポイントになりますね｡
‫機械学習の前提は､ 画像のパターンを解明することです｡
‫だから､ 私たちは戻ってくるのです｡
‫つまり､ モバイルネットV2アーキテクチャを通過すると､ 画像に学習したすべてのパターンをサイズ1280の1つの配列として出力することになるのです｡
‫でも､ 私たちは､ おい､ 行きたいんだよ､ いや､ 180パターンもいらないんだよ､ と言いたい｡
‫120人必要です｡
‫そして､ sof maxの活性化を使って､ それらのパターンを0から1までの数字に変換し､
‫さらに一番大きい数字に変換したいのです｡
‫つまり､ すべての出力は120の配列になり､ それらをすべて足すと1つになるのです｡
‫そして､ 最高値は､ どれが私たちのラベルなのか､ ということです｡
‫さて､ ここまでの話でも十分理解できたと思いますが､ 次のビデオでは､ モデルをコンパイルするときに何が起こっているのか､
‫さらに詳しく説明していきます｡
‫では､ 現地でお会いしましょう｡