tags:
- text-classification
- fastai
library_name: fastai
datasets:
- blbooksgenre
widget:
- text: >-
Poems on various subjects. Whereto is prefixed a short essay on the
structure of English verse
- text: >-
Two Centuries of Soho: its institutions, firms, and amusements. By the
Clergy of St. Anne's, Soho, J. H. Cardwell ... H. B. Freeman ... G. C.
Wilton ... assisted by other contributors, etc
- text: The Adventures of Oliver Twist. [With plates.]
Model description
This model is intended to predict, from the title of a book, whether it is 'fiction' or 'non-fiction'.
This model was trained on data created from the Digitised printed books (18th-19th Century) book collection. The datasets in this collection are comprised and derived from 49,455 digitised books (65,227 volumes), mainly from the 19th Century. This dataset is dominated by English language books and includes books in several other languages in much smaller numbers.
This model was originally developed for use as part of the Living with Machines project to be able to 'segment' this large dataset of books into different categories based on a 'crude' classification of genre i.e. whether the title was fiction
or non-fiction
.
The model's training data (discussed more below) primarily consists of 19th Century book titles from the British Library Digitised printed books (18th-19th century) collection. These books have been catalogued according to British Library cataloguing practices. The model is likely to perform worse on any book titles from earlier or later periods. While the model is multilingual, it has training data in non-English book titles; these appear much less frequently.
How to use
To use this within fastai, first install version 2 of the fastai library. You can load directly from the Hugging Face hub using the huggingface_hub
library.
from fastai import load_learner
from huggingface_hub import hf_hub_download
learn = load_learner(
hf_hub_download('davanstrien/bl-books-genre-fastai', filename="model.pkl")
)
learn.predict("Oliver Twist")
Limitations and bias
The model was developed based on data from the British Library's Digitised printed books (18th-19th Century) collection. This dataset is not representative of books from the period covered with biases towards certain types (travel) and a likely absence of books that were difficult to digitise.
The formatting of the British Library books corpus titles may differ from other collections, resulting in worse performance on other collections. It is recommended to evaluate the performance of the model before applying it to your own data. Likely, this model won't perform well for contemporary book titles without further fine-tuning.
Training data
The training data was created using the Zooniverse platform. British Library cataloguers carried out the majority of the annotations used as training data. More information on the process of creating the training data will be available soon.
Training procedure
Model training was carried out using the fastai library version 2.5.2.
The notebook using for training the model is available at: https://github.com/Living-with-machines/genre-classification
Eval result
The model was evaluated on a held out test set:
precision recall f1-score support
Fiction 0.91 0.88 0.90 296
Non-fiction 0.94 0.95 0.95 554
accuracy 0.93 850
macro avg 0.93 0.92 0.92 850
weighted avg 0.93 0.93 0.93 850