Входной файл: | Стандартный вход | Ограничение времени: | 1 сек | |
Выходной файл: | Стандартный выход | Ограничение памяти: | 512 Мб |
Пусть заданы 4 набора точек: squares, circles, moons, spirals, которые можно скачать здесь.
Требуется на языке Python реализовать 4 функции,
преобразующие соответствующие наборы точек так,
чтобы они были идеально разделимы линейным
методом опорных векторов,
а именно sklearn.svm.SVC(kernel='linear')
.
import numpy as np
def transform_squares(X: np.ndarray) -> np.ndarray:
pass
def transform_circles(X: np.ndarray) -> np.ndarray:
pass
def transform_moons(X: np.ndarray) -> np.ndarray:
pass
def transform_spirals(X: np.ndarray) -> np.ndarray:
pass
При решении задачи запрещено использовать условные операторы и операторы сравнения.
Каждая функция принимает двумерный np.array
,
имеющий размеры (1200, 2).
Функции проверяются в порядке их определения в задаче.
Результатом работы функции должен являться двумерный массив преобразованных точек, имеющий тот же размер, что и исходный.