前回の Azure Machine Learning で色のクラスタリング (1) では、
色データを色相でクラスタリングし、その結果をストレージに出力するところまで完了しました。
このクラスタリングの結果 (ColorData-Hue-10.csv) を WPF で視覚化したものがこちらです。
(全体のソースコードは GitHub の AzureMLSample にあります。)
クラスター数はもう少し大きめでよかったかもしれません。
いろいろ評価条件を変えてクラスタリングを試してみましょう。
次の図のように、先ほどのモデルの右側に、同様のモジュールを 3 種類追加します。
モジュールを複数選択して、コピー アンド ペーストすると速いです。
追加した 3 系統では、次のようにパラメーターを設定します。
(i)
クラスター数: 20
対象列: R, G, B
出力ファイル名: ColorData-RGB-20.csv
(ii)
クラスター数: 20
対象列: Hue, Saturation, Brightness
出力ファイル名: ColorData-HSB-20.csv
(iii)
クラスター数: 20
対象列: R, G, B, Hue, Saturation, Brightness
出力ファイル名: ColorData-All-20.csv
また、全列の値のスケールを合わせるため、[Normalize Data] を追加しています。
スケールを合わせないと、値の範囲の大きさにより列ごとに重みが変わります。
[Transformation method] で [MinMax] を選択すれば、0 から 1 までの範囲の値に線形変換されます。
実行して結果を見てみましょう。
全体的に、色相以外の彩度および明度の特徴も出ています。
(i) R, G, B
(ii) Hue, Saturation, Brightness
(iii) R, G, B, Hue, Saturation, Brightness
次に、学習済みのクラスタリング モデルを使って、新たな色データを各クラスターに振り分けてみましょう。
新たな色データとして、NIPPON COLORS – 日本の伝統色に記載されているものを利用します。
最初の ColorData.csv と同じようにデータを準備します。
この色データ (ColorData-JP.csv) をデータセットとしてアップロードし、
色相でクラスタリングしたときの Experiment を次のように変更します。
[Assign to Clusters] は、新たな入力データを学習済みのクラスターに振り分けるためのものです。
プロパティの対象列で Hue を選択します。
実行結果はこの通りです。
最初の ColorData-Hue-10.csv と同様のクラスターに色が振り分けられています。
次回は Web サービス化についてです。
前回: Azure Machine Learning で色のクラスタリング (1)
次回: Azure Machine Learning で色のクラスタリング (3)
作成したサンプル
Clustering Colors 2: by various features (Azure ML Gallery)
Clustering Colors 3: Assign new data to clusters (Azure ML Gallery)
AzureMLSample (GitHub)
2015年4月4日 22:29
[…] 次回: Azure Machine Learning で色のクラスタリング (2) […]
2015年4月7日 21:15
[…] Azure Machine Learning で色のクラスタリング (2) では、 学習済みのクラスタリング […]
2015年9月15日 02:13
[…] クラスタリングの結果を視覚化すれば Azure Machine Learning で色のクラスタリング (2) […]