マイナスから始める機械学習入門3 Node-REDで遊ぶ
Node-REDとは?
Node-REDとは、IBMが提供している、ブロックを繋ぐことでコードをあまり書かずにプログラミングができるものです。
Bluemixの機能の一部ですね。node.jsで動いているそうです。コードを書く場合はJavaScriptで記述します。
注意点として、
- 右に線が伸びているブロックは「イベントの起動」イベントが起こる条件を満たしたときに、その情報を接続先に送ります
- 左右に線が伸びているブロックは「データの処理」左からデータを受け取ったら、変換や条件分岐などの処理をして、その結果を右に送ります
- 左に線が伸びているプロックは「イベントの終了」左からデータを受け取って終了する
ではまた、Node-REDで「Hello world」を表示していきましょう。
Node-REDでHello world
Node-REDのセットアップ
- Bluemixにログインし、「カタログ」をクリック
- ボイラープレートから、「Node-RED Starter」をクリック
- アプリ名を英語で入力して(他ユーザと同じ名前は使えない・ホストはアプリ名と同じものが自動的に入力される)、「作成」を押す
- 「アプリは起動しています」の表示が出たら、隣のリンクをクリックする(かなり待ちます)
- 「Go to your Node-RED〜」と書かれたボタンをクリックする。Node-REDが起動
Node-REDでコードを書く
- 左側のブロックが並んでいる中から「Input」→「http」を選択し、右側のウィンドウにドラッグ&ドロップする
- 「http」と書かれた黄緑のブロックをダブルクリックして、URLに「/hello」と入力
- 左側のブロックが並んでいる中から「function」→「template」を選択し、右側のウィンドウにドラッグ&ドロップする
- 「{」と表示されているオレンジのブロックをダブルクリックして、「Template」のところに書かれているテキストを消す。そして好きなテキストを入力する(Hello worldなど)
- 左側のブロックが並んでいる中から「Output」→「http response」を選択し、右側のウィンドウにドラッグ&ドロップする
- 3つのブロックを繋ぐ。繋ぐときはそれぞれ左右にある■をクリックしていけばOK
- 「Deploy」ボタンを押して、「Successfully Deployed」の表示が出ればOK
- Node-REDのエディタ(今操作している画面)のURLをコピーし、別タブorウィンドウにペーストする
- 「http://アプリ名.au-syd(ここ違うかも).mybluemix.net/red/#」となっている部分の「/red/#」を「/hello」にする
- エンターキーを押せば、Webブラウザに「Hello world」の文字が表示される
特定の文字列ではなく、入力された文字列を表示したい場合は「function」→「function」でJavaSctiptのコードを書きます。
また「Input」→「http」ではなく「Input」→「inject」などブロックの左側に■がある場合は、右上の「debug」タブを選択して■をクリックすると実行されます。
次はNode-REDとBluemixの連携とNode-REDとWatsonの連携してみましょうか。