Massive Open Online Collaboration Testing
Based on the MOOCTEST platform, a multilingual online integrated development environment provides an online development and test learning environment for all users who have access to the system platform. Users can create the workspace of the project through WebIDE for online development, operation, submission and other operations. Users can use it anytime, anywhere, conveniently and quickly when they need, which greatly reduces the learning cost.
FEAT allow the users to access their automated testing techniques by implement some interface. So far, we access three automated techniques which have good compatibility: Monkey, AppCrawler and Appium.You can use FEAT to instrument and compile the Android source code, then use the techniques have been accessed to test them to get a test result, for evaluating the ability of these techniques.
BugHunter is a platform to solve the problem of low-quality and duplicate bug reports of crowdsourced testing. With the help of BugHunter, the crowdsourced workers can efficiently capture screenshot, write short description and create bug report. A series of bug reports are aggregated online and then recommended to the other workers in real time. The crowdsourced workers can (1) help review, verify and enrich each others bug reports; (2) escape duplicate bug reports; (3) be guided to conduct more professional testing with the help of collective intelligence. BugHunter can improve the quality of the final report and reduce the test costs.
CTRAS is a tool for automatically aggregating and summarizing duplicate crowdsourced test reports on the fly. CTRAS is capable of automatically detecting duplicates based on both textual information and the screenshots, and further aggregates and summarizes the duplicate test reports. CTRAS provides the end users a comprehensive and comprehensible understanding of all duplicates by identifying the main topics across the group of aggregated test reports and highlighting supplementary topics that are mentioned in subgroups of test reports. Also, it provides the classic tool of issue tracking systems, such as the project-report dashboard and keyword searching, and automates their classic functionalities, such as bug triaging and best fixer recommendation, to assist end users in managing and diagnosing test reports.
FuRong builds a bug model with complete context information, such as screen-shoots, execution events and logs from multi-devices, which are significant for developers, and then inducts a classification rule for bugs, which is the foundation for bug classification and deduplication. FuRong classifies bugs and removes some redundant bug information. FuRong also recommends a possible fixing solution for each type of bug. An empirical study of 8 open source Android applications with automated testing on 20 devices has been conducted. The preliminary results show the effectiveness of FuRong with the average accuracy of 93%.
Crowdsourced testing has become a new trend in testing Android applications. However, the crowds work separately without collaborations and guidance in existing platforms. In this paper, we leverage dynamic automated techniques and static analysis to promote crowdsourced testing. MoYe firstly constructs the window transition graph (WTG) with dynamic automated testing techniques, which provides the annotation of suspicious bugs. Then MoYe enhances WTG by extracting window transitions from APK files with static analysis techniques. Then, MoYe builds a recommendation engine based on the enhanced WTG model and user operations intercepted in real time to allocate different test tasks for different crowd workers. Further, MoYe provides real-time guidance for crowd workers to complete test tasks to verify suspicious bugs or explore new bugs. The preliminary experiments show that MoYe can improve the efficiency of crowdsourced testing. The demo video can be found at Youtube.
MAF, a plagiarism detection technology for test code, which relies on a constant similarity threshold to determine whether there is plagiarism between two pieces of test code. However, finding an appropriate threshold is never easy. We realize that a constant threshold cannot be used in every circumstance. To address this issue and make MAF more usable, we developed MAF-2 by applying a stable and reliable classifier based on Support Vector Machine classification algorithm. Experiments were conducted on three test code data sets, and the results show that MAF-2 can achieve plagiarism detection effectively. The video presentation of MAF-2 is available at Youtube and the source code can be downloaded at Github.
The fullname called "The Design and Implementation of Crowdsourced Feedback Review and Delivery System Based on Test Report Summary". Jie Mei has designed and implemented a crowdsourced review and delivery system based on the test report summary. The system has introduced a novel mechanism, which is based on reporting summarization to solve the problems of the crowdsourced feedback review.
The online crash analysis system fully adapts to the mainstream categories of Android applications in the market. Extensive experiments have been performed for 10 different open-source applications 20 Android devices. Experimental results demonstrate that, the system implemented in this thesis not only can automatically capture Android application crashes, but also can effectively classify, deduplicate and visualize crash information. The classification accuracy rate achieves 88.1%, and deduplication rate achieves 60.7%.
GUI TSRS designs and implements an Android application GUI test script repair system, which improves reusability by repairing GUI test scripts that have failed due to version updates. The system divides the repair process into four parts. Firstly, the GUI components of Android applications are extracted by using the automated traversal tool and the event flow graph model is established.
QCS improves the quality of bug reports and the quality awareness of crowd workers, enables managers to identify the quality of bug reports and malicious crowd workers quickly, and makes it easy to review massive bug reports for managers. Also, it promotes quality control study in collaborative crowdsourcing mode.
AGS designs and implements an automatic generation system for bug report of mobile applications to solve the problems of low readability of logs and low efficiency of bug location in automated testing. By mining multiple logs generated by automated testing, this system builds a bug model containing complete context information, including operation sequence, stack information, bug screenshots, etc.
The system introduces the Isolation Forest algorithm to implement data annotation preprocessing, thereby reducing the workload of data labeling for operation and maintenance personnel. Furthermore, the accuracy of anomaly detection and trend prediction is improved by iteratively updating data labels and resetting models. The system is mainly divided into four modules. The monitoring module is responsible for the collection and storage of monitoring data.
BLS selects a total 1243 bug reports created before October 16,2018 about the open source project Zookeeper to verify the bug location accuracy of this system initially. The hit rate of Top1 in the bug localization result is 52.55%, the hit rate of Top 5 is 78.94%, and the hit rate of Top 10 is 87.45%. In addition, we simulated 500 users concurrently accessing 7 common interfaces in the system performance test. The results show that the average response time of the seven interfaces is 247ms, the highest is 447ms. All responses take less than 500ms and the error rate is 0.
CTSR&RS selects 10 mainstream mobile devices and 5 mobile applications to analyze and verify the system availability. The experiment proves that the record process of this system has better support for different devices under the Android platform, and the script cross-device replay success rate is over 80%. The cross-platform replay mode has a success rate of about 60%. The system has been deployed for internal mobile application testing. Through a single record of test scripts and cross-platform replay of scripts, it effectively reduces the number of test script maintenance and the cost of automated testing.
The platform solves the problem of insufficient human and device resources through online real machine control and bug crowdsourced verification. Crowd workers can remotely record and replay test scripts in the device, and they can modify and perfect test scripts. Bug crowdsourced verification allows task requesters to verify bugs through crowdsource and improve verification efficiency based on the results of verification submitted by crowd workers and the statistical distribution of results.
CQCS mainly expounds the design and implementation of the code quality control system for development team based on Git. The main functions of the system are responsible by three modules together, including the code quality control module that extracts the quality characteristics of the code, the Git control module that manage and excavates the evolution history of the project, and the team’s code quality evaluation module that integrates the data to give the evaluation results. In order to ensure the well scalability of the system, the module transmits information through metadata, and invokes the initiator module to fit the metadata from the invoked module through the data converter.
This system is realized by mainstream frameworks, with Angular2 as the frontend framework, Spring Boot as the back-end framework, Redis as the query cache, and MongoDB as the database. Similar report recommendation is implemented by Word2Vec and WMD algorithm. The audit task recommendation is implemented using a model-based collaborative filtering approach. The test page recommendation is implemented using the multi-source shortest path method based on users’histories.
Intelligent Code Recommendation System Based on Structure Embedding Analysis
This tool relies on the Mooctest WebIDE system to update and optimize, and implements an intelligent code recommendation system based on structure embedding analysis. When users perform programming exercises or exams, they access the system through a browser and use an intelligent editor for online programming. The tool will monitor the user's programming behavior and grab code information for analysis and recommend code fragments to users based on the analysis results. Code recommendation relies on a large amount of source code data, so it is necessary to build a corpus based on a large amount of source code and preprocessing. The candidate code fragments with high similarity are trained by word embedding. Sentence embedding is performed to obtain a vector representation. At present, the tool has replaced the original Mooctest WebIDE system for online use. Experiment shows that the system improves the programming experience of 82.72% users on average.
Test Recommendation System Based on Slicing Coverage Filtering
This tool relies on Mooctest WebIDE to design and implement a Test Code Snippets Recommendation System based on Slicing Coverage Filtering. This tool uses Wala as a program slicing tool. AST program analysis technology is used to merge the code snippets with the project template. The OpenClover tool is used to analyze the test coverage of the code snippets and store it in the corpus. During the user's test learning, the system will analyze the user's test coverage information in real time, and use the test coverage vector to calculate the Jaccard vector similarity filter to obtain the relevant code snippets in the recommended corpus. The tool has constructed a recommended corpus containing 11 original questions and more than 2,200 test code snippets.
This tool relies on Mooctest WebIDE to design and implement an online test development system based on homologous code matching. The LSP protocol is used to add multi-language intelligent code prompts. At the same time, a test automation generation scheme is proposed. WebTester collects historical data of open source websites and examination platforms to build a corpus of test codes. The structure and text information of the code under test is extracted; WebTester combines string matching, spelling correction, near-sense search, program similarity analysis and other means to measure homology. The test cases of the homologous method in the corpus are searched and modified, and concise and usable test code for the method to be tested is generated. For projects not covered, the system integrates the optimized Evosuite tool to provide users with basic test cases for the target method. Statistics shows that WebTester reduces the average processing time of a single project from 65s to 20s, and the throughput is greatly improved.
Middle-end System for Android Application Automation Test
Combined with the high efficiency of automated testing and the idea of universality and flexibility of testing Middle-end system, we proposes and implements an Appium-based Middle-end system for Android application automation test. This tool first analyzes the APK file that need to be tested, and then selects the currently idle Android deivces and performs an automated traversal test through the Appium framework and ADB tools. At the same time, the tool supports dynamic execution of custom Java scripts through Groovy to increase system scalability. By specifying different report generation services, the tool can analyze the intermediate data from the perspective of performance, functionality, stability, robustness, and compatibility to generate multi-dimensional test reports. Also, the tool supports custom test report analysis tools and the tools can be hot plugged. 0At present, the system has landed on the Mooctest cloud platform, providing APK grading services for the education version, and stable and reliable automated testing services for the enterprise version.
BREGAT is used to generate structured bugs for multi-device automated testing results, classify and deduplicate bugs via the defined taxonomy. We first defined the GUI inconsistency and device inconsistency based on multi-device automated testing results, and proposed a structured bug model that can be used for inconsistency analysis. Through the manual review of the real automated testing results of 50 applications on 20 devices, analyzing the relationship between bugs and inconsistencies, confirming the root cause of bugs, and extracting common log patterns of similar bugs, we constructed an extensible bug taxonomy with inconsistency labels, which contains a total of 67 bug categories. Finally, heterogeneous data in the testing results such as screenshots, test operations, and device logs are combined to generate reproducible and easy-to-understand bug reports. BREGAT removes 97% of duplicate bugs, and the deduplication precision reaches 100%, which is more efficient than existing tools.
ColinTest is an iterative Android application automated testing system, which automatically records, extracts, and fuses the user operation flows of the test users, and enters them into the testing tool. Through iterations in testing process, user operation information is introduced into the tool, and the output of the tool is passed back to the user to generate the next round of user operation information. By modifying the Appium framework, ColinTest automatically obtains the user operation flows in the background. The experimental results show that the test results of the system have been significantly improved compared to the case without the introduction of user information. When the test time is set to one hour, the average code coverage rate reaches 37.83%, which exceeds Monkey under the same conditions, which average code coverage is 28.90%. In addition, the test results after the introduction of the information completely included the coverage of the user or the tool when it was tested alone, and no coverage omissions were generated, which undoubtedly proved the usability of the system.
This tool implements a crowdsourced test requirement generation system driven by Android automatic testing. The tool processes the automatic test data of the target application and extracts the exceptions triggered during the test. Based on test operation sequences and screen shots, workers are guided to find exceptions in different environments by reproduction steps. Using decompilation and static analysis techniques, the types of components involved in the conditional branch statements in the source code and the windows not covered in the automatic test are extracted to guide crowdsourced workers to explore new exceptions. 10 Android open source applications were selected and controlled experiments were carried out on 15 popular mobile devices. The experimental results showed that by guiding the crowdsourced workers with our generated requirements, 30% more exceptions could be triggered and 15% more coverage rate was achieved than the control group. In summary, this tool provides a service for generating crowdsourced requirements and accepting crowdsourced test results.
According to the characteristics of Web application testing, test report service implements the Web application automation test process based on the monitoring of test execution, including the generation of test results and the display of test reports, software quality assessment reports. For the characteristics of widely use and high complexity of Web applications, we selects 50 representative websites from nine different industries to experiment on and evaluate test report service. The experiment shows that the service can provide distinct and easy-to-use test reports. The success rate of the test script generated by the test report service reaches 99.8%, the recurrence rate of existing vulnerabilities reached 89.4%, and the accuracy rate of vulnerabilities classification reached 97.5%. The experiment also finds that using scripts to reproduce vulnerabilities is nearly three times more efficient than manually reproducing vulnerabilities. Currently, the service has been integrated on the Mooctest platform and is running well, providing testers with good Web application automation test report services.
This tool is used to solve the needs of automated testing of complex dynamic Web pages. Testing vulnerabilities reports and software quality assessment can be generated. The service applies the idea of Web page state detection based on finite state machine to test execution, searches the web page state space, and generates executable test paths. The service is based on microservice technology and distributed technology. We selected common types of websites and conducted preliminary verification of this automated testing service. Each application can detect an average of 89 web application states, and on average can find out 83 vulnerabilities on each application. The execution success rate of the test scripts generated by the state diagram constructed by the test execution service is 99.8%. The vulnerabilities recurrence rate after script execution is 89.4%, and the vulnerabilities classification accuracy rate is 97.5%. At the same time, the testing service can improve the testing efficiency by 2.12 times compared to manual.
This system aims to solve the problem of how to systematically evaluate the effectiveness of students' test. According to the talent training objectives of colleges and universities and the requirements of enterprises, we constructs a multi-dimensional evaluation system to evaluate students' testing effect from various aspects on the basis of 7 evaluation indicators in combination with test products and test behaviors, aiming at three test types of developer unit test, Web application automation test and mobile application automation test. The tool we roposed aims to more comprehensively evaluate the test effects of students. Its evaluation indicators has been widely used in the software testing contest hosted by the teaching platform, and the evaluation result has been unanimously recognized by the expert group of the contest. The system has been used in the software test teaching platform, through a variety of evaluation of students' test effect, in order to help students find shortcomings, so as to promote their progress.
We deeply analyzes the test code designed under the unit test framework and production code, explores the potential differences between them, designs and implements a test code plagiarism detection system based on program slicing. In order to achieve high-quality test code plagiarism detection, this system innovatively proposes a static two-way program slicing technology, extracting effective test fragments from non-standard test code based on the method under test, further calculates the similarity between test fragments, and carrys out plagiarism analysis based on similarity. After a series of strict system tests, the system has achieved functional and non-functional requirements, which measures up to the anticipative assumptions. Through the analysis and verification on a large number of real datasets, the experiment shows that the system can effectively detect the plagiarism of test code, and the system has good robustness through performance analysis.
Expressive Ability Evaluation System Based on Distributed Task Queue
This tool is an expressive ability evaluation system based on distributed task queue. It can provide evaluation services for ordinary users and provide related system management functions for administrator users. The answers should be made by speech in Mandarin. The system will record, store, and score users' speeches. The system is divided into four modules: evaluation module, permission management module, questions management module, and asynchronous tasks module. The expressive ability evaluation system meets the expected performance requirements, and provides a good support for the quick expressive ability test method. The system can reduce the capital, site, and labor costs in the expressive ability test, improve the test efficiency and test result's objectivity. It also brings a more convenient test experience to users. It can be used to provide reference for recruitment and to provide a evaluation or exercise platform for people who want to improve their expressive abilities.
Problem Construction and Analysis System for Expression Ability Evaluation
This tool focuses on the entire process of the core element of the "problem kit" in the evaluation, from generation and initialization to use and analysis and optimization. First, the system needs to regularly crawl network resources and initialize it as a backup question. Second, the system will use audio analysis and text analysis methods to analyze the user's expression level and provide brief comments. Third, the system needs to use the answer data submitted by the user and use statistical learning method to optimize the parameters of the problem kit and improve the stability of the model. In addition, the system will also provide the necessary support so that professionals can intervene in the problem life cycle, generate new problems from the alternate corpus, or modify the problem parameters artificially. The experimental results show that the number of samples within 5 points between the system's scoring results and the expert's score exceeds 75%, indicating that the system can quantify the evaluator's expressive ability to some extent.
In order to reduce the false positive ratio of current vulnerability scanners and save maintenance costs for developers, we design a human-machine collaborative Java bytecode vulnerability scanning system. It analyzes static vulnerability scanners and common false positive vulnerabilities. This tool implements bytecode context extraction, code feature extraction, and related machine learning classification models. It also integrates crowdsourcing auditing and combines the vulnerability scanning requirements in actual scenarios to implement the system. The human-machine collaborative Java bytecode vulnerability scanning system can provide better vulnerability scanning service. Experiments on the OWASP dataset show that the system can reduce the false positive ratio by 22%, when the recall is 95.39%. The result of experiments, which are based on randomly selected open source projects on the GitHub, shows that the system can effectively reduce the false positive ratio of traditional static vulnerability scanners while ensuring a low false negative ratio.
C++ source code vulnerability static scanning is digging the potential vulnerability of C++ source code using taint analysis and data flow analysis without running the program. In order to improve the developer vulnerability review process and reduce the difficulty of vulnerability review, the C++ source code vulnerability static scanning system urgently needs to reduce the false positive ratio of false negatives to assist developers in delivering more robust code. This system innovatively introduces an iterative false alarm filtering mechanism based on machine learning to reduce false positive ratio in vulnerability scanning. The F1 value of the system is increased by 30% and 22% compared with TscanCode and Cppcheck, and it can effectively reduces false positive in the C++ source code vulnerability static scanning. This system improves the availability of static scanners for C++ source code vulnerabilities, reduces the number of false positive vulnerabilities, reduces the burden on developers to review vulnerabilities, and provides guarantees for delivering highly reliable code.
This system aims to apply academic research to the real world. For one of the most common languages in Web development, Java, this system utilizes taint analysis, program slicing, and BLSTM to provide more accurate code analysis services for development or security engineers. In terms of taint analysis, the system uses a large number of rules in Find Security Bugs to ensure low false negatives. In addition, it can give taint propagation paths to make the report more readable. In order to ensure slicing efficiency and stability, this system optimizes the slicer for the actual Jar package and proposes an idea called segmented slicing. The experimental results show that the system can obtain more accurate scanning results within an acceptable scanning time. In terms of efficiency, the system optimizes traditional slicing to ensure that the scan time of each project does not exceed 1 hour. For accuracy, the system's precision rate reaches 90.53%. In other words, compared to Find Security Bugs, the system has eliminated 25.44% false positives, which greatly reduced the code audit work.
Crowdsourced Feedback Review Tasks Distribution System Based on User Features
Based on the crowdsourced review platform, a crowdsourced review task allocation system based on user characteristics is proposed. This system fully considers the user's reputation characteristics, ability characteristics and behavior characteristics, and designs two modes of static task allocation and dynamic task allocation. For static review tasks, the static task assignment mode is invoked, and each user is assigned the same number of test reports to be reviewed according to the needs of crowdsourcing review tasks. For dynamic review tasks, the system will call the dynamic task assignment mode, use the collaborative filtering algorithm to generate a user task recommendation list, and generate a task heat list based on task assignment and complete details. After the comprehensive calculation, the user will be assigned a test report. The average review coverage rate reaches 100\%, the accuracy rate of the static task review result reaches 87.8\%, and the accuracy rate of the dynamic task review result reaches 95.12\%. Therefore, the system has a high efficiency.
Unified Task Allocation System for Crowdsourced Testing
This system focuses on selecting the desired tasks for crowdsourced workers and completing the design and implementation of a unified task allocation system for crowdsourced testing. Relying on a domestic well-known collaborative testing platform M, this system creatively proposes a multi-objective dynamic task allocation mechanism based on priority to improve the testing efficiency. Specifically, the system analyzes the fitness between tasks and workers from four aspects: test ability, experience, willingness and credibility, and uses uses breadth-first test traversal and timer to achieve reasonable task allocation.At the same time, the task pricing mechanism based on user choice will greatly stimulate the enthusiasm of crowdsourced workers to complete the their tasks with high quality on the premise of fully ensuring workers' free choice. Therefore, according to these requirements, the system can be divided into four functional modules: test task adaptation, dynamic task allocation, test task pricing and records of the implementation status of crowdsourced workers.
Crowdtest Data Provenance System Based on Consortium Blockchain
In order to achieve reliable traceability of public test data, a Consortium blockchain composed of crowdtesting demanders, crowd workers, and crowdtest platform parties is established, and a crowdtest data provenance system based on consortium blockchain is designed and implemented. This system collects crowdtest data in real time and attaches source information as provenance data for consortium blockchain storage. The stored process is verified by each participant as a transaction in the consortium blockchain network and is automatically completed by the smart contract. Traceability data is maintained as a transaction ledger by multiple parties and is difficult to tamper with. The test results show that the system can provide reliable source data for crowdsourcing testing based on consortium blockchain. The consortium blockchain in this system can still maintain good availability under the transaction throughput of 50tps. This system provides crowdtesting data traceability services for crowdsourcing testing, improves trust among participants, and contributes to the development of crowdsouring testing.
Crowdsourcing Testing Assets Confirmation System Based on Blockchain
Relying on the crowdsourced testing platform of MoocTest, we designed and implemented a crowdsourced testing assets confirmation system based on blockchain technology, aiming at solving the problems existing in the current crowdsourced testing. By storing the data involved in the crowdsourced testing process into the blockchain, and applying the technologies of chain data storage, consensus algorithm, intelligent contract and so on, the system realizes the mutual trust of multiple participants in the data level, and makes the data in the flow of the crowdsourced testing process open and transparent. The results show that the system can realize the safe storage, real-time tracing and assets confirmation of the data. The functions of the system includes the data storing, querying, verifying and asset confirming. In terms of system performance, the system throughput can reach 300tps, which can support the business requirements in real scenarios. In terms of system security, there are no security holes in the blockchain smart contract of the system, and the system can guarantee the fault tolerance rate of 1/3.
By analyzing Ethereum's PoW consensus protocol and Gas mechanism, we finally recognized two performance impact factors for private Ethereum blockchain: Difficulty, Gas Limit. We introduce fault injection technology. By analyzing the common faults of distributed systems along with blockchain characteristics, we propose four types of faults on private Ethereum blockchain: application, consensus, smart contracts, network. Afterwards, we divide each failure into three levels according to the severity of the fault. Accordingly, we implement a performance testing System for private Ethereum blockchain via fault injection. Through fault injection technology, real-world faults can be simulated in the test environment. We design and perform two sets of experiments, including impact factor verification experiments and fault injection verification experiments. In the impact factor verification experiment, with the change of the factor, the throughput decreased and the latency increased significantly. In the fault injection verification experiment, the performance of Ethereum showed a downward trend during fault injection. The experimental results show that the system can reflect the performance and stability of Ethereum under fault injection through performance indicators.
We design and implement a mutation testing system for Solidity language. Specifically, we studies the language characteristics of solidity from the aspects of keywords, global variables/functions, exception detection and contract vulnerabilities, and propose 16 special mutation operators for Solidity. MuSC can generate a large number of mutants efficiently and accurately at the level of abstract syntax tree, and supports automatic deployment and testing of contracts based on the Truffle framework. In addition, MuSC also provides many other functions such as mutant display, custom test chain creation, test report generation, etc. Experimental results show that the method based on mutation testing is superior to the coverage-based method in defect detection rate (96.01% vs. 55.68%), indicating that mutation testing can better measure the adequacy of ESC testing than code coverage. In addition, we browses and classifies 729 real ESC error reports, and finds that 117 of them are related to the Solidity special mutation operator, indicating that the new mutation operator proposed in this paper can effectively reveal true defects.
Quality Inspection Platform for Civil Judgement Documents
Based on the knowledge of data quality and information quality assessment, this product divides the data into structured and unstructured according to the format. Based on the actual needs of the scene, the design of assessment indicators is completed from subjective and objective dimensions. For structured information, mainly including tag data which can be extracted by keywords. In this paper, data quality is measured by the commonly used measurement method, combined with the measurement dimension mentioned in the objective information theory. It covers seven categories: delicacy, delay, authenticity, integrity, consistency, readability and accuracy. 15 detailed evaluation indexes are designed according to the requirements of civil judgment documents. For the unstructured information of text type in data, we pay more attention to the quality of semantic and pragmatic information contained in it. With the help of supervised machine learning and deep learning technology, we take the large number of data accumulated in the system as positive training samples with high information quality to simulate the artificial information quality evaluation process.
Judicial Text Data Automatic Generation System
We design an automated system for generating judicial text data and implements it, including training and testing data generation module. The training data generation module is used to provide data augmentation services for the judicial deep learning model, increasing the high-quality judicial text training data and improving the prediction accuracy of the model. We design two generation methods based on rule and Variational Auto-encoder. Combining with the characteristics of judicial text, we propose an augmentation method for judicial text in rule-based generation. The generation method based on Variational Auto-encoder applies the Variational Auto-encoder in the field of text generation, learning the low-dimensional features of judicial text, adding noise and reconstructing new text with similar distribution. We conducted extensive experiments to prove that the two training data generation methods provided by the system are effective, and can increase the accuracy of the crime prediction TextCNN model from 81.91 % to 83.31 %.
Model Evaluation System Driven by Judicial Data Quality
After a comprehensive analysis of the background, current situation and system requirements, we design and implement a model evaluation system driven by judicial data quality, which is mainly divided into data interaction, document analysis, quality detection and model evaluation modules. Through this system, users can select or upload machine learning models, select the built-in documents or upload the data set of judgment documents, carry out judicial intelligence classification tasks such as law articles prediction, and calculate the model evaluation index. Among them, KNN, SVM and Naive Bayes are the basic machine learning models built in the system, and the model evaluation indexes used in the system are Accuracy, F1 score, KS value and PSI. For the built-in or uploaded judgment documents, the system will automatically perform field parsing, label classification and feature extraction, and generate quality inspection reports. The quality attributes include interpretability, relevancy, accuracy and consistency.
System for Testing Judicial Case Screening System
The main work of this product is to set up a series of multi-dimensional case screening test criteria and to build a highly functional testing platform for case screening system. This system conducts the test of case screening system in two aspects: the model level and the system level. The relevant machine learning models for the case screening system are evaluated by basic and extensive metrics based on the specific data set. Multi-dimensional similarity metrics test the system-level interfaces of the case screening system. The testing system eventually works well in the form of a web application. The user can access the system through a browser to manage data set and model files, conduct testing tasks automatically to generate corresponding testing results. This testing system could be highly practical for developers and testers in the legal field.