商品簡介
本書系統地闡述機器學習的數學基礎知識,但並非大學數學教材的翻版,而是以機器學習算法為依據,選取數學知識,並從應用的角度闡述各種數學定義、定理等,側重於講清楚它們的應用和實現方法。所以,書中將使用開發者喜歡的編程語言(Python)來實現各種數學計算,並闡述數學知識在機器學習算法中的應用體現。
作者簡介
齊偉,耕耘於代碼世界,以Web開發和人工智能技術為主要方向,研發、教學、寫作並舉,已經出版了《跟老齊學Python:輕鬆入門》《跟老齊學Python:Django實戰》《跟老齊學Python:數據分析》《數據準備和特徵工程》《Python大學實用教程》。
名人推薦
從讀者需求出發,精心提煉機器學習所需數學基礎知識無門檻,通俗易懂,注重讀者感受,既好學,又實用基於Python,從應用角度闡述數學在機器學習中的應用選用大量工程實踐案例,打通數學基礎與機器學習間的壁壘
序
現在,終於不再為考試而重視對數學的學習和鉆研了—是不是樂觀太早了?
機器學習的興起,人工智能時代的到來,讓數學顯得更加重要了,無論是對於普通的工程技術人員,還是對於大眾而言。
在機器學習或人工智能領域中,有各種算法、模型,猶如武俠們的各類功夫,江湖中的大俠往往以深厚的內功驅動某種招式,比如九陰真經、吸星大法、小無相功。那麼,機器學習的“內功”是什麼呢?答案不是吐納運氣之法,而是—數學。
那麼“數學內功”需要修煉到什麼程度才能研習機器學習呢?
以我的經驗,研習機器學習所需要的最低數學基礎,相當於大學理工科的高等數學(以下簡稱高數)內容。“早就還給老師了”——不少人如此感慨,也因此對機器學習望而卻步。實則不然,只要當初正常地修完了所有大學數學課程(不妨以通過考試為標準),“高數內功”就已經被老師傳授給你了,在有生之年是無法自行去除的。只不過,由於種種原因,它沒有被激發出來罷了。
本書就是要幫助讀者將已經潛伏在大腦裡的高數“內功”激發出來——注意,不是重新“灌輸”一遍。所以,本書所介紹的數學內容不是高數的翻版,而是默認讀者已經將一些最基本的高數知識內化了。我只是根據個人經驗,遴選與機器學習有關的內容,喚醒讀者大腦中沉睡已久的“數學潛意識”,引導讀者大膽地進入機器學習領域。
按照這樣的目的,我對本書內容做了如下安排:
● 不將微積分的有關內容作為獨立章節,因為這些內容在高數中是重點,所以相信讀者已經對其有了基本的了解。但為了方便讀者,在本書的附錄和在線資料中,分別提供了有關微積分的基本知識。
● 以機器學習的直接需要為標準,選擇基本的數學內容,從工程應用的角度予以介紹。一般的數學教材因聚焦於嚴謹的數學內容而忽略了工程應用,而一般的機器學習書籍又缺乏相關的數學基礎介紹—甚至有不少不合“數學之理”的地方,學習者看後僅“知其然”,但“不知其所以然”,甚至感到“茫然”。本書旨在幫助讀者通過工程實踐,打通數學基本概念和機器學習之間的通道。所以,在數學知識之後,讀者會看到它們是如何在機器學習中應用的。
● 書中省略了一些嚴格的數學證明,這是本書不同於數學教材的重要特徵,但這並不意味著數學證明不重要。如果讀者對有關數學證明感興趣,可以參閱本書提供的在線資料。
再次強調,不要將本書當作數學教材,本書不會面面俱到地介紹高數內容。
常規數學教材的結構,一般是先介紹概念、定理及其證明,然後講解例題,以及適量的習題,書的最後會附上習題的參考答案。本書則不然。當閱讀的時候,你會感覺本書更像一個有數學經驗的人介紹他自己的心得體會。因此,本書不會側重於“解題”技能的訓練,書中也會演示一些手工計算,但這麼做的目的是幫助讀者理解某些概念,更複雜的計算都會用編程語言實現——本書採用Python語言,但書中並不會介紹這種語言的使用方法,請讀者自行解決編程語言問題(可參考“跟老齊學Python”系列圖書)。
目次
封面
版權信息
作者簡介
內容簡介
前言
第1章 向量和向量空間
1.1 向量
1.1.1 描述向量
1.1.2 向量的加法
1.1.3 向量的數量乘法
1.2 向量空間
1.2.1 什麼是向量空間
1.2.2 線性組合
1.2.3 線性無關
1.2.4 子空間
1.3 基和維數
1.3.1 極大線性無關組
1.3.2 基
1.3.3 維數
1.4 內積空間
1.4.1 什麼是內積空間
1.4.2 點積和歐幾裡得空間
1.5 距離和角度
1.5.1 距離
1.5.2 基於距離的分類
1.5.3 範數和正則化
1.5.4 角度
1.6 非歐幾何
第2章 矩陣
2.1 基礎知識
2.1.1 什麼是矩陣
2.1.2 初等變換
2.1.3 矩陣加法
2.1.4 數量乘法
2.1.5 矩陣乘法
2.2 線性映射
2.2.1 理解什麼是線性
2.2.2 線性映射
2.2.3 矩陣與線性映射
2.2.4 齊次坐標系
2.3 矩陣的逆和轉置
2.3.1 逆矩陣
2.3.2 轉置矩陣
2.3.3 矩陣分解
2.4 行列式
2.4.1 計算方法和意義
2.4.2 線性方程組
2.5 矩陣的秩
2.6 稀疏矩陣
2.6.1 生成稀疏矩陣
2.6.2 稀疏矩陣壓縮
2.7 圖與矩陣
2.7.1 圖的基本概念
2.7.2 鄰接矩陣
2.7.3 關聯矩陣
2.7.4 拉普拉斯矩陣
第3章 特徵值和特徵向量
3.1 基本概念
3.1.1 定義
3.1.2 矩陣的跡
3.1.3 一般性質
3.2 應用示例
3.2.1 動力系統微分方程
3.2.2 馬爾科夫矩陣
3.3 相似矩陣
3.3.1 相似變換
3.3.2 幾何理解
3.3.3 對角化
3.4 正交和投影
3.4.1 正交集和標準正交基
3.4.2 正交矩陣
3.4.3 再探對稱矩陣
3.4.4 投影
3.5 矩陣分解
3.5.1 QR分解
3.5.2 特徵分解
2.證明“對稱矩陣的特徵向量彼此正交”
3.5.3 奇異值分解
3.5.4 數據壓縮
3.5.5 降噪
3.6 最小二乘法(1)
3.6.1 正規方程
3.6.2 線性回歸(1)
第4章 向量分析
4.1 向量的代數運算
4.1.1 叉積
4.1.2 張量和外積
4.2 向量微分
4.2.1 函數及其導數
4.2.2 偏導數
4.2.3 梯度
4.2.4 矩陣導數
4.3 最優化方法
4.3.1 簡單的線性規劃
4.3.2 最小二乘法(2)
4.3.3 梯度下降法
4.3.4 線性回歸(2)
4.3.5 牛頓法
4.4 反向傳播算法
4.4.1 神經網絡
4.4.2 參數學習
4.4.3 損失函數
4.4.4 激活函數
4.4.5 理論推導
第5章 概率
5.1 基本概念
5.1.1 試驗和事件
5.1.2 理解概率
5.1.3 條件概率
5.2 貝葉斯定理
5.2.1 事件的獨立性
5.2.2 全概率公式
5.2.3 理解貝葉斯定理
5.3 隨機變量和概率分布
5.3.1 隨機變量
5.3.2 離散型隨機變量的分布
5.3.3 連續型隨機變量的分布
5.3.4 多維隨機變量及分布
5.3.5 條件概率分布
5.4 隨機變量的和
5.4.1 離散型隨機變量的和
5.4.2 連續型隨機變量的和
5.5 隨機變量的數字特徵
5.5.1 數學期望
5.5.2 方差和協方差
5.5.3 計算相似度
5.5.4 協方差矩陣
第6章 數理統計
6.1 樣本和抽樣
6.1.1 總體和樣本
6.1.2 統計量
6.2 點估計
6.2.1 最大似然估計
6.2.2 線性回歸(3)
6.2.3 最大後驗估計
6.2.4 估計的選擇標準
6.3 區間估計
6.4 參數檢驗
6.4.1 基本概念
6.4.2 正態總體均值的假設檢驗
6.4.3 正態總體方差的假設檢驗
6.4.4 值檢驗
6.4.5 用假設檢驗比較模型
6.5 非參數檢驗
6.5.1 擬合優度檢驗
6.5.2 列聯表檢驗
第7章 信息與熵
7.1 度量信息
7.2 信息熵
7.3 聯合熵和條件熵
7.4 相對熵和交叉熵
7.5 互信息
7.6 連續分布
附錄A
後記
封底
書摘/試閱
對於向量這個概念,你是不是感到既熟悉、又陌生?
熟悉,是因為在中學數學和物理中,都有這個概念。甚至在小學的數學中,也有向量的影子了——“數軸”已經包含了向量的思想。此外,在日常生活經驗中也能感受到“向量”的含義,比如打開手機中的地圖導航,會聽到“向前行駛100米”,這就是生活中的向量。可以說我們與向量並非素不相識。
陌生,是因為線性代數中的向量並非那麼直觀,甚至超出人類大腦的想象能力,比如“n維空間”——一維、二維、三維空間,我們能夠想象出來或者畫出來,那麼“n維”是什麼樣子的?超越了直覺,於是很多人對向量乃至於對線性代數、對數學望而卻步,因為太抽象、不能觸摸、無法想象,就覺得它高深莫測。