분류 전체보기 260

2. Swift Function

//object의 멤버함수를 method, 전역함수를 function라고 한다. func printTotalPrice(price: Int, count: Int){ print("1. \(price*count)") } printTotalPrice(price: 1500, count: 5) //이렇게 parameter를 지정해 주어야한다. //지정안하고 보내는 방법이 존재한다. //어떻게? parameter 앞에 _를 붙힌다. //parameter의 이름을 지정할 수 있는 형식이다. //"가격"은 밖에서만, "price"는 함수 내에서만 사용가능!!!! func printTotal1(_ price: Int, _ count: Int){ print("2. \(price*count)") } printTotal1(15..

3-3. Loading Data from File (파일데이터 읽어오기)

모두를 위한 머신러닝 / 딥러닝 강의: hunkim.github.io/ml/ 목차 1. 파일에서 원하는 데이터 읽어오기 2. Queue Runners : 데이터가 너무 클때 1. 파일에서 원하는 데이터 읽어오기 해당 파일은 .csv 파일이며 흔히 알고 있는 .excel과 유사한 파일이라고 생각할 수 있다. CSV(Comma-separated values)은 File Format이며, 콤마를 기준으로 데이터를 구분하는 파일이다. 그렇다면 이 csv파일은 어떻게 읽어오는가? numpy에 존재하는 loadtxt를 이용하면 손쉽게 파일을 Read 할 수 있다. 여기서 데이터의 구분은 ', '콤마로 하고 데이터의 타입은 실수32비트로 설정하였다. 여기서 모든 데이터는 같은 데이터 타입을 갖는다. 해당 슬라이싱 연..

3-2. 여러개의 입력의 Linear Regression 구현 (by Tensorflow)

모두를 위한 머신러닝 / 딥러닝 강의: hunkim.github.io/ml/ Multi-variable linear regression 우리는 이제 변수 3개에 대한 출력이 1개인 데이터 셋을 학습시키려한다. 변수가 3개라면 각각의 변수에 대한 weight(가중치)가 존재할 것이고 이 가중치가 곱해진 변수들의 합은 Hypothesis(가설, 직선)을 나타낸다. cost를 정의하고 optimizer를 Gradient Descent Algorithm 을 사용하여 minimize cost를 구하도록 설정하였다. 이제 train을 tf.Session().run(train)을 실행하면 cost는 최소를 구하도록 operation할 것이다. 그리고 학습과정에서 cost와 hypothesis값들의 변화를 출력하기 위..

3-1. 여러개의 입력(feature)의 Linear Regression 개념

모두를 위한 머신러닝 / 딥러닝 : hunkim.github.io/ml/ 지난 시간 복습 Hypothesis (가설, 직선) : Weight와 bias의 값을 학습하게 된다. Cost function (cost,loss를 어떻게 정의하는가) : W와 b의 함수이다. 예측값과 실제값의 차이의 제곱평균을 구해서 cost를 구한다. Gradient descent algorithm (cost를 최소로하는 알고리즘) : 그 cost의 경사면을 따라 감소하는 방식의 알고리즘 여러개의 입력(feature)의 Linear Regression 개념 Multivariable Linear Regression 기존의 데이터는 하나의 Input에 대해서 모델을 만들고 학습을 시켜왔다. But, 실제는 여러개의 데이터의 얽히고 ..

2-6. Linear Regression cost함수 최소화 구현(by TensorFlow)

모두를 위한 머신러닝 / 딥러닝 : hunkim.github.io/ml/ Graph -> import matplotlib.pyplot 우선 우리는 이 cost라는 놈이 어떻게 생긴지 보자!! ● run을하기 위해 Session을 만들어 주고 초기화 과정을 거치도록 한다. ● W의 경우 -3~5까지 0.1크기로 작게 움직이겠다는 의미를 나타낸다. ● 두 개의 list에 append하여 plt.plot()의 인자로 전달하면 각 list는 x,y축을 기준으로 그래프를 형성한다. ● plt.show()로 그래프를 출력한다. Gradient descent 알파는 learning_rate를 의미하고 작은 값을 사용한다. 다른 것은 수식 그대로 계산하는데 마지막 W값의 교체는 tensor안에 존재하는 assign을 ..

2-5. Linear Regression cost함수 최소화 개념

모두를 위한 머신러닝 / 딥러닝: hunkim.github.io/ml/ 지난시간 배웠던 것 저번 시간에 배웠듯이 우리는 Wx+b라는 Hypothesis로 model을 만들었고 실제 값과의 차이의 제곱평균하여 cost를 구하는 것인데, 이때 학습과정에서 cost를 줄이는 최적의 W와 b를 찾아 데이터가 근사된 일차함수를 찾는 것이 목적이다. How to minimize cost (어떻게 cost를 최소화 할까?) 여기서 b가 없다고 가정하여 비교적 쉬운 hypothesis 모델을 만들어 보자 위의 그래프는 Cost와 W(weight)의 관계를 그래프로 그린 것이고 여기서 cost가 최소인 값을 기계식으로 찾아가는 것인데 이때 알고리즘이 필요하다.!!! 이때 많이 사용되는 알고리즘이다. 경사를 따라 내려가는..

2-4. Linear Regression by Tensorflow (선형회귀 구현)

모두를 위한 머신러닝 / 딥러닝 : hunkim.github.io/ml/ 주어진 x값에 대해서 예측을 어떻게 할 것인가가 Hypothesis 이고, W(weight)와 b(bios)의 합이다. 이렇게 예측한 값과 true value의 차이를 제곱으로 계산하여 평균하면 cost function의 값을 구할 수 있고, 이것의 최소값을 구하는 것이 우리의 목적이다. 이 Hypothesis(가설, 직선)는 W와 b에 따라 달라지고 cost역시 W와 b를 인자로 갖는 function이다. 여기서 우리가 말하는 학습이라는 것은 데이터를 읽어들이면서 이 cost값을 최소로 하는 W와 b의 값을 찾는 것이다. Tensorflow의 큰 구조 3단계 1. 그래프를 build한다. 2. 해당 그래프를 실행한다. 3. ret..

2-3. Linear Regression 개념

모두를 위한 머신러닝/딥러닝 강의: hunkim.github.io/ml/ Linear Regression (선형 회귀) supervised learning를 한다고 하면 0~100에서의 데이터를 예측하는 경우 regression이라고 했는데 그렇다면 해당 데이터는 supervised learning를 위해 regression algorithm을 위한 trainning set이 되는 것이다. 해당 training set로 학습을 시키면 model이 생성되고 원하는 x를 넣어 prediction y를 구할 수 있게 되는 것이다. 그럼 이 tainning set이 존재하면 그 데이터들간의 Linear한 특징을 갖을 거라 가정하고 예측하는 기법이 Linear regression이다. 이렇게 일차함수 형식의 Li..

2-2. Hello TensorFlow (basic tensorflow)

모두를 위한 머신러닝 딥러닝 강의: hunkim.github.io/ml/ 영상 필수시청: www.youtube.com/watch?v=XNDo6ad7ICA 깃허브 코드다운 주비터 노트북 사용법 텐서플로우 version1로 다운그레이드 방법 영상에서 사용되는 코드주소: github.com/hunkim/DeepLearningZeroToAll 주비터 노트북 사용방법: copycoding.tistory.com/72 Anaconda 가상환경 설정: http://asq.kr/SaF3jqELi3EZ3 아나콘다? : url.kr/gZ9l2S 주비터 노트북? : blog.naver.com/PostView.nhn?blogId=hobbang143&logNo=221464304548 텐서플로우? : blog.naver.com/h..

2-1. Anaconda, Jupyter Notebook, tensorflow??

아나콘다? : blog.naver.com/PostView.nhn?blogId=hobbang143&logNo=221461726444&parentCategoryNo=&categoryNo=&viewDate=&isShowPopularPosts=false&from=postView 주비터 노트북? : blog.naver.com/PostView.nhn?blogId=hobbang143&logNo=221464304548 텐서플로우? : blog.naver.com/hobbang143/221463489187 공부하기 좋은 블로그: blog.naver.com/PostList.nhn?blogId=hobbang143&from=postList&categoryNo=100&parentCategoryNo=100 수박 : 네이버 블로그 ..