SW융합최신기술(2018)

1. 교과목 개요

최근 다양한 분야와 응용에서 중요성이 대두되고 있는 소프트웨어 기반의 최신 기술 융합을 이해하고, 구체적인 사례들을 통해 이를 활용할 수 있는 기초 역량을 배양한다. 특히, 소프트웨어 관련 전공자뿐 만 아니라 비전공자도 다양한 응용 분야의 실제 데이터가 어떻게 존재하고, 수집되어, 분석 활용되는 지 구체적 사례와 실습을 통해 데이터 기반의 기술적 소통 능력을 함양할 수 있도록 진행될 것이다. 또 한, SVM 등 전통적인 데이터 분석부터 최근 관심이 집중되는 인공신경망까지 주요 데이터 분석 방법 들도 학습하고 경험한다.  기반으로 하는 기술 융합은 여러 분야에서 중요한 이슈로 떠오르고 있는데 여러가지 유형의 융합 형태가 있지만 가장 현실적인 것은 해당 응용 분야의 데이터를 서로 이해하고 이 데이터를 기반으로 기술적 소통을 하는 것이다. 따라서 소프트웨어 전공자는 다른 응용 분야에서 데이터가 어떻게 존재하고 활용되는지 이해하고 비전공자는 데이터를 처리하고 분석하는 과정에서 소프트웨어 기술이 어떻게 적용될 수 있는지 이해하도록 하여 데이터를 기반으로 한 기술적 소통 능력을 함양하도록 하는 내용을 다룰 것이다. 또한 최근 관심이 집중되는 "딥 러닝" 기술을 활용하는 내용도 포함할 것이다.

수업은 3개의 파트로 나누어서 진행하는데 Part 1에서는 데이터가 실제로 어떻게 수집되고 관리되는지 그리고 시각화 도구를 이용해서 어떻게 분석되고 공개되는지를 이해하고 Part 2에서 그 데이터를 처리하고 분석하는 방법을 배우는데 최근 추세에 맞게 머신러닝 및 딥러닝의 활용 방법까지 배운다. Part 3에서는 Part 1,2에서 배운 것을 실제 자율주행 차량 SW를 위해 필요한 교통 및 차량 데이터에 적용해 보는 시간을 가질 것이다.

수업은 3개의 각 파트별로 소규모 프로젝트 수행을 통한 PBL(Project Based Learning) 스타일의 강의로 진행될 것이고 실제 각 분야의 전문가를 초청해서 해당 분야의 데이터 기반 기술 융합 이슈에 대해 세미나도 2-3차례 진행할 것이다.

이 수업은 소프트웨어 학부의 전공자 뿐만 아니라 비전공자도 컴퓨터 프로그래밍의 기초 능력만 있으면 수업 내용을 소화할 수 있도록 구성할 예정이다.

2. 수업 목표

- 데이터를 수집, 분석, 시각화하는 프로그래밍 스킬을 습득한다.

- 머신러닝을 활용한 다양한 데이터 분석 기법들에 대한 전반적인 이해

- 딥러닝 기술을 활용한 교통 및 차량 등 실제 데이터 분석 및 예측 기법 습득

3. 선수 학습 내용

- Python 또는 기타 프로그래밍 언어의 기초 능력

4. 교과목 내용

Part 1: 데이터 일반

- 교과목 개요 및 기본 실습 환경 소개

- 데이터 획득/생성, 관리, (처리), 시각화, 전달에 대한 이해

- 데이터 사이트(공공 데이타, 기상 데이타 등) 소개

- 시각화를 통한 데이터 분석과정 설계 및 실습

- 참고 자료

https://www.highcharts.com

공공데이터 포털 - https://www.data.go.kr/

서울 열린데이터 광장 - http://data.seoul.go.kr/

통계청 포탈 http://kosis.kr/index/index.jsp

http://urbaneco.cs.kookmin.ac.kr/ (크롬브라우저가 안정적임)

데이터의 관리, 탐색, 검색, 보정, 시각화 등의 기능이 있습니다.

첨부화일: 도시생태 최종보고 발표자료

http://mosq-forecast.cs.kookmin.ac.kr/ (크롬브라우저가 안정적임)

모기활동성을 4등급으로 예측하여 예보하는 사이트입니다. RF 기번에만 의존했는데 여러가지 머신러닝 기법의 소개로 확대되었으면 합니다.

머신러닝/전처리 등

http://keunwoochoi.blogspot.kr/2016/08/blog-post.html

Part 2: 데이터 분석 및 처리

- 데이터 사이언스와 머신러닝 기초 이론

- 뉴럴 네트워크 및 실습 (Python 기초)

- 딥 뉴럴 네트워크 개념 및 실습

- 딥러닝 알고리즘 이론 (Backpropagation algorithm)

- 딥러닝 알고리즘 실습 (Python, Tensorflow, AWS)

- 딥러닝을 활용한 기상 데이터 분석

- 참고 자료

2016년 미국 최고의 직업 1위로 선정된 직업은 데이터 사이언티스트 (또는 데이터 과학자) 이며, 데이터 사이언티스트의 수요는 IT업계에 한정되지 않고 산업 전 분야로 점점 더 확장되고 있다.

(기사) 미국 최고의 직업 1위는 데이터 과학자

이세돌과 알파고, 세기의 바둑 대결에서 알파고가 승리하는데 결정적인 역할을 한 핵심 기술은 머신러닝이며 그 중에서도 딥러닝이라고 부르는 신경망 학습 기술이다.

(유튜브 동영상)The computer that mastered Go

딥러닝은 실제로 바둑의 인공지능 뿐만 아니라 이미지, 음성 인식 등에서 최근 큰 성과를 보이며 IT업계와 학계에서 가장 각광을 받고 있는 기술이다. 본 파트에서는 특별히 딥러닝 기술이 데이터 사이언스 분야에서 어떻게 활용될 수 있는 지를 공부하고 실제 기상 데이터 등을 딥러닝을 활용하여 분석해본다.

(관련 슬라이드) What data scientists should know about deep learning?

Part 3: 교통 및 차량 분야의 데이터

- 교통 빅데이터 개요

- 공개교통정보 추출 실습 (KML, GeoJSON)

- 교통정보 시각화 실습

- 차량 내외부 데이터 개요

- 자율주행을 위한 딥러닝을 활용 교통표지판 인식 실습

- 참고 자료

https://developers.skplanetx.com/apidoc/kor/tmap/

https://nodelink.its.go.kr/

https://developers.google.com/maps/

http://news.samsungsds.com/?p=1416

5. 실습 환경

실습 환경은 난이도를 최대한 낮추어 환경에 적응하지 못하여 본 과목에서 목표로하는 본 내용을 학습하지 못하는 일은 없도록 할 예정입니다.

o 간편화된 플랫폼

완전하지는 않지만 웹과 비슷한 로컬 환경(백엔드 서버가 없는)을 제시하려고 합니다. 그래서 프론트엔드 부분을 따라하기 수준으로 소화할 수 있도록하고 그러면 데이터 분석 및 처리 부분을 로컬에서 자유롭게 진행할 수 있을 것입니다. 

o 구글 클라우드 플랫폼

딥러닝을 위해 Tensorflow를 사용할 때 컴퓨팅 파워가 필요한 경우 Google Cloud Platform에서 실습할 예정

https://cloud.google.com/datalab/docs/quickstarts

https://cloud.google.com/ml-engine/docs/quickstarts/datalab 

6. 담당 교수

Part 1: 허대영 

(주)가토랩

Part 2: 이재구

소프트웨어융합대학 소프트웨어학부

Part 3: 임세준

자동차융합대학 자동차IT융합학과