본문 바로가기

Programming/Deep learning29

Weight 초기화를 잘해보도록 합시다. 4가지 문제중에 하나가 초기값을 멍청하게 넣었습니다. 이것입니다. 시그모이드는 안됩니다. 렐루를 사용합니다. 2번을 실행시켰는데 조금 달라집니다. 오케이요. 같은 코드를 실행시켜도 다른 결과가 나올 수 있습니다. 웨이트를 입력할 때, 랜덤값을 넣어줍니다. 랜덤값에 따라서 결과가 차이가 나는 것입니다. 체인룰이 있습니다. 초기값을 0으로 주자. 더블유 초기값을 넣었씁니다. 오케이요. 더블유가 체인률을 할때 이값이 0이 됩니다. 기울기가 0이 되죠. 초기값을 어떻게 잘 넣을 수 있을까요. 모든 값을 0으로 주면 안됩니다. 학습이 전혀 안됩니다. 딥 믿음 넷을 이해 어떻게 잘 학습시키는가. 여기에 사용한 것이 제한된 볼츠맨 머신입니다. RBM을 사용해서 초기화합니다. 2가지 오퍼레이션의 목적은 입력을 생산해내.. 2018. 1. 17.
Sigmoid 보다 ReLU 가 더 좋음 어느 값이 이상이면 액티베이션 함수라고 합니다. 이것을 구현하기 위해서 각각의 더블유 더블 1 2개에 웨이틀ㄹ 가지고 있습니다. 순자적으로 엑스를 받고 입력에 넣어주면 이단에 네트워크가 구성되는 것입니다. 3단 쉽습니다. 3단으로 3개의 웨이트를 주면 됩니다. 엑스 값이 2개이다 알 수 있습니다. 그 다음 단계에서 5개를 받아야 하고, 오케이요. 체인 하듯이 엑스 엘원 엘투를 만들어내고, 그 아므 레이어에 넣고 오케이요. 하나기 하나씩만들고하나씩 내어주면 됩니다. 그림으로 그려주면 이렇게 됩니다. 딥하고 와이드 하는 것에 대해서 알 수 있습니다. 인풋 레이어 라고 하고 마지막은 아웃풋 레이어라고 합니다. 그리고 이 안에 있는 것들은 보이지 않기 때문에 히든 레이어라고 합니다. 특별한 의미는 없습니다. 처.. 2018. 1. 17.
특별편 10분 안에 미분 정리하기요. 표현하는 방법 함수를 엑스로 미분한다는 뜻입니다. 이런 재밌게 생긴 식들이 나옵니다. 델타 엑스를 아주 작은 값으로 보낼 때, 에프의 더한것과 더하지 않은 것의 차이를 나눈다. 순간 변화율입니다. 순간 변화율 이라는 것입니다. 그렇기 때문에 에프를 함수라고 가정했을 때 이만큼의 변화율 미분이라는 것이 그래디언트 디센트 알고리즘에서 필수적이라는 것입니다. 복잡하니, 이것을 간단하게 델타 0.01 이라고 합시다. 이런 함수를 생각해보도록 하겠습니다. 플러스 엑스에 엑스 엑스입니다. 오케이요. 네네 똑같습니다. 델타 엑스를 가정하는 것입니다. 오케이요. 받아들인다는 것이 어떤것인지 잘 몰랐습니다만, 네네, 내가 얼마나 모르는지를 먼저 알아나가는 것이 중요합니다요. 이것은 오케이요. 편미분에 대해서 배우도록 하.. 2018. 1. 17.
Deep Neural Nets 인류이 꿈. 골치있는 문제를 기계를 만들즈아!!!! 우리의 뇌를 공부해서 오케이. 여러가지를 가지고 있는데, 뇌가 복잡하게 연결되어 있습니다. 연결된 부분을 자세하게 보았더니, 깜짝놀란 것은 뉴런이라고 불린 유닛이 너무나 단순하게 동작이 되더라. 어떻게 생각할 수 있을 것인가. 고민에 빠질 정도로 단순하게 동작이 되는 것입니다. 길이에 따라 신호의 양이 달라집니다. 어떤 웨이트의 곱이 되는 정보로 할 수 있습니다. 웨이트로 볼 수 있습니다. 다할 수 있습니다. 썸이 일어납니다. 그런다음에 통과가 되면 바이어스 항목이 더해져서 그다음으로 전달 되거나, 다 모여져 있는 값이 정해져있는 값 이상이 되면 활성화되고 그 값 이상이되지 않으면 활성화되지 않더라. 오 이런것들은 이런 형태의 뉴런은 기계적 수학적으로 .. 2018. 1. 17.
learning rate, data preprocessing, overfitting 실제 사용하는데 필요한 팁들이 있습니다. 러닝 레이트를 조정하는 방법과 선처리 하는 방법, 가장 큰 문제인 오버핏팅을 방지하는 방법에 대해서 이야기 하겠습니다. 코스트 펑션을 정의하고 최소화하는 방법, 그레디언트 디센트 알고리즘이 있습니다 알파값을 이렇게 나타내었습니다. 오케이요. 코스트를 정의하고 이것을 미니마이즈 하고 러닝 레이트를 임의의 값으로 실제로 변형되서 실습을 하였습니다. 러닝 레이트를 잘 정하는 것이 중요한데, 이것을 굉장히 큰 값을 정한다고 생각해봅시다. 이 경사면을 따라서, 한발짝의 스텝이죠. 이 스텝이 크다고 하면, 어떤 일이 발생할 까요. 이동할 때, 이만큼 내려갑니다. 스텝이 크기 때문에 오케잉. 오버 슈팅이 있습니다. 팅겨나갈 수 있습니다. 학습이 코스트 함수를 출력해보면, 숫자.. 2018. 1. 17.
Softmax classification 기본적인 출발은 이렇습니다. 리턴하는 값은 실수가 될 수 있고 바이너리 클래스 피케이션의 2개 중에 하나는 0이나 1이나 하는지 적합하지 않았습니다. 그래서 생각한 방법이 하느이 제트라고 두고 지제트를 두고 이 함수가 큰 값을 압축을 해서 0이나 1사이에 둘 수 있습니다. 오케이요. 그래서 지 제트를 이런 함수 즉 이 제트 축에 값이 커지더라도 지 제트는 1보다 작은 값에 머물고 0보다 1사이에 머무르는 함수가 있으면 참 좋겠다 라는 생각을 한 것입니다. 이렇게 생긴 아름운 함수 시그모이드 함수라고 부르기도 합니다. 로지스틱 = 시그모이드 로지스틱 하이파시스는 이런 형태로 나타납니다. 간단하게 그림으로 표현하였습니다. 하나의 계산하는 유형이 이렇습니다. 나오는 값이 제트값이 됩니다. 아 이런 형태는 시그.. 2018. 1. 17.
Logistic regression classification 수업의 궁극적인 목표 뉴럴 네트워크 딥러닝을 잘 이해하는 것인데, 이것은 굉장히 중요한 컴포넌트 입니다. 이번 수업도 인터넷에 있는 자료 이며, 앤드류 응 교수님의 수업을 많이 이용하였습니다. 리니어 리그레션에 대해서 애기했습니다. 가설 코스트 함수 미니마이즈하는 함수있습니다. 이렇게 리니어하게 폼으로 주어졌습니다. 코스트는 이렇게 리니어하게 가설 가지고 있는 학습데이터와 선을 그은 가설을 세운 선이 얼마나 가깝고 먼가를 측정하는 가가 차이입니다. 학습을 한다는 것이 데이터를 이용해서 바로이 코스트를 최소화하는 것을 찾아내는 것입니다. 어떤 것인지를 알아야 하기 때문에, 오케이요. 찾고자 하는 점이었습니다. 코스트 함수를 미분한 값으로 나타납니다. 기울기. 한번에 얼마나 움직일까. 바로 알파로 스텝의 사.. 2018. 1. 16.
multi-variable linaer regression cost를 어떻게 계산할 것인지, 비용함수 로스를 어떻게 정의할 것인가에 대한 문제가 발생합니다. 오케이 가설 세우고, 비용함수 그리고 최적화하는 알고리즘을 봅니다. 오케이요. 더블유와 비에 대해서 코스트가 정해지기 떄문에, 오케이 하이파시스 실제값 와이 이것이 정답이 됩니다. 실제 값과 예측 한 값. 밥 그릇 모양으로 주어집니다. 여기서 코스트가 최적화가 되는 최적화가 되는 경사면을 따라서 내려가면 됩니다. 코스트 최적화 하는 것입니다. 하나의 인풋 베리어블일 때, 오케이요. 다양한 인풋이 존재합니다. 그 전에는 하나의 인풋이었으나 지금은 여러개의 인풋을 넣는 것입니다. 파이널 점수를 예측할 수 있을까요. 이런 경우에는 변수가 3개가 있습니다. 이런 경우에는 어떻게 하면 될까요. 한 개가 있을 때 수식.. 2018. 1. 16.
Linear Regression 의 cost 최소화 알고리즘의 원리 설명 가설의 값과 실제값의 차이를 제곱하고 이것을 총 더하고 데이터의 갯수로 나누었습니다. 최소화 시키는 더불유와 비의 값을 가지고 구해보자 입니다. 리니어 리그레션의 목표가 되겠습니다. 설명을 쉽게하기 위해서 가설에 대해서서 간단하게 하였습니다. 오케이 변수하나를 줄이고 계산해보도록 하겠습니다. 더블유가 1이면 코스트는 0이지요. 더블유가 0일때, 더블유가 2일때, 오케이요. 더블유 값을 구한다음에, 코스트 함수를 구한 다음에 와이의 축에 대해서 코스트 평션이라고 하고 더블류 라고 했을떄, 2차 함수가 되는군요. 오케이요. 이것의 최소화되는 값을 찾는 것입니다. 이것은 여기서 2차 함수에서 미분하면 되겠습니다. 미분되는 값이 0이되는 값이면 됩니다. 그것이 gradient descent algorithm 이.. 2018. 1. 16.