1. はじめに
Dataikuではフローを定期実行したり、トリガーを設定することによって自動実行を設定できる「シナリオ」の機能があります。今回はシナリオとWebappを連携して賃料を予測するシミュレーションアプリを作成してみました。
この記事では、DataikuのシナリオとWebアプリの連携を通じて、どのように賃料予測のシミュレーションアプリを構築したかを紹介します。
2. Webappとフローの連携
Dataiku上でシミュレーションを実現するための重要なステップが、Webappの開発とフローの連携です。
Dataikuのシナリオを使うことで、データ処理やモデル訓練といったプロセスをあらかじめ設定しトリガーを設定しておけば、更新されたデータセットに対しても処理を実行することが可能です。
さらに、このシナリオとWebappと連携させることで、ユーザーが直感的にシミュレーションを体験できる仕組みを実現することが可能になります。
シナリオの設定
シナリオは、プロセス全体を自動化するために設定します。
例えば、モデルの訓練、予測結果の更新までを一連の流れとして定義します。
これにより、更新されたデータセットに対して賃料予測シミュレーションを行うことが可能です。
今回は事前に訓練モデルの作成までを実装しておきます。
使用するデータセットとしては以下のようなものを準備しておきます。(今回はダミーで生成したもので現実に即したものではありません。)
この中から地区名、賃料(万円)、面積(㎡)、駅徒歩_分、階数、間取り、ペット可、駐車場、バルコニー、日当たりを説明変数としてモデルを作成しておきます。
フローとしては以下のようになります。
これからpredictionを予測対象のデータセットして設定しておき、シナリオを設定しておくことで予測を自動実行することが可能になります。
webappの開発
次に予測に用いる特徴量を入力するWebappを作成します。今回はDashというライブラリを選択します。
DataikuではwebappでDash専用の設定画面があります。
Dashを使ったWebappの作り方は以下のドキュメントが参考になります。
Tutorial | Python Dash webapps
https://knowledge.dataiku.com/latest/data-viz/webapps/tutorial-python-dash.html
こちらから、DashとPythonを組み合わせてWebaapを作成することが可能になります。
Dashを用いて必要なデータを入力し、予測を実行させます。
実際に作成したWebappは以下のようなものになります。
必要な情報をWebapp上で入力し、predictionのデータセットへ上書きし、入力ボタンのクリックをトリガーとしシナリオを実行します。
Webapp上でシナリオを実行するにはシナリオIDを用いて行います。コードを用いたシナリオの実行に関しては以下のドキュメントが参考になります。
Scenarios
https://developer.dataiku.com/latest/concepts-and-examples/scenarios.html#scenarios
入力ボタンを押すとシナリオが走りだし、ジョブが実行されます。
3. 予測結果の出力
賃料予測の結果は、Webappを通じてインタラクティブに表示されます。
例えば、物件の所在地、広さ、築年数などの入力に応じて、予測された賃料がリアルタイムに出力されます。
イメージとしては以下のようになります
Webappを利用することでインタラクティブにデータを入力することにより、様々なシチュエーションに対して賃料予測がクイックにすることが可能になります。
4. 終わりに
賃料予測シミュレーションアプリの開発は、不動産ビジネスにおける意思決定を支援する有用なツールとなると思います。
Dataikuを用いたWebappの連携により、簡単なシミュレーションを誰でも手軽に行える環境を提供できます。
このWebappでの賃料の予測を通じて物件の投資判断やリスク評価に役立つと同時に、不動産の管理やマーケティング戦略にも応用可能です。