gnvill소개와 머신러닝
TRANSCRIPT
GNUVILLGNUVILL
Semi-nar
GNUVILL
Speaker - 최진우
GNUVILL?!
GNUVILL
GNUVILL???
GNUVill 이 뭔가요 ???
GNUVILL
GNUVILL 소개
Gnu
vilL
+GNU's Not Unix 의 약자 . 유닉스 (Unix) 의 상업적 확산에 반발하여 리처드 스톨먼의 팀이 무료로 개발 · 배포하고 있는
유닉스 호환 운영 체제이며 동시에 그러한 정보 공유 프로젝트 그 자체 . ' 모든 프로그램은 무료이어야 하며 , 프로그램의 사용 , 복사 ,
수정 , 재분배에 대한 제한이 있어서는 안 된다 ' 는 신념을 바탕에 두고 있다 .
- [On Naver Article]
vil-lage
공짜 Software 를 좋아하는 사람들이 사는 마을
GNUVILL
OpenSource 진영 SW
MySQL
Apache
NginxFire-Fox
OpenOfficeOpencvEclips
e
Gcc
Hadoop
MySql-Work-bench
OpenCl
SQLite
x100000
GNUVILL
단톡방… .. ㅋㅋㅋㅋㅋㅋㅋ
GNUVILL
평소 그누빌 모습… ..
학생회관 동아리중에유일하게 명패를 가진 동아리 !!
GNUVILL
14 년도 잔치잔치 in 동방
GNUVILL
GNUVill 은 어떠한 활동을 했나요 ?
GNUVILL
서울 / 경기 대학연합리눅스유저그룹 (ULUG) 에서의 주요 활동 ( 과거 )
일시 내용2007 년도 상반기 연합 세미나 주제 발표 Jabber Protocol, 컴퓨터공학과 '02 故 정찬호
2007 년도 하반기 연합 세미나 주제 발표 Build Moonlight and use MS Silverlight on Linux Using Mono Project, 컴퓨터공학과 '07 박동섭, '02 故 정찬호 (with 숙명여대 SOLUX 추선우 , 송내영 )
2008 년도 상반기 연합 세미나 주제 발표 CakePHP Web MVC Framework, 컴퓨터공학과 '07 박동섭 (with 동국대 DNA 김희도 )
2008 년도 하반기 연합 세미나 주제 발표 PHP-based CMS Drupal, 컴퓨터공학과 '07 박동섭 (with 동국대 DNA 김희도 )
GNUVILL
2012 GNUVILL 활동
GNUVILL
교내 활동
일시 주제 내용 참가자2012. 6. Micro Processor 프로젝트 Cortex-M3 기반 지하철 내부 승객 안내
시스템정보통신공학과 08 정광현 , 07 황세영 , 08 박종원 , 08 최재완
2012. 3~6 Capstone Design 프로젝트 발표 Ubiquitous Sensor Network 기반의 Air Conditioner Filter 교환 시기 및 상태 관리 시스템
07 최기봉
2012. 5~8 제 10 회 임베디드 소프트웨어 경진대회 안드로이드 기반 테블릿 PC 의 사용자 친화적 차량 AVN 시스템 (Humax 부문 본선진출 )
07 황세영 , 08 박종원 , 08 최재완 , 08 이민섭
2012. 5~8 제 10 회 임베디드 소프트웨어 경진대회 NFC 기반 E-School 시스템 (삼성전자 부문 본선진출 )
08 조준 , 08 안재홍
2012. 9. Hackerschool 주관 제 6 회 하계 해킹캠프 참가
CTF 1 위 45s Team '12 12 조훈근
2012. 9~12 Capstone Design 프로젝트 발표 Android Application 을 포함한Ubiquitous Sensor Network 기반의 차량 환경관리시스템
07 황세영 , 07 정광현 , 07 민석주 , 08 박종원
2012. 9~12 Capstone Design 프로젝트 발표 Android Application 을 포함한 NFC 기반 학교출입관리 시스템
08 이민섭
2012. 9~12 Capstone Design 프로젝트 발표 Android Application 을 포함한 RFID, SM2-Camera Module 기반 무인 재고관리 시스템
08 조준 , 08 안재홍
2012. 12. Data Base 프로젝트 발표 JDBC 기반 수강신청 시스템 ( 한국외대 DisLab)
07 정광현 , 07 황세영 , 08 박종원 , 08 최재완
*2012 년 *
GNUVILL
2013 GNUVILL 활동
LEGENDS of
GNUVILL
GNUVILL
GNUVILL
2013 년도 Gnuvill 공식 로고 탄생 !
GNUVILL
Gnuvill 소속 12 학번 조훈근WPF 를 이용한 Drag & Drop 파일전송 시스템
GNUVILL
Gnuvill 소속 08 학번 안재홍Clock-Gating Service Manager
GNUVILL
2014 GNUVILL 활동
GNUVILL
*2014 년 *
Gnuvill 소속 10 학번 최진우NS3 를 이용한 네트워크 시뮬레이션
GNUVILL
NS3 를 이용한 네트워크 시뮬레이션
GNUVILL
Gnuvill 소속 10 학번 팀장 최진우 외 5명
Auto Parking System
GNUVILL
Robocar - Algorithm
GNUVILL
■ mysql, mybatis, mybatis-spring 에 대한 Maven dependency
■ Class mapping
■ Mapper 생성DB 데이터처리를 위한 mybatis mapper 이다 .
Auto Parking System – spring framework
GNUVILL
2015 GNUVILL 활동 및 계획
Plan of
GNUVILL
GNUVILL
동아리 소개집
GNUVILL
15 년 가입신청서 갱신
GNUVILL
• Physical Web - 기존 모바일 애플리케이션을 활용하는 방식이 아닌 웹을 활용하여
스마트기기 통신을 제공하는 것
“ 별도의 앱 설치 없이도 인터넷에 연결되어 있기만 한다면 모든 사물과 소통할 수 있는 시스템”
Physical Web 을 표준으로 삼아 통신은
저전력 블루투스 (BLE) 를 이용하여 웹 주소 (URL) 를
주변의 디바이스 등에 할당하여 사용자가 스마트기기를
통해 제품을 사거나 버스 운행시간 등을 알 수 있다 .
장점사물과 사용자간의 연결이 수월하다 .
어떤 사물을 연결할 수 있는 플랫폼을 따질 필요가 없다 .
여러 서비스 분야에서 다양한 응용이 가능하다 .
별도의 애플리케이션의 설치가 필요없다 .
Gnuvill 소속 10 학번 최진우Physical Web 기반의 비콘을 이용한 전시회
관람서비스
Vending Machine(Candy/Cookie)
Figures of Museum(A class)
Vending Machine(Candy/Cookie)
GNUVILL
GNUVILL 내부 스터디
아두이노를 이용한 IoT 코딩 – 계획중 ( 미정 )
GNUVILL
끝 !!
이 아닙니다 .. ㅠㅠ
GNUVILL
Machine Learning Algorithm
GNUVILL
머신러닝과 울트론 프로그램 ?
울트론 !!
GNUVILL
기계 학습이란 ?• 우리가 현재 가지고 있는 데이터를 이해하기 위한 더 좋은 도구가 있어야하며 , 얻을 수 있는 데이터를 이해하기 위한 우리 자신의 준비 또한 필요
• 기계학습이란 가공되지 않은 원시 데이터를 가공하여 , 정보로 변환하는 것
• 기계학습 알고리즘에서는 분류를 사용하여 결정하게 된다 .
GNUVILL
일반적인 알고리즘
비지도 학습 방법
군집화 (Clustering) 밀도 추정 (Density estimation)
K- 평균 (k-Means) 기대 극대화(Expectation maximization)
디비스캔 (DBSCAN) 파젠 윈도우 (Parzen window)
지도 학습 방법분류 (Classification) 회귀 (Regression)
K- 최근접 이웃(K-Nearest Neighbors)
선형 회귀 (Linear)
나이브 베이스 (Naïve Bayes) 지역적 가중치가 부여된 선형 회귀(Locally weighted linear)
지지 벡터 머신(Support vector machines)
리지 (Ridge)
의사 결정 트리 (Decision trees) 라쏘 (Lasso)
GNUVILL
기계 학습 응용 프로그램 개발단계1. 데이터 수집 : Web 으로부터 필요한 데이터를 추출함으로써 표본들을 모을 수 있고 , RSS 또는 API 를
이용하여 정보를 얻을 수도 있다 .
2. 입력 데이터 준비
3. 입력 데이터 분석
4. 알고리즘 훈련 : 기계학습이 이루어지는 부분 . 핵심 알고리즘을 다루는 부분으로 정제된 데이터를
알고리즘에 넣어 지식이나 정보를 추출
5. 알고리즘 테스트
6. 사용하기 : 실질적인 프로그램을 만들고 이전 단계들이 예상처럼 진행되었는지 살펴보는 단계 .
GNUVILL
k- 최근접 이웃 알고리즘• 거리 측정을 이용하여 분류하기
• kNN 이용하여 데이타 분석
K 근접 이웃 (k-nearest neighbors algorithm (k-NN)) 이란 ?= > 관찰치 특성을 기준으로 훈련 샘플 중에서 가장 가까운 관찰치들을 분류하는 방법
GNUVILL
kNN 분류 알고리즘 실행하기• inX = 분류를 위한 입력벡터• dataSet = 훈련을 위한 예제의 전체 행렬• Labels = 분류 항목을 표시한 벡터• K = 투표에서 사용하게 될 최근접 이웃 수
거리 계산( 유클리드 거리 계산법을 사용해 계산 )
<- 가장 짧은 k거리를 투표 <- 아이템 정렬
(classCount 딕셔너리를 가지고 투플형태의 리스트로 분해한 후 , 투플에 있는 두번째 아이템으로 itemget-ter 메소드를 사용해 투플을 정렬 )
GNUVILL
텍스트 파일의 데이터구문 분석• datingTestSet 라는 1000 개의 항목으로 이루어진 text 파일이 있다는 가정 .
<Data>(1) 연간 항공 마일리지 수(2) 비디오 게임으로 보내는 시간의 비율(3) 주당 아이스크림 소비량
(1) (2) (3)
문자열의 양쪽공백을 지움
listFromLine 의 맨 마지막 Data 를 append!
GNUVILL
데이터 정규화하기
** minVals 와 range 는 1x3행렬인데 반해 만든 데이터행렬은 1000x3 이므로 NumPy 의 tile() 함수를 사용하여 입력 행렬과 같은 크기로 행렬을 생성 후 생성된 행렬을 복사하거나 같은 값으로 모두 채움
GNUVILL
특정사이트를 위한 분류기 검사코드
위 분류기의 전체 오류율은 6.4% 이다 .hoRatios 와 k 의 값을 가지고 실험하면 오류율은 달라진다 .
위에서 분류에 사용된 Data 의 text 파일
실질적으로 사람을 분류하는데 사용하기 . 그 사람의 정보를 입력 시에 얼마나 좋아하게 될지를 예측
GNUVILL
정리• kNN 알고리즘은 간단하며 데이터를 분류하는 데 효과적인
방법이다 . 분류기의 분류 성능을 확인 .
• kNN 은 사례기반학습의 한 예 이지만 , 데이터집합 내의 모든
데이터에 대해 거리 측정을 계산해야 하므로 데이터의 크기가
커지면 사용하기 힘듬 .
• 그리고 , 데이터의 구조에 대한 어떠한 정보도 주지 못함 .
GNUVILL
THANK YOU