728x90 AI School 7기15 12/19 월 시계열 예측 ,비즈니스 데이터 분석 107 시계열 RNN 실습 Time series forecasting | TensorFlow Core 시계열 예측 | TensorFlow Core KerasCV, 온디바이스 ML 등을 사용한 확산 모델을 다루는 WiML 심포지엄의 세션을 확인하세요. 주문형 시청 시계열 예측 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류 www.tensorflow.org 기존에는 데이터를 나눌 때 섞어서 나누었습니다. 그런데 시계열 데이터에서는 섞어서 나누지 않고 순서를 고려해서 나누게 됩니다. [시계열 데이터에서도 순서 중요] 자연어 텍스트를 시퀀스 인코딩 했던 것처럼 언어도 맥락이 있기 때문에 섞으면 원래 의미를 잃어버릴 수 있습니다. 시계열 데이터에서도 순서가 중요합니다. 예를 들어 지난 일.. TIL/딥러닝 2022. 12. 20. 12/15 목 NLP LSTM 오늘의 핵심 키워드 : NLP Tokenizer & Modeling ( RNN, LSTM, GRU ) 1106실습 RNN (Recurrent Neural Network) 으로 텍스트 분류하기 RNN이란 순환 신경망(Recurrent neural network, RNN)은 인공 신경망의 한 종류로, 유닛간의 연결이 순환적 구조를 갖는 특징을 갖고 있다. 이러한 구조는 시변적 동적 특징을 모델링 할 수 있도록 신경망 내부에 상태를 저장할 수 있게 해주므로, 순방향 신경망과 달리 내부의 메모리를 이용해 시퀀스 형태의 입력을 처리할 수 있다. 따라서 순환 인공 신경망은 필기 인식이나 음성 인식과 같이 시변적 특징을 지니는 데이터를 처리하는데 적용할 수 있다. 순환 신경망이라는 이름은 입력받는 신호의 길이가 한정.. TIL/딥러닝 2022. 12. 19. 12/14 형태소 분석기 와 시퀀스방식 인코딩 1104 목적 : KoNLPy 로 한국어 형태소분석기를 사용해 보는 것 대표적인 자연어처리 도구인 NLTK, Spacy 는 한국어를 지원하지 않습니다. 영어를 사용한다면 해당도구를 사용해도 됩니다. 하지만 한국어 형태소 분석 등의 기능을 제공하지 않기 때문에 KoNLPy로 실습합니다. KoNLPy - 공식문서 다른 프로그래밍 언어(JAVA, C++)로 만들어진 형태소 분석기를 파이썬 인터페이스로 사용할 수 있는 도구 입니다. JPype1도 파이썬에서 자바를 사용할 수 있도록 하는 도구입니다. 인터페이스가 파이썬이지만 내부는 해당 언어로 동작하여 다른 언어도 함께 설치되어 있어야 합니다. 그러므로 KoNLPy 는 설치가 까다롭습니다. Java, C, C++로 작성된 도구를 파이썬으로 사용할 수 있도록 연결.. 카테고리 없음 2022. 12. 15. 12/13 화 NLP 자연어 전처리 정규표현식 정규표현식(regularexpression)또는정규식은특정한규칙을가진문자열의집합을의미 주로패턴(pattern)으로부르는정규표현식은특정목적을위해필요한문자열집합을지정하기위해쓰이는식 ASCII 설명 [A-Za-z0-9] 영숫자 [A-Za-z0-9_] 영숫자+"_" [^A-Za-z0-9_] 낱말이아닌문자 [A-Za-z] 알파벳문자 [\t] 공백과탭 (? ((6, 16), (2, 16), (6,), (2,)) # 방법 2 X_train = X.sample(frac=0.8, random_state=42) y_train = y[X_train.index] X_test = X.drop(index=X_train.index) y_test = y[X_test.index] # 균형있게 나누기가 쉽지 않음 3번 방법 .. TIL/딥러닝 2022. 12. 14. 12월 12일 NLP BOW TF-IDF ?? 이미지 데이터를 읽어오면 다차원 형태의 구조로 되어있는데 np.array 형태로 되어있음에도 왜 다시 np.array 로 만들어주었을까요? 리스트 안에는 np.array 로 되어있더라도 여러 장의 이미지를 하나로 만들 때 파이썬 리스트에 작성해 주었습니다. 그래서 이미지 여러 장을 하나의 변수에 넣어주었을 때 해당 변수의 데이터 타입은 파이썬 리스트 구조입니다. train_test_split에 사용하기 위해, 계산의 편의를 위해 넘파이 형태로 변경해 주었습니다. 다중분류에서 손실함수는 훈련데이터의 라벨이 원핫벡터의 경우에는 categorical_crossentropy 라벨이 정수(int)의 형태인 경우에는 sparse_categorical_crossentropy를 사용해보실 수 있습니다 실습 100.. TIL/딥러닝 2022. 12. 13. 12월 6일 딥러닝 말라리아 CNN 분류 , cnn개념 용어 정리 !!! Tensorflow를 사용한 CNN 모델 Overview 층 구성 tf.keras.sequential() tf.keras.models.Sequential([ tf.keras.Conv2D(input_shape=()),# 입력층 tf.keras.MaxPooling2D(), tf.keras.layers.Flatten(),# 은닉층 tf.keras.layers.Dense() # 출력층 ]) 활성화 함수 (activation) - ‘linear’ : 그대로 출력 - ‘relu’ : 은닉층에 주로 사용 - ‘sigmoid’ : 이진 분류 문제(출력층) - ‘softmax’ :다중 클래스 분류 문제(출력층) 컴파일 model.compile() model.compile(optimizer, loss, metrics) -.. TIL/딥러닝 2022. 12. 8. 11/28 월 머신러닝 "불균형 데이터 SMOTE" -2 SMOTE 실제로 데이터를 탐색해보면 불균형한 데이터가 매우 많습니다 EX) 불량품과 정상제품 / 1년중 눈이 오는 날과 오지않는날 / 10년간 지진이 발생한경우/ 암검진 대상중 암에 걸린환자와 아닌환자 이렇듯 균형있게 분포되있는 분류문제가 더 드뭅니다 이러한 불균형한 데이터를 해결하는 방법으로는Resampling 로서 under-sampling과 over-sampling이 있습니다 주요 골자는 두값의 비율을 비슷 하게 맞춰 줍니다 under-sampling over-sampling 더 값이 많은 쪽에서 일부만 샘플링하여 비율을 맞춰주는 방법 더 값이 적은 쪽에서 값을 늘려 비율을 맞춰준 방법 구현이 쉽지만 전체 데이터가 줄어 머신러닝 모델 성능이 떨어질 우려가 있습니다 어떻게 없던 값을 만들어야 하는지.. TIL/머신러닝 2022. 11. 30. 11/28 월 머신러닝 불균형 데이터 SMOTE -1 (혼동행렬) Q왜 아래 그림으로 혼동행렬을 이해하는 것을 추천할까요? A : 사이킷런과 기준이 같기 때문입니다. Q : 정확도로 제대로 된 모델의 성능을 측정을 하기 어려운 사례는 어떤게 있을까요? A : 클래스가 불균형한 데이터일 때, 제대로된 평가를 내리기 어렵습니다. EX ) 불균형한 데이터예시 금융 => 은행 대출 사기, 신용카드 사기, 상장폐지종목 여부 제조업 => 양불(양품, 불량품) 여부 헬스케어 => 희귀질병(암 진단여부) IT관련 => 게임 어뷰저, 광고 어뷰저, 그외 어뷰저 대회에서 어뷰저 관련 내용을 찾을 때는 Fraud 등으로 검색하면 여러 사례를 찾을 수 있습니다. 혼동행렬 실제 결과 예측된 결과 거짓 0 참 1 거짓 0 TN 예측 거짓 / 실제 거짓 아닌 것을 올바르게 틀리다고 예측함 FP .. TIL/머신러닝 2022. 11. 29. 11.16 머신러닝 벤츠 그래디언트 부스팅 (선형회귀, 결정 트리 모델 ,엑스트라 트리 모델 (ExtraTree) , Boosting , GBM,LightGBM,XGBoost) 선형회귀 (Linear Regression) 정의 통계학에서, 종속 변수 y와 한 개 이상의 독립 변수 X와의 선형 상관 관계를 모델링하는 회귀분석 기법 선형 회귀는 선형 예측 함수를 사용해 회귀식을 모델링하며, 알려지지 않은 파라미터는 데이터로부터 추정한다 주요 파라미터 fit_intercept 이 모델에 대한 절편을 계산할지 여부입니다. False로 설정하면 계산에 절편이 사용되지 않습니다(즉, 데이터가 중앙에 위치할 것으로 예상됨). n_jobs 계산에 사용할 스레드 수입니다. 선형회귀 특징 다른 모델들에 비해 간단한 작동 원리를 가지고 있다. 학습 속도가 매우 빠르다. 조정해줄 파라미터가 적다. 이상치에 민감하다. 데이터가 수치형 변수로만 이루어져 있을 경우, 데이터의 경향성이 뚜렷할 경우 사용하.. TIL/머신러닝 2022. 11. 17. 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 2 다음 728x90