pub struct SequenceClassificationModel { /* private fields */ }Expand description
Implementations§
source§impl SequenceClassificationModel
impl SequenceClassificationModel
sourcepub fn new(
config: SequenceClassificationConfig
) -> Result<SequenceClassificationModel, RustBertError>
pub fn new(
config: SequenceClassificationConfig
) -> Result<SequenceClassificationModel, RustBertError>
Build a new SequenceClassificationModel
Arguments
config-SequenceClassificationConfigobject containing the resource references (model, vocabulary, configuration) and device placement (CPU/GPU)
Example
use rust_bert::pipelines::sequence_classification::SequenceClassificationModel;
let model = SequenceClassificationModel::new(Default::default())?;sourcepub fn predict<'a, S>(&self, input: S) -> Vec<Label> ⓘwhere
S: AsRef<[&'a str]>,
pub fn predict<'a, S>(&self, input: S) -> Vec<Label> ⓘwhere
S: AsRef<[&'a str]>,
Classify texts
Arguments
input-&[&str]Array of texts to classify.
Returns
Vec<Label>containing labels for input texts
Example
let sequence_classification_model = SequenceClassificationModel::new(Default::default())?;
let input = [
"Probably my all-time favorite movie, a story of selflessness, sacrifice and dedication to a noble cause, but it's not preachy or boring.",
"This film tried to be too many things all at once: stinging political satire, Hollywood blockbuster, sappy romantic comedy, family values promo...",
"If you like original gut wrenching laughter you will like this movie. If you are young or old then you will love this movie, hell even my mom liked it.",
];
let output = sequence_classification_model.predict(&input);sourcepub fn predict_multilabel(
&self,
input: &[&str],
threshold: f64
) -> Result<Vec<Vec<Label>>, RustBertError>
pub fn predict_multilabel(
&self,
input: &[&str],
threshold: f64
) -> Result<Vec<Vec<Label>>, RustBertError>
Multi-label classification of texts
Arguments
input-&[&str]Array of texts to classify.threshold-f64threshold above which a label will be considered true by the classifier
Returns
Vec<Vec<Label>>containing a vector of true labels for each input text
Example
let sequence_classification_model = SequenceClassificationModel::new(Default::default())?;
let input = [
"Probably my all-time favorite movie, a story of selflessness, sacrifice and dedication to a noble cause, but it's not preachy or boring.",
"This film tried to be too many things all at once: stinging political satire, Hollywood blockbuster, sappy romantic comedy, family values promo...",
"If you like original gut wrenching laughter you will like this movie. If you are young or old then you will love this movie, hell even my mom liked it.",
];
let output = sequence_classification_model.predict_multilabel(&input, 0.5);