Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PUBDEV-6938 Test TF-IDF #4668

Closed
wants to merge 29 commits into from
Closed

Conversation

maurever
Copy link
Contributor

@maurever maurever commented Jun 2, 2020

No description provided.

Basic implemenation of term frequency part of MRTask trainer which (for now) relies on getting whole data in one chunk at once.
Add helper MR task to get a unique index for each word from data.
TFIDF trainer class implementation now supports words counts computation for multiple chunks of data.
Implementation of TermFrequency computation (MRTask) and unit test to test its functionality.
Implementation of TF-IDF data preprocessing (MRTask) and unit test to test its functionality.
Add class for computing IDF values and corresponding unit tests.
TermFrequency MRTask now uses Frames with GroupBy operations instead of HashMaps.
Reduce output data of TF-IDF preprocessor to provide only
necessary data.
Refactor TF task to simply delegate its logic to GroupyBy MRTask.
Add class for computing DocumentFrequency values via GroupBy MRTask.
Refactor IDF task to simply delegate its logic to GroupyBy MRTask.
Fix DF task to work correctly when there are multiple same
words in the documents. Adjust unit test to test this behaviour.
Join all partial tasks and create a single AstPrimtive
to compute TF-IDF.
Add bigdata test for TermFrequency task.
Add bigdata test for DocumentFrequency task.
Add bigdatat test for TF-IDF.
Add Python API allowing to compute TF-IDF values via wrapper
function. Add unit test to test this Python API.
Add R API allowing to compute TF-IDF values via wrapper
function. Add unit test to test this R API.
Remove previous model implementations of TF-IDF. Improve unit
tests by adding assert messages and removing code duplications.
Allow already preprocessed input for TF-IDF. Add corresponding unit tests.
Add TF-IDF demo notebook showing how to compute TF-IDF with and without preprocessing.
Fix TF-IDF parts using groupby (TF, DF) to use
single groupby columns array as an input.
Fix key leaks in the code, add input parameters checks,
change some parts according to best pracice and remove old unit tests.
Add parameter allowing to specify whether input data
should be treated as case sensitive. Add unit tests
to test this option. Adjust demo notebook to demonstrate
this option.
Accept column names/indices defining which columns from
given frames to use instead of requiring specific frame format.
Reuse output from TF task in DF task.
Add TF-IDF documentation page explaining basics of TF-IDF
and showing how it should be used.
@maurever maurever changed the title PUBDEV-6938 test tfidf PUBDEV-6938 Test TF-IDF Jun 2, 2020
@maurever maurever force-pushed the maurever_PUBDEV-6938_test_tfidf branch from e9e6cde to 09ece4e Compare June 12, 2020 12:42
Fix Python test for Python 2.7 - frame construction
from OrderedDict instead of regular dictionary.
@maurever maurever self-assigned this Jun 14, 2020
@maurever maurever mentioned this pull request Jun 15, 2020
@maurever maurever force-pushed the maurever_PUBDEV-6938_test_tfidf branch from 4b4d4fd to 445352f Compare June 16, 2020 14:13
@maurever
Copy link
Contributor Author

Tests are green. Close this PR and merge the original one #4380 from @jancijen.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants