본문 바로가기

교재리뷰12

뇌를 자극하는 파이썬3 - 9. 클래스 # 세줄요약 # 1. 클래스(Class)는 속성(변수)과 기능(함수)이 합쳐진 객체(Instance)의 자료형으로, class를 이용하면 class 코드블록 내의 변수와 함수들은 객체 내부에서만 응집력을 발휘하고 객체 외부에는 영향을 주지 않는다. 2. 클래스를 정의할 때는 >>> class My_cls: 로 시작하고 __init__() 메소드로 변수를 초기화하여 모든 객체들이 변수를 공유하는 것을 막고 Self를 사용하여 객체에 소속된 변수와 함수를 정의한다. 3. 다른 클래스의 함수와 변수를 그대로 사용하려면 상속( >>> class A: // >>> class B(A): A -> B)을 이용하여 부모클래스의 변수, 함수를 받아올 수 있다. #code block# class Car: def __ini.. 2019. 11. 11.
뇌를 자극하는 파이썬3 - 8. 모듈과 패키지 # 세줄요약 # 1. 모듈(module)은 독자적인 기능을 갖는 구성 요소를 의미하는데 파이썬에서는 각각의 소스파일을 의미한다. - 사용법: import 키워드를 사용하여 자신 또는 다른 프로그래머가 만든 소스파일을 불러와서 사용할 수 있다. #code block# # 모듈 약자를 사용하는 방법 import module as mod mod.function() # 모듈의 특정 함수만 불러오는 방법 from module import function function() - 모듈의 종류 표준 모듈: 파이썬에 내장된 자체모듈 사용자 생성 모듈: 프로그래머가 직접 작성한 모듈 서드파티 모듈: 다른 프로그래머 또는 업체가 제공한 모듈 2. 파이썬은 최상위 수준에서 실행되는 스크립트가 있을뿐 메인함수가 따로 없기에 현.. 2019. 10. 25.
뇌를 자극하는 파이썬3 - 6. 프로그램의 흐름 제어하기 # 세줄요약 # 1. 프로그래밍에서 흐름을 제어하려면 논리연산자, 비교연산자 등을 가지고 bool 자료형으로 True & False가 판별되는 방식을 사용해야 한다. - bool 자료형: True & False 두가지 값으로 이루어진 자료형 - 코딩에서 비어있는 문자열, 리스트, 튜플 등의 변수는 False로 취급된다. #code block# # True a = 3 > 2 # [output]: a => True b = 1 bool(b) # [output]: True int(True) # [output]: 1 # False a = 2 > 3 # [output]: a => False b = [] # [output]: bool(b) => False c = 0 # [output]: bool(c) => False.. 2019. 10. 22.
뇌를 자극하는 파이썬3 - 5. 데이터 다루기: 리스트와 튜플과 딕셔너리 # 세줄요약 # 1. 리스트(List): 데이터의 목록을 다루는 자료형, 대괄호 []를 사용하여 만든다. #code block# a = [1, 2, 3, 4, 5] # 슬라이싱 a[0:3] # [output]: [1, 2, 3] # 데이터 참조 a[2] # [output]: 3 # 데이터 변경 a[2] = 5 # [output]: a = [1, 2, 5, 4, 5] # 리스트 더하기 [1, 2, 3] + [4, 5] # [output]: [1, 2, 3, 4, 5] # 리스트의 길이를 구하는 함수 len() len(a) # [output]: 5 - 리스트 메소드 #code block# # append() : 리스트 끝에 새 요소를 추가 a = [1, 2, 3] a.append(4) # [output]: .. 2019. 10. 22.
뇌를 자극하는 파이썬3 - 4. 데이터 다루기: 수와 텍스트와 비트 # 세줄요약 # 1. 변수(Variable)는 데이터를 담는 메모리 공간을 의미하며 변수에는 수, 텍스트, 목록이나 이미지 데이터 등도 담을 수 있다. - 변수에 데이터를 담아서 연산의 재료로 활용하거나 결과를 담는 용도로 사용 - 컴퓨터 프로그래밍의 데이터 분류 체계인 자료형(Data Type)이 프로그램 실행 시 또는 실행 전에 작동하는 지에 따라 동적형식언어(Dynamic typed language)와 정적형식언어(Static typed language)로 분류된다. - 파이썬은 프로그램 실행 시에 자료형을 판단하는 동적 형식 언어이다. #code block# a = 20 b = 30 a + b # 변수 a, b를 연산의 재료로 활용 c = a + 20 # 변수 c에 연산의 결과를 저장. type(.. 2019. 10. 21.
뇌를 자극하는 파이썬3 - 3. 파이썬 프로그래밍 준비와 시작 # 세줄요약 # 1. 파이썬 설치는 홈페이지에서 설치할 수 있으나 최근에는 라이브러리와 함께 개발환경을 구성해주는 아나콘다(Anaconda)를 사용한 설치를 추천한다. - 파이썬 홈페이지: https://www.python.org/ Welcome to Python.org The official home of the Python Programming Language www.python.org - 아나콘다 홈페이지: https://www.anaconda.com/ Anaconda | The World's Most Popular Data Science Platform Anaconda is the standard platform for Python data science, leading in open source.. 2019. 10. 21.
뇌를 자극하는 파이썬3 - 2. 코딩을 배우기 전에 읽는 컴퓨터 구조론 # 세줄요약 # 1. 폰 노이만 구조: 1945년 과학자 폰 노이만이 논문 'EDVAC에 관한 보고서'를 통해 데이터를 주고 받는 '입출력 장치', 데이터와 명령어를 보관하는 '기억장치', 데이터의 가공을 담당하는 '중앙 처리 장치'로 구성된 현대 컴퓨터의 구조를 최초로 정의. 중앙 처리 장치(CPU, Central Processing Unit): 산술연산(+, -, *, /)과 논리연산(True False)을 수행하는 '산술 논리 장치'와 명령어를 해독하고 데이터를 산술 논리 장치로 보내고 받아들이는 '제어장치'로 이루어짐. 이렇게 명령어를 불러오고 해독하여 실행하는 주기를 명령주기(Instruction Cycle)라고 부른다. 예시) 1GHz CPU: 1초에 10억회의 명령 주기를 수행하는 성능을 가.. 2019. 10. 15.
파이토치 첫걸음 - 2. 파이토치 # 세줄요약 # 1. 파이토치(PyTorch)는 2017년 초에 공개된 딥러닝 프레임워크로 개발자들과 연구자들이 쉽게 GPU를 활용하여 인공 신경망 모델을 만들고 학습시킬 수 있게 도와줌. - 페이스북 인공지능 연구팀이 주로 관리. - 독자 운영되는 파이토치 포럼에는 프레임워크 개발자들이 직접 답을 해주기도 한다. - 파이토치의 전신인 토치는 루아 프로그래밍 언어로 만들어진 프레임워크. https://pytorch.org/ PyTorch An open source deep learning platform that provides a seamless path from research prototyping to production deployment. pytorch.org 2. 심층신경망을 만들때 신경망의 .. 2019. 10. 15.
파이토치 첫걸음 - 1. 딥러닝에 대하여 # 세줄요약 # 1. 딥러닝에 대해 배우기 전에 딥러닝을 포함한 넓은 개념인 머신러닝, 인공지능에 대한 개념을 알고가자. 인공지능: 기계가 인간의 인지 과정을 모방하는 것. 머신러닝: 명시적으로 프로그래밍되지 않은 상태에서 기계에서 학습할 능력을 부여하는 것을 의미 머신러닝 알고리즘의 종류: 서포트 벡터 머신, k-최근접 이웃 알고리즘, 결정트리, 인공신경망 등등 딥러닝: 인공신경망에서 은닉층의 개수가 1개 이상인 네트워크인 '심층 신경망(Deep Neural Network)'을 사용한 기법. 딥러닝은 머신러닝 기법 중 하나. 2. 머신러닝의 주요한 세 분야: 지도학습, 비지도학습, 강화학습 지도학습(Supervised learning): 데이터와 각각에 해당하는 정답 쌍이 존재할 때 데이터와 정답 간의.. 2019. 10. 8.
파이토치 첫걸음 - 개요 저자: 최건호 출판: 한빛미디어 출간: 2019년 6월 7일 # 세줄요약 # 파이썬 문법에 가깝게 인공지능을 설계할 수 있어 텐서플로보다 코딩이 쉬운 파이토치를 배우기 위해 산 입문서. 파이토치의 문법을 쉬운 예제들로 설명하고 몇몇 중요한 ANN 모델(VGG, ResNet 등등)들의 소스코드를 제공하고 있어 빠르게 배우기에는 좋으나, 이론 설명은 디테일하지 않아 딥러닝 자체를 처음 배우는 책으로는 조금 부족하다. 그러나 어느정도 딥러닝 기본지식을 갖춘 상태라면 Transfer learning, Autoencoder, GAN 등의 기법들에 대해서 모두 설명하고 예제 소스코드 또한 제공하므로 바로 실전 코딩에 적용하기는 좋을 것이다. 2019. 10. 8.