본문 바로가기

STUDY/인공지능

(42)
numpy 배열로 저장된 데이터 파일 .npy 불러오기 .npy 로 저장된 데이터 파일을 받았는데! 이런 형식은 처음이어서,..... 받자마자 당황했다. 로드 하는 방식은 아래와 같다.. import numpy as np # numpy.ndarray 로드 df_0 = np.load('/data1/hom1/ict12/keri/Sampling/data/label_0.npy') df_1 = np.load('/data1/hom1/ict12/keri/Sampling/data/label_1.npy') df_2 = np.load('/data1/hom1/ict12/keri/Sampling/data/label_2.npy')
Long-Tail Distribution Long-Tail Distribution(LTD)은 현실 세계의 데이터 셋에서 많이 발생하는 문제 모델이 다양한 task에서 좋은 성능을 내기 위해서는 각 class의 representation을 잘 학습하는 것이 중요 LTD를 개선하기 위한 방법에는 Re-sampling, Cost-Sensitive Learning, Transfer Learning, Representation Learning, Decoupled Training이 있음 [Re-Sampling] 1. Under-Sampling 2. Over-Sampling [Cost-Sensitive Learning] 클래스 별 loss 다르게 줌 [Transfer Learning] [Representation Learning]
[머신러닝] 데이터 불균형 처리 방법 및 예제 코드 불균형한 데이터셋을 처리하는 데 도움이 되는 몇 가지 방법은 아래와 같습니다. 1. 언더샘플링 (Undersampling): 언더샘플링은 다수 클래스의 데이터를 일부만 샘플링하여 데이터셋을 균형있게 만드는 방법입니다. 이를 통해 다수 클래스의 데이터를 일부 제거함으로써 데이터셋의 클래스 비율을 조정할 수 있습니다. 그러나 이 방법은 정보 손실을 가져올 수 있으므로 적절한 샘플링 전략을 선택하는 것이 중요합니다. 2. 오버샘플링 (Oversampling): 오버샘플링은 소수 클래스의 데이터를 복제하거나 인공적으로 생성하여 데이터셋에 추가하는 방법입니다. 이를 통해 소수 클래스의 데이터를 늘림으로써 클래스 비율을 조정할 수 있습니다. 일반적으로 SMOTE (Synthetic Minority Over-samp..
[머신러닝] RandomForest, Boosting 모델 설명 및 예제 코드 [Random Forest] Random Forest는 앙상블 학습 기법 중 하나로 여러 개의 결정 트리를 생성하고 그들의 예측 결과를 조합하여 최종 예측을 수행하는 방법입니다. 결정 트리의 과적합 문제를 완화하며, 특히 특성 선택의 필요성을 줄여줍니다. 예제코드: from sklearn.ensemble import RandomForestClassifier # 데이터 로딩 및 전처리 생략 # 모델 학습 model = RandomForestClassifier() model.fit(X_train, y_train) # 모델 예측 y_pred = model.predict(X_test) [XGBoost] XGBoost는 Gradient Boosting 알고리즘을 기반으로 한 앙상블 학습 기법 입니다. Gradie..
[딥러닝] Transformer란? Transformer는 주로 자연러 처리 분야에서 사용되는 딥러닝 아키텍처로, 시퀀스 데이터의 특성을 잘 캡처하는 트랜스포머 모델입니다. 기존의 순환 신경망RNN과 달리 전적인 self-attention 메커니즘을 사용하여 입력 시퀀스의 모든 위치 간의 상호 작용을 모델링합니다. 주요 구성 요소: 1. Encoder : 입력 시퀀스를 내부 표현으로 변환합니다. 여러개의 층으로 구성되어 있으며, 각 층은 self-attention과 feed-forward neural network로 구성됩니다. 입력 시퀀스의 각 위치에 대해 self-attention을 통해 가중치를 계산하고, 이를 바탕으로 새로운 표현을 생성합니다. 2. Decoder : 출력 시퀀스를 생성하는데 사용됩니다. Encoder와 유사한 구조..
[딥러닝] ResNet이란? 예제 코드 tensorflow, pytorch ResNet은 "Residual Network"의 줄임말로, 딥 러닝 모델의 한 종류입니다. ResNet은 2015년에 발표된 기법으로, 깊은 신경망에서 발생하는 그레디언트 소실 문제를 해결하고, 더 깊은 네트워크를 효과적으로 학습할 수 있도록 도와줍니다. 장점: 깊은 네트워크 학습 가능성: ResNet은 스킵 연결(skip connection)을 사용하여 그레디언트 소실 문제를 완화합니다. 이를 통해 매우 깊은 신경망도 효과적으로 학습할 수 있습니다. 효율적인 학습: ResNet은 학습 과정에서 더 빠르게 수렴할 수 있습니다. 스킵 연결은 정보의 흐름을 원활하게 만들어주고, 그레디언트가 잘 전달되어 경사 하강법의 수렴을 도와줍니다. 정확도 향상: ResNet은 깊은 네트워크를 학습할 수 있어서, 복잡한..
[딥러닝] RNN, LSTM 설명 [RNN] RNN은 Recurrent Neural Network 순환신경망의 약자입니다. RNN은 시퀀스 형태의 데이터, 문자이나 시계열 데이터와 같은 연속적인 데이터를 처리하는 데 주로 사용되는 신경망의 한 종류입니다. RNN은 입력데이터의 이전 상태에 대한 정보를 기억하고 활용하는 반복 구조를 가지고 있습니다. 이전 상태의 정보를 현재 상태로 전달하여 순차적인 데이터의 흐름을 이해하고 처리할 수 있게 됩니다. 이를 통해 RNN은 시퀀스 데이터의 문맥을 파악하고, 다음에 올 데이터를 예측하거나 분류하는 등의 작업을 수행할 수 있습니다. RNN은 주로 자연어 처리, 기계 번역, 문장 생성, 감정 분석 등의 작업에 사용됩니다. RNN은 각 시점마다의 상태를 가지고 있기 때문에 시계열 데이터의 패턴을 학습하..
[머신러닝/딥러닝] feature importance(MDI, Drop Column, Permutation) 각 각에 대한 설명, 코드 [Feature Importance] 머신러닝 모델에서 각 특성(feature)이 예측 결과에 얼마나 영향을 미치는지를 평가하는 지표 어떤 특성이 중요한지를 확인할 수 있으며, 모델 해석과 특성 선택에 유용 여러 방법으로 Feature Importance를 계산할 수 있음 각 각의 방법은 특성 중요도를 계산하기 위해 다른 접근 방식을 사용하며, 실제로는 데이터와 모델에 맞게 적절한 방법을 선택하여 사용하면 됨 [1. MDI (Mean Decrease Impurity)] 의사결정나무 기반 모델에서 사용되는 방법 특성을 기준으로 분기할 때 각 특성이 얼마나 불순도를 감소시키는지를 측정 불순도의 감소가 클수록 해당 특성은 중요한 것으로 간주 from sklearn.ensemble import RandomFor..

728x90