모글모글8 K겹 교차검증(K-fold cross validation) K-fold CV(Cross validation)은 교차 검증기법으로, k회를 설정한 횟수만큼 데이터를 섞어서(Shuffle) Train 데이터 셋과 Valid data셋으로 분리한다. 머신러닝을 할 때, data Centric AI라는 말이 나올정도로 양질의 데이터가 훈련에 있어서 중요성이 높아졌다는 것과 같다.예전의 머신러닝은 모델을 튜닝하는 것이라는 말이 있을정도로 모델 튜닝에 많은 집중을 가했지만, 이제는 데이터에 따라 결과가 천차만별로 달라지게 된다. 따라서 데이터 셋을 검증하는 것은 굉장히 중요한 일이다. K겹 교차검증은 데이터를 섞어서 테스트 해서, validation data셋과 train data셋을 랜덤하게 나누어서 테스트하는 것이 중요하며, 모델을 튜닝할 때 정확도와 손실 값에 영향을.. 2024. 6. 18. 처음으로 돌아가기 캐글을 하다보면 뭔가 금방 빨리 잘하고싶어져서 이것 저것 손을 대보곤 한다.재미있어 보이기도하고, 빨리 잘하고싶은 마음에 잘 알지도 못하는 부분들을 서성거리곤 한다. 생각해보면 무언가 대단하게 잘 하려고 하기보다는 사실은 간단히고 기본적인 것들을 잘하고 싶은것이다.(지금은 그렇다) 데이터를 탐색해서 중요한 포인트를 시각화해서 끄집어내고,손질하고(결측치 채우고, 극단치 버리고 - 머리 꼬리 자르고, 원 핫 인코딩 슉슉 데이터를 컴퓨터에게 먹기 좋게 대령하고)모델을 만들어서 돌린다. 지금까지 배운 지식으로는모델을 만들고 층을 쌓고, 층 개수와 유닛을 적절하게 지정해주고활성화 함수 잘 넣어주고, 손실함수와, 옵티마이저, 메트릭을 적절히 지정해준 후에포크와 배치사이즈를 잘 지정해주고데이터를 적절한 사이즈로 tr.. 2024. 6. 18. [데이터 분석] 원 핫 인코딩 원 핫 인코딩은 왜 필요할까?데이터를 컴퓨터에게 학습시키기 위해서 사람과 컴퓨터가 데이터를 이해하는 방식을 알면 좋을 것 같습니다.사람은 데이터를 이해할 때 다차원적으로 이해해서, 예를 들면 시간적 흐름, 공간적인 관계, 시각적인 요소 등 사람은 그것을 쉽게 구분합니다. 컴퓨터에는 여러가지 프로그래밍 언어들이 있지만 그것도 사람이 데이터를 다루기에 편한 방식으로 발전되어왔고,결국 개발 코드를 기계어로 번역하는 과정에서 인터프리터나 컴파일러를 통해 데이터를 0,1로 이해한다. 사람이 다른 사람들과 잘 소통하기 위해서는 그 사람의 소통 방식으로 대화하듯 컴퓨터에게도 가장 좋은 방식으로 전달해줘야한다. 원 - 핫 - 인코딩은 컴퓨터에게 데이터를 이해시키는 방법으로 가장 좋은 방법인 것 같습니다. 원 핫 인코.. 2024. 6. 15. 머신러닝 기본 개념 정리 타이타닉 캐글 데이터셋으로 케라스 창시자에게 배우는 딥러닝 챕터3, 4번 예제로 딥러을 진행 해보다가 결국 값이 나오기는 했지만, '기본 개념을 자세하게 모르고 진행 하는 것은 큰 의미가 없다'는 생각에 돌아와 기본 개념을 이해해야겠다는 생각으로 정리를 해보았습니다.Gradient텐서연산의 도함수 f'(x)를 그레이디언트(Gradient) 라고 부르는데, 수학적 연산이다. 모델 가중치를 여러 방향으로 이동했을 때 손실이 얼마나 변하는지 알 수 있으며, 손실이 감소하는 방향으로 가중치를 이동 시킬 수 있다.한 번에 하나씩이 아니라 한번의 업데이트로 전체 가중치를 동시에 업데이트 시킨다는 특징이 있다.시작 단계에서는 작은 난수로채워져있음. W와 b가 난수일 때, relu(dot(W, input) + b )는.. 2024. 6. 11. [캐글] 타이타닉 - 탐색적 데이터 분석(EDA) 정리 캐글을 하면서 도대체 전체적인 맥락이 어떻게 돌아가는건지 궁금해서타이타닉 캐글 내용 중 탐색적 데이터 분석(Exploratory Data Analysis) 내용을 정리해보았습니다.데이터를 효과적으로 보기 위해 이리 저리 데이터를 굴려보는 과정이 꼭 필요할 것 같네요.그래도 고수한테 배우는게 빠른 길이라 생각하면서! 마인드맵으로 정리한 내용은 아래와 같습니다. 결론:matplotlib.pyplot을 기반으로 seaborn 라이브러리를 사용하면 더 쉽게 그래프를 만들 수 있다.그러나 seaborn이 없어도 matplot으로도 그래프를 만들 수 있다. EDA에 사용된 그래프: sns.countplot, catplot, kde, bar, distplot, pie, violinplotEDA 사용된 표: pd.cr.. 2024. 6. 7. [캐글] 처음 시작하는 캐글 - 타이타닉(4) 타이타닉 5번째네요. 코드를 한 줄 한 줄 보는 것이 시간이 오래걸리긴해도, 익숙해지는 것을 목적으로 끝까지 마무리해보려고 합니다!이 글은 이유한님의 글을 참고하며 캐글 필사를 해보면서유한님의 정리가 깔끔해서 그것들을 참고하고 있습니다.(출처: 캐글 코리아 홈페이지의 이유한 님의 글)3. Feature engineering3.1. fill null dataAGE 채우기null data 를 어떻게 채우느냐에 따라 모델의 성능이 좌지우지될 수 있어 중요한 요소입니다.이름을 통해 Age를 채워 넣습니다. 이름으로 나이를 유추할 수 있음. (이름과의 관계를 통해 age를 채우는 방법!)- 여기서 이름을 추출하여 'Initial' 변수에 replace()함수로 주요한 특징 5가지로 (Mr, Mrs, Miss, M.. 2024. 6. 4. 이전 1 2 다음