일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Sort
- RNN
- scrapy
- C
- codingthematrix
- HelloWorld
- 선형대수
- 주식분석
- NumPy
- collections
- recursion
- yarn
- 코딩더매트릭스
- graph
- C언어
- 하이브
- 파이썬
- hive
- 그래프이론
- 딥러닝
- tensorflow
- LSTM
- 하둡2
- python
- effective python
- 알고리즘
- hadoop2
- GRU
- Java
- 텐서플로
- Today
- Total
목록Study (184)
EXCELSIOR
이번에 공부할 책은 러닝 텐서플로(원서: Learning TensorFlow)이다. 딥러닝을 공부하면서 실무나 깃헙에 공개된 모델들을 가져와 구현하거나 사용하기 위해서는 딥러닝 프레임워크에 대한 공부도 중요하다는 것을 느꼈다. 현재 텐서플로는 버전 업그레이드가 빨라 (2018.05.31 기준 ver-1.8) 교재 소스코드랑 맞지 않는 부분이 간혹 있는듯하다. 러닝 텐서플로를 공부하면서 정리한 내용과 1.8 버전에 맞게 코드를 작성하여 포스팅 하려고 한다. 코드를 직접 내려받고 싶으신 분들은 https://github.com/ExcelsiorCJH/LearningTensorFlow (깨알 깃헙자랑) 에서 받을 수 있다.
Chap11.1 - 메모리와 포인터 (1)드디어 C언어의 꽃인 포인터다. 이번 장에서 실습을 제대로 하기 위해서는 몇가지 설정이 필요하다. 우선 나는 Chap02 ~ Chap10까지는 Linux, Mac OS에서 실습을 하여 gcc로 컴파일하였다. 하지만, 이번 장에서 포인터에 대해 실습할 때는 Windows 환경에서 Visual Studio 2017을 이용하여 실습을 진행하였다. Visual Studio에서 새로운 프로젝트를 생성한 후 Alt + F7 를 눌러 프로젝트의 속성을 다음과 같이 수정해야 한다.[구성 속성] → [링커] → [고급] 에서 '임의 기준 주소' 옵션을 '아니요(/DYNAMICBASE:NO)' 로 설정해줘야 한다.그 이유는 Windows7 이후 부터는 ASLR(Address Spa..
Chap10 - 함수에 대한 기본 이론함수는 C언어 프로그램을 이루는 핵심이라고 할 수 있다. 각종 연산식이 모여 한 구문을 이루고, 다시 여러구문이 의미있는 절차상의 흐름을 만들고, 그 절차상의 흐름이 하나로 뭉쳐 함수를 이루고, 다시 함수가 함수를 호출하여 연계하고 또 다른 흐름을 만듦으로써 C언어 기반의 프로그램이 완성된다.함수와 반복문은 반복되는 코드들을 처리하는 것과 관련된 문법이다. 반복문은 연속적인 반복을 의미하고, 함수는 불연속적인 반복을 통한 코드 재사용을 의미 한다. 10.1 사용자 정의 함수의 선언 및 정의사용자 정의 함수(user-defined function) 는 기존의 표준 입/출력 함수(ex. getchar()/putchar())들과 달리 사용자(개발자)가 스스로 만들어낸 함수..
Chap09 - 배열을 활용한 프로그래밍 기법9.1 배열 요소의 정렬정렬 알고리즘을 공부할 때 가장 기본이 되는 두 가지는 선택정렬(selection sort)과 버블정렬(bubble sort) 이다. 두 알고리즘 모두 반복문 두 개를 중첩하는 것만으로 구현할 수 있으며, 다른 정렬 알고리즘보다 구조가 단순하다. 9.1.1 선택정렬로 알려진 버블정렬배열 전체 요소를 오름차순 정렬하는 가장 쉬운 방법은 모두 정렬될 때까지 최소값을 구하는 것이다. 만약 아래와 같이 5개인 배열을 오름차순으로 정렬하고자 한다면, 5개의 요소에서 최소값을 구해 각 항을 교환하는 방식으로 해당요소에 순차적으로 담는다. /* 9-1. 선택정렬로 알려진 버블정렬 구현 */ #include int main(void){ in..
Chap 09내적 - Inner Product이번 9장에서는 길이 (length)와 직교 (perpendicular)의 개념이 수학적 용어로 어떻게 해석되는지 알아본다. 어떤 점에 가장 가까운 주어진 직선상의 점을 찾는 문제에 대해 살펴본다. 9.1 소방차 문제아래의 그림에서 좌표 에 위치한 집 에 화재가 났다고 하자. 집 주변을 지나가는 도로는 원점과 점 을 지나는 직선이면, 집 와 가장 가까운 직선상의 어떤 지점으로 소방차를 위치 시킬 수 있으면 화재를 진압 시킬 수 있다고 하면, 두 가지를 생각할 수 있다.직선상의 어느 점이 집 와 가까운가?그렇다면, 가장 가까운 거리는 얼마나 되는가? 이것을 계산문제로 재구성 해보자. 앞의 3.5.3 에서 처럼 원점을 지나는 직선은 벡터의 스칼라배들의..
Chap 08 - 배열 Array배열(array)은 형식이 같은 자료 여러 개가 모여 새로운 하나를 이룬 형식이다. 예를 들어, int aList[5]는 5개의 의 int형 자료가 모여 int형 배열이 된다. 배열은 지금까지 배운 변수와 다르게 배열의 이름은 변수의 이름과 달리 메모리의 주소다. 배열은 배열이름[인덱스] 형식을 가지며, 각 배열요소의 인덱스는 0에서 부터 전체요소의 개수보다 1 작은(n-1) 범위까지이다. 아래의 예제는 다섯 개의 수를 입력받아 배열(aList)에 저장한 후 출력하는 코드이다. 아래의 예제 코드에서 확인할 수 있듯이, aList는 변수가 아니라 0번 요소의 주소 즉, &aList[0] 이다. // array01.c #include int main(void){ // ..
Chap07 - 반복문반복문(Repetitive Statement)은 일정구간의 코드를 연속적으로 반복해 실행하는 제어문이다. 7.1 while - 조건 기반 반복문while문은 아래의 그림에서도 확인할 수 있듯이 if문과 차이가 없다. 괄호 속에 조건식을 기술하는 문법이나 여러 구문을 스코프({})로 묶는 것이 동일하다. 하지만, while문은 if문과 달리 반복문이다. 내부 구문이 끝나면 그다음으로 그냥 넘어가는 것이 아니라 다시 구문의 처음으로 돌아가 조건식을 확인한 후 조건이 참이면 계속해서 구문을 돌고, 거짓이면 반복이 끝나게 된다. 7.1.1 기본구조 조건에 의한 제어다음 예제코드는 getchar()를 이용해 사용자로부터 문자 혹은 문자열을 입력받은 후, putchar()로 출력하는 코드다. ..
Chap06 - 기본 제어문 (Control Statement)6.1 if 문if문은 분기문(branching statement)라고도 하며, 조건식을 기준으로 구문들의 절차상 흐름을 변경한다. 6.1.1 기본 구조if문의 구조는 아래의 그림과 같다. 다음 예제코드를 통해if문의 사용법에 대해 알아보자. 아래의 코드는 사용자가 입력한 나이가 20 이상인지 비교한다. 결과가 참(true)이면 if문에 속한 나머지 구문을 수행하고 false이면 if문을 생략한다. // ctrlbranch01.c #include int main(void){ int nAge = 0; printf("나이를 입력하세요. : "); scanf("%d", &nAge); // if문 시작 if(nAge >= 20) /..