Anonymous
Визуализация моделей ранжирования на основе времени выполнения
Сообщение
Anonymous » 06 дек 2024, 20:51
Я работаю над воспроизведением следующего графика для своего случая:
Итак, допустим, у меня уже есть готовые результаты в виде фреймов данных, как показано ниже:
Код: Выделить всё
import pandas as pd
# Data
data1 = {
'Models': ['LinearRegression', 'Random Forest', 'XGBoost', 'MLPRegressor', 'SVR', 'CatBoostRegressor', 'LGBMRegressor'],
'MAE': [4.906, 2.739, 2.826, 5.234, 5.061, 2.454, 2.76]
'Runtime [ms]': [0:00:43.387145, 0:28:11.761681, 0:03:58.883474, 0:01:44.252276 , 0:04:52.754769, 0:19:36.925169, 0:04:51.223103]
}
data2 = {
'Models': ['LinearRegression', 'Random Forest', 'XGBoost', 'MLPRegressor', 'SVR', 'CatBoostRegressor', 'LGBMRegressor'],
'MAE': [4.575, 2.345, 2.129, 4.414, 4.353, 2.281, 2.511]
'Runtime [ms]': [0:00:45.055854, 0:10:55.468473, 0:01:01.575033 , 0:00:31.231719 , 0:02:12.258870, 0:08:16.526615 , 0:15:25.084937]
}
data3 = {
'Models': ['LinearRegression', 'Random Forest', 'XGBoost', 'MLPRegressor', 'SVR', 'CatBoostRegressor', 'LGBMRegressor'],
'MAE': [4.575, 2.345, 2.129, 4.414, 4.353, 2.281, 2.511]
'Runtime [ms]': [0:00:40.055854, 0:11:55.468473, 0:01:03.575033 , 0:00:29.231719 , 0:02:02.258870, 0:07:16.526615 , 0:13:25.084937]
}
df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)
df3 = pd.DataFrame(data3)
Теперь я могу вычислить рейтинг, вычислив абсолютные\относительные частоты в итоговой ранжированной таблице ожидаемого результата.
и получить что-то вроде этого для ранжирования лучших моделей, но я потеряю время выполнения [мс]:
Код: Выделить всё
Top models(sorted) count freq(%)
LinearRegression,MLPRegressor,SVR,LGBMRegresso... 2 66.666667
MLPRegressor,SVR,LinearRegression,XGBoost,LGBM... 1 33.333333
Как мне приблизиться к этому сюжету?
Подробнее здесь:
https://stackoverflow.com/questions/792 ... executions
1733507492
Anonymous
Я работаю над воспроизведением следующего графика для своего случая: [img]https://i.sstatic.net/6vK55kBM.png[/img] Итак, допустим, у меня уже есть готовые результаты в виде фреймов данных, как показано ниже: [code]import pandas as pd # Data data1 = { 'Models': ['LinearRegression', 'Random Forest', 'XGBoost', 'MLPRegressor', 'SVR', 'CatBoostRegressor', 'LGBMRegressor'], 'MAE': [4.906, 2.739, 2.826, 5.234, 5.061, 2.454, 2.76] 'Runtime [ms]': [0:00:43.387145, 0:28:11.761681, 0:03:58.883474, 0:01:44.252276 , 0:04:52.754769, 0:19:36.925169, 0:04:51.223103] } data2 = { 'Models': ['LinearRegression', 'Random Forest', 'XGBoost', 'MLPRegressor', 'SVR', 'CatBoostRegressor', 'LGBMRegressor'], 'MAE': [4.575, 2.345, 2.129, 4.414, 4.353, 2.281, 2.511] 'Runtime [ms]': [0:00:45.055854, 0:10:55.468473, 0:01:01.575033 , 0:00:31.231719 , 0:02:12.258870, 0:08:16.526615 , 0:15:25.084937] } data3 = { 'Models': ['LinearRegression', 'Random Forest', 'XGBoost', 'MLPRegressor', 'SVR', 'CatBoostRegressor', 'LGBMRegressor'], 'MAE': [4.575, 2.345, 2.129, 4.414, 4.353, 2.281, 2.511] 'Runtime [ms]': [0:00:40.055854, 0:11:55.468473, 0:01:03.575033 , 0:00:29.231719 , 0:02:02.258870, 0:07:16.526615 , 0:13:25.084937] } df1 = pd.DataFrame(data1) df2 = pd.DataFrame(data2) df3 = pd.DataFrame(data3) [/code] Теперь я могу вычислить рейтинг, вычислив абсолютные\относительные частоты в итоговой ранжированной таблице ожидаемого результата. и получить что-то вроде этого для ранжирования лучших моделей, но я потеряю время выполнения [мс]: [code]Top models(sorted) count freq(%) LinearRegression,MLPRegressor,SVR,LGBMRegresso... 2 66.666667 MLPRegressor,SVR,LinearRegression,XGBoost,LGBM... 1 33.333333 [/code] Как мне приблизиться к этому сюжету? Подробнее здесь: [url]https://stackoverflow.com/questions/79258912/visualization-of-ranking-models-based-on-time-executions[/url]