Напишите собственный класс, который реализует алгоритм k ближайших соседей для классификации.
Класс должен поддерживать:
- Две метрики расстояния: евклидову и манхэттенскую
- Два режима голосования: равномерный (
uniform) и взвешенный по расстоянию (distance) - Методы
fit()иpredict()
Протестируйте реализацию на датасете Iris и Digits, сравните точность с KNeighborsClassifier.
В отчете проанализируйте, как выбор метрики и режима голосования влияет на качество классификации.