728x90 TIL39 11/10 머신러닝 주택가격 피처엔지니어링 변수 스케일링 Feature의 범위를 조정하여 정규화하는 것을 의미합니다 Feature의 분산과 표준편차를 조정하여 정규분포 형태를 띄게 하는 것이 목표입니다 변수 스케일링이 중요한이유 Feature의 범위가 다르면,Feature끼리 비교하기 어려우며 일부 머신러닝 모델에서는 제대로 작동하지 않습니다. FeatureScaling이 잘 되어있다면 서로 다른 변수가 있더라도 비교하기 편리합니다 비교가 편리하기에 FeatureScaling 없이 작동하는 알고리즘에서 더 빨리 작동합니다 (트리기반 모델은 피처 스케일링이 필요 X - 데이터의 절대적 크기보단 상대적인 크기에 영향 받기에 ) 또한 머신러닝 성능이 상승합니다 일부 FeatureScaling은 이상치에 대해 강점이 있습니다 (RobustScaler) .. TIL/머신러닝 2022. 11. 10. 11.09 머신러닝 회귀 스케일링 피처 엔지니어링 상대경로는 현재 경로를 기준으로 하는 경로 EX) / 루트 (가장 최상의 디렉토리로 이동 / Web root) ./ 현재경로를 의미합니다. ../ 상위 경로를 의미합니다. 절대경로는 전체 경로를 다 지정하는 경로 ex) 윈도우 C: 부터 시작하는 경로입니다. 절대경로를 사용하면 다른 사람의 컴퓨터에서 동작하지 않기 때문에 되도록이면 상대경로를 사용하는 것을 권장합니다. 상대경로에서 기본적으로 같은 위치를 뜻하는 키워드는 . 입니다. dt 접근자 관련 참고링크 https://pandas.pydata.org/docs/reference/series.html#datetimelike-properties 로그(Logarithm) log를 count값에 적용하게 되면 한쪽에 너무 뾰족하게 있던 분포가 좀 더 완만한 .. TIL/머신러닝 2022. 11. 10. 11.08 머신러닝 bike log 회귀 - GridSearchCV 하이퍼파라미터 범위를 검사하여 최선의 모델을 선택하려면 GridSearchCV 사용 사용자는 하나 이상의 하이퍼파라미터에 대해 가능성이 있는 값을 정의한다. GridSearchCV는 교차검증을 사용하여 모델을 선택하는 브루트포스(brute-force)한 방법입니다. 지정된 조합만 보기 떄문에 해당 그리드를 벗어나는 곳에 좋은 성능을 내는 하이퍼 파라미터가 있다면 찾지못하는 단점이 있습니다. from sklearn.model_selection import GridSearchCV logistic = linear_model.LogisticRegression() gridsearch = GridSearchCV(logistic, hyperparameters, cv=5, verbose=0).. TIL/머신러닝 2022. 11. 9. 공부한거 정리해보기 배운 꿀팁 정리 1.쥬피터에서 해당셀 글자 일괄변경 esc+f 2.캐글에서 좋은 솔루션 찾는 법 ㄱ) Top 키워드로 검색 ㄴ) 솔루션에 대한 투표수가 많은 것 ㄷ) 프로필 메달의 색상( 왼쪽일수록 높음 - 신뢰도높음) 3.캐클에 제출할 파일명을 valid_accuracy = (y_train == y_valid_pred).mean() 로서 정확도를 측정한후 file_name = f"data/submit_{valid_accuracy:.5f}.csv" 이런식으로 파일명에 정확도 점수를 넣어주면 캐글과 노트북을 왔다갔다하며 점수비교하는 과정의 번거로움을 줄일수 있고 모델을 변경해서 (피처, 하이퍼파라미터 튜닝 등)여러번 예측을 하면 valid점수가 달라지는데 다른 점수와 비교 가능 4.또한 submit 을 지.. TIL/머신러닝 2022. 11. 3. 22.11.01 시각화 방식비교 lambda,map()함수 시각화 방식비교 subplot 상태기반방식 (state-based framework) 그림을 순서에 맞게 코딩하여 그리는 방식(논리적 흐름이 아닌 시간의 흐름에 따라 ) 즉 그리기의 한계를 벗어나지 못한다 plt뒤에 오는 명령어만 익히면되서 입문서에 많이쓰임 간단하고 빠르게 형상만 확인하는데 유리 공간제어를 코드순서와 일치시켜야해서 코딩을 오르락 내리락해야한다 즉 체계를 갖추기도어렵고 나열식 코드로 진행된다 같은데이터지만 일부분이 완전히 다른 그림을 만들수 있다 subplots 객체 지향방식 (objeck-oriented framework) 대상을 지정하여 그리는 방식 (논리에 따라 코딩) 결과물의 일부를 수정하기 유리한 방식 (코드를 재사용, 유지보수에 유리) 레이아웃 전체를 한번에 정의하고 시작 (전.. TIL/파이썬 2022. 11. 2. 22.10.31 보호되어 있는 글 입니다. 2022. 10. 31. 22.10.30 pandas 연습문제 1. groupby 1개만 묶기 df.groupby("묶고 싶은 컬럼")["원하는 값 컬럼 "].원하는 연산 () ex df.groupby("class")["fare"].mean() # class별 평균 fare계산하기 여러개의 함수를 연상하고 싶을떄 agg를 사용 df.groupby("묶고 싶은 컬럼")["원하는 값 컬럼 "].agg([원하는 연산1,원하는연산2] ) ex df.groupby("class")["fare"].agg(["mean","sum"])\ # 클래스별 fare의 평균, 합계 계산하기 2개 이상으로 그룹화하기 df.groupby(["묶고 싶은 컬럼1","묶고 싶은 컬럼2"])["원하는 값 컬럼 "].agg(원하는 연산 ) ex df.groupby(["class",.. TIL/파이썬 2022. 10. 30. 22/10/27 공부한 내용정리 머신러닝 딥러닝은 머신러닝의 한종류 범주형 수치형 지도학습 (= 정답이 있음) 분류 (classification) 회귀(regression) 비지도학습 (=정답이 없음) 군집화 (Custering) 차원축소 (Dimensionality reduction) 분류(지도학습) - 범주형 분류예측 ex )고객의 구매여부 ,광고클릭여부, 당뇨병여부 ,코로나 양성 음성, 스펨메일여부 ps/ 구매한다 안한다 ← 있으면 지도학습 없으면 비지도학습 정답 == label == target 회귀분석(지도학습) - 숫자예측 ex)기간별 매출액, 재고량,판매량,강수량,기운 - 회귀 알고리즘 중에 분류에 사용할 수 있는 알고리즘은? 로지스틱회귀 데이터 전처리방법 normalization - 0~1사이값으로 조정 outliers .. TIL/머신러닝 2022. 10. 27. 22.10.12 0304 파일불러오기 from glob import glob glob ("data/apt*.csv")) glob함수를 이용하면 인자로 받은 패턴과 이름이 일치하는 모든 파일과 디렉터리를 반환한다 이를 통해 apt*는 apt로 시작하는 파일을 가져와라~ 데이터 타입 변경하기 pd.to_numeric - 함수를 이용한 문자열 칼럼의 숫자형으로 변경 이떄 쓸수있는 옵션 3개 ㄱ. errors = 'ignore' = 숫자로 변경할수 없을시 원본 그대로 반환 ㄴ.errors = 'coerce' = 숫자로 변경할수 없을시 NaN으로 반환 ㄷ. errors = 'raise' = 숫자로 변경할수 없는데이터라면 에러후 중단 astype() 메소드를 이용한 문자열 칼럼의 숫자형 변환 ex astype(int) 컬럼문구를 .. TIL/파이썬 2022. 10. 12. 오늘 공부한거 요약해보기 df.groupby() 와 df.pivot_table() 공통점 groupby로 할수있는건 pivot_table로도 할수있고 그반대도 마찬가지이다 즉 둘가 같은 연산을 수행할수 잇는 기능이다 차이점 groupby가 연산속도가 더빠르다 pivot_table은 직관적인사용법을 가졌다 또한 groupby 는 결과물이 series 라면 series 로 반환되고 pivot_table은 항상 데이터프레임으로 반환한다 사용법 1. 1개 그룹화 df.groupby('age').mean() age 컬럼 기준으로 평균 2개 그룹화 df.groupby(['age', 'sex']).mean() age, sex 그준으로 평균 그룹에서 특정 컬럼 값만을 뽑아내고 싶을떄 df.groupby(['age', 'sex'])['survi.. TIL/파이썬 2022. 10. 10. 시리즈와 데이터프레임 파이썬에는 데이터 분석 모듈인 Pandas가 있다 판다스의 자료구조는 Series(시리즈)와 DataFrame(데이터 프레임)이있다! 그리고 모든 자료구조에는 index를 가지고있다 1. Series(시리즈) 시리즈는 1차원 데이터로 리스트와 유사하다 단 리스트와 달리 인덱스를 부여할수있다 그러므로 key값이 index : valie값에 값으로 들어감으로서 딕셔너리와 구조가 비슷하다 딕셔너리 , 리스트 , 튜플을 pandas.Series(딕셔너리 , 리스트 , 튜플)로 시리즈로 변활할수있고 리스트와 튜플은 index이름을 지정하거나 지정하지않으면 정수형 위치인덱스가 자동 지정된다 원소 선택하기ㄱ. 정수형 [숫자] / ["인덱스이름"] / [[여러개선택시, 대괄호도 두개]] / [ : ] 슬라이싱도가능 2.. TIL/파이썬 2022. 10. 6. 프로그래머스 문제풀기 - 핸드폰 번호 가리기 프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다. 전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 입출력 예 phone_numberreturn "01033334444" "*******4444" "027778888" "*****8888" 푸는법 1. 정답 값지정 2. 주어진 번호에서 마지막 4자리를 제외한 숫자를 *로 더함 3. 주어진 번호에서 마지막 4자리를 잘나내서 정답값에 추가 정답 def solution(phone_number): answer = '' phone_number_len = len(phone_number) answ.. TIL/파이썬 2022. 10. 2. 이전 1 2 3 4 다음 728x90