[SQL Server][Machine Learning]Realtime評分(預測)

測試環境訓練好模型,正式上場預測前,我們會需要再建立一段R的評分程式碼,並且以字串的方式包在外部預存程序介面內(sp_execute_external_script),透過讀取序列化後的模型在R的環境執行預測。

但這樣的方式還是多了點麻煩,第一個是程式的可讀性,第二個則是正式環境的資料庫必需依賴R的環境作運算,要解決這個問題,也許可以試試看SQL2016就推出的Realtime評分(sp_rxPredict)或是SQL 2017推出的原生(Native)評分方式,更即時更原生的方式執行。

...繼續閱讀 »

[SQL Server][Machine Learning]建模時發生記憶體不足(failure to allocate requested memory)

最近想把某個問題的答題方式從線性迴歸改用決策樹演算法,使用sp_execute_external_script呼叫revoscaler下的rxDTree演算法建模時,出現了外部指令碼錯誤 : failure to allocate requested memory訊息,相同的資料量,線性模型rxFastLinear卻可以處理,筆記偵錯之路。

...繼續閱讀 »

[SQL Server][Machine Learning]使用MicrosoftML套件預測紐約計程車司機是否會收到小費

MicrosoftML是Microsoft R Server最新的機器學習演算法套件包,直接內建在SQL Server 2017附加安裝的Machine Learning Services,除了之前CTP時曾經練習過one-class SVM,還包含了

  • 快速線性(同時支援L1、L2正規化)
  • 促進式決策樹
  • 快速隨機森林
  • 羅吉斯迴歸(同時支援L1、L2正規化)
  • 深度神經網路(DNNs)
...繼續閱讀 »

[SQL Server][Machine Learning]One Class SVM

在執行異常偵測(abnormal detection)時,通常我們擁有大量的正常交易資料,但可能沒有足夠的不正常交易來讓機器學習,這個時候可以考慮單類別的SVM演算法(one Class-SVM)。很理想的,one Class-SVM隨著MicrosoftML套件也正式在R Server 9.0後可以在地面環境使用了(SQL Server 2017 CTP2),我們來試試。

...繼續閱讀 »

[SQL Server]R Services改名機器學習服務(SQL Server 2017)

R語言以及Python是資料科學工作中常用的兩把利劍,兩者在資料分析、機器學習上都是很棒的武器,去年微軟在SQL Server 2016把R語言整合進平台,就在今年,即將推出的SQL Server 2017也將把Python整合進資料平台了,此外,這一次也同時把R Services重新命名為Machine Learning服務來呼應這次的整合與原有R機器學習套件的升級,不久的將來,Python常用的scikit-learn、TensorFlow及keras套件也能直接執行在SQL Server內了,今天我們先來安裝RC2版本環境。

...繼續閱讀 »