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

NLP init #212

Merged
merged 14 commits into from Dec 26, 2020
Merged

NLP init #212

merged 14 commits into from Dec 26, 2020

Conversation

BarabanovaIrina
Copy link
Contributor

@BarabanovaIrina BarabanovaIrina commented Dec 15, 2020

  • New method InputData.from_text(), where you can pass meta_file.csv with text in it or path to directories with text files
  • New TextData class, where all the nlp utils are located. Not expected to use directly.

Current idea is: text files -> feature extraction (make table data, not text) -> pass to model/chain

  • Finish BatchLoader for creation of meta_file.csv for collections of data (images, text)

  • Finish the text files -> meta_file.csv

  • Add tests

  • add packed data && unpacking script

@codecov
Copy link

codecov bot commented Dec 15, 2020

Codecov Report

Merging #212 (71fc1a8) into master (0d91b41) will increase coverage by 0.13%.
The diff coverage is 89.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #212      +/-   ##
==========================================
+ Coverage   85.61%   85.74%   +0.13%     
==========================================
  Files         104      108       +4     
  Lines        6619     6813     +194     
==========================================
+ Hits         5667     5842     +175     
- Misses        952      971      +19     
Impacted Files Coverage Δ
fedot/core/models/model.py 97.02% <ø> (-0.03%) ⬇️
fedot/core/data/data.py 79.35% <27.27%> (-8.62%) ⬇️
fedot/core/models/evaluation/vectorize.py 94.11% <94.11%> (ø)
fedot/core/data/load_data.py 94.54% <94.54%> (ø)
fedot/core/data/preprocessing.py 96.58% <95.74%> (-0.57%) ⬇️
fedot/core/models/evaluation/evaluation.py 84.90% <100.00%> (+0.14%) ⬆️
fedot/core/repository/dataset_types.py 100.00% <100.00%> (ø)
test/chains/test_chain_tuning.py 100.00% <100.00%> (ø)
test/data_operations/test_preprocessing.py 100.00% <100.00%> (ø)
test/models/test_strategy.py 100.00% <100.00%> (ø)
... and 10 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 0d91b41...71fc1a8. Read the comment docs.

fedot/core/models/data.py Outdated Show resolved Hide resolved
cases/spam_detection.py Outdated Show resolved Hide resolved
fedot/core/models/data.py Outdated Show resolved Hide resolved
fedot/core/models/data.py Outdated Show resolved Hide resolved
fedot/core/models/data.py Outdated Show resolved Hide resolved
fedot/core/models/data.py Outdated Show resolved Hide resolved
fedot/core/models/data.py Outdated Show resolved Hide resolved
fedot/core/models/data.py Outdated Show resolved Hide resolved
@BarabanovaIrina BarabanovaIrina linked an issue Dec 15, 2020 that may be closed by this pull request
cases/spam_detection.py Outdated Show resolved Hide resolved
cases/spam_detection.py Outdated Show resolved Hide resolved
cases/spam_detection.py Outdated Show resolved Hide resolved
fedot/core/models/data.py Outdated Show resolved Hide resolved
fedot/core/models/data.py Outdated Show resolved Hide resolved
fedot/core/models/data.py Outdated Show resolved Hide resolved
fedot/core/models/data.py Outdated Show resolved Hide resolved
@nicl-nno
Copy link
Collaborator

image

Так и задумано?)

@BarabanovaIrina
Copy link
Contributor Author

BarabanovaIrina commented Dec 17, 2020

image

Так и задумано?)

Сори, я подумала, что так делать не стоит, но все равно сделала. Может вынесем cases в отдельный репо?) Я просто не придумала, как эти файлы скачивать откуда-то или куда их положить.

@nicl-nno
Copy link
Collaborator

nicl-nno commented Dec 17, 2020

image
Так и задумано?)

Сори, я подумала, что так делать не стоит, но все равно сделала. Может вынесем cases в отдельный репо?) Я просто не придумала, как эти файлы скачивать откуда-то или куда их положить.

Кмк простейший вариант - можно их запаковать в архив (tar, например) и при первом запуске распаковывать (вызывая для этого отдельный скрипт за пределами цепочки).

Вот как тут с MNIST делают https://github.com/jmmanley/conv-autoencoder/blob/master/mnist_test.ipynb

@BarabanovaIrina
Copy link
Contributor Author

image
Так и задумано?)

Сори, я подумала, что так делать не стоит, но все равно сделала. Может вынесем cases в отдельный репо?) Я просто не придумала, как эти файлы скачивать откуда-то или куда их положить.

Кмк простейший вариант - можно их запаковать в архив (tar, например) и при первом запуске распаковывать (вызывая для этого отдельный скрипт за пределами цепочки).

Ок, пока просто уберу их, а то даже ревью не сделать

@BarabanovaIrina
Copy link
Contributor Author

в test теперь есть папка utilities, там тесты для файлов из fedot.utilities (но пока без synthetic)

@BarabanovaIrina
Copy link
Contributor Author

Еще предлагаю убрать тесты на real_cases - потому что они не unit, или замокать, если в них все таки есть необходимость. Если дело в покрытии, то codecov можно настроить только на feodt директорию, а не весь репо.

Сейчас видимо та самая ситуация, когда завис композер (если я правильно поняла) и билд был отменен по истечение 40 минут.

@nicl-nno
Copy link
Collaborator

Еще предлагаю убрать тесты на real_cases - потому что они не unit, или замокать, если в них все таки есть необходимость. Если дело в покрытии, то codecov можно настроить только на feodt директорию, а не весь репо.

Сейчас видимо та самая ситуация, когда завис композер (если я правильно поняла) и билд был отменен по истечение 40 минут.

Обсудили в тг, что пока можно и отключить проблемный тест, но в перспективе хорошо бы вынести полноценный прогон cases и тяжеловесных examples в интеграционные nightly-тесты (раз гитхаб экшензы это умеют https://docs.github.com/en/free-pro-team@latest/actions/reference/events-that-trigger-workflows#scheduled-events)

@BarabanovaIrina
Copy link
Contributor Author

@nicl-nno Добавила архив и функцию разархивирования в spam-detection.py

J3FALL
J3FALL previously requested changes Dec 18, 2020
cases/spam_detection.py Outdated Show resolved Hide resolved
fedot/utilities/load_data.py Outdated Show resolved Hide resolved
fedot/utilities/load_data.py Outdated Show resolved Hide resolved
cases/spam_detection.py Outdated Show resolved Hide resolved
cases/spam_detection.py Outdated Show resolved Hide resolved
@J3FALL
Copy link
Contributor

J3FALL commented Dec 24, 2020

@BarabanovaIrina Ира, а можешь еще в readme добавить ссылку на твой скрипт cases/spam_detection.py?
Вот сюда:
image

@J3FALL
Copy link
Contributor

J3FALL commented Dec 24, 2020

Еще резонно добавить описание примера с текстами в readthedocs, но можно это сделать в рамках другой задачи:
see #219.

@BarabanovaIrina BarabanovaIrina dismissed J3FALL’s stale review December 26, 2020 18:47

There is already an approval

@BarabanovaIrina BarabanovaIrina merged commit 30b8e0b into master Dec 26, 2020
@BarabanovaIrina BarabanovaIrina deleted the text-inputdata branch December 26, 2020 18:48
nicl-nno pushed a commit that referenced this pull request Dec 29, 2020
* add text as InputData

* fix reqs

* move tfidf to eval strat level

* add tests

* delete text large data

* add data archiv && upacking

* add data package

* fixes && rebase

* fix nltk deps

* add DataTypesEnum.text

* rebase

* fix imports

* add vectorize test

* fix readme
nicl-nno pushed a commit that referenced this pull request Dec 29, 2020
* add text as InputData

* fix reqs

* move tfidf to eval strat level

* add tests

* delete text large data

* add data archiv && upacking

* add data package

* fixes && rebase

* fix nltk deps

* add DataTypesEnum.text

* rebase

* fix imports

* add vectorize test

* fix readme
nicl-nno pushed a commit that referenced this pull request Dec 29, 2020
* add text as InputData

* fix reqs

* move tfidf to eval strat level

* add tests

* delete text large data

* add data archiv && upacking

* add data package

* fixes && rebase

* fix nltk deps

* add DataTypesEnum.text

* rebase

* fix imports

* add vectorize test

* fix readme
nicl-nno pushed a commit that referenced this pull request Dec 29, 2020
* add text as InputData

* fix reqs

* move tfidf to eval strat level

* add tests

* delete text large data

* add data archiv && upacking

* add data package

* fixes && rebase

* fix nltk deps

* add DataTypesEnum.text

* rebase

* fix imports

* add vectorize test

* fix readme
nicl-nno pushed a commit that referenced this pull request Dec 29, 2020
* add text as InputData

* fix reqs

* move tfidf to eval strat level

* add tests

* delete text large data

* add data archiv && upacking

* add data package

* fixes && rebase

* fix nltk deps

* add DataTypesEnum.text

* rebase

* fix imports

* add vectorize test

* fix readme
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.

[InputData] Support texts as InputData
3 participants