试根据训练集:
D=((1,2)T,1),((3,3)T,1),((2,1)T,−1),((5,2)T,−1)D={((1,2)^T,1),((3,3)^T,1),((2,1)^T,-1),((5,2)^T,-1)}D=((1,2)T,1),((3,3)T,1),((2,1)T,−1),((5,2)T,−1)构造一个感知机模型,学习率α=1。
【解】已知感知机模型的具体形式为:f(X)=sgn(WTX)f(X)=sgn(W^T X)f(X)=sgn(WTX)
KaTeX parse error: Unknown column alignment: * at position 48: … \begin{array}{*̲*lr**} …
其中∗∗W∗∗=(b,w1,w2)T,X=(1,x1,x2)T**W**=(b,w_1,w_2 )^T,X=(1,x_1,x_2 )^T∗∗W∗∗=(b,w1,w2)T,X=(1,x1,x2)T。使用数据集D构造感知机模型的具体步骤如下:
(1)初始化参数向量W=(0,0,0)TW=(0,0,0)^TW=(0,0,0)T
(2)随机选择一个样本((2,1)T,−1)((2,1)^T,-1)((2,1)T,−1)输入初始模型,求得f(X=(2,1)T)=sgn(0)=1≠−1f(X=(2,1)^T )=sgn(0)=1≠-1f(X=(2,1)T)=sgn(0)=1=−1,该样本未被感知机模型正确分类,使用如下公式更新模型参数:
wi=wi+αyixi,b=b+αyiw_i=w_i+αy_i x_i, b=b+αy_iwi=wi+αyixi,b=b+αyi
计算得到新的参数向量∗∗W=∗∗(−1,−2,−1)T**W=**(-1 ,-2,-1)^T∗∗W=∗∗(−1,−2,−1)T,获得的感知机模型为:
f(X)=sgn(−2x1−x2−1)f(X)=sgn(-2x_1-x_2-1)f(X)=sgn(−2x1−x2−1)
将数据集D中样本均输入更新后的感知机模型中,若存在样本被错误分类,则根据步骤(2)中公式进行参数更新,直至D中所有样本均分类正确时结束算法并输出模型。
中所有样本均分类正确时结束算法并输出模型。