본문 바로가기

전체 글146

뇌를 자극하는 파이썬3 - 7. 함수로 코드 간추리기 # 세줄요약 # 1. def 키워드를 사용하여 함수를 정의한 뒤 호출하여 사용하면 결과값을 반환해주며, 함수를 사용하면 코드를 반복되는 코딩을 줄여 전체 코드를 간결하게 작성할 수 있다. - def: 함수나 메소드를 정의하는 키워드, definition의 약자 #code block# def function(param): """ codeblock """ return result val = function(param) # [output]: val = result - 함수 이름을 쓰면 그 함수가 호출되어 아래 정의된 코드블록을 실행하고, 해당 결과를 반환(return)해준다. 2. 매개변수(Parameter): 함수에 입력되는 변수로 함수가 호출되면, 매개변수가 입력되어 코드블록에서 입력된 매개변수 값을 연산.. 2019. 10. 22.
뇌를 자극하는 파이썬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.
Jo et al., 2019, Deep Learning in Alzheimer's Disease: Diagnostic Classification and Prognostic Prediction Using Neuroimaging Data. # 세줄요약 # 최근 뇌영상 처리(Neuroimaging Techniques) 기법들의 빠른 발전과 MRI, PET 등 다양한 종류에서 방대한 양의 뇌영상 데이터들이 나오면서, 딥러닝을 이용하여 알츠하이머 질병의 조기 발견과 자동 분류를 해주는 진단 모델들이 연구 및 개발되고 있다. 이 논문에서는 그러한 알츠하이머 진단 모델들의 기존 연구들을 평가하고 정리하기 위해 총 16개의 논문들을 리뷰하였으며, 그 중 4개는 딥러닝과 함께 전통적인 머신러닝 기법을 사용한 연구들이고, 나머지 12개는 오직 딥러닝 기법만 사용한 연구들이다. 딥러닝 기법은 기존의 전통적인 머신러닝 기법에서 전제되는 특성 추출을 위한 복잡하고 어려운 뇌 영상 처리 기법들을 적용할 필요가 없기에, 현재 다양한 종류의 뇌영상(MRI, PET.. 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.