LGAimers의 tensorflow, deeplearning 학습 방법을 다 수강하였으며,딥러닝 학습의 한계점에 대한 포스팅을 작성하였다.(LG Aimers 자료 참고)2024.05.22 - [기계학습] - 딥러닝 학습의 문제점2024.05.20 - [기계학습] - 텐서플로우(Tensorflow)와 딥러닝 학습
분류 전체보기
DATA 증가 & 딥러닝 모델 한계데이터 차원 증가, 구조 복잡 -> 기술력의 부족으로 한계 맞이 문제점 :학습 속도 문제데이터 개수가 폭발적으로 증가함에 따라 딥러닝 모델 학습시 소요되는 시간의 폭발적 증가.발생 원인 - 전체 데이터를 사용해서 손실 함수 계산하기에 계산량 폭발적이다. 해결 방법 - 부분 데이터만 활용해서 손실 함수를 계산하자! SGD.SGD란, 데이터 그룹인 mini-batch에 대해 손실함수 계산하는 것.GD에 비해 다소 부정확할 수는 있지만, 계산 속도가 훨씬 빠르다.mini-batch를 설정함에 따라 gradient 방향의 변화가 크다.SGD를 쓰려면 learning rate를 설정해야 하는데, 너무 크면 발산할 가능성이 있고, 너무 작으면 수렴하지 못할 가능성이 있다.이에 대해..
딥러닝2024.05.20 - [기계학습] - 머신러닝과 딥러닝의 차이앞 포스팅에서 말했듯, 딥러닝은 히든층이 3층 이상인 경우를 말한다. 보통 이런 딥러닝 모델이 학습할 때에는 Loss function을 최소화하기 위해 최적화 알고리즘을 적용시킨다.여기서 Loss function은 예측값과 실제값간의 오차값을 뜻하는 함수이다.Optimization은 그 Loss function을 최소화시키는 모델의 파라미터(인자)를 찾는 과정을 말한다. 이 Optimization 알고리즘 중 가장 기본적인 알고리즘은 Gradient Descent, 경사하강법이다.가중치가 W일 때 손실함수를 loss(W)라고 나타낸다면, 기울기는 이 손실함수를 미분한 것인데, 이를 이용하는 것이다.역전파(Backpropagation)를 ..
학교에서 진행한 글로벌 사이버 위협과 대응 특강을 듣고 정리하였다. 2024.05.20 - [정보보안] - 글로벌 사이버 위협과 대응 특강 정리 이전에 부스트코스 퀴즈에서 머신러닝과 딥러닝의 차이를 다루는 문제가 나왔는데,이 차이점을 제대로 알지 못하고 있던 것 같아 한 번 정리해보았다.2024.05.20 - [기계학습] - 머신러닝과 딥러닝의 차이 그리고 파이썬 기본문법을 정리하였고,2024.05.20 - [python] - 한 줄 if문 (python)2024.05.20 - [python] - 리스트 요소 곱하기 마지막으로 LG Aimers에서 공부한 퍼셉트론과 논리회로 게이트들을 파이썬으로 구현하는 법을 정리하였다. 2024.05.20 - [기계학습] - 퍼셉트론2024.05.20 - [기계학습] ..
AND, OR gatedef AND_gate(x1, x2): x = np.array([x1, x2]) weight = np.array([0.5, 0.5]) bias = -0.6 y = np.matmul(x, weight)+bias return Step_Function(y) def OR_gate(x1, x2): x = np.array([x1, x2]) weight = np.array([0.5, 0.5]) bias = -0.1 y = np.matmul(x, weight)+bias return Step_Function(y) def Step_Function(y): x = 0 if y NAND, NOR gatedef AND_gate(x1, x2): x = np..
파이썬에서 리스트를 만들어 이 리스트의 값끼리 곱하려면 어떻게 해야 할까.a = [1, 3, 5]b = [2, 4, 6]a+b ##[1, 3, 5, 2, 4, 6]a*2 ##[1, 3, 5, 1, 3, 5] 이런 식으로 되고, a*b는 에러가 뜨기 때문에 multiple = [] for i in range(len(a)): multiple.append(a[i]*b[i]) 이런 식으로 코드를 짜야 multiple이라는 변수에 a와 b를 곱한 결과 리스트가 저장된다. import numpy as npx = np.array([1, 3])y = np.array([2, 4])print(np.matmul(x, y)) ##14print(np.dot(x, y)) ##14print(x@y) ##14 만약 numpy 배열로..
if output>0: y = 1else: y = 0 원래라면 이렇게if 조건 : 실행문else : 실행문 이러한 형식으로 써야 하지만, 조건이 간단하고 반환값도 간단하다~ 할 때는 y = 1 if output>0 else 0 이렇게 한 줄로 쓸 수 있다. 형식 : if else
퍼셉트론의 기본 구조입력값, 가중치, bias, 활성화함수, 출력값딥러닝에서 퍼셉트론은, 사람의 신경계에서의 뉴런과 같은 역할. 퍼셉트론 선형 분류기 - 단층 퍼셉트론 [입력층 + 출력층 만!]but, 하나의 선으로 분류 불가능한 문제 등장 -> 다층 퍼셉트론 (비선형) 다층 퍼셉트론 : 단층을 여러 층으로 쌓기 -> 입력층+히든층(입력층과 출력층 사이 모든 Layer)+출력층여기서, hidden layer가 3층 이상이면 딥러닝이라 함!1 hidden layer : 선 하나로 분리2 hidden layer : 선 두 개로 분리N hidden layer : 선 n개로 분 참고 : LG Aimers