1. 集合、关系、元组
习题 1.1: { 0 , 1 , { 0 , 1 } , { 1 , 2 } } \{0,1,\{0,1\},\{1,2\}\} {0,1,{0,1},{1,2}}有几个元素? 机器学习中, 这类形式的集合有什么优点和缺点?
1.有
4
4
4个元素,分别为
0
,
1
,
{
0
,
1
}
,
{
1
,
2
}
0,1,\{0,1\},\{1,2\}
0,1,{0,1},{1,2}
2.优点:在标签分类学习中,集合的每一个元素代表一类。在传统的单标签分类中,训练集中的每一个样本只有一个相关的标签,这里的标签就可以是题目集合中的
0
,
1
0,1
0,1等数字,这个标签来自于一个不重合的标签集合。而对于多标签分类,采用题目中的形式的集合就可以表示含有多个标签的样本,如
{
0
,
1
}
\{0,1\}
{0,1}、
{
1
,
2
}
\{1,2\}
{1,2}。当然这种方式也存在缺点,标签的增加会导致信息量增加,数据处理更加繁琐等。
习题 1.2: ∅ \emptyset ∅ 的基数是多少? { ∅ } \{\emptyset\} {∅}呢?
∅ \emptyset ∅ 为空集,因此基数为 0 0 0。 { ∅ } \{\emptyset\} {∅}表示包含一个元素的集合,这个元素为 ∅ \emptyset ∅,因此基数为 1 1 1.
习题 1.3: 多标签学习中, 输出为一个向量,相应的学习器算不算函数呢?
我认为算是函数。多标签学习中输出的一个向量是属于一个不重合的标签集合的,这个集合相对于是函数的值域,而所有样本组合起来的集合则是函数定义域。定义域中每一个样本在值域中都有一个唯一的向量与其对应,因此算是函数。
习题 1,4: 元组只能表达对象的数据部分, 还是可以完整地表达 (既包括数据, 也包括方法/函数)? 用一个具体的程序来说明.
可以完整表达
public class Child<N, G, A> {
private N name;
private G gender;
private A age;
public Child(N name, G gender, A age) {
super();
this.name = name;
this.gender = gender;
this.age = age;
}
public N getName() {
return name;
}
public G getGender() {
return gender;
}
public A getAge() {
return age;
}
}
习题 1,5: 定义二叉树.
Let
Σ
=
{
l
,
r
}
\Sigma = \{\mathrm{l}, \mathrm{r}\}
Σ={l,r} be the alphbet and
ϕ
\phi
ϕ be a null node. A binary tree is a triple
T
=
(
V
,
r
,
c
)
T = (\bm{V}, r, c)
T=(V,r,c), where
V
=
{
v
1
,
…
,
v
n
}
\bm{V} = \{v_1, \dots, v_n\}
V={v1,…,vn} is the set of nodes,
r
∈
V
r \in \bm{V}
r∈V is the root, and
c
:
V
∪
{
ϕ
}
×
Σ
∗
→
V
∪
{
ϕ
}
c: \bm{V} \cup \{\phi\} \times \Sigma^* \to \bm{V} \cup \{\phi\}
c:V∪{ϕ}×Σ∗→V∪{ϕ} satisfying
∀
v
∈
V
\forall v \in \bm{V}
∀v∈V,
∃
1
\exists 1
∃1
s
∈
Σ
∗
s \in \Sigma^*
s∈Σ∗ st.
c
(
r
,
s
)
=
v
c(r, s) = v
c(r,s)=v.
习题 1.6: 定义带权无向图.
A weighted undirected graph is a tuple
G
w
=
(
V
,
E
,
w
)
G_w = ( \mathbf {V} , E,w )
Gw=(V,E,w) ,where
V
=
{
v
1
,
…
,
v
n
}
\mathbf{V} = \{v_1, \dots, v_n\}
V={v1,…,vn} is the set of nodes,
E
⊆
V
×
V
\mathbf{E} \subseteq \mathbf{V} \times \mathbf{V}
E⊆V×V is the set of edge,
⟨
v
i
,
v
j
⟩
∈
E
\langle v_i, v_j \rangle \in \bm{E}
⟨vi,vj⟩∈Eiff
⟨
v
j
,
v
i
⟩
∈
E
\langle v_j, v_i \rangle \in \bm{E}
⟨vj,vi⟩∈E, and
w
⊆
R
+
∪
{
0
}
w \subseteq \mathbb{R}^+ \cup \{0\}
w⊆R+∪{0} is the edge weight.
2. 字母表、二叉树、树
习题 9. 考虑 ϕ \phi ϕ, 重新写 Definition 6 以解决其存在的问题, 见其讨论 d).
Definition 6. A tree is a triple T = ( V , r , p ) T = (\mathbf{V}, r, p) T=(V,r,p),where V = { v 1 , … , v n } \mathbf{V} = \{v_1, \dots, v_n\} V={v1,…,vn} is the set of nodes, r ∈ V r \in \mathbf{V} r∈V is the root, and p : V ∖ { r } → V p: \mathbf{V} \setminus \{r\} \rightarrow \mathbf{V} p:V∖{r}→V is the parent function satisfying
a) ∀ k ≥ 1 \forall k \geq 1 ∀k≥1, p k ( v ) ≠ v p^k ( v ) ≠ v pk(v)=v, and
b) ∀ v ∈ V ∖ { r } \forall v \in \mathbf{V} \setminus \{r\} ∀v∈V∖{r}, ∃ 1 k ≥ 1 \exists 1 k \geq 1 ∃1k≥1, st. p k ( v ) = r p^k(v) = r pk(v)=r.
A tree is a triple
T
=
(
V
,
r
,
p
)
T = (\mathbf{V}, r, p)
T=(V,r,p),where
V
=
{
v
1
,
…
,
v
n
}
\mathbf{V} = \{v_1, \dots, v_n\}
V={v1,…,vn} is the set of nodes,
r
∈
V
r \in \mathbf{V}
r∈V is the root, and
p
:
V
→
V
p: \mathbf{V} \rightarrow \mathbf{V}
p:V→V is the parent function satisfying
a)
∀
k
≥
1
\forall k \geq 1
∀k≥1,
p
k
(
v
)
≠
v
p^k ( v ) ≠ v
pk(v)=v, and;
b)
∀
v
∈
V
∖
{
r
}
\forall v \in \mathbf{V} \setminus \{r\}
∀v∈V∖{r},
∃
1
k
≥
1
\exists 1 k \geq 1
∃1k≥1, st.
p
k
(
v
)
=
r
p^k(v) = r
pk(v)=r;
c)
p
(
r
)
=
ϕ
p(r)=\phi
p(r)=ϕ,
p
(
ϕ
)
=
ϕ
p(\phi)=\phi
p(ϕ)=ϕ.
3. 有限状态自动机
习题 3.1 模仿自动机的样子来重新定义二叉树.
A binary tree is a 5-tuple
T
=
(
Σ
,
V
′
,
r
,
ϕ
,
c
)
T = (\Sigma, \bm{V'}, \bm{r}, \bm{\phi}, c)
T=(Σ,V′,r,ϕ,c), where
a)
Σ
\Sigma
Σ is the alphabet,
Σ
=
{
l
,
r
}
\Sigma = \{\mathrm{l}, \mathrm{r}\}
Σ={l,r} ;
b)
V
′
\bm{V'}
V′ is the set of states,
V
′
=
V
∪
{
ϕ
}
\bm{V'}=\bm{V} \cup \{\phi\}
V′=V∪{ϕ},
V
=
{
v
1
,
…
,
v
n
}
\mathbf{V} = \{v_1, \dots, v_n\}
V={v1,…,vn} ;
c)
r
∈
V
′
r \in \bm{V'}
r∈V′ is the root;
d)
ϕ
∈
V
′
\phi \in \bm{V'}
ϕ∈V′ is the terminal states;
e)
c
:
V
′
×
Σ
∗
→
V
′
c: \bm{V'}\times \Sigma^* \to \bm{V'}
c:V′×Σ∗→V′ is the transition function, satisfying
∀
v
∈
V
\forall v \in \bm{V}
∀v∈V,
∃
1
\exists 1
∃1
s
∈
Σ
∗
s \in \Sigma^*
s∈Σ∗ st.
c
(
r
,
s
)
=
v
c(r, s) = v
c(r,s)=v.
习题 3.2 模仿自动机的样子来重新定义树.
A tree is a 5-tuple
T
=
(
Σ
,
V
′
,
r
,
ϕ
,
p
)
T = (\Sigma, \bm{V'}, \bm{r}, \bm{\phi}, p)
T=(Σ,V′,r,ϕ,p), where
a)
Σ
\Sigma
Σ is the alphabet,
Σ
=
{
k
}
\Sigma= \{k\}
Σ={k} ;
b)
V
′
\bm{V'}
V′ is the set of states,
V
′
=
V
∪
{
ϕ
}
\bm{V'}=\bm{V} \cup \{\phi\}
V′=V∪{ϕ},
V
=
{
v
1
,
…
,
v
n
}
\mathbf{V} = \{v_1, \dots, v_n\}
V={v1,…,vn} ;
c)
r
∈
V
′
r \in \bm{V'}
r∈V′ is the root;
d)
ϕ
∈
V
′
\phi \in \bm{V'}
ϕ∈V′ is the terminal states;
e)
p
:
V
′
×
Σ
∗
→
V
′
p: \bm{V'}\times \Sigma^* \to \bm{V'}
p:V′×Σ∗→V′ is the transition function, satisfying
∀
v
∈
V
\forall v \in \bm{V}
∀v∈V,
∃
1
\exists 1
∃1
s
∈
Σ
∗
s \in \Sigma^*
s∈Σ∗ st.
c
(
v
,
s
)
=
r
c(v, s) = r
c(v,s)=r.
这里树用p函数还是用c函数有点不确定。