Simple CLI labeling tool for text classification
Project description
theme
Simple CLI labeling tool for text classification
It allows to rapidly acquire manually labeled texts without the need to setup any large-scale labeling solution.
With the least requirements possible one can get an initial dataset to train text classification model.
Installation
pip install theme-label
Usage
To use theme
you will need:
- .csv table with at least two columns: the one with texts and their id's
- The following script
from theme import Theme
# This is the dict that maps
# what user enters to what goes
# to the table
id2label = {
'0': 'ham',
'1': 'spam'
}
# Here markup session is initialized
# data is loaded and everything prepared
t = Theme(
id2label=id2label,
text_col='text', # Name of the column with texts
show_cols=['title'], # Additional fields to show during labeling
unmarked_table='data.csv', # Our input table
marked_table='markup.csv', # Output table will have same columns with additional one for label
label_col='label', # The name of additional column
id_col='id', # The name of id column
)
# Here labeling session is run
t.run()
Labeling process
The info on number of already marked, unmarked and skipped presented to the user first. Then the available options are printed - which input stands for which class.
Finally there are some additional user-defined fields and the text to label. The user is prompted to choose the label.
If entered label is space, then the text is marked as skipped and will not appear in this session.
If entered label is b, then previous marked text is prompted instead of current one.
If entered label is empty the user is provided with another portion of the same text.
If the label is not in the id2label
the user is prompted to enter the label again.
Commands can be reassigned using parameters, see docstring.
Advanced usage
See theme/theme.py
for documentation.
Project details
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
Hashes for theme_label-0.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 33fab1a7d229befe2ee3ee1d566a9b96783bbb841ec06ad23255dbbc57246180 |
|
MD5 | dca2d4da604cfa1622c5ce1dadba16ae |
|
BLAKE2b-256 | b1e7ba56e81cb17381b3f4321590a2bef3ab3393406b7bb435ea612b79c7ceaa |