はじめに
Azure Machine Learning Studio(Azure ML Studio)といえば、ブラウザ上で手軽に機械学習を構築することができるマイクロソフトのサービスです。
コードを書かずともドラッグ&ドロップで機械学習を構築できるので非常にとっつきやすいです。
とはいえ、Azure ML Studio上で、4層以上のニューラルネットワークを構築する場合、Net#という言語でカスタムスクリプトを書いて定義するのが一般的かもしれません。
たとえばAzure ML Studio 紹介のデモをするようなシチュエーションで、
肝心のディープラーニングにコードの記述が必要というのも、とっつきやすさが半減してしまいます。
実際はドラッグ&ドロップと設定値の変更だけで、4層以上のニューラルネットワークも定義できますが、設定方法があまり直感的ではないので以下に記載しておきます。
内容
もし、上図の青枠の[Hidden layer specification] に「Custom definition script」を指定している場合は、Net#スクリプトでニューラルネットを定義します。
図の通り「Fully-connected case」(通常の全結合)を指定している場合は、その下赤枠の[Number of hidden nodes]で隠れ層のユニット数を指定します。
ここは、数値を入力すべき欄のように見えます(私は最初そう思いました)。
単にひとつの数値を入れると、それはあくまでひとつの隠れ層内のユニット数になります。
でき上がるのは入力層を除いて2層のニューラルネットワークです。
しかし実は、この[Number of hidden nodes]は、層ごとにカンマ区切りで入力できます。
つまりカンマで区切るごとに隠れ層を定義できるので、4層以上のニューラルネットワークも定義できます。
たとえば「8,6,8」入力すると、隠れ層のユニット数がそれぞれ8個、6個、8個の3層、入力層を除いて全体で4層のニューラルネットワークになります。
参考
Type the number of nodes in the hidden layer. For multiple hidden layers, type a comma-separated list.