Google - BERT
Tips:本人也是初学者,如有错误,还请不吝赐教
之前一直认为方法论和思维方式才是最重要的,实际的解决方案会随着时间的改变快速更迭,所以一直没有记录的习惯,…
Before BERT
很多机器学习领域的任务,或显式或隐式地可以分为两个阶段
- 将问题数据映射到一个潜藏信息的低维空间里,即将原问题里的元素 X 映射为 hx
- 再将 hx 映射到(分类到)(回归到)数据标签y上
在神经网络中这两步骤的界限显得不那么明显,但从迁移学习Transfor Learning、知识蒸馏Knowledge Distillation、微调Fine Fune、提Feature的预训练网络和最后一层分类器Softmax中都可以体会出其中一二
本文主要讲的就是这第一部分:不同于计算机视觉(Computer Vision)里的图像,在计算机里有天然的像素表示。文本(或者更广义上来说的,符号)在计算机里要经过非直观的编码表示,直接丧失了其原有的含义。
如果所有的符号(中文、英文、…)总数是一个确定的数 H 那么简单地进行 One-hot编码 就会形成 H 维度的向量表示。
Word Embedding 的思想就是想让 文本 用更好的更低维的向量 来表示他们各自所代表的语义。
Word Embedding 发展的大致阶段:
- Bag of Word 词袋模型 (TF-IDF、BM25)
- Word 2 Vec (Skip Gram、CBOW、Glove)
- BERT (ELMo、GPT、XLNet、…)