728x90

전체 글 32

Thompson RN et al. 2020 Key questions for modelling COVID-19exit strategies. Proc. R. Soc

1. 2. 3. Heterogeneities in transmission (a) human heterogeneities를 모델링 하기 위한 resolution 결정 모델의 복잡성과 단순성 사이에서 많은 결정을 해야 함. 이 둘 사이의 균형을 맞추는 일은 데이터의 양이 많아진다고 자연스럽게 해결되는 일은 아님. 복잡성의 수준을 다르게 한 모델을 여럿 사용하여 상호보완적인 결과를 만들어내는 것으로 해결. 탈출 전략을 위한 모델링을 구성할 때, 두가지에 대해 초점을 맞추어야 함. 공간적인 접촉 구조(spatial contact structure)와 취약 계층의 감염(health vulnerabilities) Spatial contact structure :가정과 직장 같은 local한 장소에서의 혼합 구조에 ..

Pandas-2. Pandas Data Structure : Series / DataFrame

Pandas는 기본 데이터 구조로 Series와 DataFrame이 존재한다. Series Series는 Pandas의 기본 데이터 구조로, Numpy 라이브러리의 배열이나, 기존 C/CPP에서의 배열과 비슷한 구조이지만, 다양한 형태의 인덱스를 갖는 다는 점에서 다르다. 0에서 부터 시작하여 순차적으로 1씩 인덱스가 증가하는 제로베이스(zero-based) 인덱스 뿐만 아니라, 날짜, 이름 등 여러가지 형태의 인덱스를 만들어낼 수 있다. 파이썬의 딕셔너리와 리스트가 합쳐진 형태라고 생각해볼 수 있다. DataFrame Series의 경우, 각 인덱스 레이블 당 하나의 값만이 매칭되는 형태이므로, 다양한 자료를 동시에 한 인덱스로 지정할 수 없다. 이를 보완하는 자료 구조가 DataFrame이다. Dat..

Pandas-1. Pandas와 데이터 처리 프로세스

Pandas 데이터 처리에는 R package를 전통적으로 사용되어오고 있다. Pandas는 이 R package를 단일 라이브러리로 구성하여 파이썬을 통해 데이터 처리를 할 수 있도록 해주는 오픈소스 데이터 분석 라이브러리이다. 데이터 처리 프로세스 우리는 크게 5가지의 단계를 통해 데이터를 처리한다. 획득 획득은 데이터를 획득하는 것을 의미한다. 데이터를 센서 등을 통해 직접 수집할 수도 있고, 외부에서 만들어진 데이터를 수집해올 수도 있다. 문제는, 이러한 데이터들이 우리가 원하는 용도로 바로 사용할 수 있을 정도로, 잘 다듬어진 경우가 거의 없다는 것이다. 데이터를 획득하는 대표적인 방법으로는 API를 통해 데이터를 받아오는 방법, 정부나 기업에서 제공하고 있는 데이터를 CSV파일, 엑셀 파일의 ..

Python-15. File-1 / 파일 입출력 / Open함수 / read메소드 / close메소드 / with구문

Q. 파일 입출력? 파일 입출력의 경우, 프로그램에서 매우 중요한 부분을 차지하기 때문에, 잘 알고있어야 하는 부분이다. 말 그대로, 파일을 읽고 쓰는 과정에 관련된 것을 의미한다. 프로그램의 작동과정에서 어떤 데이터를 불러와야 하는 경우도 있고, 만들어낸 데이터를 특정한 파일에 저장해야하는 경우도 있다. 이러한 기능을 Python을 통해 어떻게 구현할 수 있는지 알아보자. ※파일 입출력의 경우, 언어에 따라 그 방식이 꽤 상이한 경우가 많다. 이 포스트에서는 Python을 통한 입출력만을 다룬다. 파일의 종류 우리가 파일이라고 일컫는 데이터들은 그 형태가 매우 다양하다. 예를 들어, 가장 간단한 형태라고 할 수 있는 텍스트 파일부터, 음악, 비디오, 엑셀 등등 여러가지 응용프로그램에서 작성하는 파일의 ..

Machine Vision-8. 딥러닝 모델을 효과적으로 학습시키기 위한 여러가지 창의적인 방법들 / 전이학습 / 캡슐 네트워크 / 앞으로의 방향

1. 전이 학습 앞서 설명한 모델들은 전부 모델을 충분히 학습시키기 위해 다양한 이미지로 구성된 대규모 데이터세트를 요구한다. 그러나, 데이터세트 자체가 구하기 어렵고, 비싸며 훈련 과정에서도 굉장한 계산 비용을 요구한다. CNN에 대한 설명을 할 때에, CNN은 이미지에서 일반적인 특성을 학습한다는 것을 말했다. 다시 말하자면 CNN의 얕은 층에서는 직선, 모서리, 색, 간단한 모양 등을 학습하고, 깊은 층에서는 이 간단한 요소들의 조합을 통해 질감, 형태의 조합, 물체의 일부분과 같은 부분을 학습할 수 있다. 전이 학습은 사전 훈련된 CNN의 특성 맵에 포함된 시각 요소를 재사용하여 새로운 종류의 물체를 인식하도록 하는 것이다. 간단히 말해 보조개 패턴과 같이 움푹 파인 패턴을 학습한 특성 맵을 원 ..

Machine Learning 2022.01.26

Machine Vision-7. 이미지 분할 딥러닝 모델 알고리즘 / Mask R-CNN / U-Net

1. 이미지 분할 사람의 시야는 일부분 겹쳐서 보이는 사물과 배경을 매우 쉽게 구분한다. 이러한 부분에서 불과 몇 면전까지 머신 러닝을 통한 영상 처리의 방법은 사람의 그것을 쉽게 뛰어넘을 수 없었다. 이를 해결하기 위해 이미지 분할 이라는 딥러닝 애플리케이션이 발전하였다. 객체 탐지를 목표로 하는 여러 모델들과는 여러 부분에서 다른데, 간단히 말하자면, 객체 탐지의 경우 대략적인 바운딩 박스로 물체의 위치를 정의하지만, 이미지 분할의 경우 픽셀 수준에서 객체의 위치를 예측한다는 점이 큰 차이이다. 유명한 모델로는 Mask R-CNN과 U-Net이 존재한다. 2. 이미지 분할 – Mask R-CNN Mask R-CNN의 경우 페이스북 AI 리서치(FAIR)에서 발표한 이미지 분할 모델이다.[1] 이 모델..

Machine Learning 2022.01.26

Machine Vision-6. 객체 탐지 딥러닝 모델 / R-CNN / Fast R-CNN / Faster R- CNN / YOLO

1. 객체 탐지 앞선 신경망 구조들은 이미지 분류에 초점을 맞춘 모델들이었다. 그렇다면, 고전적인 방법에서 많이 연구된 영상 처리를 통한 객체 탐지의 경우 딥러닝 모델에선 어떤 방식으로 구현할 수 있을까? 우선, 객체 탐지가 어떤 과정으로 이루어지는지 생각해보아야 한다. 객체 탐지의 경우 세 단계의 파이프라인으로 그 과정을 구성해볼 수 있다. 1. 관심있는 영역 찾기 2. 특성 추출 3. 특성에 따른 분류 이와 같은 파이프라인을 수행하는 모델은 대표적으로 R-CNN, Fast R-CNN, Faster R-CNN, YOLO가 있다. 2. 객체 탐지 – R-CNN R-CNN의 경우 UC 버클리의 로스 거쉭이 2013년 소개한 방법이다. 이 알고리즘은 사람의 어텐션 메커니즘을 본떠 만들어졌는데, 전체 장면을 ..

Machine Learning 2022.01.26

Machine Vision-5. 영상 인식을 위한 기초적인 딥러닝 알고리즘 / 신인식기 / LeNet-5 / AlexNet / VGGNet / 잔차 네트워크(Residual Network) ResNet

앞서 알아보았듯 인공지능의 발전은 영상 처리의 발전과 큰 연관성을 갖는다. 이제 영상 처리를 위해 신경망을 이용한 인공지능 알고리즘의 여러 종류를 알아보자. 1. 신인식기 / LeNet-5 1970년 후반, 허블과 비셀의 연구 결과로부터 감명을 받은 일본인 전자공학자 후쿠시마 구니히코(Fukushima Kunihiko)는 ‘신인식기’라 불리는 머신러닝 알고리즘에 대한 논문을 발표한다.[1] 이 알고리즘은 허블과 비셀의 연구를 인용하여, 생물학적 뉴런의 배열처럼 인공 뉴런을 계층적으로 정렬함으로 복잡하고 추상적 객체를 구분할 수 있음을 보였다. 이후, 얀 르쿤과 벤지오는 LeNet-5라는 신인식기보다 정확도와 효율성 면에서 큰 발전을 이룬 모델을 발표했다. 이 모델은 허블과 비셀의 연구와 후쿠시마 구니히코..

Machine Learning 2022.01.25

Machine Vision-4. 인공지능의 발전사 / 신경망 / 합성곱 신경망 / 허블과 토르스텐의 고양이 1차 시각피질 상호작용 실험

1. 인공지능의 발전사 인공지능의 발전사에 대해 조금 더 알아본다면, 딥러닝 알고리즘의 발전을 이해하기 더욱 쉽다. 1943년 워런 매컬러와 윌터 피츠는 뇌의 뉴런 개념을 발표했고, 1950년에 앨런 튜링은 인공지능과 사람의 수준을 비교하는 튜링 테스트를 제안한다. 이후 1956년 다트머스 AI컨퍼런스에서는 인공지능에 대한 전망을 낙관적으로 파악하는 등 이 시기를 기점으로 인공지능에 대한 학문적 발전이 태동하기 시작했다. 이후, 1957년 프랑크 로젠블라트가 사람의 시각뉴런을 수학적으로 모델링한 퍼셉트론을 발표하여 로지스틱 회귀의 기초를 놓았고, 1959년에는 앞서말한 데이비드 허블과 토르스텐 비셀이 고양이의 두뇌를 이용하여 시각 피질의 뉴런들의 상호작용 과정을 연구하여 노벨상을 수상하였다. 이후 이와 ..

Machine Learning 2022.01.25

Machine Vision-3. 해리스 코너 검출기 / SIFT 알고리즘

영상의 분할에 초점을 맞춘 여러가지 알고리즘을 이전의 포스트에서 알아보았다. 이러한 알고리즘이 개발된 후에도 여러가지 알고리즘에 계속해서 발전해왔는데, 그 중 대표적인 것이 해리스 코너 검출기 알고리즘과 SIFT 알고리즘이다. 이러한 알고리즘들은 대표적인 특성공학의 산물들이다. 첫번째 포스트에서 언급했듯 딥러닝 이전의 머신러닝은 특성공학을 통한 데이터의 특성 추출에 초점을 맞추었다. 이러한 방식은 실제로 사용될 정도로 어느정도 성공을 거두었지만, 실제 사람의 인식 수준에 비하면 걸음마 수준이었다. 특정한 상황에서 추출된 특성만을 인식할 수 있었고, 이 과정에서도 당시 하드웨어 수준에 비해 상대적으로 높은 계산복잡도를 갖고 있었다. 이로인해, 인식 정확도와 알고리즘의 범용성에서 한계가 존재했다. 해리스 코..

Machine Learning 2022.01.25