论文写作 11: 理论部分全靠数学功底 (含实例)

对于计算机专业的学生而言, 数学语言的运用通常有一定困难. 这是因为很多人在学习数学的时候, 只是想办法应付考试, 而没有思考内在的涵义. 特别是书上的定义, 我们看看也就过了, 而没有去想: 为什么这样定义? 换种定义方式可以吗? 实际上, 定义比定理难写, 前者要考虑前瞻性; 定理比证明难写.

针对计算机专业, 特别是机器学习方向, 比较详细的数学语言描述见 数学表达式魔训
同时, 强烈建议大家换个作者的视角, 把《离散数学》重新学一下, 抄一遍其中的定义、定理也是极好的.
一般性的准则如下:

  1. 理论应该完备
  2. 符号要保持同一风格
  3. 重要结论称为定理 theorem, 定理前面打辅助的叫作引理 lemma, 定理后面的尾巴叫推论 corollary, 附属于算法的叫 property.

这里用一个例子来说明如何写定义.
Definition 1 In a formal context T = ( O , A , R ) T = (O, A, R) T=(O,A,R), C 1 = ( E 1 , I 1 ) C_1 = (E_1, I_1) C1=(E1,I1) and C 2 = ( E 2 , I 2 ) C_2 = (E_2, I_2) C2=(E2,I2) are two concepts. Define C 1 ≤ C 2 ⇔ E 1 ⊆ E 2 ⇔ I 2 ⊆ I 1 C_1 \le C_2 \Leftrightarrow E_1 \subseteq E_2 \Leftrightarrow I_2 \subseteq I_1 C1C2E1E2I2I1, so C 2 C_2 C2 is a super-concept of C 1 C_1 C1, C 1 C_1 C1 is a sub-concept of C 2 C_2 C2, which is called partial order between concepts.

Definition 2 (sub-concept) Let C 1 = ( E 1 , I 1 ) C_1 = (\mathbf{E}_1, \mathbf{I}_1) C1=(E1,I1) and C 2 = ( E 2 , I 2 ) C_2 = (\mathbf{E}_2, \mathbf{I}_2) C2=(E2,I2) be two concepts of formal context T = ( O , A , R ) T = (\mathbf{O}, \mathbf{A}, \mathbf{R}) T=(O,A,R). C 1 C_1 C1 is called a sub-concept of C 2 C_2 C2 (denoted by C 1 ≤ C 2 ) C_1 \le C_2) C1C2) iff E 1 ⊆ E 2 \mathbf{E}_1 \subseteq \mathbf{E}_2 E1E2.

其中, Definition 1 为学生的版本, Definition 2 则为我修改后的版本. 修改后版本有如下优点:

  1. 需要定义的是 sub-concept, 因此将它放到紧跟 Definition 2 的括号内;
  2. 集合用粗体, 如: E \mathbf{E} E;
  3. 阐明了 C 1 C_1 C1, C 2 C_2 C2 T T T 的关系;
  4. 其它的定义 (super-concept 与 partial order) 挪到定义之后, 即一个定义只阐明一样东西;
  5. 使用 Let … be, iff (即 if and only if) 等标准数学语言;
  6. 更为简洁. 数学语言就是应该言简意赅.

如果想看一堆的定义, 可参见
Frequent pattern discovery with tri-partition alphabets
A hierarchical model for test-cost-sensitive decision systems

你可能感兴趣的:(论文写作,论文修改,算法,开发语言)