基於智慧型資料庫的自助式機器學習
譯者| 張怡
審校| 梁策孫淑娟
1.如何成為一個IDO?
IDO(insight -driven organization)指洞察力驅動(以資訊為導向)的組織。要成為一個IDO,首先需要資料以及操作和分析資料的工具;其次是具有適當經驗的資料分析師或資料科學家;最後還需要找到一種技術或方法,從而在整個公司實施洞察力驅動的決策過程。
機器學習是一種能發揮數據優勢的技術。 ML流程首先使用資料訓練預測模型,訓練成功之後來解決與資料相關的問題。其中,人工神經網路是最有效的技術,它的設計源自於我們目前對人類大腦運作方式的理解。考慮到人們目前擁有的龐大運算資源,它透過大量資料訓練可以產生令人難以置信的模型。
企業可以使用各種自助化軟體和腳本完成不同的任務,從而避免人為錯誤的情況。同樣,你也完全可以基於數據進行決策來避免當中的人為錯誤。
2.為什麼企業在採用人工智慧方面進展緩慢?
使用人工智慧或機器學習來處理資料的企業僅是少數。美國人口普查局(US Census Bureau)表示,截至2020年,只有不到10%的美國企業採用了機器學習(主要是大公司)。
採用ML的障礙包括:
- 人工智慧在取代人類之前還有大量工作尚未完成。首先是許多企業缺乏且請不起專業人員。資料科學家在這一領域備受推崇,但他們的僱用成本也是最高的。
- 缺乏可用資料、資料安全性以及耗時的ML演算法實作。
- 企業很難創造一個環境,讓數據及其優勢得以發揮。這種環境需要相關的工具、流程和策略。
3.機器學習的推廣只有自動ML(AutoML)工具是不夠的
#自動ML平台雖然有著很光明的未來,但其覆蓋面目前還相當有限,同時關於自動ML能否很快取代資料科學家的說法也有爭論。
如果想要在公司成功部署自助化機器學習,AutoML工具確實是至關重要的,但流程、方法和策略也必須重視。 AutoML平台只是工具,大多數ML專家認為這是不夠的。
4.分解機器學習過程
任何ML程序都從資料開始。一般認為,資料準備是ML過程中最重要的環節,建模部分只是整個資料管道的一部分,同時透過AutoML工具簡化。完整的工作流程仍需要大量的工作來轉換資料並將其提供給模型。資料準備和資料轉換可謂工作中最耗時、最令人不愉快的部分。
此外,用於訓練ML模型的業務資料也會定期更新。因此,它要求企業建構能夠掌握複雜的工具和流程的複雜ETL管道,因此確保ML流程的連續和即時性也是一項具有挑戰性的任務。
5.將ML與應用程式整合
假設現在我們已經建置了ML模型,然後需要部署。經典的部署方法將其視為應用層元件,如下圖所示:
它的輸入是數據,輸出是我們得到的預測。透過整合這些應用程式的API來使用ML模型的輸出。僅從開發者的角度來看,這一切似乎很容易,但在考慮流程時就不是那麼回事了。在一個龐大的組織中,與業務應用程式的任何整合和維護都相當麻煩。即使公司精通技術,任何程式碼變更請求都必須通過多層級部門的特定審查和測試流程。這會對靈活性產生負面影響,並增加整個工作流程的複雜性。
如果在測試各種概念和想法方面有足夠的靈活性,那麼基於ML的決策就會容易得多,因此人們會更喜歡具有自助服務功能的產品。
6.自助機器學習/智慧資料庫?
如我們上面所看到的,資料是ML流程的核心,現有的ML工具取得資料並傳回預測結果,而這些預測也是數據的形式。
現在問題來了:
- 為什麼我們要把ML當作一個獨立的應用程序,並在ML模型、應用程式和資料庫之間實現複雜的整合呢?
- 為什麼不讓ML成為資料庫的核心功能呢?
- 為什麼不讓ML模型透過標準的資料庫語法(如SQL)可用呢?
讓我們分析上述問題及其面臨的挑戰,從而找到ML解決方案。
挑戰#1:複雜的資料整合和ETL管道
維護ML模型和資料庫之間的複雜資料整合和ETL管道,是ML流程面臨的最大挑戰之一。
SQL是極佳的資料操作工具,所以我們可以透過將ML模型引入資料層來解決這個問題。換句話說,ML模型將在資料庫中學習並傳回預測。
挑戰#2:ML模型與應用程式的整合
透過API將ML模型與業務應用程式整合是面臨的另一個挑戰。
業務應用程式和BI工具與資料庫緊密耦合。因此,如果AutoML工具成為資料庫的一部分,我們就可以使用標準SQL語法來預測。接下來,ML模型和業務應用程式之間不再需要API集成,因為模型駐留在資料庫中。
解決方案:在資料庫中嵌入AutoML
在資料庫中嵌入AutoML工具會帶來很多好處,例如:
- 任何使用資料並了解SQL的人(資料分析師或資料科學家)都可以利用機器學習的力量。
- 軟體開發人員可以更有效地將ML嵌入到業務工具和應用程式中。
- 資料和模型之間以及模型和業務應用程式之間不需要複雜的整合。
這樣一來,上述相對複雜的整合圖表變更如下:
#它看起來更簡單,也讓ML過程更流暢高效。
7.如何實作自助式ML將模型作為虛擬資料庫表
找到解決方案的下一步是來實作它。
為此,我們使用了一個叫做AI Tables的結構。它以虛擬表的形式將機器學習引入資料平台。它可以像其他資料庫表一樣創建,然後向應用程式、BI工具和DB客戶端開放。我們透過簡單地查詢資料來進行預測。
AI Tables最初由MindsDB開發,可以作為開源或託管雲端服務使用。他們整合了傳統的SQL和NoSQL資料庫,如Kafka和Redis。
8.使用AI Tables
AI Tables的概念使我們能夠在資料庫中執行ML流程,這樣ML流程的所有步驟(即資料準備、模型訓練和預測)都可以通過資料庫進行。
- 訓練AI Tables
首先,使用者要根據自己的需求建立一個AI Table,它類似於一個機器學習模型,包含了與來源表的列等價的特徵;然後透過AutoML引擎自助完成剩餘的建模任務。後文也將舉例說明。
- 做預測
一旦建立了AI Table,它不需要任何進一步的部署就可以使用了。要進行預測,只需要在AI Table上執行一個標準SQL查詢。
你可以逐一或分批地進行預測。 AI Tables可以處理許多複雜的機器學習任務,如多元時間序列、偵測異常等。
9.AI Tables工作範例
對於零售商來說,在適當的時間保證產品都有適當的庫存是一項複雜的任務。當需求成長時,供給隨之增加。基於這些數據和機器學習,我們可以預測給定的產品在給定的日期應該有多少庫存,從而為零售商帶來更多收益。
首先你需要追蹤以下訊息,建立一張AI Table:
- 產品售出日期(date_of_sale)
- 產品售出店鋪(shop)
- 具體售出產品(product_code)
- 產品售出數量(amount)
如下圖所示:
- 使用MindsDB中的CREATE PREDICTOR語句。
- 根據歷史資料定義來源資料庫。
- 根據歷史資料表(historical_table)訓練AI Table,所選列(column_1和column_2)是用來進行預測的特徵。
- AutoML會自動完成剩下的建模任務。
- MindsDB會辨識每一列的資料類型,對其進行歸一化和編碼,並建立和訓練ML模型。
在資料庫中,我們經常需要處理涉及高基數的多元時間序列資料的任務。如果使用傳統的方法,需要相當大的力氣來建立這樣的ML模型。我們需要將資料分組,並根據給定的時間、日期或時間戳記資料欄位對其進行排序。
例如,我們預測五金行賣出的鐵鎚數量。那麼,數據按商店和產品分組,並對每個不同的商店和產品組合作出預測。這就為我們帶來了為每個組創建時間序列模型的問題。
這聽起來工程浩大,但MindsDB提供了使用GROUP BY語句建立單一ML模型,從而一次訓練多元時間序列資料的方法。讓我們看看僅使用一個SQL指令是如何完成的:
所建立的stock_forecaster預測器可以預測某個特定商店未來會銷售多少商品。資料按銷售日期排序,並按商店分組。所以我們可以為每家商店預測銷售金額。
(2)批量預測
透過使用下面的查詢將銷售資料表與預測器連接起來,JOIN操作將預測的數量添加到記錄中,因此我們可以一次性獲得許多記錄的批量預測。
如想了解更多關於在BI工具中分析和視覺化預測的知識,請查看這篇文章。
(3)實際運用
傳統方法將ML模型視為獨立的應用程序,需要維護到資料庫的ETL管道和到業務應用程式的API整合。 AutoML工具儘管使建模部分變得輕鬆且直接,但完整的ML工作流程也仍需要經驗豐富的專家管理。其實資料庫已經是資料準備的優選工具,因此將ML引入資料庫而非將資料引入ML中是更有意義的。由於AutoML工具駐留在資料庫中,來自MindsDB的AI Tables構造能夠為資料從業者提供自助AutoML並讓機器學習工作流程得以簡化。
原文連結:https://dzone.com/articles/self-service-machine-learning-with-intelligent-dat
譯者介紹
張怡,51CTO社群編輯,中級工程師。主要研究人工智慧演算法實現以及場景應用,對機器學習演算法和自動控制演算法有所了解和掌握,並將持續關注國內外人工智慧技術的發展動態,特別是人工智慧技術在智慧網聯汽車、智慧家居等領域的具體實現及其應用。
以上是基於智慧型資料庫的自助式機器學習的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

C++中機器學習演算法面臨的常見挑戰包括記憶體管理、多執行緒、效能最佳化和可維護性。解決方案包括使用智慧指標、現代線程庫、SIMD指令和第三方庫,並遵循程式碼風格指南和使用自動化工具。實作案例展示如何利用Eigen函式庫實現線性迴歸演算法,有效地管理記憶體和使用高效能矩陣操作。

機器學習是人工智慧的重要分支,它賦予電腦從數據中學習的能力,並能夠在無需明確編程的情況下改進自身能力。機器學習在各個領域都有廣泛的應用,從影像辨識和自然語言處理到推薦系統和詐欺偵測,它正在改變我們的生活方式。機器學習領域存在著多種不同的方法和理論,其中最具影響力的五種方法被稱為「機器學習五大派」。這五大派分別為符號派、聯結派、進化派、貝葉斯派和類推學派。 1.符號學派符號學(Symbolism),又稱符號主義,強調利用符號進行邏輯推理和表達知識。該學派認為學習是一種逆向演繹的過程,透過現有的

譯者|李睿審校|重樓人工智慧(AI)和機器學習(ML)模型如今變得越來越複雜,這些模型產生的產出是黑盒子-無法向利害關係人解釋。可解釋性人工智慧(XAI)致力於透過讓利害關係人理解這些模型的工作方式來解決這個問題,確保他們理解這些模型實際上是如何做出決策的,並確保人工智慧系統中的透明度、信任度和問責制來解決這個問題。本文探討了各種可解釋性人工智慧(XAI)技術,以闡明它們的基本原理。可解釋性人工智慧至關重要的幾個原因信任度和透明度:為了讓人工智慧系統被廣泛接受和信任,使用者需要了解決策是如何做出的

蘋果公司最新發布的iOS18、iPadOS18以及macOSSequoia系統為Photos應用程式增添了一項重要功能,旨在幫助用戶輕鬆恢復因各種原因遺失或損壞的照片和影片。這項新功能在Photos應用的"工具"部分引入了一個名為"已恢復"的相冊,當用戶設備中存在未納入其照片庫的圖片或影片時,該相冊將自動顯示。 "已恢復"相簿的出現為因資料庫損壞、相機應用未正確保存至照片庫或第三方應用管理照片庫時照片和視頻丟失提供了解決方案。使用者只需簡單幾步

在C++中,機器學習演算法的實作方式包括:線性迴歸:用於預測連續變量,步驟包括載入資料、計算權重和偏差、更新參數和預測。邏輯迴歸:用於預測離散變量,流程與線性迴歸類似,但使用sigmoid函數進行預測。支援向量機:一種強大的分類和回歸演算法,涉及計算支援向量和預測標籤。

如何在PHP中使用MySQLi建立資料庫連線:包含MySQLi擴充(require_once)建立連線函數(functionconnect_to_db)呼叫連線函數($conn=connect_to_db())執行查詢($result=$conn->query())關閉連線( $conn->close())

PHP處理資料庫連線報錯,可以使用下列步驟:使用mysqli_connect_errno()取得錯誤代碼。使用mysqli_connect_error()取得錯誤訊息。透過擷取並記錄這些錯誤訊息,可以輕鬆識別並解決資料庫連接問題,確保應用程式的順暢運作。

在Golang中使用機器學習來開發智慧演算法和資料驅動解決方案:安裝Gonum庫用於機器學習演算法和實用程式。使用Gonum的LinearRegression模型進行線性迴歸,一種監督學習演算法。用訓練資料訓練模型,訓練資料包含輸入變數和目標變數。根據新特徵預測房價,模型將從中提取線性關係。
