<b>3.7 部署</b>
<b></b>
有一些使用者可能已經擁有了部署系統,按使用者所需的格式将所開發的模型導出即可。
對于線性回歸模型,mllib支援将模型導出為預測模型标記語言(predictive model markup language,pmml)。
更多關于mllib導出pmml模型的資訊,請通路:https://spark.apache.org/docs/latest/mllib-pmml-model-export.html。
對于r notebook,pmml可以直接在其他環境運作。使用r語言函數包pmml,可以将r語言模型導出。
更多關于r語言函數包pmml的資訊,請通路:http://journal.r-project.org/archive/ 2009-1/rjournal_2009-1_guazzelli+et+al.pdf。
可以将決策模型直接部署在apache spark上,便于使用者通路使用。
這裡有兩個部署結果經常使用的方法:(1)儀表盤和(2)基于規則的決策。我們根據結果提供的對象來選擇合适的方法。
這裡,我們簡單介紹了這兩個方法。詳細的決策部署需要優化,這不是本章的主要内容。在後續的章節中,我們會花一些時間介紹部署,讓讀者了解更多。
3.7.1 儀表盤
對于實時分析儀表盤,很多使用者将spark 流處理和其他工具一起使用。
我們的工作是采用一個簡單的儀表盤方法通過圖形和表格将分析結果呈現給使用者。所有儀表盤的交換性均與一個或多個特征的繪制相關。特征更新時,每個繪制算法會再次自動執行并重新繪制圖形。
對于r notebook,我們可以使用r語言程式包shiny 和 shinydashboard來快速建立儀表盤。
更多關于使用shinydashboard程式包的方法,請通路:https://rstudio.github.io/shinydashboard/。
新版的databricks也提供了儀表盤的建構工具。隻需前往“workspace -> create -> dashboard”啟用它即可。
databricks的儀表盤功能強大,效果直覺。建立後,使用者隻需要點選一下按鈕,就可以給公司員工或其他使用者釋出一個儀表盤。
3.7.2 規則
有很多工具可以将所有模型結果轉變為規則。特别是r語言的計算結果,有幾個工具可以用來将預測模型的結果提取為規則。
我們使用r語言程式包rpart.utils以不同的格式提取和導出決策樹模型的規則,導出格式包括rodbc。
更多關于r語言程式包rpart.utils的資訊,請通路:https://cran.r-project.org/web/packages/rpart.utils/rpart.utils.pdf。
關于mllib提取規則的讨論,請通路:http://stackoverflow.com/questions/31782288/how-to-extract-rules-from-decision-tree-spark-mllib。