Regression チュートリアル¶
ここではJubatusの線形回帰機能(Regression)である jubaregression
を使用した、Jubatus Clientの使い方を説明します。
線形回帰機能(Regression)とは、入力データから、出力データを推定する機能であり、株価予測や消費電力予測などに利用することができます。
サンプルプログラムの概要¶
サンプルとして、駅からの距離、専有面積、築年数等の条件から家賃を推測するプログラム「 rent 」を用いて説明していきます。
最初に、賃貸情報サイトから取得した「S町の1Rマンション」の賃貸情報 (rent-data.csv) をクライアント側で用意し、推定するためのモデルを jubaregression
に学習させます。
次に、推定用の入力データとして外部ファイル(今回はYAML形式を使用する)に物件の条件を入力し、 jubaregression
に与えます。
jubaregression
は先ほど学習したモデルを用い、条件にふさわしい家賃を推定して返却するので、クライアント側で受け取った結果を出力します。
例えば、推定用の入力データとして「駅からの距離は5分、占有面積は32.0㎡、築年数は15年」と入力すると、8.0万円と推定家賃が出力されます。
処理の流れ¶
Jubatus Client を使ったコーディングは、主に以下の流れになります。
jubaregression
への接続設定jubaregression
のホストやポート番号を指定し、接続設定をします。
- 学習用データの準備
- 賃貸情報CSVから家賃(rent)ごとに学習用データを作成します。
- データの学習(学習モデルの更新)
- 2. で作成した学習用データを
train
メソッドでjubaregression
に与え、学習を行います。
- 推定用データの準備
jubaregression
に推定させる物件情報のデータを作成します。
- 学習モデルに基づく推定
- 4. で作成した推定用データを入力値とし、
estimate
メソッドで 3. の学習に基づいた推定をします。
- 結果の出力
estimate
メソッドの戻り値である推定結果を出力します。
サンプルプログラム¶
現在、Python 以外の言語のサンプルプログラムはありません。(みなさまのコントリビューションをお待ちしています!)