Azure Machine Learning に外部データをフィードする方法



Azure Machine Learning に業務データをフィードする方法の一つにOData があります。

スキーマ情報などの設定なしでフィードできて便利です。

CData API Server はノンコーディングでRDB、SaaS、NoSQL、フラットファイルからAPI を生成できます。 API はOData 準拠ですので、Azure Machine Learning にデータをそのままフィードすることが可能です。

この記事では、API Server で生成した「仙台弁API」をOData フィードとしてAzure Machine Learning にデータを入れます。 データソースはCData API Server が対応する80を超えるDB、SaaS、NoSQL などを使用可能です。

API Server の設定

[MySQL のデータをCData API Server でポチポチだけでREST API として公開する] (httsp://qiita.com/jonathanh/items/fcd9aca3c1eb52206102) を参考にしてください。

データソースはなんでもOKです。

インターネット公開する必要がありますので、[デプロイ]から公開環境にデプロイしてください。

Azure Machine Learning でデータを取得する

https://studio.azureml.net/ からAzure Machine Learning Studio にログインします。8時間の無償ゲスト利用が可能です。

[PROJECT]から+をクリックして、新規プロジェクト「Sendaiben」を作成します。

次に[EXPERIMENTS]をクリックし、左下の[+NEW]をクリックします。そのあと[+ Blank Experiment]をクリック。

左から[Data Input and Output]→[Import Data]をドラグして、ドロップ。

ドロップした[Import Data]を右クリックして、[Data Feed Provider]を選択します。

右のプロパティで、以下を入力

  • Data Source: Data Feed Provvider
  • Data content type: OData
  • Data Source URL: API Server のエンドポイントを設定。 ただし、以下のようにルートとなるエンドポイントの後に@Auth トークンを挟む必要があります。

他に認証項目を入れる方法がないようです。

http://localhost:8387/api.rsc/@YOURAUTHTOKEN/sendaibenlist/

[Import Data]をもう一度右クリックして、[Run Selected]を押して、データフィードを実行します。

データフィードが完了したら、再度[Import Data]を右クリックして、[Results Dataset]→[Visualize]をクリックします。

すると「仙台弁リスト」がインポートされていることを確認できます。

このように、OData 対応していないSaaS、DB、NoSQL データをAPI Server を使うことで、簡単にAzure Machine Learning にフィードできます。

無償試用版

API Server の評価版 を是非、ダウンロードしてお試しください。