Bert是什么?

从应用看她包括三个部分,一个使用庞大语料训练的字元向量集,一个应用注意力思想的多层特征提取层或者叫注意力层,一个工程化的模型载入环境和调用介面。

她能做什么?

她可以将语言建模的成本降到最低,谷歌使用亿级语料训练的字元向量级,可以作为我们工作的起点

她可以将特征工程降到最低,使用Bert进行分类训练和预测,不做任何特征工程的调试,效果和使用1500行代码,调试两个月的TextCNN分类模型效果一致

她可以更快的完成从想法到产品的工程化,面向任务的修改,集中在用户输入层,代码工作量在半天工时。

她能做的多好?

在通用11个Nlp任务上,增加7%,从优化到革命。

她有那些不足?

ner的工程化,从作者开放的代码模块可以看到,并没有ner部分,也就是序列标注部分

在与基准模型的对比测试中,bert仅仅优化0.2%,微调后可以提高的更多

作者Jocab本人在github的讨论中,对于是否开放ner有分歧。

通过主动学习,带给企业的改变

有特定业务场景和用户入口的企业,可以将业务,语料通过pre_train转化为特定领域的字元向量,令到后续的业务表现更好。

她是nlp领域的安卓6.0,是从开放混乱到封闭秩序的开始,企业将更多的聚焦业务,更少的基础演算法创新。

无论是否拥抱,都会带来的改变

她彻底改变了特征工程

传统的数据企业,业务框架从业务角度分两个部分,特征工程和演算法平台

特征工程有三个层次,文本化的特征工程,向量化的特征工程,和演算法化的特征工程。

词库,停用词,业务词,规则沉淀,等属于文本化

空间向量的映射,转化,各种自定义的业务参数,属于向量化的特征工程

注意力函数,注意力层实现架构属于演算法化的特征工程

运行extract_feature.py可以看到列印输出,注意力层有121层,从分类模型效果横向比较,与crim_classify相对比,不需要业务介面做任何的特征工程,效果打平。

特征工程成本的降低,个人开发者和中小规模企业会因为反应和速度,有密集的产品推出

类比07年,因安卓免费,而创业的手机design house井喷

业务.用户.社群,成为现有成熟业务形态留住用户的法宝。

业务理解和业务定义,产品管理和工程管理会更重要,因为满足用户的成本会越来越低,跟著用户改变,精准适配用户,对用户带来的体验和好感度,会更强烈。

使用bert的风险

通过自有语料训练预训练特定领域的字元向量级,会让模型在特定语料范围内表现更好,也会因此部分损失,通用字符集的泛化能力

bert的字元向量包含语境信息,且数据规模较大,每个字元为768长度的list,在语境中两两没有相同。使用需更熟练掌握谷歌的bert架构与介面

ner工程化后会比之前的演算法有提高,但需要比其他应用很多的工程化工作 ner也是所有演算法能力的基础能力之一


推荐阅读:
相关文章