资源算法BERT-SQuAD

BERT-SQuAD

2020-03-10 | |  33 |   0 |   0

BERT-SQuAD

Use google BERT to do SQuAD !

What is SQuAD?

Stanford Question Answering Dataset (SQuAD) is a reading comprehension dataset, consisting of questions posed by crowdworkers on a set of Wikipedia articles, where the answer to every question is a segment of text, or span, from the corresponding reading passage, or the question might be unanswerable.

Requirements

  • python3

  • pip3 install -r requirements.txt

Result

model : bert-large-uncased-whole-word-masking

{"exact_match": 86.91579943235573, "f1": 93.1532499015869}

Pretrained model download from here

unzip and move files to model directory

Inference

from bert import QAmodel = QA('model')

doc = "Victoria has a written constitution enacted in 1975, but based on the 1855 colonial constitution, passed by the United Kingdom Parliament as the Victoria Constitution Act 1855, which establishes the Parliament as the state's law-making body for matters coming under state responsibility. The Victorian Constitution can be amended by the Parliament of Victoria, except for certain 'entrenched' provisions that require either an absolute majority in both houses, a three-fifths majority in both houses, or the approval of the Victorian people in a referendum, depending on the provision."q = 'When did Victoria enact its constitution?'answer = model.predict(doc,q)print(answer['answer'])# 1975print(ans.keys())# dict_keys(['answer', 'start', 'end', 'confidence', 'document']))

model.predict(doc,q) return dict

{"answer" : "answer text","start" : "start index","end" : "end index","confiednce" : "confidence of answer","document" : "tokenzied document , list"}

Deploy REST-API

BERT QA model deployed as rest api

python api.py

API will be live at 0.0.0.0:8000 endpoint predict

cURL request

curl -X POST http://0.0.0.0:8000/predict -H 'Content-Type: application/json' -d '{ "document": "Victoria has a written constitution enacted in 1975, but based on the 1855 colonial constitution, passed by the United Kingdom Parliament as the Victoria Constitution Act 1855, which establishes the Parliament as the states law-making body for matters coming under state responsibility. The Victorian Constitution can be amended by the Parliament of Victoria, except for certain 'entrenched' provisions that require either an absolute majority in both houses, a three-fifths majority in both houses, or the approval of the Victorian people in a referendum, depending on the provision.","question":"When did Victoria enact its constitution?" }'

Output

{    "result": {        "answer": "1975",        "confidence": 0.940746070672879,        "document": [            "Victoria",            "has",            "a",            "written",            "constitution",            "enacted",            "in",            "1975,",            "but",            "based",            "on",            "the",            "1855",            "colonial",            "constitution,",            "passed",            "by",            "the",            "United",            "Kingdom",            "Parliament",            "as",            "the",            "Victoria",            "Constitution",            "Act",            "1855,",            "which",            "establishes",            "the",            "Parliament",            "as",            "the",            "states",            "law-making",            "body",            "for",            "matters",            "coming",            "under",            "state",            "responsibility.",            "The",            "Victorian",            "Constitution",            "can",            "be",            "amended",            "by",            "the",            "Parliament",            "of",            "Victoria,",            "except",            "for",            "certain",            "entrenched",            "provisions",            "that",            "require",            "either",            "an",            "absolute",            "majority",            "in",            "both",            "houses,",            "a",            "three-fifths",            "majority",            "in",            "both",            "houses,",            "or",            "the",            "approval",            "of",            "the",            "Victorian",            "people",            "in",            "a",            "referendum,",            "depending",            "on",            "the",            "provision."
        ],        "end": 7,        "start": 7
    }
}

Postman


上一篇:BERT_Chinese_Classification

下一篇:emv-bertlv

用户评价
全部评价

热门资源

  • seetafaceJNI

    项目介绍 基于中科院seetaface2进行封装的JAVA...

  • spark-corenlp

    This package wraps Stanford CoreNLP annotators ...

  • Keras-ResNeXt

    Keras ResNeXt Implementation of ResNeXt models...

  • capsnet-with-caps...

    CapsNet with capsule-wise convolution Project ...

  • inferno-boilerplate

    This is a very basic boilerplate example for pe...