목록주피터노트북 (43)
Note

구글링과 알고 있는 지식을 토대로 작성한 것이기에 틀릴 수도 있으니 참고만 부탁드립니다. Q. mtcars 데이터셋의 qsec 칼럼을 최소 최대 척도로 변환한 후 0.5보다 큰 값을 가지는 레코드 수를 구하시오. 필요한 라이브러리를 로딩하고 데이터를 불러와 데이터 프레임 형태로 저장을 한다. head()를 통해 데이터가 잘 불러와진 모습을 확인할 수 있다. iloc를 이용해서 필요한 칼럼만을 가져온다. head()로 확인해보니 qsec를 잘 가져온 것을 알 수 있다. sklearn 내장 함수를 사용해서 min-max 스케일을 한 모습이다. min-max 스케일은 값에 따라 0에서 1사이의 값으로 표현하는 것이다. 값들 중에 0.5보다 큰 값을 answer에 저장하고 출력해보면 조건에 맞는 값들은 True..

1. 데이터 인코딩 (1) 레이블 인코딩(label encoding) 말 그대로 레이블을 인코딩해서 값을 변환해주는 것이다. 사이킷런을 통해서 라이브러리를 임포트한다. 리스트 안에 있는 사물들을 items라는 객체에 저장한다. encoder 객체를 생성해서 LabelEncoder에 저장한다. . fit을 수행해서 transform 전에 틀을 맞춰 주는 역할을 하고 transform을 통해 label 인코딩을 수행한다. classes_를 사용해서 인코딩의 실제 값을 알 수 있다. 또한 inverse_를 사용해서 원래대로 돌리는 디코딩을 나타낼 수 있다. (2) 원 - 핫 인코딩(One-Hot encoding) 원 - 핫 인코딩이란 ? 원-핫 인코딩은 단어 집합의 크기를 벡터의 차원으로 하고, 표현하고 싶은..

1. K 폴드 필요한 라이브러리를 임포트하고 iris 데이터를 불러온 후에 데이터 형태를 확인한다. 데이터를 불러오고 확인하는 습관을 들이는 것이 좋다. 디시전트리 모델을 정의하고 객체를 생성한다. cv = cross validation이다. KFold를 사용하고 괄호 안에 있는 n_splits = 5 는 5개의 폴드 세트로 분리한다. 그다음 정확도를 담을 리스트 객체를 생성한다. for문이 도는 동안 KFold 객체의 split( )을 호출하면 폴드 별 학습용, 검증용 테스트의 row 인덱스를 array로 반환한다. 2. Staratified K 폴드 K-FOLD 교차검증의 문제점은 불균형한 데이터에는 적용이 안된다. 이를 해결할 방법으로 나온 것이 StaratifiedKFold 이다. 불균형한 분포도..

학습 데이터로 잘못된 예측 케이스 필요한 라이브러리를 임포트 하고 학습 데이터를 세팅한다. 디시전트리 객체를 생성하고 학습 데이터로 학습한 후 그 데이터를 기반으로 예측을 수행했다. 그 결과는 예측 정확도 100%이다. 그 이유는 학습한 데이터를 그대로 가지고 예측을 하기 때문에 정확도가 높을 수밖에 없다. 테스트 데이터로 실행하기 위해 데이터 준비를 하고 학습과 테스트 데이터를 분리한다. 모델 학습 한 후 테스트 데이터로 예측을 한 결과 95.56%가 나왔다. 이전보다 정확도가 떨어진 건 사실이지만 그래도 높은 정확도 수치이다. 위 코드와 같이 pandas를 통해서도 데이터 분할이 가능하다. 피처와 타겟을 정의하고 데이터를 나눈 모습이다. 머신러닝 모델을 정의하고 학습한 후 테스트 데이터로 예측한 결과..

사이킷런을 임포트하고 iris 데이터 예측을 위해서 필요한 모듈을 로딩한다. 데이터 처리를 위해서 판다스를 임포트하고 iris 내장 데이터를 불러와서 객체를 생성한다. iris.data를 사용해서 데이터 세트에서 feature만으로 된 데이터를 numpy로 가진다. iris.target은 데이터 세트에서 레이블(결정 값) 데이터를 numpy로 가지고 있습니다. iris.data와 iris target은 처음 iris 데이터를 출력한 결과물을 보면 알 수 있습니다. 키는 보통 data, target, target_name, feature_names, DESCR로 구성돼 있습니다. 개별 키가 가리키는 의미는 다음과 같습니다. * data는 피처의 데이터 세트를 가리킵니다. * target은 분류 시 레이블 ..