Streamlitと機械学習モデルを組み合わせたWebアプリケーション

プログラム概要

今回、機械学習(ディープラーニング)の予測モデルを活用した、Webアプリケーションを作成しました。

言語はPythonです。

機会学習モデルはTensorflowで作成したモデルを利用しており、Webアプリケーション化にはStreamlitを用いました。

Streamlitは、簡単にいうとPythonでのWebアプリケーションを簡易に作成することができるプログラムです。

早速ですが、今回作成したアプリの画面は以下のようになっています。

本プログラムは医療目的での利用を想定しているもので、患者さんの情報を入力するとディープラーニング(AI)で学習したモデルから、特定因子のスコアを算出するアプリケーションになります。

左側のバーの部分に情報を入力し、「Predict」のボタンを押すとスコアが算出されます。

上記の画像の例では69.8が予測されたスコアとなります。

実装

本プログラムの要素は、大きく次の2つに分かれています。

1. Webのフォームなどを利用して、入出力ハンドリングする操作部分
2. ディープラーニングの学習モデルを用いて、スコアを予測する部分

1の画面操作部については、先程も記載したようにStreamlitを活用しています。

Streamlitを使うと、既存のPythonプログラムのWebアプリケーションを容易に行うことができます。

※ただ、Streamlit自体にはキャッシュ周りや画面描画の特徴など、初心者だと詰まる点がいくつかあるため、そこは注意が必要です。

2の予測モデルについては、前述の通りTensorflowディープラーニングで作成したモデルを利用しています。

Streamlit以外のGUI化について

Streamlit以外でWebアプリケーション化する方法として、他にはflaskというWebフレームワークを利用する方法も考えられます。

Webアプリケーションではなく、ネイティブアプリケーションでUIを作ることをかんがえるとtkinterやPySimpleGUIなどが考えられます。

NeeNetでは上記のflask, tkinter, PySimpleGUIを使った案件の対応実績もございます。

ご依頼について

NeeNetではPythonを用いた機械学習モデルの作成や、予測モデルを活用したWebアプリケーションの作成をお引き受けしております。

データはあるけど流行りのディープラーニングで予測モデルを作成する方法が分からない

既存のコマンドラインアプリケーションがあるが、Webアプリケーション化したい

上記のようなお悩みがございましたら、お気軽にご相談頂ければと思います。

お見積りは無料です。

  • URLをコピーしました!