• 开源一个中文信息抽取工具(持续完善中...)


    CNN4IE

    本项目是本人打算使用CNN的不同变体进行信息抽取,未来会持续加入不同模型。

    CNN4IE根据CNN的各种改进版本,对不同模型块进行融合,并将其用于中文信息抽取中。

    Intro

    目前主要实现中文实体抽取:

    训练样本以B、I、O形式进行标注。

    Model

    模型

    • MultiLayerResCNN(src/mlrescnn):多层残差CNN(+CRF)。

    Usage

    • 相关参数的配置

      config.cfg,在训练或预测时加载此文件的位置。

    • 训练(支持加载预训练的embedding向量)

      from cnn4ie.mlrescnn.train import Train
      train = Train()
      train.train_model('config.cfg')
      
      Epoch: 199 | Time: 0m 4s
        Train Loss: 228.545 | Train PPL: 1.802960293422957e+99
         Val. Loss: 433.577 |  Val. PPL: 1.9966207577208172e+188
         Val. report:               precision    recall  f1-score   support
      
               1       1.00      1.00      1.00      4539
               2       0.98      0.99      0.99      4926
               3       0.90      0.83      0.86       166
               4       0.74      0.98      0.84        52
               5       0.94      0.77      0.84       120
               6       0.76      0.97      0.85        39
               7       0.82      0.87      0.85        54
               8       0.93      0.74      0.82        68
               9       0.95      0.77      0.85        26
              10       1.00      0.80      0.89        10
      
        accuracy                           0.98     10000
        macro avg       0.90      0.87      0.88     10000
        weighted avg       0.99      0.98      0.98     10000
      
    • 预测

      from cnn4ie.mlrescnn.predict import Predict
      
      predict = Predict()
      predict.load_model_vocab('config_cfg')
      result = predict.predict('据新华社报道,安徽省六安市被评上十大易居城市!')
      
      print(result)
      
      [{'start': 7, 'stop': 13, 'word': '安徽省六安市', 'type': 'LOC'}, {'start': 1, 'stop': 4, 'word': '新华社', 'type': 'ORG'}]
      

    Evaluate

    评估采用的是P、R、F1、PPL等。评估方法可利用scikit-learn中的precision_recall_fscore_support或classification_report。

    Install

    • 安装:pip install CNN4IE
    • 下载源码:
    git clone https://github.com/jiangnanboy/CNN4IE.git
    cd CNN4IE
    python setup.py install
  • 相关阅读:
    Vue父子组件传值$parent , ref,$refs,props大总结
    Vue-axios
    tensorflow2知识总结(杂)---1、安装tensorflow
    线性回归和逻辑回归的区别
    %matplotlib inline的含义
    王阳明的心学到底是啥
    Windows Anaconda 修改为国内源
    Reporting Services Single Sign On (SSO) Authentication
    .NET
    WebForms UnobtrusiveValidationMode requires a ScriptResourceMapping for 'jquery'. Please add a ScriptResourceMapping named jquery(case-sensitive)
  • 原文地址:https://www.cnblogs.com/little-horse/p/14903109.html
Copyright © 2020-2023  润新知