空氣越來越冷宴猾,沒有葉子的樹依然安詳得封,我和風(fēng)中的枯葉一同飛翔
10.30
陳老師帶著我們做了一套卷子——機器與深度學(xué)習(xí)隨堂測驗垃杖,哇不做不知道一做才發(fā)現(xiàn)自己好多基礎(chǔ)的知識沒有學(xué)精學(xué)扎實胎许,來補一補
MLE(最大似然估計)
MLE簡單的理解可以這樣:假設(shè)我們手上有一批數(shù)據(jù)(樣本),而且我們假設(shè)這些數(shù)據(jù)(樣本)服從某個分布( 模型已知),但是參數(shù)未知.這個時候,我們希望對這個參數(shù)進(jìn)行估計,而MLE的思想就是找到一個參數(shù)值,使得每條樣本出現(xiàn)的概率最大!
具體來說假設(shè)樣本為x1,x2.....xn,待估計的參數(shù)為θ.
那么要優(yōu)化的目標(biāo)為:
假設(shè)每個樣本間獨立同分布那么我們有:
argmax ∏ni=1P(xi|θ)
后面一般是取對數(shù),把連乘轉(zhuǎn)化成連加的形式
MAP(最大后驗概率)
還是同樣的場景:我們有一批數(shù)據(jù)(樣本),我們假設(shè)其服從某個分布(模型已知),參數(shù)未知.但是,我們還有一個額外的信息就是,我們雖然不知道參數(shù)具體是多少,但是我們知道這個參數(shù)也服從某個分布,MAP就是加上這個條件后,去對我們的參數(shù)進(jìn)行估計.
具體可以表現(xiàn)為:
做一步貝葉斯公式有:
argmax P(θ|x1,x2,...xn)=P(x1,..xn|θ)P(θ)/P(x1,x2...xn)
其中P(θ)就是我們對θ的一個先驗分布
MLE是通過直接最大化似然概率P(x1,..xn|θ)來求解參數(shù)θ奈辰,而MAP是通過最大化似然概率×先驗分布栏妖,即P(x1,..xn|θ)P(θ)來求解參數(shù)θ,兩者都是用于模型已知奖恰,參數(shù)未知下對參數(shù)進(jìn)行估計的方法.
10.31
決策樹和信息增益
- 根節(jié)點:包含數(shù)據(jù)集中的所有數(shù)據(jù)的集合
- 內(nèi)部節(jié)點:每個內(nèi)部節(jié)點為一個判斷條件吊趾,并且包含數(shù)據(jù)集中滿足從根節(jié)點到該節(jié)點所有條件的數(shù)據(jù)的集合。根據(jù)內(nèi)部結(jié)點的判斷條件測試結(jié)果瑟啃,內(nèi)部節(jié)點對應(yīng)的數(shù)據(jù)的集合別分到兩個或多個子節(jié)點中论泛。
- 葉節(jié)點:葉節(jié)點為最終的類別,被包含在該葉節(jié)點的數(shù)據(jù)屬于該類別翰守。
信息增益準(zhǔn)則
決策樹 - 熵,信息增益的計算 - 蘋果提子 - 博客園 https://www.cnblogs.com/okokok/p/6117333.html
莊子·秋水
莊子與惠子游于濠梁之上。莊子曰:"鰷魚出游從容疲酌,是魚之樂也蜡峰。"惠子曰:"子非魚,安知魚之樂?"莊子曰:"子非我朗恳,安知我不知魚之樂?"惠子曰:"我非子湿颅,固不知子矣;子固非魚也,子之不知魚之樂粥诫,全矣!"莊子曰:"請循其本油航。子曰'汝安知魚樂'云者,既已知吾知之而問我怀浆。我知之濠上也谊囚。
p1=p(魚類)=0.4 p2(非魚)=0.6 H1 = 以二為底的對數(shù)信息熵(p1,p2)= 0.97
根據(jù)不浮出水面是否可以生存畫 “||” 是否屬于魚類分為AB兩類 劃分情況為 AAB || BB
h1 = 以二為底的對數(shù)信息熵(1/3, 2/3)=0.92执赡,h2 = 0镰踏,H2 = 0.6 * h1 + 0.4 * h2 = 0.55 Gain(H1,H2) = H1 - H2 = 0.42
根據(jù)是否有腳蹼 畫"||" 判斷是否屬于魚類為最終的分類目標(biāo) 劃分情況為 AABB || B
h1 = 以二為底的對數(shù)信息熵(2/4, 2/4)=1,h2=0沙合,H3 = 0.8 * h1 + 0.2 * h2 = 0.8 Gain(H1, H3)= H1- H3 =0.17
第一種劃分明顯比第二種的信息增益大奠伪,因此這個特征是更好的劃分?jǐn)?shù)據(jù)集的特征(根據(jù)信息增益原則)
import math
feature_dict = {'feature1': [1, 1, 1, 0, 0], 'feature2': [1, 1, 0, 1, 1], 'feature3': [1, 1, 0, 0, 0],
'feature4': [1, 1, 0, 0, 0], 'feature5': [0, 0, 1, 1, 1]}
def calculate_entropy(problist): # 輸入概率列表,和為1首懈,計算信息熵
if sum(problist) != 1:
problist = [p/sum(problist) for p in problist]
print("Wrong input!\nThe problist has been changed!")
entropy_list = [-p * math.log2(p) for p in problist]
entropy = sum(entropy_list)
return entropy
def calculate_gain(list1, list2): # list1代表最終的分類目標(biāo)的分布绊率,list2是要計算其信息增益的特征的分布
list3 = [list1[i] for i in range(len(list2)) if list2[i] == 1]
list4 = [list1[i] for i in range(len(list2)) if list2[i] == 0]
number_1 = sum([k for k in list3 if k == 1])
number_2 = sum([k for k in list4 if k == 1])
number_0 = sum([k for k in list1 if k == 1])
if number_1 == 0 or number_1 == len(list3):
list5 = [1]
else:
list5 = [number_1/len(list3), 1 - number_1/len(list3)]
if number_2 == 0 or number_2 == len(list4):
list6 = [1]
else:
list6 = [number_2/len(list4), 1 - number_2/len(list4)]
if number_0 == 0 or number_0 == len(list1):
list7 = [1]
else:
list7 = [number_0 / len(list1), 1 - number_0 / len(list1)]
entropy1 = calculate_entropy(list5)
entropy2 = calculate_entropy(list6)
entropy0 = calculate_entropy(list7)
gain = entropy0 - entropy1 * len(list3)/(len(list3) + len(list4)) - entropy2 * len(list4)/(len(list3) + len(list4))
print(gain)
return gain
calculate_gain(feature_dict['feature3'], feature_dict['feature1'])
11.2
貝葉斯網(wǎng)絡(luò)
部分轉(zhuǎn)載自:從貝葉斯方法談到貝葉斯網(wǎng)絡(luò) - zdy0_2004的專欄 - CSDN博客 https://blog.csdn.net/zdy0_2004/article/details/41096141
模擬人處理事情時因果關(guān)系的不確定性模型,網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)為有向無環(huán)圖
節(jié)點為隨機變量究履,表示可觀測到的變量滤否,或隱變量、未知參數(shù)最仑。兩個節(jié)點用有向箭頭連接起來顽聂,表示有因果關(guān)系肥惭,父節(jié)點表示自變量,子節(jié)點表示因變量紊搪,二者非條件獨立蜜葱。
簡而言這,把某個研究系統(tǒng)中涉及的隨機變量耀石,根據(jù)是否條件獨立繪制在一個有向圖中牵囤,就形成了貝葉斯網(wǎng)絡(luò)。其主要用來描述隨機變量之間的條件依賴滞伟,用圈表示隨機變量(random variables)揭鳞,用箭頭表示條件依賴(conditional dependencies)。
定義
令G = (I,E)表示一個有向無環(huán)圖(DAG)梆奈,其中I代表圖形中所有的節(jié)點的集合野崇,而E代表有向連接線段的集合,且令X = (Xi)i ∈ I為其有向無環(huán)圖中的某一節(jié)點i所代表的隨機變量亩钟,若節(jié)點X的聯(lián)合概率可以表示成:
則稱X為相對于一有向無環(huán)圖G 的貝葉斯網(wǎng)絡(luò)乓梨,其中,pa(i)表示節(jié)點i之“因”清酥,或稱pa(i)是i的parents(父母)扶镀。 此外,對于任意的隨機變量焰轻,其聯(lián)合概率可由各自的局部條件概率分布相乘而得出:
可以很明顯地看到臭觉,x1、x2辱志、x3相互獨立蝠筑,那我們怎么判斷x2和x6、x7有沒有關(guān)系呢揩懒?所以要引入D-Seperation這個概念
D-Separation是一種用來判斷變量是否條件獨立的圖形化方法菱肖。換言之,對于一個DAG(有向無環(huán)圖)E旭从,D-Separation方法可以快速的判斷出兩個節(jié)點之間是否是條件獨立的稳强。
形式1:head-to-head
即在c未知的條件下,a和悦、b被阻斷(blocked)退疫,是獨立的,稱之為head-to-head條件獨立鸽素,對應(yīng)網(wǎng)絡(luò)圖中的“x1褒繁、x2獨立”。
形式2:tai-to-tail
有P(a,b,c)=P(c)P(a|c)P(b|c)馍忽,則:P(a,b|c)=P(a,b|c)/P(c)棒坏,然后將P(a,b,c)=P(c)P(a|c)P(b|c)帶入上式燕差,得到:P(a,b|c)=P(a|c)*P(b|c)。
即在c給定的條件下坝冕,a徒探,b被阻斷(blocked),是獨立的喂窟,稱之為tail-to-tail條件獨立测暗,對應(yīng)網(wǎng)絡(luò)圖中的“x6和x7在x4給定的條件下獨立”。
形式3:head-to-tail
在c給定的條件下磨澡,a碗啄,b被阻斷(blocked),是獨立的稳摄,稱之為head-to-tail條件獨立稚字。
這個head-to-tail其實就是一個鏈?zhǔn)骄W(wǎng)絡(luò),如下圖所示:
在xi給定的條件下厦酬,xi+1的分布和x1,x2…xi-1條件獨立胆描。即:xi+1的分布狀態(tài)只和xi有關(guān),和其他變量條件獨立弃锐,這種順次演變的隨機過程袄友,就叫做馬爾科夫鏈(Markov chain)殿托。且有:
11.3
Dobot Magician 機械臂
MOVJ:關(guān)節(jié)運動
由A點運動到B點霹菊,各個關(guān)節(jié)從起始位置A對應(yīng)的關(guān)節(jié)角運行到結(jié)束位置B的關(guān)節(jié)角,運動過程中要
求各軸運行時間一致支竹,同時到達(dá)終點旋廷。
MOVL:直線運動,A點到B點的路徑是直線礼搁。
JUMP:門型軌跡
由A點到B點的JUMP運動饶碘,等價于先設(shè)置一個Height,將A點和B點的豎坐標(biāo)Z
加上Height馒吴,分別得到C點和D點扎运,再做以A-C-D-B為軌跡的三個MOVL運動。
CP:連續(xù)軌跡功能的指令饮戳,用于連續(xù)軌跡相關(guān)的運動設(shè)置和配置豪治。
其中包括關(guān)節(jié)參數(shù)、坐標(biāo)系參數(shù)扯罐、功能設(shè)置參數(shù)等负拟。連續(xù)軌跡功能和上位機Dobot CP對應(yīng),可以實
現(xiàn)寫字歹河、畫畫掩浙、激光雕刻等功能花吟。
ARC:設(shè)置和獲取圓弧插補功能參數(shù)
示教再現(xiàn)
① 移動鼠標(biāo)到起始點
② 打開吸盤
③ 移到鼠標(biāo)到終點
④ 關(guān)閉吸盤
…… 以此類推
⑤ 保存一系列點后,可自動重復(fù)搬運
畫圖
- 連接普通筆
- 安裝相關(guān)插件(在配置環(huán)境中已經(jīng)實現(xiàn)厨姚,但可能會有更新)
- 手動移動機械臂到紙面上(不可太輕或過重衅澈,否則導(dǎo)致畫圖不清晰或紙張破裂)
- autoZ,返回記錄紙面的Z值
- 軟件中輸入需要畫的圖形(只能畫出線條遣蚀,無法畫填充背景)或文字
- 將圖形或文字移到兩條弧形中間(兩條弧形為水平面XY方向的范圍限制)
- 點擊開始即可自動打印
注意:1. XY方向范圍限制問題 2. 只能畫出線條(其字體粗化操作無用)
激光雕刻
- 連接激光發(fā)射器
- 安裝相關(guān)插件(在配置環(huán)境中已經(jīng)實現(xiàn)矾麻,但可能會有更新)
- 手動移動機械臂到距離牛皮紙面約10cm(不宜太遠(yuǎn)或太近)
- autoZ,返回記錄高度的Z值
- 軟件中打開需要畫的圖形文件芭梯,會顯示圖片和灰度圖
- 將圖片移到兩條弧形中間(兩條弧形為水平面XY方向的范圍限制)
- 點擊開始即可自動打印
注意:1. XY方向范圍限制問題 2. 灰度圖問題
問題
① 坐標(biāo)系的定義及轉(zhuǎn)換:根據(jù)關(guān)節(jié)處舵機的角度構(gòu)成J(關(guān)節(jié))坐標(biāo)系险耀、根據(jù)關(guān)節(jié)坐標(biāo)系以及各部分臂長,可以計算X Y Z軸坐標(biāo)玖喘,而R坐標(biāo)系直接與J4相對應(yīng)
② 吸盤延時:在釋放點到吸取點途中便打開吸盤 —— 避免吸盤打開延遲
③ 碰撞物品:在吸取點到達(dá)釋放點附近時甩牺,應(yīng)當(dāng)采用垂直下降方式靠近釋放點 —— 避免慣性使物品位置偏移,盡量走jump運動
④ 擺放角度:注意R軸(操作物品)旋轉(zhuǎn)時機累奈,若在可觸碰到一定范圍內(nèi)有障礙贬派,應(yīng)當(dāng)避免
⑤ 畫圖時只畫線:畫圖時一筆連成區(qū)域一起畫,由里到外澎媒,先畫內(nèi)部簡單部分搞乏,再畫外部復(fù)雜框架