-
Notifications
You must be signed in to change notification settings - Fork 88
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
fix pos_label #1131
fix pos_label #1131
Conversation
valer1435
commented
Aug 2, 2023
•
edited
Loading
edited
- Error with pos_label when passing binary string target was fixed
- Error with resample was fixed (add extra rule)
- Fitness calculating errors now raise exceptions if it's test
- Unexpected behaviour with inplace operations with data in node.fit and node.predict was fixed
Hello @valer1435! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found: There are currently no PEP 8 issues detected in this Pull Request. Cheers! 🍻 Comment last updated at 2023-08-14 09:25:14 UTC |
Codecov Report
@@ Coverage Diff @@
## master #1131 +/- ##
==========================================
- Coverage 78.67% 78.62% -0.05%
==========================================
Files 131 131
Lines 9362 9401 +39
==========================================
+ Hits 7366 7392 +26
- Misses 1996 2009 +13
|
685472a
to
fe5cdaa
Compare
fedot/core/operations/operation.py
Outdated
@@ -80,6 +81,7 @@ def fit(self, params: Optional[Union[OperationParameters, dict]], data: InputDat | |||
Returns: | |||
tuple: trained operation and prediction on train data | |||
""" | |||
data = deepcopy(data) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А зачем?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Из-за этого у тебя данные (исходные), прогнанные не через pipeline.predict, а через root_node.predict получают метку о том, что они предобработанны
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Если есть идеи, как это можно пофиксить без потери в скорости - буду рад услышать
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А это точно нужно именно в operation? Это действительно очень дорого делать deepcopy всех данных для каждого узла в пайплайне.
Кстати не очень понял почему тут вообще ставится флаг obligatorily_preprocessed. Вроде код выше за это не отвечает.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@valer1435 Думаю, что пока не критично. В целом, это проблема для PR по оптимизации используемой памяти
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А это точно нужно именно в operation? Это действительно очень дорого делать deepcopy всех данных для каждого узла в пайплайне.
Кстати не очень понял почему тут вообще ставится флаг obligatorily_preprocessed. Вроде код выше за это не отвечает.
Да, это дорого, поэтому хотелось бы найти обходной путь. obligatory_preprocessed ставится в predict. Подумаю, может это и не нужно
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Удалил deepcopy и убрал присвоение флага препроцессинга
544c5f6
to
1d49590
Compare