A set of utilities for generating quality scores for MediaWiki revisions
Project description
Revision Scoring
A generic, machine learning-based revision scoring system designed to be used to automatically differentiate damage from productive contributory behavior on Wikipedia.
Example
Using a scorer_model to score a revision:
>>> import mwapi >>> from revscoring import ScorerModel >>> from revscoring.extractors import APIExtractor >>> >>> with open("models/enwiki.damaging.linear_svc.model") as f: ... scorer_model = ScorerModel.load(f) ... >>> extractor = APIExtractor(mwapi.Session(host="https://en.wikipedia.org", ... user_agent="revscoring demo")) >>> >>> feature_values = extractor.extract(123456789, scorer_model.features) >>> >>> print(scorer_model.score(feature_values)) {'prediction': True, 'probability': {False: 0.4694409344514984, True: 0.5305590655485017}}
Installation
The easiest way to install revscoring is via the Python package installer (pip).
pip install revscoring
You may find that some of revscorings dependencies fail to compile (namely scipy, numpy and sklearn). In that case, you’ll need to install some dependencies in your operating system.
- Ubuntu & Debian:
Run sudo apt-get install python3-dev g++ gfortran liblapack-dev libopenblas-dev
- Windows:
‘TODO’
- MacOS:
‘TODO’
Finally, in order to make use of language features, you’ll need to download some NLTK data. The following command will get the necessary corpus.
python -m nltk.downloader stopwords
You’ll also need to install enchant compatible dictionaries of the languages you’d like to use. We recommend the following:
languages.arabic: aspell-ar
languages.dutch: myspell-nl
languages.english: myspell-en-us myspell-en-gb myspell-en-au
languages.estonian: myspell-et
languages.french: myspell-fr
languages.german: myspell-de-at myspell-de-ch myspell-de-de
languages.indonesian: aspell-id
languages.italian: myspell-it
languages.hebrew: myspell-he
languages.persian: myspell-fa
languages.polish: aspell-pl
languages.portuguese: myspell-pt
languages.spanish: myspell-es
languages.russian: myspell-ru
languages.ukrainian: myspell-uk
languages.vietnamese: hunspell-vi
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
File details
Details for the file revscoring-1.2.1.tar.gz
.
File metadata
- Download URL: revscoring-1.2.1.tar.gz
- Upload date:
- Size: 145.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d5d483b7297b525092eb373a6865a1528445ccef76a2d1f1e2cab4e700dd5a13 |
|
MD5 | 6bfc818e819768f7115f07e5798b225c |
|
BLAKE2b-256 | 6b034294677a0424dc053ca36cea20aa0cb6cc446ab87d22781e4cbc94814324 |
File details
Details for the file revscoring-1.2.1-py2.py3-none-any.whl
.
File metadata
- Download URL: revscoring-1.2.1-py2.py3-none-any.whl
- Upload date:
- Size: 328.4 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f9676ad1ae0f1a7ce46c4fd18fb65f38d5eb0e241c5c9c3aaf4765f877dc10cc |
|
MD5 | 53624d4f7f496c97cfabf5629cf53105 |
|
BLAKE2b-256 | ee8a81683335834779e0744580ecf397f2c8d140aab649fe970277043c9799ec |