GithubHelp home page GithubHelp logo

yongheshinian / chinesener Goto Github PK

View Code? Open in Web Editor NEW

This project forked from buppt/chinesener

0.0 1.0 0.0 15.48 MB

中文命名实体识别,实体抽取,tensorflow,pytorch,BiLSTM+CRF

Python 100.00%

chinesener's Introduction

ChineseNER

本项目使用

  • python 2.7
  • tensorflow 1.7.0
  • pytorch 0.4.0

对命名实体识别不了解的可以先看一下这篇文章。顺便求star~

这是最简单的一个命名实体识别BiLSTM+CRF模型。

数据

data文件夹中有三个开源数据集可供使用,玻森数据 (https://bosonnlp.com) 、1998年人民日报标注数据、MSRA微软亚洲研究院开源数据。其中boson数据集有6种实体类型,人民日报语料和MSRA一般只提取人名、地名、组织名三种实体类型。

先运行数据中的python文件处理数据,供模型使用。

tensorflow版

开始训练

使用 python train.py 开始训练,训练的模型会存到model文件夹中。

使用预训练的词向量

使用 python train.py pretrained 会使用预训练的词向量开始训练,vec.txt是在网上找的一个比较小的预训练词向量,可以参照我的代码修改使用其他更好的预训练词向量。

测试训练好的模型

使用 python train.py test 进行测试,会自动读取model文件夹中最新的模型,输入中文测试即可,测试结果好坏根据模型的准确度而定。

文件级别实体抽取

使用 python train.py input_file output_file 进行文件级实体抽取。

可以自动读取model文件夹中最新的模型,将input_file中的实体抽取出来写入output_file中。先是原句,然后是实体类型及实体(可按照需要修改)。

python train.py test1.txt res.txt , res.txt内容如下:

不定期增加其他修改。。

pytorch版

直接用的pytorch tutorial里的Bilstm+crf模型.

运行train.py训练即可。由于使用的是cpu,而且也没有使用batch,所以训练速度超级慢。想简单跑一下代码的话,建议只使用部分数据跑一下。pytorch暂时不再更新。

准确率

参数并没有调的太仔细,boson数据集的f值在70%~75%左右,人民日报和MSRA数据集的f值在85%~90%左右。(毕竟boson有6种实体类型,另外两个只有3种)

更新日志

2018-9-15 增加tensorflow版本。

2018-9-17 增加1998年人民日报数据集和MSRA微软亚洲研究院数据集。

2018-9-19 简单修改了代码风格,将model提取出来,方便以后拓展。

2018-9-22 增加 python train.py test 功能。

2018-10-6 增加使用参数确定是否使用预训练词向量进行训练。

2018-10-11 增加功能:可以抽取一个文本文件中的实体,写入另一个文件中。

chinesener's People

Contributors

buppt avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.