Tableau集成Python機器學習實踐(下)
本系列分上、中、下三部分,本文為第二部分。
Tableau集成Python機器學習實踐(上)
Tableau集成Python機器學習實踐(中)
Tableau報表創建
數據準備
我們還是引用iris數據集的csv數據格式作為tableau的數據源,裡面包含了class這個維度欄位和sepal_length, sepal_width, petal_length, petal_width等4個度量欄位。接下來,依次創建同名的4個參數,作為手動預測輸入值。同時我們還要對批量的數據做預測,在這裡還是使用iris數據集,把預測值和原來的值做一個對比,也算是做驗證,看一下準確率如何。因此,我們還需要創建下面幾個欄位。
class_by_para:基於手動調整的參數進行預測
class_by_data:基於表格中的數據進行預測
match_or_not: 用於標記預測準確與否
accuracy: 用於計算預測準確率
可視化分析
先來做一個聚類分析圖看看預測的效果,看起來petal_width這個特徵上分類效果顯著。setosa這個類別和其它兩個類差別明顯。
接下來看一下明細的數據,真實分類和預測分類數據不match的用形狀來標識一下,效果很直觀。
基於參數的預測,最好指定一下參數的取值範圍和格式。
最後把worksheets放在dashboard里,增加篩選器,文字和圖片裝飾,就大功告成啦!
總結
通過上面的實踐,有以下幾點值得注意(敲黑板,要劃重點了):
1. Tableau目前只能在SCRIPT_XXX等4個函數中寫Python腳本,對於本身比較複雜的函數,將代碼部署至Tabpy伺服器不僅使代碼更簡潔,而且也使得函數可復用;
2. 在Tableau中引用演算法模型可實現基於機器學習模型的實時分析,增強了Tableau的可視化分析能力;
3. 在Tableau中引入的函數需要進行實時表計算,因此對於大規模的數據會比較耗時。一種折中的做法是在數據預處理階段先使用演算法模型計算好要求的值,然後Tableau中進行可視化分析。
參考資料
Tableau Tabpy Github page
Building advanced analytics applications with TabPy
本文所有數據,演算法模型以及tableau文件均已上傳至這裡,歡迎交流。
推薦閱讀:
※機器學習篇-數據劃分
※論文精讀| 附源代碼及數據集 | LeCun的CNN經典之作 | Gradient-Based Learning…
※FM/FFM-論文筆記
※機器學習與數據挖掘網上資源