Tokenizer
class atom.nlp.Tokenizer(bigram_freq=None, trigram_freq=None, quadgram_freq=None, verbose=0, logger=None)[source]
Tokenize the corpus.
Convert documents into sequences of words. Additionally,
create n-grams (represented by words united with underscores,
e.g. "New_York") based on their frequency in the corpus. The
transformations are applied on the column named corpus
. If
there is no column with that name, an exception is raised.
This class can be accessed from atom through the tokenize method. Read more in the user guide.
See Also
Applies standard text cleaning to the corpus.
Normalize the corpus.
Vectorize text data.
Example
>>> from atom import ATOMClassifier
>>> X = [
... ["I àm in ne'w york"],
... ["New york is nice"],
... ["new york"],
... ["hi there this is a test!"],
... ["another line..."],
... ["new york is larger than washington"],
... ["running the test"],
... ["this is a test"],
... ]
>>> y = [1, 0, 0, 1, 1, 1, 0, 0]
>>> atom = ATOMClassifier(X, y)
>>> print(atom.dataset)
corpus target
0 new york 0
1 new york is larger than washington 1
2 New york is nice 0
3 I àm in ne'w york 1
4 this is a test 0
5 another line... 1
6 running the test 0
7 hi there this is a test! 1
>>> atom.tokenize(verbose=2)
Fitting Tokenizer...
Tokenizing the corpus...
>>> print(atom.dataset)
corpus target
0 [new, york] 0
1 [new, york, is, larger, than, washington] 1
2 [New, york, is, nice] 0
3 [I, àm, in, ne, ', w, york] 1
4 [this, is, a, test] 0
5 [another, line, ...] 1
6 [running, the, test] 0
7 [hi, there, this, is, a, test, !] 1
>>> from atom.nlp import Tokenizer
>>> X = [
... ["I àm in ne'w york"],
... ["New york is nice"],
... ["new york"],
... ["hi there this is a test!"],
... ["another line..."],
... ["new york is larger than washington"],
... ["running the test"],
... ["this is a test"],
... ]
>>> y = [1, 0, 0, 1, 1, 1, 0, 0]
>>> tokenizer = Tokenizer(bigram_freq=2, verbose=2)
>>> X = tokenizer.transform(X)
Fitting Tokenizer...
Tokenizing the corpus...
--> Creating 5 bigrams on 10 locations.
>>> print(X)
corpus
0 [I, àm, in, ne, ', w, york]
1 [New, york_is, nice]
2 [new_york]
3 [hi, there, this_is, a_test, !]
4 [another, line, ...]
5 [new, york_is, larger, than, washington]
6 [running, the, test]
7 [this_is, a_test]
Methods
fit | Does nothing. |
fit_transform | Fit to data, then transform it. |
get_params | Get parameters for this estimator. |
inverse_transform | Does nothing. |
log | Print message and save to log file. |
save | Save the instance to a pickle file. |
set_params | Set the parameters of this estimator. |
transform | Tokenize the text. |
method fit(X=None, y=None, **fit_params)[source]
Does nothing.
Implemented for continuity of the API.
method fit_transform(X=None, y=None, **fit_params)[source]
Fit to data, then transform it.
method get_params(deep=True)[source]
Get parameters for this estimator.
Parameters | deep : bool, default=True
If True, will return the parameters for this estimator and
contained subobjects that are estimators.
|
Returns | params : dict
Parameter names mapped to their values.
|
method inverse_transform(X=None, y=None)[source]
Does nothing.
method log(msg, level=0, severity="info")[source]
Print message and save to log file.
method save(filename="auto", save_data=True)[source]
Save the instance to a pickle file.
Parameters | filename: str, default="auto"
Name of the file. Use "auto" for automatic naming.
save_data: bool, default=True
Whether to save the dataset with the instance. This parameter
is ignored if the method is not called from atom. If False,
add the data to the load method.
|
method set_params(**params)[source]
Set the parameters of this estimator.
Parameters | **params : dict
Estimator parameters.
|
Returns | self : estimator instance
Estimator instance.
|
method transform(X, y=None)[source]
Tokenize the text.