반응형

SW/딥러닝 58

38. 딥러닝 : Basic Preprocessing (기본 전처리) : 개념, 사용, 예시

가장 간단한 전처리 중 하나로 시작합니다. 종종 주식에 관심이 없지만 주가를 전처리할 때 일반적으로 발생하는 상대 가치에 대해 알아보겠습니다. Google을 열고 Apple의 주가를 입력하면 얻을 수 있는 것은 Apple의 주가입니다. 그러나 빨간색 또는 녹색 숫자는 Apple 주가의 상대적인 변화를 의미합니다. 이것은 매우 흔한 전처리의 예입니다. 이러한 상대적 메트릭은 주가와 같은 시계열 데이터로 존재하고 있을 때 특히 유용하다고 생각하지 않습니다. 그러나 곧 금융의 세계에서 이러한 상대적인 변화를 로그로 더 변환 할 수 있습니다. 많은 통계 및 수학적 방법이 로그를 활용하여 머신 러닝에서 더 빠른 계산을 촉진하기 때문에 로그 변환은 일반적이지 않지만 학습 속도를 높일 수 있습니다. 이것은 예시로 제..

SW/딥러닝 2020.08.28

37. 딥러닝 : Preprocessing (전처리) : 개념, 목적

전처리 머신 러닝 알고리즘 생성을 시작할 때 수행해야하는 첫 번째 활동에 관한 것이며, 전처리는 모델을 통해 실행하기 전에 데이터 세트에 적용하는 모든 조작을 의미합니다. 이미 훈련에 적합하게 데이터를 사전 처리했습니다. 텐서플로우 인트로에서 이미 일부 사전 처리를 보았고 수행 한 모든 훈련을 PC 파일로 저장했습니다. Excel 파일 csv 또는 NPC 파일에 저장하는 것은 전처리의 한 유형이지만 이전과 같이 순서를 변경하는 것보다 주로 데이터 변환에 중점을 두고 알아보겠습니다. 전처리의 목적 몇 가지 중요한 사항이 있습니다. 하나는 이전 10 분의 1에서 본 라이브러리와의 호환성 또는 Excel 스프레드 시트 및 데이터 과학이 아닌 텐서플로우에 관한 것입니다. 종종 어떤 형식 으로든 데이터가 제공되며..

SW/딥러닝 2020.08.27

36. 딥러닝 : Adaptive Moment Estimation : 개념, 분석, 개요

지금까지 서로 다른 두 가지 최적화 알고리즘 업데이트 규칙에 새로운 아이디어를 가져 왔음을 알았습니다. 이러한 개념을 결합하고 더 나은 결과를 얻을 수 있다면 더 좋을 것입니다. 가장 유용하다고 생각하는 최적화 알고리즘의 상태에 도달 할 수 있는 rate와 모멘텀은 Adaptive 모멘트 추정이라고하며, 실제로 적용되는 최첨단 최적화 프로그램이며 2014 년 12 월 22 일에 제안된 새로운 기능입니다. 2014년 또는 2015 년에 대학에서 머신 러닝을 공부 한 사람이 있다면 이 방법을 보지 못했을 것입니다. 이는 또한 공부를 마친 후에도 ML 공부가 끝이 없다는 이야기를 뒷받침합니다. 아담 (Adam)은 이번 포스팅의 주제이며 Adaptive Moment Estimation의 줄임말입니다. ADA g..

SW/딥러닝 2020.08.23

35. 딥러닝 : Adaptive Learning Rate Schedules : 개념, 방법, 개요

딥러닝의 다른 것들과 마찬가지로 학습 속도 비율에 대해 더 깊이 파고들어야 합니다. 간단한 규칙을 사용하여 학습 속도를 조정하는 대신, 이 주제에 대한 고급 연구 결과를 사용할 수 있습니다. Ada grad를 사용하면 마술이 평소대로 일어날 것이라고 말할 수 있습니다. 머신 러닝으로 훈련 할 때 최첨단 머신 러닝으로 전체 비디오를 살펴 보는 것이 좋습니다. 모델 훈련을 위한 최상의 방법을 선택할 수 있어야 합니다. 먼저 우리는 Ada grad는 Adaptive Gradient 알고리즘의 약자이며 2011년에 새로 제안되었으므로 각 업데이트 및 모든 가중치에 대해 학습 속도를 동적으로 변경하므로, 원래 규칙은 다른 방식이었습니다. w의 변화는 m과 같습니다. 학습 속도와 W에 대한 손실의 부분 미분 값을 ..

SW/딥러닝 2020.08.22

34. 딥러닝 : 학습률 (learning rate) : 좋은 학습 속도인지 분별하는 방법

학습률에 대해 이야기하지 않고 포스팅을 하는 동안, 위 그림이 매우 중요하지만, 크게 다루지는 않았습니다. 지금까지는 낮은 학습 속도 사례만 살펴보았습니다. 목표에 도달하는 작은 학습 속도를 사용했습니다. 그러나 학습 속도가 높으면 손실을 빠르게 최소화할 수 있지만, 어느정도까지만 도달하고, 진동을 시작하고 손실 값이 멈추게 됩니다. 학습률이 너무 높을수록 손실을 최소화할 수 없으며 비용은 그래프에서 볼 수 있듯이 상향으로 폭발 할 것입니다. 지수 적으로 스케쥴에 따라 정의된 학습률과 같이 잘 선택된 학습률은 낮은 학습률보다 훨씬 빨리 손실을 최소화합니다. 또한 높은 학습 속도보다 더 정확하게 수행 할 수 있습니다. 개발자는 항상 좋은 학습 속도를 목표로 하고 있습니다. 문제는 특정 데이터 모델에 대한 ..

SW/딥러닝 2020.03.28

33. 딥러닝 : 학습률 (learning rate) : 방법, 원리, 설정 팁, 개념

하이퍼 매개 변수의 개념을 소개합니다. 가중치, 바이어스 매개 변수는 알고리즘의 가중치 및 깊이와 숨겨진 유닛의 값과 레이어 값과 같은 것입니다. 알고리즘과 데이터에 가장 적합한 경로를 찾기 위해 하이퍼 매개 변수를 가져야 한다고 언급 했습니다. 최소값으로 크게 진동하지 않고 최소값에 도달하거나 무한대로 분기하지 않고 손실 함수가 완만하게 내려갈 수 있을 정도로 작아야합니다. 또한 최적화가 적당한 시간 내에 이루어 지도록 충분히 커야 했습니다. 하나의 매개 변수에 대해 그라디언트 하강에 제공하는 것으로 학습 속도가 있습니다. 충분히 작거나 충분히 큰 학습률은 너무 모호합니다. 적절한 학습 속도 선택을 다루는 현명한 방법은 소위 학습 속도 스케쥴을 채택하는 것입니다. 학습 속도 스케쥴은 가장 좋은 방법 중..

SW/딥러닝 2020.03.27

32. 딥러닝 : 모멘텀 (Momentum) : 개념, 원리, 필요 이유

주변 값에 얽매이지 않고 최소값에 도달 할 수있는 기회를 개선 할 수 있는 추가 방법을 모색해보겠습니다. 그라디언트 하강 및 확률적 그라디언트 하강은 모델을 훈련시키는 좋은 방법입니다. 그것들을 적용하면서 할 가장 간단한 확장으로 진행해야합니다. 모멘텀 (momentum) 모멘텀이란 무엇입니까? 모멘텀을 설명하는 쉬운 방법은 물리학적 비유를 통한 것입니다. 작은 언덕은 볼이 멈추지 않는 평평한 표면에 도달 할 때까지 롤링을 계속하지 않을 것입니다. 작은 언덕은 지역 최소값이고, 큰 계곡은 전역 최소값입니다. 운동량이 없으면 공은 원하는 최종 목적지에 도달하지 못합니다. 속도가 전혀 떨어지지 않고 작은 언덕에서 멈추었을 것입니다. 지금까지 모멘텀을 고려하지 않았습니다. 즉, 작은 언덕에 빠질 가능성이있는 ..

SW/딥러닝 2020.03.26

31. 딥러닝 : 경사 하강 함정 (gradient descent pitfalls) : 원인, 이유, 배경

포스팅할 내용으로 기다리고 있었고 가장 중요하지만 일찍 포스팅하는 것은 합리적이지 않았습니다. 지금까지 그래디언트 하강과 확률적 그래디언트 하강을 보았습니다. 그라디언트 디센트 알고리즘이 시작하고, 단일 배치 GD를 내림차순으로 시작하는 것은 느리지만 결국 일관된 방식으로 최소값에 도달합니다. SGD는 이전 포스팅에서 말했듯이 여전히 많은 가치를 지니고 있지만 훨씬 더 빠릅니다. 실제 함수는 그렇게 규칙적이지 않습니다. 실제 함수에서는 마지막 함수값이 최소값이 아니라는 것입니다. 최소한 중 하나 일뿐입니다. 최소 손실 지점을 나타냅니다. 각 로컬 최소값은 기계 학습 최적화에 대한 차선책입니다. 그라디언트 디센트는 이 문제에 취약합니다. 종종 글로벌 최소값이 아닌 시작점에서 가장 가까운 최소값에 속할 수 ..

SW/딥러닝 2020.03.25

30. 딥러닝 : 확률적 경사 하강 : 개념, 원리, 장점, 사용 이유

이 섹션에서는 최적화에 대한 섹션으로, 모델 매개 변수에 모두 사용하는 알고리즘을 참조합니다. 지금까지 기울기 하강 만 보았으므로 이제 개선된 알고리즘으로 이어지는 사항에 대해 논의할 때입니다. 대부분 이론적인 관점에서 볼 때 가치가 있지만 실제 실행에서는 느립니다. 따라서 이러한 상황을 극복해야할 단계가 있습니다 . 가중치를 업데이트 하기전에 전체 훈련 세트를 통한 각 업데이트는 변화가 매우 작습니다. 이것은 학습 속도의 작은 값에 의해 구동되는 기울기 하강의 전체 개념 때문입니다. 기억하는 것처럼 위험에 처할 때 너무 높은 값을 사용할 수 없었습니다. 따라서 매우 작은 학습 속도를 사용하여 많은 포인트에 걸쳐 많은 에포크를 가지고 있습니다. 이것은 느립니다. 기본적으로 그라디언트를 항해합니다. SGD..

SW/딥러닝 2020.03.24

29. 딥러닝 : Xavier Initialization (변수 초기화 방법 ) : 개념, 방식, 원리, 적용

이번 포스팅에서는 초기화에 대해 계속 이야기 할 것입니다. 고급 전략으로 Xavierinitialization이라 합니다. Xavierinitialization은 Glorot이라고도 합니다. Glorot 또는 Xavier는 2010년에 이 방법을 제안하고 대규모로 빠르게 채택되었으므로 좋은 기술이라 할 수 있습니다. 처음 배운 방법은 임의로 선택하는 방법이었습니다. 균일하고 일반적인 Xavier 초기화는 모두 기본입니다. 랜덤화에 사용되는 방법은 중요하지 않습니다. 각 레이어의 통과와 함께 다음과 같은 경우 아웃풋 수입니다. 초기화는 일부 범위에서 분산을 유지합니다. 두 가지 공식이 있습니다. Uniform Xavier Initialization입니다. -x, x까지의 무작위 균일 분포에서 각 가중치 W..

SW/딥러닝 2020.03.23

28. 딥러닝 : 단순 초기화의 타입 : 초기화 유형, 방법, 개념, 유념

초기화 문제를 안다는 것을 알고 어떻게 처리 할 수 ​​있는지 살펴보겠습니다. 간단한 접근 방식은 작은 범위 내에서 무작위로 가중치를 초기화하는 것입니다. 최소한의 예에서는 무작위로 균일하게 사용하고 범위는 0과 1 사이였습니다. 1과 0.1에서 무작위로 값을 선택합니다. 그러나 균일한 방식으로 각 방법은 동일한 확률로 선택될 확률이 동일합니다. 두 번째 방법은 정규 이니셜 라이저를 선택하는 것입니다. 기본적으로 아이디어는 동일합니다. 이번에는 평균 0, 정규 분포에서 숫자를 선택합니다. 그러나 분산은 임의적이지만 작아야 합니다. 정규 분포를 따르기 떄문에 예측할 수 있습니다. 0에 더 가까운 값은 다른 값보다 훨씬 더 많이 선택될 수 있습니다. 초기화의 예는 평균이 0인 정규분포를 사용하는 것입니다. ..

SW/딥러닝 2020.03.22

27. 딥러닝 : 오버피팅(과적합) : 훈련 멈추는 시점, 팁, 개념, 종류

오버 피팅과 관련된 세부 사항은 더 자세히 살펴보아야 합니다. 마지막 기능이 최소화 될 때까지 모델을 수십 번 훈련했다고 말했습니다. 계속 할 수 있지만 어느 시점에서 과적합할 것입니다. 학습 프로세스를 중단하는 것에 대한 한두 가지 사례를 살펴보면서, 모델이 학습되었음을 나타내는 추가 규칙을 살펴볼 것입니다. 적절한 용어는 조기 중지입니다. 일반적으로 조기 중지는 과적합을 방지하는 기술입니다. 가장 간단한 방법은 첫 번째 섹션 이후 최소한의 예에서 미리 설정된 수의 에포크 (epoch)를 훈련하는 것입니다. 최소에 도달했거나 학습 속도가 충분히 높아졌다고 보장 할 수 없습니다. 손실이 무한대로 바뀔 수도 있습니다. 훈련을 위해 시도해보아야 합니다. 신기한 실수를 제외하고 실수는 거의 만족스럽지 못하지만..

SW/딥러닝 2020.03.14

26. 딥러닝 : K-FOLD CROSS-VALIDATION (K배 교차 검증) : 개념, 방법, 팁

지난 몇 가지 포스팅에서 왜 데이터를 세 부분으로 훈련, 검증, 테스트로 분할해야 하는지를 알아보았습니다. 이것은 표준 메커니즘이며 일반적으로 머신 러닝이 적절한 경우 적용할 데이터가 충분할 것입니다. 기본 관계의 일부를 잃어 버릴 수 있기 때문에 데이터를 세 개로 나눌 여유가 없거나 데이터가 너무 적어 훈련할 수 없어서 알고리즘이 아무것도 배울 수 없을 수 도 있습니다. 이 문제에 대한 또 다른 답이 있으며 이것을 n 배 교차 검증이라고합니다 . 이것은 일반적인 전략과 비슷하지만 훈련 및 유효성 검사 데이터 세트를 영리하게 결합하는 전략이지만 여전히 테스트 하위 세트가 필요합니다. 훈련 및 유효성 검사 단계를 결합하고 있지만 테스트 단계를 피할 수는 없습니다. 11000 개의 관측치가 포함 된 데이터 ..

SW/딥러닝 2020.03.13

24. 딥러닝 : 훈련, 검증, 테스트 데이터 : 종류, 의미, 활용 방법, 팁

이전 포스팅에서는 유효성 검사 데이터 세트를 알아보고 초기 데이터 세트를 세 부분으로 나누어야 한다고 했습니다. 모델을 다듬고 유효성을 검증한 후 학습 유효성 검증의 마지막 부분에 대해 알아보도록 하겠습니다. 유효성 검증은 새로운 데이터에서 모델을 실행하여 수행됩니다. 이전에는 보지 못했지만 실제 모델을 적용하는 것과 동일하므로 데이터가 훈련되고 검증됩니다. 머신 러닝의 최종 버전이 있습니다. 테스트 데이터 세트를 사용하여 테스트 할 준비가 되었습니다. 이 테스트에서 얻은 예측의 정확도는 실제에 배치 할 경우 모델에 예상되는 정확도입니다. 따라서 테스트 데이터 세트는 마지막 단계입니다. 먼저 요약 해보겠습니다. 데이터 세트를 얻은 다음 세 부분으로 나눕니다. 실무자들이 어떻게 접근할까요? 완벽하게 정의된..

SW/딥러닝 2020.03.12

23. 딥러닝 : 훈련과 검증 : 방법, 예제, 데이터 구성 종류

이전 포스팅을 통해 머신 러닝에 있어 과적합이 실제 잘 나타는 문제라는 것을 확인했습니다. 과적합을 방지하기 위해 어떻게해야 하는지 알아보도록 하겠습니다. 일반적으로 사용 가능한 데이터를 세 가지 하위 집합으로 구성하여 과적합을 파악합니다. 첫 번째 데이터는 이름에서 알 수 있듯이 학습 데이터 세트를 테스트하여 모델을 학습하는 데 도움이됩니다. 지금까지 보았던 모든 것을 수행하는 곳입니다. 모든 데이터가 훈련 데이터라고 생각했지만 의도적으로 변수명을 훈련 데이터라고 레이블을 붙였습니다. 다른 두 가지 하위 집합을 확인하겠습니다. 유효 검사 데이터 세트는 과적합을 감지하고 방지하는 데 도움이 되는 것입니다. 어떻게 작동하는지 알아보겠습니다. 모든 훈련은 훈련 세트에서 수행됩니다. 훈련을 위해 가끔씩 한 번..

SW/딥러닝 2020.03.11

22. 딥러닝 : 오버피팅(과적합) : 분류 문제, 개념, 예제, 차이, 사진

오버피팅 분류에 대해 알아보겠습니다. 지도 학습의 주요 유형은 회귀와 분류입니다. 회귀 및 분류 측면에서 가장 많은 개념을 알아보도록 노력하여야 합니다. 위 그림에는 두가지 범주가 있습니다. 개와 고양이라고 할 수 있습니다. 모든 데이터를 설명하는 좋은 모델은 이전 예제에서 보았듯이 로직에 따라 약간의 오류가 있는 이차 함수처럼 보입니다. 오버피팅된 모델은 어떨까요? 물론 선형 모델의 경우 선형 모델 데이터가 변화되지 않은 경우 정확도가 약 60% 정도 올바르게 분류하고 과적합 모델이 예측치를 완벽하게 분류할 수 있습니다. 데이터 세트의 고양이 및 개 사진을 가지고 다시 새로운 사진으로 테스트를 진행한다면 성능이 매우 저하됩니다. 잘 훈련된 모델은 어떤 것일까요? 잘 알려지지 않은 모델과 과적합 모델 사..

SW/딥러닝 2020.03.10

21. 딥러닝 : 오버피팅(Overfitting) : 개념, 예제, 차이, 의미

인터뷰에서 가장 일반적으로 묻는 질문 중 하나는 과적합에 관한 것입니다. 면접관은 아마도 주제를 제기하고 과적합이 무엇인지, 어떻게 다루는지를 묻습니다. 이번 포스팅에서는 바로 오버피팅, 과적합에 대해 알아보겠습니다. 서로 관련이있는 두 가지 개념이 있습니다. 오버피팅과 언더피팅입니다. 언더피팅은 오버피팅의 반대의 의미를 가집니다. 언더피팅은 모델이 데이터의 기본 논리를 포착하지 못했으므로 어떻게 해야할지 몰라 정확한 결과와는 거리가 멀다는 것을 알 수 있습니다. 먼저 회귀를 살펴보고 분류 문제를 고려할 것입니다. 여기에서 약간의 노이즈가있는 파란색 함수에 여러 데이터 요소를 볼 수 있습니다. 알고리즘은 위와과 같은 모델을 생성합니다. 완벽하지는 않지만 실제 관계에 매우 가깝습니다. 선형 모델의 언더 피..

SW/딥러닝 2020.03.09

20. 딥러닝 : 역전파(Backpropagation) : 구조, 시각화 표현, 개념

여기에 표시된 역전파의 구조를 살펴 봅시다. 네트워크는 매우 간단합니다. 단일 히든 레이어가 있습니다. 각 노드에는 레이블이 지정되어 있습니다. 그래서 입력 레이어, 히든레이어, 출력 레이어를 갖습니다. 그리고 마지막으로 타겟 T1과 T2가 있습니다. 가중치는 신경망의 첫번째 유닛에 대한 w11, w12, w13, w21, w22, W23가 있습니다. u11, u12, u21, u22, u31, u32가 있습니다. 따라서 우리는 두가지 유형의 가중치를 구분할 수 있습니다. 이것이 매우 중요합니다. 알려진 타겟에 따라 , y1, y2와 관련된 오류를 알 수 있습니다. 따라서 e1, e2의 오류를 구할 수 있습니다. 이를 기반으로 레이블이 지정된 가중치를 조정할 수 있습니다. 각 u는 단일 오류에 기여합니다..

SW/딥러닝 2020.03.08

19. 딥러닝 : 역전파(Backpropagation) : 개념, 원리, 구조

역전파는 가장 직관적인 훈련이지만 수학 용어로 이해하기가 가장 어렵습니다. 먼저 탐구한 다음 수학을 살펴볼 것입니다. 수학은 선택 사항이지만 더 나은 이해를 위해, 수학적으로도 살펴보아야 한다고 합니다. 백프로파게이션의 재미있는 부분이기 떄문에, 이 레슨에 대해 잘 알아야 합니다. 먼저 지금까지 알고있는 것을 정리하고, 레이어가 쌓이는 방식의 로직을 이해하고 있어야 합니다. 또한 학습 과정에서 객관적인 기능을 최적화하기 위해 그라이던트 디센트를 통해 매개 변수 업데이트 하는 것으로 훈련과정이 구성되어 있다는 것을 이야기 하였습니다. 최적화 과정은 최소화로 구성되어 있습니다. 업데이트는 손실의 일부 파생 과정으로 구성되어 있음을 이야기 하였습니다즉 , 당사의 업데이트는 손실의 일부 파생과 직접 관련이 있으..

SW/딥러닝 2020.03.07

18. 딥러닝 : 소프트맥스(Softmax) : 개념, 원리, 차이점

대부분의 그리스 문자를 포함하는이 표를 계속 탐색해 봅시다. softmax 함수에 명확한 그래프 y가 없다고 말했으므로 공식을 주의 깊게 살펴보면 이 함수와 다른 함수의 주요 차이점을 볼 수 있습니다. 따라서 softmax 함수는 위치에 있는 요소의 지수와 같습니다. 벡터의 모든 요소의 지수의 합으로 나눕니다. 따라서 다른 활성화 함수는 입력 값을 얻습니다. SoftMax는 가지고 있는 전체 수에 대한 정보를 고려하는 다른 요소들에 관계 없이 변환합니다. 예를 들어 보겠습니다. A는 잘 알려진 모델인 xw + B와 같습니다. 3의 유닛을 가진 숨겨진 레이어를 보겠습니다. 여기서 a는 선형 조합을 통해 변환한 후 hw + B와 같습니다. 0.2에서 1을 빼고 세 개의 유닛을 가진 벡터를 얻습니다. 이제 S..

SW/딥러닝 2020.03.06
반응형