머신러닝 모델에 넣기 전에, 특징(열)마다 값의 크기를 비슷하게 맞춰 주는 일이 자주 필요해요. 어떤 열은 0~1 인데 어떤 열은 0~1000 이면, 큰 숫자를 쓰는 열 하나가 거리나 계수를 좌우해서 다른 특징이 묻히기 때문이에요. standardize(X) 를 완성하세요. X 는 행이 데이터 한 건, 열이 특징인 2차원 실수 배열이에요. 각 특징(열)이 평균 0, 표준편차 1 이 되도록 바꾼 새 배열을 돌려주세요. 예시 X = [[1, 100], [2, 200], [3, 300]] → 두 열 모두 평균 0, 표준편차 1 인 같은 모양으로 바뀝니다.
머신러닝 모델에 데이터를 넣기 전, 특징(열)마다 값의 크기를 비슷한 잣대로 맞추는 standardize(X) 함수를 numpy 로 완성하는 문제입니다. 입력은 행이 데이터 한 건, 열이 특징인 2차원 실수 배열이고, 원본을 바꾸지 않고 각 특징을 공통 잣대로 다시 잰 새 배열을 돌려줘야 합니다. 특징 스케일을 맞추는 전처리의 기본기를 다룹니다.
데이터에는 0~1 처럼 작은 값을 쓰는 특징과 0~1000 처럼 큰 값을 쓰는 특징이 섞여 있을 수 있습니다. 이렇게 크기가 다르면, 거리로 가까움을 재거나 계수의 크기에 민감한 모델에서 큰 값을 쓰는 특징 하나가 결과를 좌우하기 쉽습니다. 그래서 모델에 넣기 전에 특징들의 크기를 비슷한 잣대 위로 맞추는 전처리가 흔히 쓰입니다. 이 문제는 그 전처리를 numpy 로 직접 구현하면서, 결과를 숫자로 확인하는 검증 습관을 함께 연습합니다.