Hw18#4
Conversation
iam28th
left a comment
There was a problem hiding this comment.
Шакир, добрый день!
-
Рефакторинг
По коду есть закоменченные куски, кое-где не хватает типизации, и не везде порядок импортов соответствует общепринятому. Для борьбы с последним очень рекомендую использовать тулы isort или ruff (сам пользуюсь вторым).
Тут -3б.
Великолепный readme, явно заслуживающий 3 доп. баллов (если бы это было первое задание с ним, то накинул бы больше)).
(12+3)/15 -
Случайный лес
Реализацияfitпохожа на правду, но не распараллеленpredict(-10б) и нет примеров (-5б).
10/25 -
Тесты
Здесь всё хорошо, 10/10
Итого у вас (32+3)/50 за это дз.
На репозиторий и код приятно смотреть)
Успехов с защитой в ИБ и в дальнейшей карьере!
| #dump(current_tree, f'{os.getcwd()}/my_randomforest_model_{pid}.joblib') | ||
|
|
||
| #processes = [multiprocessing.Process(target=fit_tree, args=(data, pid)) for pid, data in enumerate(self.bootstrapped_data)] | ||
| #for proc in processes: | ||
| # proc.start() | ||
| #for proc in processes: | ||
| # proc.join() | ||
| #return results | ||
| return self |
There was a problem hiding this comment.
закоменченные куски кода конечно стоит убрать...
| records = [] | ||
| while not self.StopIter: | ||
| records.append(self.__next__()) | ||
| return records |
| ''' | ||
| probas = self.predict_proba(X) | ||
| predictions = np.argmax(probas, axis=1) | ||
| return predictions |
| return (float): The mass of the protein. | ||
| ''' | ||
| mass = sum(self.dictionary.get(aa) for aa in self.sequence) | ||
| return mass |
| import numpy as np | ||
| from concurrent.futures import ProcessPoolExecutor | ||
| from sklearn.base import BaseEstimator | ||
| from sklearn.tree import DecisionTreeClassifier | ||
| from joblib import dump, load | ||
| import os | ||
| import multiprocessing |
There was a problem hiding this comment.
порядок импортов неправильный
| import numpy as np | |
| from concurrent.futures import ProcessPoolExecutor | |
| from sklearn.base import BaseEstimator | |
| from sklearn.tree import DecisionTreeClassifier | |
| from joblib import dump, load | |
| import os | |
| import multiprocessing | |
| import multiprocessing | |
| import os | |
| from concurrent.futures import ProcessPoolExecutor | |
| import numpy as np | |
| from joblib import dump, load | |
| from sklearn.base import BaseEstimator | |
| from sklearn.tree import DecisionTreeClassifier |
| # Import modules | ||
| from source.folder_parser import folder_parser | ||
| from dataclasses import dataclass | ||
| import os |
| if output is None: | ||
| output_path = f'{input_folder}/{folder_name}/{input_name}' | ||
| else: | ||
| output_path = f'{input_folder}/{folder_name}/{output}.{format}' |
There was a problem hiding this comment.
| if output is None: | |
| output_path = f'{input_folder}/{folder_name}/{input_name}' | |
| else: | |
| output_path = f'{input_folder}/{folder_name}/{output}.{format}' | |
| output_path = f"{input_folder}/{folder_name}/" + ( | |
| input_name if output is None else f"{output}.{format}" | |
| ) |
хотя может и не очень получилось...
но хочется каким-то образом избавиться от повторения `f'{input_folder}/{folder_name}/``
No description provided.