[Python] min-max 벗어난 값을 min, max값으로 대체하기
·
데이터분석
일반적으로 데이터 정규화를 위해 min-max scaling을 많이 사용한다. 하지만 min-max scaling의 단점은 기준이 scaling이 데이터의 min 값과 max값을 기준으로 이루어지기 때문에 아래와 같은 단점을 갖는다. ① 이상치에 영향을 많이 받는다. ② 운영 시 min, max값이 넘는 값이 유입되면 에러가 발생한다. 이상치는 min-max scaling 하기 전 제거하고 scaling을 하면 어느 정도 해결할 수 있으나 운영 상에서 기존 데이터 범위 외 데이터가 새롭게 들어올 경우는 코드를 추가해 미리 대비를 해야 한다. min-max값 범위 외 데이터가 유입되는 경우에 min-max scaling 결과의 예상 범위인 0~1을 넘는 데이터가 생겨나는데 이 때, np.maximum과 n..
알고리즘 성능 평가 방법 - 빅오 표기법
·
Algorithm
알고리즘의 성능을 어떻게 평가할까? 알고리즘은 문제를 해결하는 절차, 방법을 의미한다. 그렇다면 어떻게 문제를 해결해야 좋다고 말할 수 있을까? 바로 문제를 올바르게 해결했는지와 빠르게 해결했는지이다. 그렇기에 코딩테스트에서도 제시된 input을 넣었을 때 예상되는 output을 나타내는지로 정확도를 평가하고 제시된 시간과 메모리 안에서 값이 산출되는지로 효율성을 평가한다. 즉, 알고리즘의 실행시간이 짧고 메모리를 적게 사용하는 것이 좋은 알고리즘이라 말할 수 있다. 하지만 알고리즘의 성능을 평가할 때 실행시간을 기준으로 평가하기는 어렵다. 실행시간이 알고리즘이 돌아가는 환경에 따라서 다르게 나타나기 때문이다. 알고리즘이 실행되는 하드웨어 성능에 따라 달라질 수 있으며 어떤 프로그래밍 언어를 사용하는 지..
자료구조와 알고리즘의 개념
·
Algorithm
프로그래밍을 처음 시작하면 자료구조와 알고리즘부터 접하게 된다. 알고리즘이란 말은 실무에서도 많이 사용하지만 요즘 핫한 인공지능에서도 알고리즘이라는 표현을 참 많이 쓰는데 자료구조는 뭐길래 컴퓨터과학의 시작이 되며 알고리즘은 뭐길래 강조되는지 그 개념을 알아보고자 한다. 자료구조란? 자료구조의 정의 자료구조란 쉽게 말하면 데이터를 담는 틀이다. 음식을 담을 때 어떤 음식이냐, 어떤 용도이냐에 따라 담는 그릇이 달라지듯 자료구조도 자유롭게 선택해서 사용할 수 있지만 주먹만한 음식을 담기 위해 테이블만한 그릇이 필요하지 않듯 컴퓨터가 효율적으로 처리할 수 있는 자료구조를 알고 자료의 형태와 알고리즘에 맞게 사용하는 것이 중요하다. 자료구조의 종류 자료구조는 크게 단순 자료구조(Primitive Data St..