プログラム概要
今回、機械学習(ディープラーニング)の予測モデルを活用した、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アプリケーション化したい
上記のようなお悩みがございましたら、お気軽にご相談頂ければと思います。
お見積りは無料です。