Skip to content

ShukayloEA/Multimedia

Repository files navigation

Мультимедиа

Выбор начальных условий:

Набор данных для задачи классификации: я выбрала небольшой датасет laptop_price, который содержит данные о ценах на ноутбуки, включая их технические характеристики. Среди них:

1 Company- String -Laptop Manufacturer

2 Product -String -Brand and Model

3 TypeName -String -Type (Notebook, Ultrabook, Gaming, etc.)

4 Inches -Numeric- Screen Size

5 ScreenResolution -String- Screen Resolution

6 Cpu- String -Central Processing Unit (CPU)

7 Ram -String- Laptop RAM

8 Memory -String- Hard Disk / SSD Memory

9 GPU -String- Graphics Processing Units (GPU)

10 OpSys -String- Operating System

11 Weight -String- Laptop Weight

12 Price_euros -Numeric- Price (Euro)

Данные из этого датасета подходят для анализа рынка ноутбуков, включая исследование факторов, влияющих на цену, что полезно как для бизнеса, так и для покупателей, желающих понимать, что влияет на стоимость устройств. Кроме того, с его помощью можно автоматизировать выбор ноутбука по заданным параметрам, что может быть актуально для интернет-магазинов или приложений сравнения товаров.

Набор данных для задачи регрессии: тот же датасет laptop_price.

Метрики качества:

В качестве метрик я использовала accuracy, precision, recall и F1-score для задачи классификации и MAE и MSE для задачи регрессии.

Подведение итогов:

Посмотрим метрики качества на тестовом наборе данных для каждой из реализаций алгоритмов (для классификаций показана F1, для регрессии - MAE); через / показаны метрики на тренировке и на тесте соответственно:

Алгоритм Задача Бейзлайн Улучшенный бейзлайн Самостоятельная имплементация алгоритма
KNN Классификация 0.86/0.75 0.92/0.77 0.93/0.78
--- --- --- --- ---
KNN Регрессия 183/262 119/195 123/193
--- --- --- --- ---
Линейные модели Классификация 0.72/0.69 0.98/0.80 0.52/0.47
--- --- --- --- ---
Линейные модели Регрессия 370/377 42/190 261/272
--- --- --- --- ---
Решающее дерево Классификация 0.99/0.80 0.96/0.72 0.94/0.75
--- --- --- --- ---
Решающее дерево Регрессия 1.42/213 87/218 87/225
--- --- --- --- ---
Случайный лес Классификация 0.99/0.86 0.99/0.81 0.74/0.73
--- --- --- --- ---
Случайный лес Регрессия 70/167 71/228 276/282
--- --- --- --- ---
Градиентный бустинг Классификация 0.95/0.84 0.97/0.81 0.67/0.54
--- --- --- --- ---
Градиентный бустинг Регрессия 142/171 56/181 34/193

KNN:

Самостоятельная реализация демонстрирует конкурентоспособные результаты и иногда даже превосходит библиотечные версии, особенно в классификации. Улучшение бейзлайна достигается за счёт подбора гиперпараметров и правильной предобработки данных.

Линейные модели:

Библиотечные реализации значительно превосходят самостоятельные, особенно в классификации. Это связано с использованием более сложных оптимизаций и регуляризаций, доступных в стандартных библиотеках.

Решающее дерево:

Самостоятельная имплементация близка к библиотечному бейзлайну, но уступает в стабильности метрик на тестовом наборе данных. Улучшенный бейзлайн выигрывает за счёт тонкой настройки глубины дерева и других параметров.

Случайный лес:

Библиотечные версии превосходят собственные, особенно в задачах регрессии, где наблюдается значительная разница в MAE. Это указывает на необходимость дальнейшей оптимизации собственной реализации.

Градиентный бустинг:

Самостоятельная реализация показывает посредственные результаты на тесте, особенно в задачах классификации, где разрыв с библиотечными версиями наиболее заметен. Улучшенный бейзлайн эффективно использует настройки гиперпараметров для увеличения производительности.

Общий вывод:

Библиотечные реализации обычно показывают лучшие результаты благодаря внутренним оптимизациям и использованию передовых алгоритмов. Однако самостоятельные реализации позволяют лучше понять устройство алгоритмов и дают потенциал для их кастомизации. Улучшение бейзлайнов возможно за счёт тщательной настройки гиперпараметров и предварительной обработки данных.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published