习题1.1:{0,1,{0,1},{1,2}} 有几个元素? 机器学习中, 这类形式的集合有什么优点和缺点?
答:1)共有4个元素,分别是0,1,{0,1},{1,2}。
2)优点:在多标签学习中,这类形式的集合可以表达不同类型的标签。
缺点:由于数据的维度不相同,需要更多的运算,提高了复杂度。
习题1.2:∅ 的基数是多少?{∅ }呢?
答:空集是指不含任何元素的集合,故∅ 的基数为0;{Ø}是有一个Ø元素的集合,{Ø}是一个非空集合,集合只有空集这个元素,故基数为1。
习题1.3:多标签学习中, 输出为一个向量,相应的学习器算不算函数呢?
答:算函数。个人理解多标签学习的过程为:例如,输入一张带有动物的图片,输出图片的动物名称,机器学习通过训练寻找一个最佳的函数,在测试时,如果给出一张猫的照片,机器根据寻找的最佳函数进行计算,得到是猫的概率大于0.5,则判定图片识别为猫。现在输出虽然为一个向量,但是机器学习本身就是寻找一个函数,输入通过此函数得到输出,故相应的学习器算一个函数。
习题1.4: 元组只能表达对象的数据部分, 还是可以完整地表达 (既包括数据, 也包括方法/函数)? 用一个具体的程序来说明.
答:如文中所述:从数据结构的角度, 元组就是抽象数据类型。抽象数据类型一般通过数据对象、数据关系以及基本操作来定义,故元组可以完整表达一个对象。程序实例运用结构体和函数定义来近似表达一个类的作用:
#include <stdio.h>
struct student
{
char name[64];
char sex;
int height;
float weight;
}bob={"bob",'m',167,189.7};
void printinfo(struct student stu)
{
printf("name:%s\t sex:%c\t height:%dcm\t weight:%.1fkg",stu.name,stu.sex,stu.height,stu.weight);
}
int main()
{
printinfo(bob);
return 0;
}
输出结果:
name:bob sex:m height:167cm weight:189.7kg
习题1.5:定义二叉树
答:Definition.Let
Σ
=
{
l
,
r
}
\Sigma=\lbrace \mathrm l,\mathrm r \rbrace
Σ={l,r} be the alphbet and
ϕ
\phi
ϕ be a null node.A binary tree is a triple
T
=
(
V
,
r
,
c
)
T=(V,r,c)
T=(V,r,c),where
V
=
{
v
1
,
.
.
.
,
v
n
}
V=\lbrace v_1,...,v_n\rbrace
V={v1,...,vn} is the set of nodes,
r
∈
V
r\in V
r∈V is the root,and
c
:
V
∪
{
ϕ
}
×
Σ
∗
→
V
∪
{
ϕ
}
c:V \cup \lbrace\phi\rbrace \times \Sigma^* \to V\cup \lbrace \phi \rbrace
c:V∪{ϕ}×Σ∗→V∪{ϕ} satisfying
∀
v
∈
V
,
∃
1
s
∈
Σ
∗
s
t
.
c
(
r
,
s
)
=
v
.
\forall v \in V,\exist 1s \in \Sigma^* st.c(r,s)=v.
∀v∈V,∃1s∈Σ∗st.c(r,s)=v.
习题 1.6: 定义带权无向图.
答:Difinition. A weighted undirected graph is a tuple G w = ( V , w ) G_w=(V,w) Gw=(V,w),where V = { v 1 , . . . v n } V={\lbrace v_1,...v_n\rbrace} V={v1,...vn} is the set of nodes,and w : V × V → R + ∪ { 0 } w:V\times V\to R^+\cup{\lbrace 0\rbrace} w:V×V→R+∪{0} is the edge weight function satisfying w ( v i , v j ) = w ( v j , v i ) w(v_i,v_j)=w(v_j,v_i) w(vi,vj)=w(vj,vi).
习题 1.7: 考虑 ϕ \phi ϕ, 重新写 Definition 6 以解决其存在的问题, 见其讨论 d).
答:Difinition .Let
ϕ
\phi
ϕ be a null node,A Tree is a triple
T
=
(
V
,
r
,
p
)
T=(V,r,p)
T=(V,r,p),where
V
=
{
v
1
,
v
2
,
.
.
.
,
v
n
}
∪
{
ϕ
}
V=\lbrace v_1,v_2,...,v_n\rbrace \cup \lbrace \phi \rbrace
V={v1,v2,...,vn}∪{ϕ} is the set of nodes,
r
∈
V
r\in V
r∈V is the root,and
p
:
V
\
{
r
}
→
V
p:V \backslash { \lbrace r \rbrace }\to V
p:V\{r}→V is the parent function satisfing
a)
p
k
(
v
)
≠
v
p^k(v)\neq v
pk(v)=v for any
k
≥
1
k \ge1
k≥1, and
b)
∀
v
∈
V
\
{
r
}
,
∃
1
k
≥
1
\forall v \in V \backslash {\lbrace r\rbrace},\exists1k\ge1
∀v∈V\{r},∃1k≥1,st.
p
k
(
v
)
=
r
p^k(v)=r
pk(v)=r,and
c)
p
(
r
)
=
ϕ
p(r)=\phi
p(r)=ϕ.
d)
∀
v
∈
V
,
p
(
ϕ
)
=
v
\forall v \in V ,p(\phi)=v
∀v∈V,p(ϕ)=v.
习题3.1:模仿自动机的样子来重新定义二叉树。
答:Definition.A binary tree deterministic finite state automata(DFA)is a 5-tuple
M
=
(
Σ
,
Q
,
q
0
,
T
,
f
)
M=(\Sigma,Q,q_0,T,f)
M=(Σ,Q,q0,T,f),where
a)
Σ
=
{
l
,
r
}
\Sigma=\lbrace \mathrm l,\mathrm r \rbrace
Σ={l,r} is a set of characters denote the input alphabet.
b)
Q
=
{
v
1
,
v
2
,
.
.
.
,
v
n
}
∪
{
ϕ
}
Q=\lbrace v_1,v_2,...,v_n \rbrace \cup \lbrace \phi \rbrace
Q={v1,v2,...,vn}∪{ϕ} is the set of nodes denote the set of states.
c)
r
r
r is the root,
q
0
=
r
q_0=r
q0=r denotes the start state.
d)
T
⊆
Q
T\subseteq Q
T⊆Q is the set of terminal states.
e)
f
:
Q
×
Σ
→
Q
f:Q\times \Sigma\to Q
f:Q×Σ→Q is the transition function.
Any
s
∈
Σ
s\in \Sigma
s∈Σ is accepted by the automata iff
f
(
q
0
,
s
)
∈
T
f(q_0,s)\in T
f(q0,s)∈T.
习题3.2:模仿自动机的样子来重新定义树。*
答:Difinition.A tree deterministic finite state automata(DFA)is a 5-tuple
M
=
(
Σ
,
Q
,
q
0
,
T
,
f
)
M=(\Sigma,Q,q_0,T,f)
M=(Σ,Q,q0,T,f),where
a)
Σ
=
{
p
}
\Sigma=\lbrace p\rbrace
Σ={p} is the power of the transition function denote the input alphabet.
b)
Q
=
{
v
1
,
v
2
,
.
.
.
,
v
n
}
∪
{
ϕ
}
Q=\lbrace v_1,v_2,...,v_n \rbrace \cup \lbrace \phi \rbrace
Q={v1,v2,...,vn}∪{ϕ} is the set of nodes denote the set of states.
c)
q
0
∈
Q
q_0\in Q
q0∈Q is the start state.
d)
T
⊆
Q
T\subseteq Q
T⊆Q is the set of terminal states.
e)
f
:
Q
×
Σ
→
Q
f:Q\times \Sigma\to Q
f:Q×Σ→Q is the transition function.
Any
p
∈
Σ
p\in \Sigma
p∈Σ is accepted by the automata iff
f
(
q
0
,
p
)
∈
T
f(q_0,p)\in T
f(q0,p)∈T.