每個程式設計師都應該知道的 60個演算法 (AI 強化版)
Imran Ahmad, Ph.D 著 何敏煌 譯
- 出版商: 博碩
- 出版日期: 2025-10-14
- 定價: $850
- 售價: 7.8 折 $663
- 語言: 繁體中文
- 頁數: 512
- ISBN: 6264142697
- ISBN-13: 9786264142694
-
相關分類:
Algorithms-data-structures
- 此書翻譯自: 50 Algorithms Every Programmer Should Know : An unbeatable arsenal of algorithmic solutions for real-world problems, 2/e (Paperback)
-
相關翻譯:
程序員必會的 50種算法(原書第2版) (簡中版)
尚未上市,歡迎預購
商品描述
幫助你解決各類實務問題的演算法寶典
★ 超過 60 個演算法的介紹與應用
★ 生成式模型、進階序列模型、大型語言模型
★ 片單推薦、電商平台商品推薦、餐廳評分系統、詐騙偵測
★ AI 數位時代工程師必備寶典
《每個程式設計師都應該要知道的 60 個演算法》是資料科學家必備的兵工廠。如果你正在探索資料科學或是希望提升你的技能,這本書是幫助你打下穩固基礎的絕佳起點。
Somaieh Nikpoor博士 | 加拿大政府資料科學與 AI 部門主管,Carleton 大學 Sprott 商學院兼任教授
_____
使用演算法解決現實世界問題的能力,是每一位開發人員或程式設計師必備的技能。本書不僅能幫助你培養選擇和使用演算法來解決真實世界問題的技能,也會讓你了解這些演算法的工作原理,第二版內容加入了最新的生成式模型與序列模型介紹與應用,讓你能夠輕鬆理解與應對不斷變化的 AI 應用。
你將從演算法簡介開始,進一步學習各種演算法的設計技巧,然後透過實際範例的引導,探索如何實作不同類型的演算法。隨著進度推進,你將學習到線性規劃、頁面排名、圖形演算法,然後運用機器學習演算法來理解它們背後的數學和邏輯。
部分案例研究將會展示如何以最佳方式應用這些演算法,接著,你將聚焦在深度學習演算法,並學習各種不同類型的深度學習模型及其實際的應用方式。
你也會學到關於現代序列模型和它們的變體、演算法、方法論以及架構,用來實作像是 ChatGPT 這類大型語言模型(LLM)。
最後,你將能夠精通平行處理技術的技巧,讓你具備在計算密集型任務中高效運用這些演算法的能力。
讀完這本程式設計書,你將可以熟練地使用各種演算法,解決現實世界中的各種計算問題。
⋄ 設計演算法以解決複雜問題
⋄ 熟悉類神經網路和深度學習技術
⋄ 探索 Python 程式庫中現有的資料結構和演算法
⋄ 使用網路分析實作圖形演算法進行詐欺偵測
⋄ 透過實際範例,深入研究自然語言處理的最先進演算法
⋄ 建立一個可以向訂閱者推薦電影的推薦引擎
⋄ 掌握序列機器學習模型的概念及其在開發尖端大型語言模型中扮演的基礎角色
作者簡介
Imran Ahmad 博士
目前在加拿大聯邦政府的先進分析解決方案中心(Advanced Analytics Solution Center, A2SC)擔任資料科學家,他的專長是應用機器學習演算法於攸關系統核心運作的重要任務中。
在他 2010 年的博士論文中,他提出了一種基於線性規劃的演算法,專為大規模雲端運算環境中的最佳資源分配而設計的。後來,在 2017 年,Ahmad 博士率先開發了即時分析框架,StreamSensing。這個工具已成為他幾篇研究論文的核心基礎,並利用它在不同的機器學習方法中處理多媒體資料。
除了在政府單位的職務,Ahmad 博士在 Ottawa 的 Carleton 大學擔任客座教授。在過去幾年,他也取得了 Google Cloud 和 AWS 的官方授權講師資格。
目錄大綱
【第一部分 基礎概念與核心演算法】
Chapter 1_演算法概述
什麼是演算法?
Python 套件
演算法設計技巧
效能分析
選擇一種演算法
驗證(Validating)演算法
Chapter 2_演算法中的資料結構
探索 Python 內建的資料型態
探討抽象資料型態
本章總結
Chapter 3_排序與搜尋演算法
排序演算法介紹
搜尋演算法介紹
實際應用
本章總結
Chapter 4_設計演算法
介紹設計演算法的基本概念
了解演算法策略
PageRank 演算法介紹
了解線性規劃(Linear programming)
本章總結
Chapter 5_圖形演算法
理解什麼是圖形(Graph):簡要介紹
圖論與網路分析
圖形的表示
圖形機制與類型
網路分析理論介紹
理解圖形追蹤
案例研究:使用 SNA 進行詐欺偵測
本章總結
【第二部分 機器學習演算法】
Chapter 6_非監督式機器學習演算法
認識非監督式學習
理解分群演算法(Clustering algorithm)
階層式分群的步驟
設計階層分群演算法程式
理解 DBSCAN
使用 Python 中的 DBSCAN 建立集群
評估集群
降維(Dimensionality reduction)
關聯規則探勘
本章總結
Chapter 7_傳統監督式學習演算法
了解監督式機器學習
公式化監督式機器學習問題
了解分類演算法
決策樹分類演算法
了解集成方法(Ensemble method)
羅吉斯迴歸(Logistic regression)
貝氏定理
分類演算法的贏家是⋯
線性迴歸
迴歸演算法中的贏家是⋯
實用範例——如何預測天氣
本章總結
Chapter 8_類神經網路演算法
了解類神經網路
訓練類神經網路
了解類神經網路的結構
激勵函式
工具和框架
選擇序列式模型或函式式模型
了解類神經網路的類型
使用遷移學習(Transfer learning)
案例研究—使用深度學習進行詐欺偵測
方法論
本章總結
Chapter 9_自然語言處理演算法
了解 NLP 術語
使用 Python 清理資料
了解詞彙文件矩陣
詞嵌入介紹
使用 Word2Vec 實作詞嵌入
案例研究:餐廳評論情感分析
自然語言處理的應用
本章總結
Chapter 10_了解序列模型
了解序列資料
序列模型的資料表示
RNN 的介紹
GRU
LSTM 介紹
本章總結
Chapter 11_進階序列模型演算法
探索自動編碼器
了解 Seq2Seq 模型
了解注意力機制
深入了解自注意力
Transformer:在自注意力之後的類神經網路演進
LLM
表格的底部
本章總結
Chapter 12_推薦引擎
推薦系統介紹
推薦引擎的類型
了解推薦系統的限制
實務應用領域
實務範例——建立一個推薦引擎
本章總結
Chapter 13_資料處理的演算法策略
資料演算法介紹
CAP 定理介紹
解碼資料壓縮演算法
實際範例:AWS 中的資料管理
聚焦在 CAP 定理和壓縮演算法
本章總結
Chapter 14_密碼學
密碼學(Cryptography)簡介
了解最薄弱環節的重要性
了解不同類型的加密技術
範例:部署機器學習模型時的安全考量
本章總結
Chapter 15_大規模演算法
大規模演算法(Large-scale algorithm)介紹
大規模演算法的高效能基礎架構特徵
策劃多資源處理
了解平行運算的理論限制
Apache Spark 如何賦能大規模演算法處理
本章總結
Chapter 16_實務上的考量
演算法解決方案面臨的挑戰
TwitterAI bot,Tay 的失敗
演算法的可解釋性
了解倫理和演算法
減少模型偏見
使用演算法的時機
本章總結