在開始正式的演算法學習之前,先學一點數學的基礎知識,有助於後面的學習。當然你已經具備這些知識,可以跳過這節內容。本人建議:即使一下內容你都學過,也溫故一下。該數學基礎知識一共包括四個部分,分別是:
級數(用於時間和空間複雜度的計算)離散數學相關知識概率論相關知識線性代數相關知識
這部分內容在高等數學裡的函式極限那章介紹的比較詳細,我就挑我們常用的幾種進行介紹。需要進一步學習的可以去找同濟版高等數學參考學習。
線性性質∑k
=1n(
cak+
bk)=
c∑k=
1nak
+∑k=
1nbk
線性性質可以用來對項中包含漸進記號的和式求和。 ∑k
=1nθ
(f(k
))=θ
(∑k=
1nf(
k))
等式中,左邊的
θ 符號作用於變數
κ
θ 則作用於n。
等差級數∑k
=1nk
=1+2
+⋯+n
=12n
(n+1
)=θ(
n2)
平方和與立方和∑k
=0nk
2=n(
n+1)
(2n+
1)6 ∑k
=0nk
3=n2
(n+1
)24
幾何級數(指數級數) ∑k
=0nx
k=xn
+1−1
x−1
當n趨於無窮大且|x|<1時,上述公式可修改為 ∑k
=0∞x
k=11
−x調和級數hn
=1+1
2+13
+⋯+1
n=∑k
=1n1
k=ln
n+o(
1)級數積分與微分
通過對上面的公式進行積分或微分,可以得到其他新的公式。例如對公式六兩邊同時微分並乘以x,可以得到 ∑k
=0∞k
xk=x
(1−x
)2其中,|x|
<
1 。
裂項級數∑k
=0n−
1ak−
ak+1
=an−
a0乘積lg
(∏k=
1nak
)=∑k
=1nl
gak
集合的幾個相關概念
集合的幾個常見公式
相關概念
注:下面用關係矩陣來解釋一下上面的幾個概念。⎡⎣
⎢⎢⎢⎢
⎢1x⋮
xx1⋮
x⋯⋯⋱
⋯xx⋮
1⎤⎦⎥
⎥⎥⎥⎥
,對角線上全1,該關係是自反的。 ⎡⎣
⎢⎢⎢⎢
⎢0x⋮
xx0⋮
x⋯⋯⋱
⋯xx⋮
0⎤⎦⎥
⎥⎥⎥⎥
,對角線上全0,該關係是反自反的。 ⎡⎣
⎢⎢⎢⎢
⎢xa⋮
bax⋮
c⋯⋯⋱
⋯bc⋮
x⎤⎦⎥
⎥⎥⎥⎥
,關於主對角線對稱,該關係是對稱的(主對角線上元素為任意元素)。 ⎡⎣
⎢⎢⎢⎢
⎢x1⋮
00x⋮
0⋯⋯⋱
⋯01⋮
x⎤⎦⎥
⎥⎥⎥⎥
,若除主對角線之外存在1,則該元素關於主對角線對稱的另乙個元素必為0,則該關係是反對稱的(主對角線上元素為任意元素)。所以空集具有反自反、對稱、反對稱性質。
相關概念
相關概念
寄語:想系統的學習演算法,基礎一定要打好,以上介紹的是最基本的內容。要深入學習演算法,例如貝葉斯,拉普拉斯,傅利葉等要深入了解。不光是數學,如果你要研究nlp,那編譯原理就必須學的很好,其中語法制導、語義分析非常重要。總之計算機的跨學科性很強,時刻學習,才能避免被淘汰。
注:其他部分明天接著寫,爭取這幾天把演算法所需要的基本數學知識介紹完。
1. 自由樹
2. 有根樹和有序樹
3. 二叉樹和位置樹
深度學習(一) 數學基礎
一 線性代數 1 定義深度學習相關的主要線性代數數學模型包括標量 向量 矩陣和張量。2 計算方式 加減法比較簡單,都是點對點加減,形態不變。乘法方式不同可能導致形態變化。如向量可點積 變為乙個值 也可以叉積。二維向量叉積等於 矩陣可以點對點乘積,也可以矩陣乘積 3 範數 l0 l1和l2範數各有不同...
演算法 基礎知識
插入排序法示例 將想要插入的值搜尋找到合適的位置,之前的數值一一向後移動乙個位置,騰出乙個空位置給想要插入的數值。偽 instert sort a for j 2 to a.length key a j i j 1 while i 0 and a i key a i 1 a i i i 1 a i ...
演算法基礎知識
o 1 稱為不變複雜性 1項 1秒 10項 1秒 100個專案 1秒 專案的數量仍然增加10倍,但o 1 的比例因子總是1。o log n 稱為對數複雜度 1項 1秒 10項 2秒 100項 3秒 1000項 4秒 10000項 5秒 計算次數只會增加輸入值的對數。因此,在這種情況下,假定每個計算需...