命名实体识别
从一句话中识别出人名,地名,组织名,日期时间,这就是命名实体识别的一个例子,而人名,地名等这些被识别的目标就是命名实体。当然命名实体还可以是很多其它有意义的目标,比如产品,公司,专有名词等等。
标注
了解过机器学习的朋友都知道,无论是传统的机器学习还是深度学习,大多数情况都是在做监督学习,也就是需要大量标注好的数据做为训练样本,那么这里,如果希望机器能识别出人名,地名,就必须事先给机器看看在一句话中,什么是人名,什么是地名,当然只看一句话是远远不够的,一般来说,至少也要上千句话才可以。这些句子都是需要人工来标注的,而标注出这些句子中的命名实体的过程,称为"文本数据标注"。
直接在word、txt等文档里标注
此次{{location:中国}}个展,{{person_name:苏珊}}将与她80多岁高龄的父亲一起合作,哼唱一首古老的{{location:威尔士}}民歌{{product_name:《白蜡林》}}。届时在{{location:画廊大厅}}中将安放6个音箱进行播放,艺术家还特意回到家乡{{location:格拉斯哥}},同父亲一起在{{org_name:中国音乐学院}}里为作品录制了具有{{location:中国}}元素的音乐片段。
白底黑字,密密麻麻,很快就会看花眼了,很容易标注错误,比如少个符号什么的;
无法多人协同标注。
标注工具
brat
brat是一个文本标注工具,可以标注实体,事件、关系、属性等,只支持在linux下安装,其使用需要webserver,官方给出的教程使用的是Apache2
下载brat
建议下载brat的release版本,地址:https://github.com/nlplab/brat/releases/tag/v1.3p1
首先,安装apache2,使用命令:
sudo apt-get install apache2
安装完成后会在 /var 目录下生成一个www/html目录,进入该目录:
cd /var/www/html
将下载的brat-1.3p1.zip文件移动到该目录下,使用 如下命令解压到当前目录:
unzip brat-1.3p1.zip
在当前目录下使用如下命令将brat-1.3p1重命名为brat
mv brat-1.3p1 brat
使用 如下命令对brat目录授权:
sudo chmod 777 -R /var/www/html/brat
进入brat目录
cd /var/www/html/bratsudo ./install.sh
执行以下命令,根据提示输入用户名、密码、管理员邮箱
./install.sh
现在开始配置apache2.conf文件: 执行命令:
vim /etc/apache2/apache2.conf
在文件末尾加入如下内容,注意缩进,(如果后面重启apache2服务的时候报错“…the control process exited with error code…”,可以看看是不是这里的缩进有问题,可以试试手动敲下面的配置,而不是直接复制粘贴):
复制代码
<Directory /var/www/html/brat>
AllowOverride Options Indexes FileInfo Limit
Require all granted
AddType application/xhtml+xml .xhtml
AddType font/ttf .ttf
Options +ExecCGI
AddHandler cgi-script .cgi
重新启动apache2:
sudo service apache2 restart
然后打开 http://xxx.xxx.xxx.xxx/brat , xxx是你brat所在主机的ip,默认80端口。
打开网页后,会发现报错,是关于协议什么的错误,这就是坑的地方,我们还需要一个步骤,如下:
cd /etc/apache2/mods-enabled
sudo ln -s …/mods-available/cgi.load
只有这样才能使用cgi模块,而这步在brat的官方文档中貌似没有提及。但是在issue的#1141中提到了这点。
接下来,重新加载apache2的配置:
sudo service apache2 reload
训练
https://www.cnblogs.com/anai/p/11492956.html