NLPS tat T est: A Toolkit for Comparing NLP System Performance (2020)

Abstract: Statistical significance testing centered on p-values is commonly used to compare NLP system performance, but p-values alone are insufficient because statistical significance differs from practical significance. The latter can be measured by estimating effect size. In this pa-per, we propose a three-stage procedure for comparing NLP system performance and provide a toolkit, NLPStatTest, that automates the process. Users can upload NLP system evaluation scores and the toolkit will analyze these scores, run appropriate significance tests, estimate effect size, and conduct power analysis to estimate Type II error. The toolkit provides a convenient and systematic way to compare NLP system performance that goes beyond statistical significance testing.

## introduction in the field of natural language processing (nlp), the common practice is to use statistical significance testing foot_0 to demonstrate that the improvement exhibited by a proposed system over the baseline reflects meaningful differences, not happenstance @xcite . the american statistical association emphasizes that ''a p-value, or statistical significance, does not measure the size of an effect or the importance of a result" @xcite . in other words, statistical significance is different from practical significance. the latter is rarely discussed in the nlp field. to address this issue, we propose a three-stage procedure for comparing nlp system performance, shown in figure 1 . the first stage is building an nlp system and using prospective power analysis to compute an appropriate sample size for test corpus. the second stage is hypothesis testing. we stress the need for data analysis to verify assumptions made by significance tests and the importance of estimating the effect size and conducting power analysis. the last stage is to report various results produced by the second stage. to automate the process, we provide a toolkit, nlpstattest. we introduce the three-stage comparison procedure ( §2), and then describe the the main components ( §3) and implementation details ( §4) of nlpstattest. we also present experimental results for running the system on both real-world and simulated data ( §5). lastly, we compare nlpstattest with existing statistical testing toolkits ( §6). ## comparing nlp system performance in this section we briefly describe the three-stage comparison procedure and define terms that are relevant to nlpstattest. more detail about stage 2 can be found in §3- §4. ## system design nlpstattest is a toolkit that automates the comparison procedure. it has four main steps, shown in the large box in figure 1 . to use nlpstattest, users provide a data file with the nlp system performance scores produced in stage 1. nlpstattest will prompt users to either modify or use the default values for the parameters in the pink flags and then produce the output in the blue hexagons. the users can then report (some of) the output in stage 3 of the comparison procedure. ## implementation details the nlpstattest graphical user interface can be run locally or on the web. there is also a command line version. the graphical tool, the command line tool, the source code, a user manual, a tutorial video are available at nlpstats.ling. washington.edu. we recommend using an updated chromium-based browser. the client-side web interface is written in html, css, and javascript (with jquery). the server-side code is written in python, using the flask web framework. yaml is used for configuration files. katex is used to render mathematical symbols. the python code uses the scipy and numpy libraries to implement statistical tests and matplotlib to generate the histograms and graphs. ## experiment to test the output validity and speed of nlpstattest, we run experiments using both real and simulated data. ## conclusion while statistical significance testing has been commonly used to compare nlp system performance, a small p-value alone is not sufficient because statistical significance is different from practical significance. to measure practical significance, we recommend estimating and reporting of effect size. it is also necessary to conduct power analysis to ensure that the test corpus is large enough to achieve a desirable power level. we propose a three-stage procedure for comparing nlp system performance, and provide a toolkit, nlpstattest, to automate the testing stage of the procedure. for future work, we will extend this work to hypothesis testing with multiple datasets or multiple metrics.