EDA…處理缺失值…preprocessing….feature engineering….fit…模型完成!
雖然常說資料跟丟進黑盒子裡沒兩樣(除了決策樹),
但當辛辛苦苦的做完一個模型後總是會想要看一下效果是吧?
不然有種大招出完對方還是無動於衷的感覺(?)
所以來用經典的Titanic資料集玩玩看streamlit吧~
可以先點下方的成品link來預測你在鐵達尼號上的存活機率是多少
( 2022.12 更新: heroku 已停止免費服務,再見了朋友 )
實作:
首先先開啟cmd並指向到檔案的位置
再叫streamlit運行你的檔案,關掉cmd時就等於關掉app的訊號源
通常它會直接跳出來,如果沒有的話就手動複製貼上到瀏覽器
不能用jupyter的話我個人是習慣用notepad++寫啦
常規的import套件
用@st.cache讀原始資料,因為kaggle有提供連結所以不用再另外找平台放資料,如果是私用的資料可以放在AWS等雲端,沒有要push出去就正常的本機就好
常規的迴歸填值、feature engineering、one-hot encoding、standardization
fit它,模型完成啦~
主角streamlit,建議先建list就好,原本是想套進one-hot的函式裡,然而Pclass出現的結果不如預期
手動one-hot encoding…很不優雅….
換算是從wiki上看的,GBP£1≒NT$39
用silder、selectbox等widget獲取使用者資料後變SibSp、Parch、Familysize
因為我模型使用的是經過standardization的age跟fare,所以需要再進行一次
並print出最後要丟進模型的資料
最後用先前訓練好的RandomForestClassifier預測使用者的生存或死亡率~
整體程式碼:
下一篇:deploy到網路上!