C++Primer

变量

类型

  • 算术类型

    • 整形
      • 包括char和bool在内
    • 浮点型
      • 单精度
      • 双精度
      • 扩展精度
  • 空类型(void)


Tagging Problems and Hidden Markov Models

概述

对于一个句子,我们要做的是给每一个单词打上词性标记,比如句子the dog saw a cat对应的tag sequence是D N V D N,这个句子的长度是5,对应的输入\(x_1=the,x_2=dog,x_3=saw,x_4=the,x_5=cat\),用\(y_1y_2...y_n\)来表示tagging model的output,对应上面的有\(y_1=D,y_2=N,y_3=V,...\)。匹配句子\(x_1...x_n\)的tag sequence \(y_1...y_n\)的问题叫做 sequence labeling problem 或者是 tagging problem。


Language Modeling

N-Gram

这里首先有个语料库,记录了很多条句子,然后预测给定句子出现的概率。给定一个句子,这里句子的长度为n,也就是\(|V|=n\),第i个单词用字母\(x_i\)表示,那么概率公式表示为:\(P(X_1=x_1,X_2=x_2,...X_n=x_n)\)


Numpy笔记

numpy的属性

  • shape返回一个元组分别记录着行数与列数
  • size返回矩阵元素的个数
  • ndim返回行数
  • A.T返回矩阵的反向矩阵

动态规划专题

DP 问题的一般思路

  • DP 定义 ——有时 DP 的更新很难严格遵循定义,需要额外变量保存全局最优结果
  • 初始化 ——初始值可以通过一个简单的特例来确定
  • 递推公式 + 边界条件
  • DP 优化 (可选)

Reference


Python惯例

“惯例”这个词指的是“习惯的做法,常规的办法,一贯的做法”,与这个词对应的英文单词叫“idiom”。由于Python跟其他很多编程语言在语法和使用上还是有比较显著的差别,因此作为一个Python开发者如果不能掌握这些惯例,就无法写出“Pythonic”的代码。下面我们总结了一些在Python开发中的惯用的代码。