SlideShare uma empresa Scribd logo
1 de 42
포트폴리오
IT Developer
Made by Kwon Kihoon
목차
2
About me
01
Certification
02
Career
03
Skill set
04
Project
05
About me
3
Email: khpoptop@naver.com
Name: 권기훈 / Kwon Kihoon
Career: 신입
Age(생년월일): 만 27세(1995.07.12)
Address: 서울시 서초구 방배로 18길 67
Github: https://github.com/Kihoon-Kwon
Certification
4
취득일자 자격명 발행기관 점수(등급)
2021.02 ITQ 아래한글 한국생산성본부 A등급
2021.04 ITQ 한글액셀 한국생산성본부 A등급
2021.06 ITQ 한글파워포인트 한국생산성본부 B등급
2021.06 TOEIC YBM 880
2021.07 Office Excel 2016 Expert YBMIT Pass
2021.09 OPIc 영어 ACTFL IM1
Career
5
• 서울고등학교 졸업(2014.02)
• 전자정보공학부 공학설계입문 팀 프로젝트 참여(2016.9~2016.11)
• 졸업작품 CNN 이미지 분류 모델 제작 프로젝트 참여(2021.2~2021.11)
• 숭실대학교 전자정보공학부 IT융합학과 졸업(2022.02)
• 멀티캠퍼스 데이터 사이언스/엔지니어링 전문가 과정 교육 수료
(2022.06~2022.12)
Skill set
6
Language
Python
Javascript
SQL
HTML
css
R
Framework
Django
Flask
Bootstrap
Spark
Infra & DB
MySQL
SQLite
Shell
Linux
Bash
AWS
Tool
Git
VScode
Jupyter notebook
Google colab
Teamwork
Notion
Github
Project 1
프로젝트명 : bombom 프로젝트
저시력자 대상 상품 구매 보조 시스템
저시력 장애인들이 마트에서 물건을 구매하는데 겪는 여러가지 애로사항들을
조사하였고, 이를 해소하기 위한 편의기능 제공이 이 프로젝트의 목적이다.
딥러닝 모델을 학습시킨 후 이를 이용하여 상품 이미지 업로드 시 상품 예측 후
상품명, 영양정보, 과자 상세정보 페이지, 그리고 이에 맞는 음성을 제공한다.
개요
저시력 장애인을 대신하여
‘상품을 본다’는 의미를 담았음
개요
▪ Django 웹프레임워크 구축
▪ 딥러닝 모델 적용
▪ 음성 서비스 구현(TTS)
▪ 초기 화면, 결과 화면 구현
▪ DB 설계
역할
인원
6명(DS 3명, DE 3명)
사용 도구
서비스구현 웹 설계 협업툴 그 외
개발 기간
22.11.07~22.12.16(총 6주)
Flow chart
10
DB 설계
11
Nutrition
Column Name Datatype Constraint
name (상품명) VARCHAR NOT NULL
total_content
(총 용량)
INT NOT NULL
calories (칼로리) INT NOT NULL
protein (단백질) FLOAT NOT NULL
fat (지방) FLOAT NOT NULL
carbohydrate
(탄수화물)
FLOAT NOT NULL
Snack
Column Name Datatype Constraint
name (상품명) VARCHAR NOT NULL
info (설명) VARCHAR NOT NULL
price (가격) INT NOT NULL
Models.py를 이용하여
MySQL에 과자 상품 정보, 영양정보 Table을 각각 저장 후
서비스 구현 시 필요한 데이터 호출
서비스
구현
서비스 주요 특징
12
바나나킥 포카칩 양파링
벌집핏자
새우깡 꼬북칩
화이트하임
오레오 아몬드빼빼로
후렌치파이
과자 10종에 대한 상품 이미지 분류
저시력자 대상 서비스이므로
버튼이나 이미지는 최대한 크고 직관적으로
+
색상은 고대비로 구상하였음
UI / 기능
13
과자 이미지 업로드에 대한 설명을 음성으로 구
현
- Javascript Speechsynthesis API를 활용하여 텍
스트를 음성으로 합성하였음
- 기존엔 파이썬 gTTS 라이브러리를 활용하였지만,
audio player 모양 및 크기 조절이 제한적이었음
- 재생 시 bombom 서비스에 대한 간략한 이용방법을
안내받을 수 있다.
만든 사람들, 조회가능한 상품 페이지와 연동
- 만든 사람들 페이지는 팀원들과 각각의 R&R이 간
략하게 소개되어 있는 페이지이다.
- 조회 가능한 상품 페이지는 서비스를 제공하는 과
자의 목록을 확인할 수 있는 페이지이다.
조회를 원하는 상품 이미지를 업로드
- 지원하는 과자 10종류 중 하나의 과자 이미지를 업
로드하면 업로드한 딥러닝 모델이 어떤 과자인지 예
측한다.
- 이미지가 입력되면 이것을 3차원 배열로 변환하고
이를 기반으로 모델이 상품명을 예측하는 원리이다.
- Jpg, jpeg, png와 같이 이미지 파일만 업로드할 수
있도록 설정하였음(업로드 창에서 타 형식의 파일은
숨김)
과자 이미지를 업로드하는 초기 페이지
UI / 기능
14
만든 사람들 페이지
이 프로젝트에 함께한 팀원들의 이름과 간단하게 R&R 소개
상품 목록 페이지
- 서비스하는 과자 목록들을 확인할 수 있는 페이지
- 과자 이미지나 영양 정보 버튼을 누르면 과자 각각의 상
세 정보를 텍스트 및 음성으로 제공받을 수 있다.
Bombom 로고나 home 버튼을 누르면 초기 화면으로 돌아간다
UI / 기능
15
각 과자에 대한 상세 정보 페이지
- MySQL의 Nutrition 테이블에 과자 각각의 영양 정보가 저
장되어 있고 웹에 호출할 수 있도록 연동하였다.
- 각 페이지에서 과자 이름에 맞게 데이터를 호출하였다.
영양 정보를 음성으로 변환하여 제공한다(파파고 음성변환기 사용)
UI / 기능
16
조회 원하는 이미지를 업로드 하면
해당 상품에 대한 상품명, 가격, 정확도가 표시되도록 구현
예측 결과에 맞게 텍스트를 음성으로 합성하여 재생하는 기능 구현
- 텍스트의 visibility를 hidden으로 설정하여 웹 화면 상에는 보이지 않도록 설정
- 초기 화면의 안내버튼과 마찬가지로 Speechsynthesis API 활용
- 사용자가 가장 궁금해할 상품명, 가격, 칼로리, 그리고 상품에 대한 간략한 설명 제공
MySQL에 저장된 DB를 호출하여 예측결과에 맞는 DB 정보를 가져옴
- 예측결과에 맞게 각각 번호를 부여하고, 번호에 맞게 예측결과 호출
(DB에 각 상품에 맞는 id가 1~10까지 번호로 지정되어 있으므로 이
에 맞춰서 호출하는 원리)
- 상품명, 예측 정확도, 가격을 출력한다
상품 이미지 예측 후 결과 페이지
예측된 과자에 맞게 과자 상세 정보 페이지 연동
- 링크 일부를 prediction 변수에 맞게 변하도록 설정하여
예측 결과에 맞게 해당 페이지로 연동된다.
프로젝트 소감(좋았던 점)
서비스 메인 기능인 이미지 예측이 잘 구현되었다. 배경 노이즈가 심하거나, 과자 이미지가 확대되거
나 잘려 있어도 90% 이상은 상품명을 올바르게 인식한다. 아래의 이미지들 모두 올바르게 예측된
상품 이미지이다.
17
잘린 이미지 확대된 이미지 노이즈 심한 이미지
프로젝트 소감(주요 개선사항)
18
실시간으로 카메라에 상품을 비추면 100% 정확도를 보이는 시점에
상품 인식을 하여 상품 정보를 알려주는 기능 구현함.
사진을 찍어서 업로드하는 번거로움을 덜 수 있다는 장점이 있다.
그러나 아직 웹 카메라에 버퍼링이 걸리는 등 기능적으로 불완전하여 최종 서비스에는 제외하였음
출처 : https://www.screencast.com/t/YIUyhPbi
시연 영상(start 버튼 누른 이후의 시점)
프로젝트 소감(추가 개선사항)
1. 학습시킨 10개의 과자 이외에도 더 많은 과자의 상품 인식이 가능하도록 성능 개선
2. 과자 이외에도 다른 상품군들 또한 학습을 통해 다양한 상품 인식이 가능하도록 서비스 확장
3. 상품 인식 뿐 아니라 상품의 위치도 알려줄 수 있도록 기능 추가
4. 할인 정보, 각 상품의 알레르기 정보들을 알려주는 서비스 등을 추가하면 좋을 듯
19
프로젝트 자료
20
1. 프로젝트 github link → https://github.com/Kihoon-Kwon/snack_classification.git
2. 서비스 전체 시연 영상 → https://www.screencast.com/t/GhGMQPQXS
3. 웹 카메라 기능 시연 영상 → https://www.screencast.com/t/YIUyhPbi
Project 2
프로젝트명 : Blackice 프로젝트
결빙사고 예방 서비스
국내에서 도로 결빙 예방책으로 염화칼슘 제설제, 제설 시스템 자동화, 친환경
제설제, 도로열선 등이 있지만 각각 인력 부족, 환경오염, 높은 비용 등의 제약
사항이 있다. 아직 완전하지 않은 결빙사고 예방책을 보다 보완할 수 있는 결빙
사고 위험 지역을 예측하여 운전자 결빙 사고를 예방하는 시스템을 개발하였음.
개요
온도가 갑자기 떨어져 생기는 도로 위의 살얼음
일반 도로보다 최대 14배, 눈길보다는 6배 더 미끄러움
Blackice의 의미란?
개요
▪ 데이터 수집
▪ 데이터 전처리
▪ 모델링
▪ DB 설계
▪ 웹크롤링
역할
인원
4명(모델링 담당 2명, 웹서비스 담당 2명)
사용 도구
데이터 수집&전처리, 모델링 DB 설계 웹크롤링
개발 기간
22.10.18~22.11.04(총 3주)
Flow chart
24
서비스 주요 특징
25
지역 선택 (시/군) 일자 선택
결빙사고 위험지역
표시 지도
1. 서비스 대상은 경기 지역의 운전자 및 도로 이용자 대상이다.
2. 경기도 시군구 중 하나를 선택하고, 3일 중 하루를 선택하면 해당 구의 상습결빙구간에 대한 현재 위험도를 예측
3. 웹 서비스 구현은 goormide 서버를 활용하여 구축하였다.
데이터 탐색
26
1
2
지도에 표시해 줄 좌표 데이터
결빙사고 위험도 예측모델 데이터
시간 : 결빙사고는 오전 6~10시에 주로 일어남
기온
습도
날씨 : 기상 상황은 결빙 형성에 영향을 줌
: 보통 결빙사고는 11~3월 사이에 자주 발생
: 습도가 높을수록 이슬, 서리 발생 빈도가 높다
수집한 데이터
27
1시간 간격의
기온, 습도 정보
상습 결빙 구간
위도, 경도
모델링 데이터
(2020-2021)
정보맵 표시 좌표(2022)
과거 결빙사고
데이터
데이터 전처리 – 결빙사고 데이터+기상 데이터 필요한 데이터 병합하기
28
두 데이터의 일시 데이터 형식을 통일하는 전처리 작업 진행
사고나지 않은 시간대의 기상데이터+사고 데이터 추가
29
사고 날짜의
다른 시간대의
사고 내용
결측치를 전부
“피해 없음” 으로 치환
같은 날의 기상 상태는
같은 값으로 치환
모델 학습에 사고가 발생하지 않은 시간대의 기상데이터도 필요하다고 판단하여 데이터 병합 과정에서 추가하였다.
데이터 전처리 – 사고내용 및 기상상태 수치화
30
피해 없음
부상 신고
경상 사고
중상 사고
사망 사고
0
1
2
날씨 수치
맑음 1
흐림 1
기타 1
비 1.342
눈 1.342
안개 2
1. 사고내용에 따른
사고 위험도 3단계로 나눔
2. 기상상태 사고
영향도에 따른 수치화
3. 전처리 완료
참고자료: 결빙구간의 교통사고 심각도 영향 요인 연구, 2017, 이상준
(위험도에 따라 지도에 표시할 마커의 색깔이 달라진다)
모델링
31
• 다항 로지스틱 회귀분석
• 랜덤 포레스트
종속 변수 Y
위험도 0 1 2
독립 변수 X
시간(hour)
기온(°C)
습도(%)
분류
모델
모델링 – 성능 비교
32
다항 로지스틱 회귀분석 성능 랜덤 포레스트 성능
랜덤 포레스트 알고리즘의 예측 성능이 더 좋게 나옴
모델링 – 파라미터 값 조정으로 성능 개선
33
디폴트 설정 값 파라미터 값 조정 결과
정확도 약 3% 증가
DB 설계 프로세스
34
MySQL과 goormide
연동
실시간 기상데이터
웹크롤링
데이터 전처리 후
DB에 저장
1. 구름ide에 MySQL의 기존 port번호와 ip주소를 입력하면 구름ide 서버와 연동이 가능한 외부 port번호와
ip주소가 발급된다.
2. 네이버 검색창에 경기도 시군구별로 날씨를 자동으로 검색하고 기온, 습도, 기상상태 정보를 크롤링한다(당일
기준 모레 날씨까지)
3. 날씨를 정해진 위험도에 맞게 수치화시키고, 시간 양식을 변경하는 전처리 작업 이후 DB에 저장
MySQL과 goormide 연동
35
현재 포트 입력 등록
IP 주소와 외부 포트번호 부여
실시간 기상데이터 웹크롤링
36
기상 서버에 문제가 생겨도
서비스에는 문제가 없도록
DB에 3일치 데이터 구축
데이터 전처리 후 DB 저장
37
Before
날씨 위험도
맑음 1
흐림 1
기타 1
비 1.342
눈 1.342
안개 2
After
UI / 기능(22.11.03 19시 기준)
38
프로젝트 소감(기대 효과)
39
1. 정확한 정보 알림
 기상 정보에 따른 사고 위험도를 예측함으로써 더 정확한 결빙구간 주의 정보를 받을 수 있음
2. 예측 데이터 활용
 예측 정보를 DB에 기록하여 결빙사고 위험구간을 재검토하는데 활용할 수 있음
3. 제설 관련 기관
 예측 정보를 활용하여 결빙예방 및 제설 작업을 보다 효율적으로 진행 가능
프로젝트 소감(개선해야할 점)
40
1. 예측 모델 추가 변수
 결빙사고에 영향을 주는 다른 요인(이슬점 온도, 도로 형태 등)을 추가로 고려해 더 정확한 예측모델 구현
2. 실시간 정보 반영
 정해진 시간에 자동으로 웹 크롤러가 실행되어 실시간으로 기상 데이터를 받을 수 있도록 개선
3. 제설 관련 기관
 전국 단위로 데이터를 수집하여 서비스 범위를 확대하면 더 좋을 것 같다
프로젝트 자료
프로젝트 github link → https://github.com/Kihoon-Kwon/Black-Ice-project.git
41
The end
끝까지 봐주셔서 감사합니다
42

Mais conteúdo relacionado

Semelhante a 권기훈_개인포트폴리오

Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3uEngine Solutions
 
실 사례로 보는 고객 디지털 경험 지키기
실 사례로 보는 고객 디지털 경험 지키기실 사례로 보는 고객 디지털 경험 지키기
실 사례로 보는 고객 디지털 경험 지키기IMQA
 
AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기
AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기
AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기Amazon Web Services Korea
 
웹에 빠른 날개를 달아주는 웹 성능 향상 이야기
웹에 빠른 날개를 달아주는 웹 성능 향상 이야기웹에 빠른 날개를 달아주는 웹 성능 향상 이야기
웹에 빠른 날개를 달아주는 웹 성능 향상 이야기SangJin Kang
 
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020Jinwoong Kim
 
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020 AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020 AWSKRUG - AWS한국사용자모임
 
[경북] I'mcloud openlight
[경북] I'mcloud openlight[경북] I'mcloud openlight
[경북] I'mcloud openlightstartupkorea
 
중고나라 거래 통계 서비스 1차 개발 완료 보고
중고나라 거래 통계 서비스 1차 개발 완료 보고중고나라 거래 통계 서비스 1차 개발 완료 보고
중고나라 거래 통계 서비스 1차 개발 완료 보고embian
 
[경북] I'mcloud information
[경북] I'mcloud information[경북] I'mcloud information
[경북] I'mcloud informationstartupkorea
 
이벤트: 마이크로서비스 도입, 이렇게 한다
이벤트: 마이크로서비스 도입, 이렇게 한다이벤트: 마이크로서비스 도입, 이렇게 한다
이벤트: 마이크로서비스 도입, 이렇게 한다Jay Park
 
2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현kdh24
 
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)승용 윤
 
Sw개발 hw제작설계서 임베부스러기
Sw개발 hw제작설계서 임베부스러기Sw개발 hw제작설계서 임베부스러기
Sw개발 hw제작설계서 임베부스러기21HG020
 
Data Web Grid 'SBGrid'
Data Web Grid 'SBGrid'Data Web Grid 'SBGrid'
Data Web Grid 'SBGrid'ssuser4e0be8
 
클라우드를 통한 엔터프라이즈 산업 변신 사례 - AWS Summit Seoul 2017
클라우드를 통한 엔터프라이즈 산업 변신 사례 - AWS Summit Seoul 2017클라우드를 통한 엔터프라이즈 산업 변신 사례 - AWS Summit Seoul 2017
클라우드를 통한 엔터프라이즈 산업 변신 사례 - AWS Summit Seoul 2017Amazon Web Services Korea
 
AWS Finance Symposum_AWS 로 빅데이터 분석을 쉽고 간단하게 시작하기
AWS Finance Symposum_AWS 로 빅데이터 분석을 쉽고 간단하게 시작하기AWS Finance Symposum_AWS 로 빅데이터 분석을 쉽고 간단하게 시작하기
AWS Finance Symposum_AWS 로 빅데이터 분석을 쉽고 간단하게 시작하기Amazon Web Services Korea
 
꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가VMware Tanzu Korea
 
산학 제출 PPT
산학 제출 PPT산학 제출 PPT
산학 제출 PPT21HG020
 
Kgw2015 lg엔시스 안무정_최종본
Kgw2015 lg엔시스 안무정_최종본Kgw2015 lg엔시스 안무정_최종본
Kgw2015 lg엔시스 안무정_최종본무정 안
 
디지털트윈 몇몇 기술 동향과 사례 - 대한공간정보학회 신년학술대회 발표 자료
디지털트윈 몇몇 기술 동향과 사례 - 대한공간정보학회 신년학술대회 발표 자료디지털트윈 몇몇 기술 동향과 사례 - 대한공간정보학회 신년학술대회 발표 자료
디지털트윈 몇몇 기술 동향과 사례 - 대한공간정보학회 신년학술대회 발표 자료SANGHEE SHIN
 

Semelhante a 권기훈_개인포트폴리오 (20)

Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3Event storming based msa training commerce example add_handson_v3
Event storming based msa training commerce example add_handson_v3
 
실 사례로 보는 고객 디지털 경험 지키기
실 사례로 보는 고객 디지털 경험 지키기실 사례로 보는 고객 디지털 경험 지키기
실 사례로 보는 고객 디지털 경험 지키기
 
AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기
AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기
AWS Finance Symposium_바로 도입할 수 있는 금융권 업무의 클라우드 아키텍처 알아보기
 
웹에 빠른 날개를 달아주는 웹 성능 향상 이야기
웹에 빠른 날개를 달아주는 웹 성능 향상 이야기웹에 빠른 날개를 달아주는 웹 성능 향상 이야기
웹에 빠른 날개를 달아주는 웹 성능 향상 이야기
 
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
 
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020 AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
AWS기반 서버리스 데이터레이크 구축하기 - 김진웅 (SK C&C) :: AWS Community Day 2020
 
[경북] I'mcloud openlight
[경북] I'mcloud openlight[경북] I'mcloud openlight
[경북] I'mcloud openlight
 
중고나라 거래 통계 서비스 1차 개발 완료 보고
중고나라 거래 통계 서비스 1차 개발 완료 보고중고나라 거래 통계 서비스 1차 개발 완료 보고
중고나라 거래 통계 서비스 1차 개발 완료 보고
 
[경북] I'mcloud information
[경북] I'mcloud information[경북] I'mcloud information
[경북] I'mcloud information
 
이벤트: 마이크로서비스 도입, 이렇게 한다
이벤트: 마이크로서비스 도입, 이렇게 한다이벤트: 마이크로서비스 도입, 이렇게 한다
이벤트: 마이크로서비스 도입, 이렇게 한다
 
2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현2조 프로젝트 보고서 김동현
2조 프로젝트 보고서 김동현
 
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
2016 Staccato track3 Android를 더 잘 개발하려면? (MVP, MVVM, Clean Architecture)
 
Sw개발 hw제작설계서 임베부스러기
Sw개발 hw제작설계서 임베부스러기Sw개발 hw제작설계서 임베부스러기
Sw개발 hw제작설계서 임베부스러기
 
Data Web Grid 'SBGrid'
Data Web Grid 'SBGrid'Data Web Grid 'SBGrid'
Data Web Grid 'SBGrid'
 
클라우드를 통한 엔터프라이즈 산업 변신 사례 - AWS Summit Seoul 2017
클라우드를 통한 엔터프라이즈 산업 변신 사례 - AWS Summit Seoul 2017클라우드를 통한 엔터프라이즈 산업 변신 사례 - AWS Summit Seoul 2017
클라우드를 통한 엔터프라이즈 산업 변신 사례 - AWS Summit Seoul 2017
 
AWS Finance Symposum_AWS 로 빅데이터 분석을 쉽고 간단하게 시작하기
AWS Finance Symposum_AWS 로 빅데이터 분석을 쉽고 간단하게 시작하기AWS Finance Symposum_AWS 로 빅데이터 분석을 쉽고 간단하게 시작하기
AWS Finance Symposum_AWS 로 빅데이터 분석을 쉽고 간단하게 시작하기
 
꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가꿀밋업1탄_왜_마이크로서비스인가
꿀밋업1탄_왜_마이크로서비스인가
 
산학 제출 PPT
산학 제출 PPT산학 제출 PPT
산학 제출 PPT
 
Kgw2015 lg엔시스 안무정_최종본
Kgw2015 lg엔시스 안무정_최종본Kgw2015 lg엔시스 안무정_최종본
Kgw2015 lg엔시스 안무정_최종본
 
디지털트윈 몇몇 기술 동향과 사례 - 대한공간정보학회 신년학술대회 발표 자료
디지털트윈 몇몇 기술 동향과 사례 - 대한공간정보학회 신년학술대회 발표 자료디지털트윈 몇몇 기술 동향과 사례 - 대한공간정보학회 신년학술대회 발표 자료
디지털트윈 몇몇 기술 동향과 사례 - 대한공간정보학회 신년학술대회 발표 자료
 

권기훈_개인포트폴리오

  • 3. About me 3 Email: khpoptop@naver.com Name: 권기훈 / Kwon Kihoon Career: 신입 Age(생년월일): 만 27세(1995.07.12) Address: 서울시 서초구 방배로 18길 67 Github: https://github.com/Kihoon-Kwon
  • 4. Certification 4 취득일자 자격명 발행기관 점수(등급) 2021.02 ITQ 아래한글 한국생산성본부 A등급 2021.04 ITQ 한글액셀 한국생산성본부 A등급 2021.06 ITQ 한글파워포인트 한국생산성본부 B등급 2021.06 TOEIC YBM 880 2021.07 Office Excel 2016 Expert YBMIT Pass 2021.09 OPIc 영어 ACTFL IM1
  • 5. Career 5 • 서울고등학교 졸업(2014.02) • 전자정보공학부 공학설계입문 팀 프로젝트 참여(2016.9~2016.11) • 졸업작품 CNN 이미지 분류 모델 제작 프로젝트 참여(2021.2~2021.11) • 숭실대학교 전자정보공학부 IT융합학과 졸업(2022.02) • 멀티캠퍼스 데이터 사이언스/엔지니어링 전문가 과정 교육 수료 (2022.06~2022.12)
  • 6. Skill set 6 Language Python Javascript SQL HTML css R Framework Django Flask Bootstrap Spark Infra & DB MySQL SQLite Shell Linux Bash AWS Tool Git VScode Jupyter notebook Google colab Teamwork Notion Github
  • 7. Project 1 프로젝트명 : bombom 프로젝트 저시력자 대상 상품 구매 보조 시스템
  • 8. 저시력 장애인들이 마트에서 물건을 구매하는데 겪는 여러가지 애로사항들을 조사하였고, 이를 해소하기 위한 편의기능 제공이 이 프로젝트의 목적이다. 딥러닝 모델을 학습시킨 후 이를 이용하여 상품 이미지 업로드 시 상품 예측 후 상품명, 영양정보, 과자 상세정보 페이지, 그리고 이에 맞는 음성을 제공한다. 개요 저시력 장애인을 대신하여 ‘상품을 본다’는 의미를 담았음
  • 9. 개요 ▪ Django 웹프레임워크 구축 ▪ 딥러닝 모델 적용 ▪ 음성 서비스 구현(TTS) ▪ 초기 화면, 결과 화면 구현 ▪ DB 설계 역할 인원 6명(DS 3명, DE 3명) 사용 도구 서비스구현 웹 설계 협업툴 그 외 개발 기간 22.11.07~22.12.16(총 6주)
  • 11. DB 설계 11 Nutrition Column Name Datatype Constraint name (상품명) VARCHAR NOT NULL total_content (총 용량) INT NOT NULL calories (칼로리) INT NOT NULL protein (단백질) FLOAT NOT NULL fat (지방) FLOAT NOT NULL carbohydrate (탄수화물) FLOAT NOT NULL Snack Column Name Datatype Constraint name (상품명) VARCHAR NOT NULL info (설명) VARCHAR NOT NULL price (가격) INT NOT NULL Models.py를 이용하여 MySQL에 과자 상품 정보, 영양정보 Table을 각각 저장 후 서비스 구현 시 필요한 데이터 호출 서비스 구현
  • 12. 서비스 주요 특징 12 바나나킥 포카칩 양파링 벌집핏자 새우깡 꼬북칩 화이트하임 오레오 아몬드빼빼로 후렌치파이 과자 10종에 대한 상품 이미지 분류 저시력자 대상 서비스이므로 버튼이나 이미지는 최대한 크고 직관적으로 + 색상은 고대비로 구상하였음
  • 13. UI / 기능 13 과자 이미지 업로드에 대한 설명을 음성으로 구 현 - Javascript Speechsynthesis API를 활용하여 텍 스트를 음성으로 합성하였음 - 기존엔 파이썬 gTTS 라이브러리를 활용하였지만, audio player 모양 및 크기 조절이 제한적이었음 - 재생 시 bombom 서비스에 대한 간략한 이용방법을 안내받을 수 있다. 만든 사람들, 조회가능한 상품 페이지와 연동 - 만든 사람들 페이지는 팀원들과 각각의 R&R이 간 략하게 소개되어 있는 페이지이다. - 조회 가능한 상품 페이지는 서비스를 제공하는 과 자의 목록을 확인할 수 있는 페이지이다. 조회를 원하는 상품 이미지를 업로드 - 지원하는 과자 10종류 중 하나의 과자 이미지를 업 로드하면 업로드한 딥러닝 모델이 어떤 과자인지 예 측한다. - 이미지가 입력되면 이것을 3차원 배열로 변환하고 이를 기반으로 모델이 상품명을 예측하는 원리이다. - Jpg, jpeg, png와 같이 이미지 파일만 업로드할 수 있도록 설정하였음(업로드 창에서 타 형식의 파일은 숨김) 과자 이미지를 업로드하는 초기 페이지
  • 14. UI / 기능 14 만든 사람들 페이지 이 프로젝트에 함께한 팀원들의 이름과 간단하게 R&R 소개 상품 목록 페이지 - 서비스하는 과자 목록들을 확인할 수 있는 페이지 - 과자 이미지나 영양 정보 버튼을 누르면 과자 각각의 상 세 정보를 텍스트 및 음성으로 제공받을 수 있다. Bombom 로고나 home 버튼을 누르면 초기 화면으로 돌아간다
  • 15. UI / 기능 15 각 과자에 대한 상세 정보 페이지 - MySQL의 Nutrition 테이블에 과자 각각의 영양 정보가 저 장되어 있고 웹에 호출할 수 있도록 연동하였다. - 각 페이지에서 과자 이름에 맞게 데이터를 호출하였다. 영양 정보를 음성으로 변환하여 제공한다(파파고 음성변환기 사용)
  • 16. UI / 기능 16 조회 원하는 이미지를 업로드 하면 해당 상품에 대한 상품명, 가격, 정확도가 표시되도록 구현 예측 결과에 맞게 텍스트를 음성으로 합성하여 재생하는 기능 구현 - 텍스트의 visibility를 hidden으로 설정하여 웹 화면 상에는 보이지 않도록 설정 - 초기 화면의 안내버튼과 마찬가지로 Speechsynthesis API 활용 - 사용자가 가장 궁금해할 상품명, 가격, 칼로리, 그리고 상품에 대한 간략한 설명 제공 MySQL에 저장된 DB를 호출하여 예측결과에 맞는 DB 정보를 가져옴 - 예측결과에 맞게 각각 번호를 부여하고, 번호에 맞게 예측결과 호출 (DB에 각 상품에 맞는 id가 1~10까지 번호로 지정되어 있으므로 이 에 맞춰서 호출하는 원리) - 상품명, 예측 정확도, 가격을 출력한다 상품 이미지 예측 후 결과 페이지 예측된 과자에 맞게 과자 상세 정보 페이지 연동 - 링크 일부를 prediction 변수에 맞게 변하도록 설정하여 예측 결과에 맞게 해당 페이지로 연동된다.
  • 17. 프로젝트 소감(좋았던 점) 서비스 메인 기능인 이미지 예측이 잘 구현되었다. 배경 노이즈가 심하거나, 과자 이미지가 확대되거 나 잘려 있어도 90% 이상은 상품명을 올바르게 인식한다. 아래의 이미지들 모두 올바르게 예측된 상품 이미지이다. 17 잘린 이미지 확대된 이미지 노이즈 심한 이미지
  • 18. 프로젝트 소감(주요 개선사항) 18 실시간으로 카메라에 상품을 비추면 100% 정확도를 보이는 시점에 상품 인식을 하여 상품 정보를 알려주는 기능 구현함. 사진을 찍어서 업로드하는 번거로움을 덜 수 있다는 장점이 있다. 그러나 아직 웹 카메라에 버퍼링이 걸리는 등 기능적으로 불완전하여 최종 서비스에는 제외하였음 출처 : https://www.screencast.com/t/YIUyhPbi 시연 영상(start 버튼 누른 이후의 시점)
  • 19. 프로젝트 소감(추가 개선사항) 1. 학습시킨 10개의 과자 이외에도 더 많은 과자의 상품 인식이 가능하도록 성능 개선 2. 과자 이외에도 다른 상품군들 또한 학습을 통해 다양한 상품 인식이 가능하도록 서비스 확장 3. 상품 인식 뿐 아니라 상품의 위치도 알려줄 수 있도록 기능 추가 4. 할인 정보, 각 상품의 알레르기 정보들을 알려주는 서비스 등을 추가하면 좋을 듯 19
  • 20. 프로젝트 자료 20 1. 프로젝트 github link → https://github.com/Kihoon-Kwon/snack_classification.git 2. 서비스 전체 시연 영상 → https://www.screencast.com/t/GhGMQPQXS 3. 웹 카메라 기능 시연 영상 → https://www.screencast.com/t/YIUyhPbi
  • 21. Project 2 프로젝트명 : Blackice 프로젝트 결빙사고 예방 서비스
  • 22. 국내에서 도로 결빙 예방책으로 염화칼슘 제설제, 제설 시스템 자동화, 친환경 제설제, 도로열선 등이 있지만 각각 인력 부족, 환경오염, 높은 비용 등의 제약 사항이 있다. 아직 완전하지 않은 결빙사고 예방책을 보다 보완할 수 있는 결빙 사고 위험 지역을 예측하여 운전자 결빙 사고를 예방하는 시스템을 개발하였음. 개요 온도가 갑자기 떨어져 생기는 도로 위의 살얼음 일반 도로보다 최대 14배, 눈길보다는 6배 더 미끄러움 Blackice의 의미란?
  • 23. 개요 ▪ 데이터 수집 ▪ 데이터 전처리 ▪ 모델링 ▪ DB 설계 ▪ 웹크롤링 역할 인원 4명(모델링 담당 2명, 웹서비스 담당 2명) 사용 도구 데이터 수집&전처리, 모델링 DB 설계 웹크롤링 개발 기간 22.10.18~22.11.04(총 3주)
  • 25. 서비스 주요 특징 25 지역 선택 (시/군) 일자 선택 결빙사고 위험지역 표시 지도 1. 서비스 대상은 경기 지역의 운전자 및 도로 이용자 대상이다. 2. 경기도 시군구 중 하나를 선택하고, 3일 중 하루를 선택하면 해당 구의 상습결빙구간에 대한 현재 위험도를 예측 3. 웹 서비스 구현은 goormide 서버를 활용하여 구축하였다.
  • 26. 데이터 탐색 26 1 2 지도에 표시해 줄 좌표 데이터 결빙사고 위험도 예측모델 데이터 시간 : 결빙사고는 오전 6~10시에 주로 일어남 기온 습도 날씨 : 기상 상황은 결빙 형성에 영향을 줌 : 보통 결빙사고는 11~3월 사이에 자주 발생 : 습도가 높을수록 이슬, 서리 발생 빈도가 높다
  • 27. 수집한 데이터 27 1시간 간격의 기온, 습도 정보 상습 결빙 구간 위도, 경도 모델링 데이터 (2020-2021) 정보맵 표시 좌표(2022) 과거 결빙사고 데이터
  • 28. 데이터 전처리 – 결빙사고 데이터+기상 데이터 필요한 데이터 병합하기 28 두 데이터의 일시 데이터 형식을 통일하는 전처리 작업 진행
  • 29. 사고나지 않은 시간대의 기상데이터+사고 데이터 추가 29 사고 날짜의 다른 시간대의 사고 내용 결측치를 전부 “피해 없음” 으로 치환 같은 날의 기상 상태는 같은 값으로 치환 모델 학습에 사고가 발생하지 않은 시간대의 기상데이터도 필요하다고 판단하여 데이터 병합 과정에서 추가하였다.
  • 30. 데이터 전처리 – 사고내용 및 기상상태 수치화 30 피해 없음 부상 신고 경상 사고 중상 사고 사망 사고 0 1 2 날씨 수치 맑음 1 흐림 1 기타 1 비 1.342 눈 1.342 안개 2 1. 사고내용에 따른 사고 위험도 3단계로 나눔 2. 기상상태 사고 영향도에 따른 수치화 3. 전처리 완료 참고자료: 결빙구간의 교통사고 심각도 영향 요인 연구, 2017, 이상준 (위험도에 따라 지도에 표시할 마커의 색깔이 달라진다)
  • 31. 모델링 31 • 다항 로지스틱 회귀분석 • 랜덤 포레스트 종속 변수 Y 위험도 0 1 2 독립 변수 X 시간(hour) 기온(°C) 습도(%) 분류 모델
  • 32. 모델링 – 성능 비교 32 다항 로지스틱 회귀분석 성능 랜덤 포레스트 성능 랜덤 포레스트 알고리즘의 예측 성능이 더 좋게 나옴
  • 33. 모델링 – 파라미터 값 조정으로 성능 개선 33 디폴트 설정 값 파라미터 값 조정 결과 정확도 약 3% 증가
  • 34. DB 설계 프로세스 34 MySQL과 goormide 연동 실시간 기상데이터 웹크롤링 데이터 전처리 후 DB에 저장 1. 구름ide에 MySQL의 기존 port번호와 ip주소를 입력하면 구름ide 서버와 연동이 가능한 외부 port번호와 ip주소가 발급된다. 2. 네이버 검색창에 경기도 시군구별로 날씨를 자동으로 검색하고 기온, 습도, 기상상태 정보를 크롤링한다(당일 기준 모레 날씨까지) 3. 날씨를 정해진 위험도에 맞게 수치화시키고, 시간 양식을 변경하는 전처리 작업 이후 DB에 저장
  • 35. MySQL과 goormide 연동 35 현재 포트 입력 등록 IP 주소와 외부 포트번호 부여
  • 36. 실시간 기상데이터 웹크롤링 36 기상 서버에 문제가 생겨도 서비스에는 문제가 없도록 DB에 3일치 데이터 구축
  • 37. 데이터 전처리 후 DB 저장 37 Before 날씨 위험도 맑음 1 흐림 1 기타 1 비 1.342 눈 1.342 안개 2 After
  • 38. UI / 기능(22.11.03 19시 기준) 38
  • 39. 프로젝트 소감(기대 효과) 39 1. 정확한 정보 알림  기상 정보에 따른 사고 위험도를 예측함으로써 더 정확한 결빙구간 주의 정보를 받을 수 있음 2. 예측 데이터 활용  예측 정보를 DB에 기록하여 결빙사고 위험구간을 재검토하는데 활용할 수 있음 3. 제설 관련 기관  예측 정보를 활용하여 결빙예방 및 제설 작업을 보다 효율적으로 진행 가능
  • 40. 프로젝트 소감(개선해야할 점) 40 1. 예측 모델 추가 변수  결빙사고에 영향을 주는 다른 요인(이슬점 온도, 도로 형태 등)을 추가로 고려해 더 정확한 예측모델 구현 2. 실시간 정보 반영  정해진 시간에 자동으로 웹 크롤러가 실행되어 실시간으로 기상 데이터를 받을 수 있도록 개선 3. 제설 관련 기관  전국 단위로 데이터를 수집하여 서비스 범위를 확대하면 더 좋을 것 같다
  • 41. 프로젝트 자료 프로젝트 github link → https://github.com/Kihoon-Kwon/Black-Ice-project.git 41
  • 42. The end 끝까지 봐주셔서 감사합니다 42