這篇文章是由 Rocket Companies 的 Dian Xu 和 Joel Hawkins 共同撰寫的。
Rocket Companies 是一家位於底特律的金融科技公司,使命是「幫助每個人找到家」。目前面臨住房短缺和可負擔性問題,Rocket 透過直觀且由人工智慧驅動的體驗簡化了擁有房屋的過程。這個全面的框架簡化了擁有房屋旅程中的每一個步驟,讓消費者能夠輕鬆搜尋、購買和管理房屋融資。Rocket 將房屋搜尋、融資和服務整合在一個環境中,提供無縫且高效的體驗。
Rocket 品牌代表著提供簡單、快速和可靠的數位解決方案來處理複雜的交易。Rocket 致力於幫助客戶實現擁有房屋和財務自由的夢想。自成立以來,Rocket 從一家單一的抵押貸款機構成長為一個業務網絡,為客戶創造新的機會。
Rocket 將複雜的過程透過科技簡化。申請抵押貸款可能很複雜且耗時。因此,我們使用先進的科技和數據分析來簡化擁有房屋的每一個步驟,從申請到結案。透過分析各種數據點,我們能夠快速且準確地評估貸款的風險,讓我們能做出更明智的貸款決策,並為客戶提供所需的融資。
我們在 Rocket 的目標是為現有和潛在客戶提供個性化的體驗。Rocket 的多樣化產品可以根據客戶的具體需求進行定制,而我們的專業銀行團隊則必須與最合適的客戶機會匹配。與我們龐大且忠誠的客戶基礎保持良好的關係,以及對財務義務的對沖,是我們成功的關鍵。由於我們的業務量,即使是小的改進也能產生重大影響。
在這篇文章中,我們分享了如何在 AWS 上現代化 Rocket 的數據科學解決方案,將交付速度從八週提高到不到一小時,改善操作穩定性和支持,並在 18 個月內將事件票證減少超過 99%,每天支持 1000 萬個自動化的數據科學和人工智慧決策,並提供無縫的數據科學開發體驗。
Rocket 的舊有數據科學環境挑戰
Rocket 之前的數據科學解決方案是基於 Apache Spark,並結合了舊版 Hadoop 環境和供應商提供的數據科學開發工具。Hadoop 環境托管在 Amazon Elastic Compute Cloud (Amazon EC2) 伺服器上,由 Rocket 的技術團隊內部管理,而數據科學體驗基礎設施則是在本地托管。這兩個系統之間的通信是通過 Kerberized Apache Livy (HTTPS) 連接在 AWS PrivateLink 上建立的。
數據探索和模型開發使用著名的機器學習 (ML) 工具,如 Jupyter 或 Apache Zeppelin 筆記本進行。Apache Hive 用於提供對存儲在 HDFS 中的數據的表格界面,並與 Apache Spark SQL 整合。Apache HBase 用於提供實時的基於鍵的數據訪問。模型訓練和評分是通過 Jupyter 筆記本或通過 Apache 的 Oozie 編排工具安排的作業來進行的,這是 Hadoop 實施的一部分。
儘管這種架構有其優點,但 Rocket 面臨的挑戰限制了其有效性:
可訪問性限制:數據湖存儲在 HDFS 中,僅能從 Hadoop 環境訪問,這妨礙了與其他數據源的整合。這也導致需要攝取的數據積壓。
數據科學家的學習曲線陡峭:許多 Rocket 的數據科學家對 Spark 沒有經驗,因為它的編程模型比其他流行的 ML 解決方案(如 scikit-learn)更為複雜。這對數據科學家來說是一個挑戰,讓他們難以變得高效。
維護和故障排除的責任:Rocket 的 DevOps/技術團隊負責所有升級、擴展和 Hadoop 集群的故障排除,這是在裸 EC2 實例上安裝的。這導致了與供應商的問題積壓,仍然未解決。
開發與生產需求的平衡:Rocket 必須管理開發和生產之間的工作隊列,這兩者總是競爭相同的資源。
部署挑戰:Rocket 希望支持更多實時和流式推理的用例,但這受到 MLeap 對實時模型和 Spark Streaming 對流式用例的能力的限制,當時這些仍然是實驗性的。
數據安全和 DevOps 支持不足:之前的解決方案缺乏強大的安全措施,對數據科學工作的開發和運營支持有限。
Rocket 的舊有數據科學架構如下圖所示。
該圖描繪了流程,關鍵組件如下:
數據攝取:數據通過 Attunity 數據攝取在 Spark SQL 中進行攝取。
數據存儲和處理:所有計算都在 Hadoop 集群內部以 Spark 作業的形式進行,使用 Apache Livy 和 Spark。數據存儲在 HDFS 中,通過 Hive 訪問,Hive 提供對數據的表格界面並與 Spark SQL 整合。HBase 用於提供實時的基於鍵的數據訪問。
模型開發:數據探索和模型開發使用 Jupyter 或 Orchestration 等工具進行,這些工具通過 Kerberized Livy 連接與 Spark 伺服器通信。
模型訓練和評分:模型訓練和評分是通過 Jupyter 筆記本或通過 Apache 的 Oozie 編排工具安排的作業進行的,該工具是 Hadoop 實施的一部分。
Rocket 的遷移之旅
在 Rocket,我們相信持續改進的力量,並不斷尋找新的機會。其中一個機會是使用數據科學解決方案,但為此,我們必須擁有強大且靈活的數據科學環境。
為了解決舊有數據科學環境的挑戰,Rocket 決定將其 ML 工作負載遷移到 Amazon SageMaker AI 套件。這將使我們能夠提供更個性化的體驗,更好地了解我們的客戶。為了促進這次遷移的成功,我們與 AWS 團隊合作,創建自動化和智能的數位體驗,展示 Rocket 對客戶的理解並保持聯繫。
我們實施了 AWS 多帳戶策略,在構建帳戶中建立 Amazon SageMaker Studio,並使用網絡隔離的 Amazon VPC。這使我們能夠分開開發和生產環境,同時改善我們的安全性。
我們將新工作移至 SageMaker Studio,並將舊的 Hadoop 工作負載移至 Amazon EMR,通過 Livy 和 SageMaker 筆記本連接到舊的 Hadoop 集群,以便於過渡。這使我們能夠訪問更廣泛的工具和技術,讓我們能夠為每個要解決的問題選擇最合適的工具。
此外,我們將數據從 HDFS 移至 Amazon Simple Storage Service (Amazon S3),現在使用 Amazon Athena 和 AWS Lake Formation 提供對生產數據的適當訪問控制。這使得訪問和分析數據變得更容易,並能與其他系統整合。團隊還通過 Amazon Elastic Kubernetes Service (Amazon EKS) 提供安全的互動整合,進一步改善公司的安全性。
SageMaker AI 在賦予我們的數據科學社區靈活性方面發揮了重要作用,使他們能夠為每個問題選擇最合適的工具和技術,從而實現更快的開發週期和更高的模型準確性。通過 SageMaker Studio,我們的數據科學家可以無縫地開發、訓練和部署模型,而無需額外的基礎設施管理。
這次現代化努力的結果,SageMaker AI 使 Rocket 能夠在 Rocket Companies 中擴展我們的數據科學解決方案,並使用中心-輻射模型進行整合。SageMaker AI 自動配置和管理實例的能力使我們能夠專注於數據科學工作,而不是基礎設施管理,將生產中的模型數量增加了五倍,數據科學家的生產力提高了 80%。
我們的數據科學家能夠使用最合適的技術來解決當前問題,我們的安全性也得到了改善。Rocket 現在可以對數據和計算進行隔離,並對開發和生產進行隔離。此外,我們能夠使用 Amazon SageMaker Experiments 和可通過 SageMaker 模型註冊表和 Amazon SageMaker Feature Store 發現的工件提供模型追蹤和血統。所有的數據科學工作現在都已經遷移到 SageMaker,所有舊的 Hadoop 工作都已經遷移到 Amazon EMR。
總體而言,SageMaker AI 在促進 Rocket 的現代化之旅中發揮了關鍵作用,建立了更具可擴展性和靈活性的 ML 框架,減少了操作負擔,提高了模型準確性,加快了部署時間。
成功的現代化使 Rocket 能夠克服之前的限制,更好地支持我們的數據科學工作。我們能夠改善我們的安全性,使工作更具可追溯性和可發現性,並給予我們的數據科學家選擇最合適的工具和技術的靈活性。這幫助我們更好地服務客戶,推動業務增長。
Rocket 在 AWS 上的新數據科學解決方案架構如下圖所示。
該解決方案由以下組件組成:
數據攝取:數據從本地和外部來源攝取到數據帳戶中。
數據精煉:原始數據通過 AWS Glue 提取、轉換和加載 (ETL) 作業和 EMR 作業的組合被精煉成可消耗的層(原始、處理、符合和分析)。
數據訪問:精煉後的數據在數據帳戶的 AWS Glue 數據目錄中註冊,並通過 Lake Formation 暴露給其他帳戶。分析數據存儲在 Amazon Redshift 中。Lake Formation 使這些數據對構建和計算帳戶均可用。對於構建帳戶,對生產數據的訪問限制為只讀。
開發:數據科學開發使用 SageMaker Studio 進行。數據工程開發使用 AWS Glue Studio 進行。這兩個學科都可以訪問 Amazon EMR 進行 Spark 開發。數據科學家可以在構建帳戶中訪問整個 SageMaker 生態系統。
部署:在構建帳戶中開發的 SageMaker 訓練模型會在 MLFlow 實例中註冊。數據科學活動和數據工程活動的代碼工件存儲在 Git 中。部署啟動作為 CI/CD 的一部分進行控制。
工作流程:我們有多個工作流程觸發器。對於在線評分,我們通常使用 Amazon EKS 和 Istio 提供一個外部端點。我們有許多作業由 AWS Lambda 函數啟動,這些函數又由計時器或事件觸發。運行的過程可能包括 AWS Glue ETL 作業、EMR 作業進行額外的數據轉換或模型訓練和評分活動,或 SageMaker 管道和作業進行訓練或評分活動。
遷移影響
我們在現代化基礎設施和工作負載方面已經取得了長足的進展。我們開始時支持六個業務渠道和 26 個生產模型,還有數十個在開發中。部署時間延長到幾個月,並需要三名系統工程師和四名 ML 工程師的團隊來保持一切運行順利。儘管我們內部的 DevOps 團隊提供支持,但我們與供應商的問題積壓達到 200 多個,這是令人沮喪的。
如今,我們支持九個組織和超過 20 個業務渠道,生產中的模型超過 210 個,還有更多在開發中。我們的平均部署時間已從幾個月縮短到幾週,有時甚至縮短到幾天!只需一名兼職的 ML 工程師提供支持,我們與供應商的平均問題積壓幾乎不存在。我們現在支持超過 120 名數據科學家、ML 工程師和分析角色。我們的框架組合擴展到包括 50% 的 SparkML 模型,以及各種其他 ML 框架,如 PyTorch 和 scikit-learn。這些進展使我們的數據科學社區能夠輕鬆應對更複雜和具有挑戰性的項目。
以下表格比較了我們在遷移前後的一些指標。
.
遷移前
遷移後
交付速度
新的數據攝取項目需要 4–8 週
數據驅動的攝取在一小時內完成
操作穩定性和支持性
18 個月內超過一百個事件和票證
事件減少:每 18 個月一個
數據科學
數據科學家花費 80% 的時間等待作業運行
無縫的數據科學開發體驗
可擴展性
無法擴展
每天支持 1000 萬個自動化的數據科學和 AI 決策
學到的教訓
在現代化我們的數據科學解決方案的過程中,我們學到了寶貴的教訓,我們相信這些教訓對於計劃進行類似工作的其他組織會有很大幫助。
首先,我們意識到管理服務可以在優化數據科學操作方面帶來變革。
將開發隔離到自己的帳戶,同時對生產數據提供只讀訪問,是使數據科學家能夠在不危及生產環境的情況下進行實驗和迭代模型的非常有效的方法。這是我們通過 SageMaker AI 和 Lake Formation 的組合實現的。
另一個我們學到的教訓是對團隊進行培訓和入職的重要性。這對於轉移到新環境(如 SageMaker AI)的團隊尤其重要。了解如何利用 SageMaker AI 的資源和功能的最佳實踐,以及如何從筆記本轉移到作業,至關重要。
最後,我們發現,雖然 Amazon EMR 仍然需要一些調整和優化,但與直接在 Amazon EC2 上托管相比,管理負擔輕得多。這使得 Amazon EMR 成為需要管理大型數據處理工作負載的組織更具可擴展性和成本效益的解決方案。
結論
這篇文章概述了 AWS 和 Rocket Companies 之間成功的合作關係。通過這次合作,Rocket Companies 能夠遷移許多 ML 工作負載並實施可擴展的 ML 框架。與 AWS 的持續合作,Rocket Companies 仍然致力於創新並保持在客戶滿意度的最前沿。
不要讓舊有系統阻礙您組織的潛力。了解 AWS 如何幫助您現代化數據科學解決方案,並取得與 Rocket Companies 相似的卓越成果。
關於作者
Dian Xu 是 Rocket Companies 的數據工程高級總監,負責領導現代化企業數據平台和促進協作的數據優先文化。在她的領導下,Rocket 的數據科學、人工智慧和機器學習平台每年驅動數十億個自動化決策,推動創新和行業變革。作為生成人工智慧和雲技術的熱情倡導者,Xu 也是全球論壇的受歡迎演講者,激勵下一代數據專業人士。在工作之外,她將對節奏的熱愛轉化為舞蹈,慶祝從寶萊塢到巴查塔的各種風格,展現文化多樣性。
Joel Hawkins 是 Rocket Companies 的首席數據科學家,負責數據科學和 MLOps 平台。Joel 擁有數十年的經驗,開發複雜的工具並處理大規模數據。作為一名充滿動力的創新者,他與數據科學團隊密切合作,確保我們擁有最新的技術,以提供尖端解決方案。在空閒時間,他是一名熱衷的自行車騎士,並且曾經涉足復古跑車的修復。
Venkata Santosh Sajjan Alla 是 AWS 金融服務的高級解決方案架構師。他與北美的金融科技公司(如 Rocket)和其他金融服務組織合作,推動雲和人工智慧策略,加速大規模的人工智慧採用。擁有深厚的人工智慧和機器學習、生成式人工智慧和雲原生架構專業知識,他幫助金融機構開發新的收入來源,優化運營,推動有影響力的業務轉型。Sajjan 與 Rocket Companies 緊密合作,推進其建立以人工智慧為動力的擁有房屋平台的使命,幫助每個人找到家。在工作之外,他喜歡旅行,與家人共度時光,並且是一位驕傲的父親。
Alak Eswaradass 是 AWS 的首席解決方案架構師,駐紮於伊利諾伊州的芝加哥。她熱衷於幫助客戶使用 AWS 服務設計雲架構以解決業務挑戰,並對解決各種機器學習用例充滿熱情。在工作之餘,Alak 喜歡與女兒共度時光,並與她的狗一起探索戶外。
本文由 AI 台灣 運用 AI 技術編撰,內容僅供參考,請自行核實相關資訊。
歡迎加入我們的 AI TAIWAN 台灣人工智慧中心 FB 社團,
隨時掌握最新 AI 動態與實用資訊!