Auto metrics for evaluating generated questions
Project description
How to use
Our codes provide the ability to evaluate automatic metrics which concludes the ability to calculate automatic metrics. Please follow these steps to calculate automatic QG metrics and evaluate automatic metrics on our benchmark.
Enviroment
run pip install -r requirements.txt to install the required packages.
Calculate Automatic Metrics
-
Prepare data
Use the data we provided at ../data/scores.xlsx, or use your own data, which should provide passages, answers, and references.
-
Calculate automatic metrics.
-
Download models at
coming soonfor metrics. -
Update model path inside the codes. See
QRelScoreas an example.# update the path of mlm_model and clm_model def corpus_qrel(preds, contexts, device='cuda'): assert len(contexts) == len(preds) mlm_model = 'model/bert-base-cased' clm_model = 'model/gpt2' scorer = QRelScore(mlm_model=mlm_model, clm_model=clm_model, batch_size=16, nthreads=4, device=device) scores = scorer.compute_score_flatten(contexts, preds) return scores
-
Run
python metrics.pyto calculate your assigned metrics results by changingscore_namesinmetrics.py. (data_pathin each file should be changed into your own data path)# Run QRelScore and RQUGE based on our dataset # load data data_path = '../data/scores.xlsx' save_path = './result/metric_result.xlsx' data = pd.read_excel(data_path) hypos = data['prediction'].tolist() refs_list = [data['reference'].tolist()] contexts = data['passage'].tolist() answers = data['answer'].tolist() # scores to use score_names = ['QRelScore', 'RQUGE'] # run metrics res = get_metrics(hypos, refs_list, contexts, answers, score_names=score_names) # handle results for k, v in res.items(): data[k] = v print(data.columns) # save results data.to_excel(save_path, index=False)
-
or run the code file for specific metric to calculate. For example, run
python qrel.pyto calculate QRelScore results.
-
Evaluate Automatic Metrics
Run python coeff.py to obtain the Pearson, Spearman, and Kendall correlation coefficient between the generated results and the labeled results. For detailed process, please refer to readme of QGEval.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file QGEval_metrics-1.1.0.tar.gz.
File metadata
- Download URL: QGEval_metrics-1.1.0.tar.gz
- Upload date:
- Size: 11.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e825d57f8e6c0976eeab83f95035eee3a5c42fa5de459da418ad7f6f43d429bb
|
|
| MD5 |
c22bd827f27109037c43303de754c16b
|
|
| BLAKE2b-256 |
e18dd88a99c29d1a9789c77b4ab3b9a624b481cb1336c38dafe5f5254f8fc587
|
File details
Details for the file QGEval_metrics-1.1.0-py3-none-any.whl.
File metadata
- Download URL: QGEval_metrics-1.1.0-py3-none-any.whl
- Upload date:
- Size: 12.0 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a7efb61348c220758919c9695f40eb7f8d437789715ba38a815105d1e0b06925
|
|
| MD5 |
ba3418e14ad4d8505e4cffa3347bccf8
|
|
| BLAKE2b-256 |
18f70133b7b129cee55e6e3c51c3a1c60d8f8d6865a469da688f7e66fe1ed502
|