特價 -20%

手把手帶你實作完整機器學習專案 DM2586

原始價格:NT$760。目前價格:NT$608。

出版商 深智數位股份有限公司
出版日期 2025年11月19日
語言 繁體中文
頁數 328
ISBN 9786267757512

已售完

貨號: DM2586 Categories: ,

描述

內容簡介

用一本書走完AI專案的最後一哩路,打造專屬於你的機器學習服務

告別只能離線展示的模型,成為業界渴求的全方位AI人才!

 

別讓模型只活在筆電裡!這本書教你打造成真正的產品!

一本書搞定!從開發、部署到維運的完整實戰指南。

全端AI應用,一次學會DockerMLflowStreamlitFastAPIBentoML

親手打造音樂推薦系統,讓你從做中學、馬上看見成果。

不只給程式碼,更教你背後觀念,讓你不再盲目照抄。

 

【打好地基】搞懂MLOps核心觀念,不再紙上談兵

●完整生命週期:從商業需求到監控迭代,一次搞懂 AI 產品的五大核心階段。

●關鍵維運挑戰:深入了解資料漂移、模型老化,剖析模型上線後為何會「變笨」。

版本控制核心:不只管程式碼,更要學會管理資料與模型,確保專案的可追溯性。

●迭代優化思維:掌握模型與資料導向策略,聰明提升模型表現,告別盲目調參。

 

【動手實戰】跟著做,親手打造全端AI應用

●音樂推薦系統以真實資料為例,整合所有主流工具,讓你從做中學。

●高效實驗追蹤導入DVC和MLflow管理資料、模型與參數,告別混亂的開發過程。

●現代化模型部署採用BentoML將模型打包成產品,實現真正的線上服務。

●打造互動式前端使用Streamlit開發視覺化介面,讓你的AI服務更好用。

 

【整合應用】將模型變為產品,創造真實價值

●建構完整架構整合Docker、資料庫與FastAPI,打造穩定可靠的後端服務。

●API整合串接將你的模型封裝成API,與其他應用程式順暢溝通。

●職涯技能升級填補從「模型開發者」到「AI系統架構師」的關鍵知識缺口。

【本書適合】

資料科學家模型準確率很高,卻不知道如何部署上線,讓它真正發揮價值?

●軟體工程師想踏入最熱門的AI領域,卻不知從何開始建構機器學習系統?

●機器學習工程師厭倦了零散的知識,想尋求一套完整的MLOps實戰方法?

●技術主管與PM:需要規劃與評估AI專案,想精準掌握從開發到上線的每個環節?

●所有想踏入這個領域的人 只要你想搞懂AI如何從無到有變成產品,這本書就是你的最佳起點!

 

想了解AI如何從無到有變成產品?別懷疑,這本書就是為你而寫!

 

作者簡介

徐歆閔(Min Hsu

現任職於軟體公司的資深資料科學家,致力於將機器學習技術應用於真實世界的產品中。曾獲iThome鐵人賽AI & Data組冠軍,著有《科技巨頭的演算法大揭祕》,擅長以深入淺出的方式,拆解複雜的技術概念。熱衷於知識分享與技術實踐,相信動手實作是弭平理論與應用之間鴻溝的最佳路徑。

 

* Medium:medium.com/smhsu

* Instagram:@data.scientist.min

 

目錄

Chapter 1 機器學習專案的生命週期介紹

1.1 定義商業目標

1.2 蒐集和準備資料

1.2.1 數據版本控制(Data Versioning)

1.2.2 資料標記的一致性

1.2.3 不同資料類型的挑戰

1.2.4 資料管線(Data Pipeline)

1.2.5 數據測試(Data Testing)

1.2.6 資料漂移和概念漂移

1.3 模型開發與版本管理

1.3.1 建立模型的迭代過程

1.3.2 模型開發中的挑戰

1.4 模型部署與應用整合

1.4.1 軟體問題與部署考量

1.5 監控與持續改進

1.5.1 監控與維護系統

1.5.2 模型老化和重新訓練

1.6 模型導向迭代vs. 資料導向迭代

1.6.1 模型導向迭代

1.6.2 資料導向

1.6.3 如何選擇適合的策略呢?

1.7 實作專案:音樂搜尋和推薦系統

 

Chapter 2 本地開發環境建立

2.1 開始專案前的必要工具準備

2.1.1 安裝Python

2.1.2 安裝Git 和註冊GitHub 帳號

2.1.3 Docker

2.2 使用uv 來管理Python 環境與套件

2.2.1 uv:更快、更強大的Python 套件與環境管理工具

 

Chapter 3 在本地建立資料庫

3.1 專案環境建立

3.2 建立PostgreSQL 資料庫

3.2.1 docker-compose.yml 的介紹

3.2.2 用DBeaver 查看資料

3.3 SQLModel:Python 的資料庫操作

3.4 向量資料庫和Qdrant 的介紹

3.4.1 什麼是向量資料庫(Vector Database)?

3.4.2 Qdrant 的概念介紹

3.4.3 用Docker compose 建立Qdrant

3.5 用Python 連線至Qdrant

3.6 把PostgreSQL 和Qdrant 合併成一個Docker Compose

 

Chapter 4 資料搜集、處理和管理

4.1 專案環境建立

4.2 下載跟處理Million Song Dataset

4.2.1 前處理資料集

4.2.2 建立資料庫

4.3 下載跟處理The Echo Nest Taste Profile Subset

4.3.1 下載資料

4.3.2 寫入PostgreSQL Database 中

4.3.3 建立user-song matrix

4.3.4 存入Qdrant 向量資料庫中

4.4 Spotify 音樂資料表

4.4.1 讀取資料

4.4.2 資料前處理

4.5 DVC 的介紹

4.5.1 什麼是DVC?

4.5.2 DVC 的使用教學

 

Chapter 5 音樂搜尋和推薦演算法的介紹和實作

5.1 FastAPI 的基本用法介紹

5.1.1 FastAPI 的基本介紹

5.1.2 對資料進行CRUD 操作

5.1.3 專案架構

5.1.4 建立API

5.2 FastAPI 後端專案建立——音樂搜尋系統

5.2.1 專案環境建立

5.2.2 建立歌曲搜尋Mock API

5.2.3 用FastAPI 連接到PostgreSQL 資料庫

5.2.4 用FastAPI 連接到Qdrant 向量資料庫

5.2.5 小結

 

Chapter 6 搜尋畫面的UI 建立

6.1 Streamlit 的安裝方法

6.2 Streamlit 核心概念

6.2.1 基本介面

6.2.2 互動元件

6.2.3 版面佈局

6.3 範例實作:音樂推薦系統搜尋網頁

6.3.1 與後端FastAPI 溝通

6.3.2 設定頁面

 

Chapter 7 雲端環境建立

7.1 Render 的PostgreSQL 資料庫部署

7.1.1 Render 基礎設定

7.1.2 在Render 上建立PostgreSQL 資料庫

7.1.3 將本地資料搬遷到Render PostgreSQL

7.1.4 使用DBeaver 連線並驗證資料

7.2 部署FastAPI 服務到Render

7.3 設定雲端的Qdrant 向量資料庫

7.3.1 設定Qdrant Cloud

7.3.2 上傳資料到Qdrant Cloud

7.4 Streamlit Community Cloud

 

Chapter 8 音樂分類模型的介紹和實作

8.1 MLflow 的介紹

8.1.1 MLflow 的核心元件

8.2 實驗追蹤(MLflow Tracking)

8.2.1 MLflow Tracking 的概念

8.2.2 MLflow Tracking 的範例

8.2.3 啟動MLflow UI

8.3 MLflow Signature 與Input Example 的介紹

8.3.1 概念介紹

8.3.2 如何建立Model Signature 跟Input Example

8.4 使用Docker 部署MLflow Tracking Server、PostgreSQL 與MinIO

8.4.1 使用Docker 啟動MLflow Tracking 伺服器與UI

8.4.2 使用PostgreSQL 作為MLflow 後端儲存

8.4.3 使用MinIO 作為Artifact 儲存位置

8.5 模型封裝與版本管理(MLflow Models + MLflow Registry)

8.5.1 如何將模型註冊到Registry?

8.5.2 設定標籤(Tags)與別名(Aliases)

 

Chapter 9 模型部署

9.1 將模型部署到BentoML

9.1.1 從MLFlow 下載模型檔案

9.1.2 將模型部署到BentoML

9.1.3 建立BentoML FastAPI 服務

 

Chapter 10 其他應用案例與延伸專案

10.1 電商商品推薦系統

10.2 影視影片搜尋與推薦

10.3 健康與運動建議系統

10.4 金融交易風險偵測

10.5 客服問答系統

10.6 小結

 

從模型到產品,走完 AI 應用的最後一哩路

嗨,謝謝你翻開這本書。如果你正煩惱如何將電腦裡的模型,變成一個能真正服務人群的產品,那麼,你來對地方了!

 

幾年前,身為資料科學新手的我,總是熱切於訓練出一個表現良好的模型。不過,儘管在精挑細琢後,得到一個高準確率的模型,卻只能讓其停留在 Jupyter Notebook 中,不知道如何帶出實驗室,讓它真正走入產品、服務人群。

「要怎麼把模型變成一個用戶能隨時使用的產品?」

「當資料不斷湧入,我要怎麼確保它的表現不會變差?」

「面對數十個實驗版本,我該如何有效管理,並在出錯時快速回溯?」

 

這些問題的複雜性並不亞於演算法,只是身為資料科學家的我們,不熟稔於 MLOps 的技術:我們擅長於打造一顆聰明的大腦(模型),卻對如何為它建構一個強健的身體(維運架構)感到陌生。這本書,就是為了解決這個鴻溝而生。

 

在我的上一本書《科技巨頭的演算法大揭秘》中,專注於討論和拆解各種演算法的核心,而這本書,則轉向實際的技術開發,一起探討如何在開發完模型後,能夠走完最後一哩路,將模型真正淬鍊成產品。

 

這本書,就是那張不可或缺的「系統藍圖」

或許你會問,在這個 AI 能幫我們寫程式的「Vibe Coding」時代,學習這些技術還有必要嗎?我的答案是肯定的,而且比以往任何時候都更加重要。

 

AI 如同一位能力超群的副駕駛,能請他加速、轉彎,但最終決定要去哪、該走哪條路的,永遠是手握方向盤的我們。AI 可以生成一段完美的 Dockerfile,但我們必須先理解為何需要容器化;AI 可以寫出一個 FastAPI 的端點,但無法替我們設計整個服務的藍圖。

 

本書將從機器學習的完整生命週期談起,並以「音樂推薦系統」作為實戰專案,親手整合 Docker、PostgreSQL、MLflow、FastAPI、BentoML 等一系列主流工具,你會發現,這些工具並非獨立的孤島,而是一個環環相扣、彼此協作的生態系。

 

這本書是為所有渴望將模型推向產品化,卻不知從何下手的你而寫。無論你是希望作品能落地的資料科學家,還是想跨足 AI 領域的軟體工程師,我都希望本書能成為你手中的那份清晰的地圖,更有信心地打造出穩定、可靠且能持續創造價值的 AI 服務。

 

旅程即將開始,讓我們一起動手吧!

資料科學家 Min

徐歆閔

額外資訊

出版商

深智數位股份有限公司

出版日期

2025年11月19日

語言

繁體中文

頁數

328

ISBN

9786267757512