Deep Learning
-
[CHAPTER 10]넘파이(numpy)Deep Learning/인공지능 입문 코딩 2021. 5. 30. 21:29
넘파이는 리스트 대신 쓸 수 있는 라이브러리이다. numpy는 파이썬에서 수치 데이터를 다루는 가장 기본적이고 강력한 패키지이다. 데이터 과학에서는 파이썬의 기본 리스트로 충분하지 않다. 데이터를 처리할 때는 리스트와 리스트 간의 다양한 연산이 팔요한데, 파이썬의 기본 리스트 자료형은 이러한 기능이 부족하며, 연산 속도도 빠르지 않다. numpy를 사용하는 이유 리스트보다 연산이 훨씬 빠르다. 대용량의 배열과 행렬연산을 빠르게 수행한다. 고차원적인 수학 연산자와 함수를 포함하고 있다. 데이터 분석을 위한 패키지인 판다스pands나 기계학습을 위한 scikit-learn, tensorflow등이 넘파이 위에서 작동한다. numpy를 사용해보자. 먼저 nuimpy 라이브러리를 설치한다. C:\> pip in..
-
[CHAPTER 9] 텍스트 처리Deep Learning/인공지능 입문 코딩 2021. 5. 29. 12:18
문자열 처리 문자열을 처리하는 방법들을 살펴보자. 슬라이싱 리스트에서 이미 배웠던 내용이다. 문자열에도 똑같이 적용할 수 있다. >>> s = 'Monty Python' >>> s[6:10] 'Pyth' >>> s[-12:-7] 'Monty' >>> t = s[:-2] >>> t 'Monty Pyth' >>> t = s[-2:] >>> t 'on' >>> s[:-2] + s[-2:] 'Monty Python' 'Monty Python' 문자열의 각각의 인덱스 번호는 아래와 같다. 다양한 문자열 처리 메서드, 함수 split() 문자열을 잘라주는 메소드이다. 인자가 없으면 공백을 기준으로 잘라준다. >>> s = 'Welcome to Python' >>> s.split() ['Welcome', 'to', ..
-
[CHAPTER 8] 딕셔너리와 집합Deep Learning/인공지능 입문 코딩 2021. 5. 24. 14:49
여러개의 데이터를 한꺼번에 저장하는 방법중 하나인 딕셔너리에 대해 알아보자. 딕셔너리(dictionary) 딕셔너리(dictionary)는 리스트와 같이 파이썬에서 기본 자료형으로 제공되고있다. 딕셔너리는 키-값(key-value)의 쌍으로 이루어져있다. 딕셔너리 생성 아래와 같이 생성한다. >>> phone_book = {} >>> phone_book['홍길동'] = "010-1234-1234" >>> phone_book {'홍길동': '010-1234-5678'} '홍길동' 은 key, '010-1234-1234'는 value가 된다. 딕셔너리를 생성하면서 초기화하는 방법은 아래와 같다. >>> phone_book = {"홍길동": "010-1234-5678"} >>> phone_book {'홍길동'..
-
[CHAPTER 7] 리스트, 튜플Deep Learning/인공지능 입문 코딩 2021. 5. 23. 23:23
데이터 여러 개를 하나로 묶어서 저장하는 방법을 배워보자. 리스트(list) 리스트(list)는 파이썬에서 여러 개의 데이터를 하나로 묶어서 저장하는 방법들 중 하나다. 대괄호를 이용해서 만들 수 있다. 리스트(list) 사용법 그룹 BTS의 멤버 3명을 리스트에 저장한다. >>> bts = ['V', 'Junkook', 'Jimin'] >>> bts ['V', 'Junkook', 'Jimin'] append 메서드를 이용하여 리스트에 요소를 추가할 수 있다. >>> bts = ['V', 'Junkook', 'Jimin'] >>> bts.append('RM') >>> bts ['V', 'Junkook', 'Jimin', 'RM'] list() 함수를이용해 list로 변환할 수도 있다. >>> data =..
-
[CHAPTER 6] 함수Deep Learning/인공지능 입문 코딩 2021. 5. 22. 19:57
프로그램은 기능이 다양해질수록 점점 더 커지고 복잡해진다. 따라서 프로그램을 이해하기 쉽고 관리하기 쉽도록 작은 조각으로 나눠야 할 필요가 있다. 그 방법들 중 하나가 함수(function)이다. 과일을 갈아서 음료를 만드는 기능을 가진 함수에 사과와 레몬을 각각 입력해주면 사과 주스, 레몬 주스가 나올 것이다. 함수의 사용법 정의 먼저 함수를 정의해야 한다. def 키워드를 사용하여 정의한다. def 뒤에는 함수의 이름이 오고() 안에는 입력값이 온다. 아래 함수의 이름은 print_adress, 입력값은 없다. >>> def print_adress(): print('경상북도') print('울릉군 울릉읍') print('독도리') 호출 함수의 이름으로 호출을 한다. 입력값은 없게 정의했으므로 () 안..
-
[CHAPTER 5] 반복문Deep Learning/인공지능 입문 코딩 2021. 5. 21. 00:02
프로그램의 기본 제어 구조 순차 구조 : 여러 명령이 순차적으로 실행되는 구조 선택 구조 : 여러 개 중 하나의 명령문을 선택하여 실행하는 구조 반복 구조 : 동일한 명령이 반복되면서 실행되는 구조 이번 챕터에서는 반본 구조에 대해 자세히 살펴보겠다. 반복문 반복문은 어떤 단계를 반복하게 하는 것으로 반복 구조를 사용하면 중복되는 코드의 사용을 줄여줌으로써 프로그램이 간결해진다. 또한, 반복되는 코드를 타이핑하는 시간도 줄여준다. 프로그래밍에서 반복은 흔히 올가미 같은 동그란 고리를 의미하는 루프(loop)라고 한다. 이 고리를 빠져나오지 않고 계속해서 반복을 하는 경우를 무한 루프(infinite loop)라고 한다. 반복문의 종류 파이썬에서는 2가지 종류의 반복문이 있다. (while, for) fo..
-
[CHAPTER 4] 조건문Deep Learning/인공지능 입문 코딩 2021. 5. 16. 16:50
프로그램의 기본 제어 구조 순차 구조 : 여러 명령이 순차적으로 실행되는 구조 선택 구조 : 여러 개 중 하나의 명령문을 선택하여 실행하는 구조 반복 구조 : 동일한 명령이 반복되면서 실행되는 구조 이번 챕터에서는 선택 구조에 대해 자세히 살펴보겠다. 선택 구조 if 조건을 만족하는지 그렇지 않은지 판정하는 식을 조건식이라고 한다. 조건식을 사용하는 방법에 대해 알아보자 if 조건식 : 실행할 내용 조건식은 True, False를 가질 수 있는 식을 말한다. True가 된다면 if문 안의 내용을 실행하고 False가 된다면 건너뛴다. 사용 예시를 보자. >>> x = 100 >>> if x >> if x > 1: print("x는 1보다 크다.") x는 1보..
-
오차 역전파법 -1Deep Learning/밑딥1 2021. 5. 15. 18:50
수치미분 vs 연쇄법칙 + 미분공식수치미분연쇄법칙 + 미분공식 예제 수치미분을 이용한 식:연쇄 법칙 + 미분공식을 이용한 식:오차 역전파법에서는 연쇄 법칙 + 미분 공식을 이용한다.여기서 '역전파'라는 이름이 붙은 이유는 미분을 하는 순서가 합성함수를 취하는 순서의 역이기 때문!(합성은 f -> g -> h 순서, 미분은 h -> g -> f 순서로 진행)그래프계산 그래프 : 순전파사과 개당 가격 : 100, 사과 개수: 2 귤 개당 가격: 150, 귤 개수: 3 소비세 : 10%지불 금액 : (100 x 2 + 150 x 3) x 1.1 = 715 계산 그래프 : 역전파1로 출발해서 오른쪽에서 왼쪽으로 흘러간다.곱셈노드 : 반대편 값을 엇갈려서 곱해서 흘려보낸다.덧셈노드 : 그냥 흘려보낸다. 역전..