본문 바로가기

728x90

분류 전체보기

(122)
성능 최적화 성능 최적화모델의 복잡도와 과적합Early StoppingDropout 모델의 복잡도와 과적합(Overfitting) 모델링의 목적 모델링의 목적학습용 데이터에 있는 패턴으로, 그 외 데이터(모집단 전체)를 적절히 예측학습한 패턴(모델)은,학습용 데이터를 잘 설명할 뿐만 아니라모집단의 다른 데이터(val, test)도 잘 예측해야 함모델의 복잡도너무 단순한 모델 : train, val 성능이 떨어짐적절히 복잡한 모델 : 적절한 예측력너무 복잡한 모델 : train 성능 높고, val 성능 떨어짐Underfitting과 Overfitting모델(알고리즘)마다 복잡도를 결정하는 요인이 있음. 과적합 Overfitting : 왜 문제가 될까?모델이 복잡해 지면, 가짜 패턴(혹은 연관성)까지 학습하게 됨.가짜 ..
CNN 모델링 실습 CNN 모델링 실습환경 세팅, 데이터 준비, 모델링추가 학습으로 틀린그림 찾기진짜 그림판 손글씨로 쓴 그림 예측  https://drive.google.com/file/d/1OA1-59dILto6UmJrFaxPDESTQKVPLbN2/view?usp=sharing 4-1 CNN 모델링.ipynbColab notebookdrive.google.com 추가 실습으로는패션 아이템 이미지 10가지로 분류 실습을 진행해봄https://drive.google.com/file/d/1C9AZ1czwDJ3WuvQhZFQ7zqgIT7HI9-eA/view?usp=sharing 4-2 CNN 모델링_실습.ipynb drive.google.com
CNN 모델링 CNN 기초CNN 개념 이해CNN 구조코드 이해CNN 개념 이해 CNN 컨셉 - 영역 이 사진을 보고 어떻게 고양이인지 알 수 있나요?귀, 눈, 코, 수염??이 모든 것은 특정 부분(영역)에서 얻어낸 특징(feature)이다.이러한 특징으로 부터 고양이(target)인지 알 수 있다. CNN 컨셉 - 영역, 그리고 필터 고양이의 특정 부분을 잘 캐치해 내는 필터들을 만들고자 한다,귀를 잘 캐치해내는 필터귀 부분을 찾으면 숫자가 커지고없으면 숫자가 거의 0에 가까워 지는이동왼쪽 위 끝에서 부터오른쪽으로 몇 칸씩 움직이며 '귀'를 찾습니다.오른쪽 끝까지 이동한 후에왼쪽으로 돌아와 아래로 몇 칸 내려와서다시 오른 쪽으로 이동한다. CNN 컨셉 - 모델 학습 CNN 학습 : 고양이를 잘 맞추는 필터 여러 개를 ..
분류 모델링 실습 이진 분류 모델링 실습 진행회귀 모델과 다른 부분을 중점으로 학습 진행함은닉층의 활성화 함수(히든 레이어 활성화 함수)는 렐루출력층(아웃풋 레이어) 활성화 함수는 이진 분류일때는 시그모이드 사용모델 학습시 1. 리셋하고 모델 처음부터 학습 시키는 방법 2. 학습 이후 시점부터 더 학습시켜서 줄여가는 방법(이 방법 사용하고 난 후 그래프 그려보면 기존 학습했던곳 마지막 부분부터 그래프가 그려짐) Precision과 recall 계산위 예시 사진에서 고객 이탈이 0 과 1 로 표현될때모델을 만들었는데 한달동안 예측을 진행했을때실제 이탈하는 고객 중 어느정도 맞췄는냐 ? -> recal1 관점에서 recal 10 / 7 + 10모델이 이사람은 이탈할꺼야 라고 예상했는데 그 중 진짜 이탈하는 고객 -> prec..
분류 모델링 분류 모델링Hidden Layer 이해Binary ClassificationMulti-class Classification Hidden Layer 이해 Hidden Layer 에서 무슨일이 일어나는가?실제 Hidden Layer 의 각 노드가 어떤 (비즈니스) 의미인지 파악하는 것은 어렵다.아래 학습할때는 이해를 돕기 위해 특별한 모델 구조를 구성했음 연결모든 노드 간에 연결을 할 수 도 있지만 (Full Connected)아래처럼 연결을 제어할 수도 있음 (Locally Connected) 학습예측 값과 실제 값을 비교하며, loss funcion  으로 오차를 계산하고오차를 줄이기 위해, 파라미터(가중치)를 업데이트 한다. 학습드디어 오차를 최소화 하는 파라미터(가중치)를 찾았다. 학습이 완료된 후,..
회귀 모델링 실습 회귀 모델링 예제 https://colab.research.google.com/drive/1qusPaD7MjKSkBi42iOVfaeesAjDG-bW9#scrollTo=d7PI9-30TO0T 2-1 회귀 모델링.ipynbColab notebookcolab.research.google.com 위 실험에서 실습 2에서이번에는 여러분이 원하는 구조와 하이퍼파라미터 값을 조정하여 성능을 높여 봅시다. 에서 기존에 옵티마이저는 Adam을 사용했고, 최근 회귀 모델에서는 Adam을 많이 사용하는 것을 알고는 있지만, RMSprop 옵티마이저를 사용해 봤습니다.RMSprop (Root Mean Square Propagation) 기존 모델에서 사용했떤 Adam 대신 RMSprop 를 사용한 이유와 장점가중치 업데이트의..
회귀 모델링 모델 구조와 Loss, Optimizer Process1. 각 단계(task)는 이전 단계의 Output을 Input으로 받아처리한 후다음 단계로 전달2. 공통의 목표를 달성하기 위해서 동작예 : 상품기획 - 디자인 - 생산 - 물류입고 - 매장 판매 딥러닝 구조   모데 구조 설계 input : 3개의 feature분석 단위에 대한 shape1차원 : (feature 수, )2차원 : (rows, columns)output : 예측 결과가 1개 변수(y가 1개 변수) Loss functionLoss function다양한 이름 : 오차함수, 손실함수, 목적함수 (Objective Function)학습 목적을 결정 : 이 값을 최소화/최대화 하는 것이 목적 OptimizerOptimizer오차를 최소화 하..
pytorch 데이터다루기 텐서 다루기 기초import torchimport numpy as npimport pandas as pd 1. torch.tensor()리스트, 넘파이로 부터 데이터 프레임은 지원하지 않음 텐서의 속성텐서의 속성 확인하기 생성 시 데이터타입 지정보통, 다양한 연산을 위해서 dtype = torch.float32로 지정 Operations텐서 작업을 디바이스(device)에 할당cpu, gpu넘파이처럼 다루기결합 : torch.cat 연산집계함수행렬 곱요소 곱(element-wise product)단일 요소 텐서단일 요소 텐서로 부터 값을 뽑아서 사용하려면, .item()2.Data Loader(1) 데이터 준비 (2) 텐서로 변환torch.tensor(numpy array, )numpy array를 입력..
딥러닝 개요 딥러닝 코드 구조 ML 코드 구조와 매우 유사하지만 추가되는 부분들이 있음 우선은 딥러닝이 많이 복잡하지 않다는 것을 확인하기 위해 우선 실습을 먼저 해봄 https://drive.google.com/file/d/1_hIIjlRSDtDQQYhqgb60pWOI_1kbR8E6/view?usp=sharing 1-2 딥러닝 무작정 따라하기.ipynbColab notebookdrive.google.com.데이터 분할 1 - x, y  데이터 분할 2 - train, validation, test   train, validation, test의 역할 데이터를 보통 Train, Validation, Test 로 나눈다.Train : 학습용모델을 생성할 떄 사용. (예:교재)validation : 검증용모델의 성능을 ..
머신러닝 기초 머신러닝 빠르게 정리하기데이터 분석 프로세스모델, 모델링ML, DL, RL머신러닝 코딩 연습전체 Process 위 방법론에서 시작질문, 끝질문이 가장 중요함 (무엇이 문제인가? / 문제가 해결 되었는가?) 회사에서 딥러닝은 비지니스 문제가 있고, 이 문제를 해결하는데 딥러닝 모델링을 가지고 해결하겠다 했을 때 사용되기 때문 모델, 모델링 Model모델 : 데이터로부터 패턴을 찾아, 수학식으로 정리해 놓은 것모델링 : 가능한한 오차가 적은 모델을 만드는 과정모델의 목적 -> 표본을 가지고 모집단 전체를 예측하는 것 (우리가 가진것 = 표본, 알고싶은 것 = 예측)샘플을 가지고 전체를 잘 추정샘플 :  표본, 부분집합, 일부, 과거의 데이터 (우리가 들고 있는 데이터!)전체 : 모집단, 전체집단, 현재와 미..
LLM 정리 LLM이란 Large Language Model의 약자로 대규모 데이터로 사전 학습된 초대형 딥러닝 모델을 의미합니다. Large의 두가지 의미대규모 데이터셋을 사용매우 큰 파라미터 수다양한 작업을 수행하며 일반적으로 대부분 잘 답변하는 모델 LLM 챗봇?LLM  기술을 기반으로 만들어진 대화형 인공지능 시스템 (ChatGPT)LLM 챗봇 설계 시 고려사항이해관계자들에 대한 정의 (End User, 이해관계자)End User (최종 사용자)실제로 서비스를 이용하는 사용자Stakeholder(이해 관계자)프로젝트 또는 서비스에 직/간접적으로 영향을 받는 모든 사람EX, CEO, 기획자, 개발자 등이 포함될 수 있음프로젝트의 End User와 이해관계자는 다를 수 있음즉 최종 사용자가 반드시 프로젝트의 주요..
코테 DFS 그래프 탐색 종류DFS : Depth-first search (깊이 우선 탐색) Stack자신의 자식이 우선 DFS는 재귀함수를 사용하기 위해함백트래킹에서 재귀함수 개념이 매우 중요 재귀함수자기 자신을 다시 호출하는 함수주의할점재귀함수가 종료되는 시점 반듯이 명시재귀함수의 깊이가 너무 깊어지면 Stack OverflowDFS, 백트래킹에서 주로 사용 (그중 백트리킹에 많이 사용됨)아이디어시작점에 연결된 Vertex 찾기연결된 Vertex를 계속해서 찾음(끝날 때 까지)더이상 연결된 Vertex 없을 경우 다음 노드 찾음시간복잡도알고리즘이 얼마나 오래 걸리는지DFS : O (V+E)검색할 그래프 : 2차원 배열방문여부 확인 : 2차원 배열(재방문 금지)Queue를 사용하지 않음백준 2667 그림 문제 1..

728x90