Skip to content

lee123-jun/2024_Cheonan_Data_Contest

 
 

Repository files navigation

2024 Cheonan Data Contest Exhibit

  • 2024_2nd_천안 데이터 공모전_클라우드
  • 김민수, 김세현, 이혜준, 이지우


24.08.24 공모전 마지막 작업

  • 프리젠테이션 자료 100% 완료


24.08.22 ~ 24.08.23공모전 11차 회의 & 보고

  • 프리젠테이션 자료 99% 완료


24.08.21 공모전 10차 회의 & 보고

  • 웹서비스에 GIS알고리즘 적용 취소
  • 프리젠테이션 자료 40% 완료

웹서비스에 GIS알고리즘 적용 취소

  • GIS의 서버인 SQL서버와 웹서버간의 동적인 연결이 어려움
  • 가능하더라도 서버가 2개 이상 필요하기 때문에 여건산 취소함
  • -> 결과발표 때는 이미지와 영상으로 간략히 설명하고, 이후의 상황에서는 카카오내비 API를 활용할 계획


24.08.18 ~ 24.08.20 공모전 9차 회의 & 보고

  • 코사인 유사도를 이용하여 식당추천 알고리즘 개발 완료 (/Python/식당추천/ :참조)
  • 기타 빵집추천, 숙박시설 추천 개발완료 (Python/식당추천/ :참조)(Python/숙박시설추천/ :참조)

식당 알고리즘

  • 유저가 먹고싶은 음식을 입력하면 해당음식과 데이터 파일의 가게별 주메뉴 항목 중에서 가장 유사도가 높은 음식점을 코사인 유사도 이용하여 계산함

빵집 알고리즘

  • 유저가 먹고싶은 빵들을 고르면 해당 빵들중 빵집의 메뉴롸 가장많이 겹치는 빵집을 계산함

숙박시설 알고리즘

  • 유저가 적정가격을 입력하면 이를 이용하여 숙박시설을 계산함

관광추천 데이터 추가 실패

  • 기존의 데이터들의 소분류별 분산과 표준편차를 계산한 결과 공원, 사찰, 산림(산), 시장, 향교의 표준편차가 사용해도될 수준으로 계산됨(분산: 2~3 , 표준편차: 1.5 ~ 2.5)
  • 추가된 데이터에 비율을 적용할때 문제가 발생함
    • 추가된 항목에 평균을 적용할 경우 같은 비율을 가진 데이터가 존제하기 때문에 (X)
    • 휘귀 모델을 이용하여 각각 다른 비율을 적용하려 하였지만 출력결과 신뢰도가 매우 낮게 나옴 (X)
  • 결과적으로 회귀모델을 돌릴만한 데이터 양이 적기때문에 데이터 추가 작업은 취소함


24.08.13 ~ 24.08.14 공모전 8차 회의 & 보고

  • KNN 분석 알고리즘 개발 완료 (Python/분석_알고리즘/ :참조)

관광추천 알고리즘 개발순서

  1. KNN 알고리즘과 랜덤포레스트 알고리즘으로 개발시작함.
  2. 랜덤포레스트는 성능지 좋지않게 나옴. (∴KNN 체택)
  3. KNN 알고리즘에서 같은 결과만 나오는 문제발생
  4. 원인 모든 입력이 동일한 특정 컬럼만 활성화되는 특징 벡터를 생성하게 되어, KNN이 다른 데이터 포인트를 구별하기 어려워서 같은 결과만 출렴함
  5. -> 데이터가 정규화를 정규화 시키고, 입력된 연령대와 성별에 맞는 비율 값을 그대로 벡터에 반영하도록 수정함.

결과 예시 (10대 and 20대, 5가지 추천)

  • 10대 남성: 추천 관광지들: ['유관순열사기념관', '천안박물관', '천안독립기념관', '아우내독립만세운동기념공원', '광덕산']
  • 10대 여성: 추천 관광지들: ['유관순열사기념관', '천안박물관', '아우내독립만세운동기념공원', '광덕산', '아우내장/병천5일장(1_6일)']
  • 20대 남성: 추천 관광지들: ['성거산', '광덕산', '흑성산', '천안병천순대거리', '아우내장/병천5일장(1_6일)']
  • 20대 여성: 추천 관광지들: ['흑성산', '목천향교', '신방공원', '태조산(태조봉)', '천안박물관']

현재 문제점 해결방안

  1. 아래의 알고리즘의 경우 데이터 분석이 거의 사용되지 않음 ---> KNN과 최단거리 분석, 수학적 분석을 이용하기 떄문에 OK
  2. 관광지 데이터가 부족함 ---> (Data/천안시데이터_전처리 완료/참고데이터/천안시_관광업소_동 :참조) 이 를 분산과 표준편차 를 이용해 검사후 데임하면 가능

식당, 빵집, 숙소의 조합

  • 숙소: 최단거리가 핵심이므로 구역마다 숙소 집단이 모여져 있으니 구역이 택해지게하고, 금액은 5000원별로 나누고, 리뷰도 0.1단위로(장소가 비슷비슷 하기 때문에 금액으로 구분하여 추천)
  • 빵집: 자연어처리로 관련검색어들이 뭐가 있는지 확인이 되게끔 해서 사용자가 선택할 수 있게끔 할 계획.
  • 식당: 유저가 가고싶은, 먹고싶은 음식으로.. (차후 결정)


24.08.12 공모전 7차 회의 & 보고

  • 데이터 전처리 완료
  • 데이터 추가 수집 완료 ()

현재 문제점

  1. 아래의 알고리즘의 경우 데이터 분석이 거의 사용되지 않음
  2. 관광지 데이터가 부족함


24.08.11 공모전 6차 회의 & 보고

  • 데이터 수집 완료 (Data/천안시데이터_전처리 완료/ :참조)

데이터 군집화 & 추천알고리즘 로직

  1. 유저가 페이지에서 성별과 나이, 여행에서 가장 하고싶은 또는 보고싶은 느낌(카테고리: 휴양, 역사유적, 쇼핑, 힐링 등)을 1순위 부터 3순위 까지 입력함
  2. 유저가 입력한 나이와 성별을 토대로 하여 그 성별 또는 그 나이때의 사람들이 많이가는 관광명소나 음식점을 1차로 추스림.
  3. 1차로 추스려진 항목들 중에서 유저가 입력한 카테고리에 해당된 항목을 수집함
  4. 수집된 항목들 중 사용자의 현위치(보통 여행기 혹을 집에서 짜니 집이 현 위치가 되겠죠)에서 찬안으로 가는 도중 가장 먼저 갈 수 있는 관광명소를 중심으로 하여 이후의 명소들과 음식점, 숙박업소 들을 차래로 최단거리 최적화를 통하여 경로를 짬


24.08.08 공모전 5차 회의

  • 데이터 (빵집, 관광명소, 숙박시설) , 카페 대신에 빵집, 숙박시설 + 천안시 장기체류 비율을 높이기 위해서 주변 관광지(나이, 성별, 세대을 고려한 코스) 넣는 것이다.
  • 기본 토대는 천안시 관광코스를 따라가되 사이사이에 빵집과 관광명소를 끼워넣는 것

정적 알고리즘 으로 할것



24.08.08 공모전 4차 회의

  • 주제 변경

    • 최적화된 천안시 관광요소 + 빵집 추천



24.08.05 공모전 3차 결과보고

  • 리뷰 크롤링 완료
  • 웹 작업 70%완료
  • QGIS대신 파이썬으로 대체


24.07.31 공모전 2차 회의

1. 관광 활성화

  • 빵집 순례 -> 시민들 대상 이벤트

관광의 이유 ?

  • 천안시 공인 빵 맛집 리뷰 크롤링 및 데이터분석이 가능하다!

    • 빵이 이뻐서
    • 시설이 너무 좋아서
  • 빵집(=카페) / 가는 기준이 무엇인가 ? -남성, 여성 카드소비데이터 -> 빈도수를 파악 (포인트 적립 등 데이터에 대한 객관성이 떨어진다 생각함)

군집화의 기준이란 ?

  • 맛(빵의 종류), 거리, 주변 시설, 관경, 가격, 대기시간(시간대별), 청결(?), 서비스, 음식 양

장점을 극대화해라

  • 빵빵데이 사이트 , 빵소 팜플렛 pdf 파일
  • 기존의 빵지순례 루트를 보고 극대화 시켜야 겠다 (주제 선정 이유)

[역할분담]

  • 김민수 : 크롤링
  • 김세현 : 웹 개발
  • 이혜준: qgis
  • 이지우: 앱 개발

프론트 엔드 순서

  1. 자신의 위치 정보 수집
  2. 위치 주변에서 5분 또는 10분 등 으로 조건 수집
  3. 유저가 선택한 조건들로 검색

[첫 화면] GPS 허용하시겠습니까?

[두번째 화면] 허용시, 선택란 휴대폰과 떨어진 거리 범위 허용 (5분) (10분) (15분) 선택란뜨게

  • 5분을 눌렀을 때, 그 범위내에 빵소가 없다면, "근처에 빵소가 존재하지 않습니다." 뜨고
  • 빵소가 있다면, "근처에 빵소 2곳이 발견되었습니다."

[세번째 화면] 특성: 맛, 청결, 빵소디자인, 주차공간, 분위기, 등

  • 여기서 중요도1: , 중요도2: , 중요도3: 이렇게 뜨게해서 넣어지게
  • 여기서 데이터를 활용, (데이터활용 -> 천안시가 선정한 빵소들을 네이버 댓글 크롤링하여 워드클라우드, 히스토그램들로 특성 군집화 통해 선정)
  • 중요도1 중요도2 중요도3 여기서 가중치를 다르게 두어 최단 거리 선정 <- 여기서 사용되는 알고리즘 코드는 다이나믹프로그래밍을 이용한 TSP
  • 그리고 예를들어 북구에 북대문이 유명하다, GPS로 인해자동추천하여 빵소1 - 북대문 - 빵소2 : 최단거리 12분입니다 하고지도로 뜨게하는 구현영상


24.07.28 공모전 1차 회의

  • 천안 빵집 데이터 수집 (객관적인 데이터일 필요 있음)
  • 리뷰 데이터(광고성 댓글이 많기 때문에, 주관성이 높을 수 있음)
    • 데이터 전처리 통하여, 잘 선별필요있음
  • 객관적인 데이터 토대로, 네이버 리뷰 댓글들을 크롤링하여, 히스토그램 및 워드 클라우드를 가지고 시각화 (청결, 주차, 맛, 가게 디자인, 지역별 등 다양한 특성별로 데이터 전처리 및 분류)
  • 천안 빵집 관련하여 논문 기사 조사
  • 추후, 다익스트라 알고리즘 또는 다른 알고리즘을 가지고 가중치를 두어 자동으로 경로를 짜주는 빵집투어 지도 제작
  • 기회가 된다면, 앱개발 또는 UI 디자인하여 천안 명소+빵집+빵집을 넣었을때 자동으로 경로를 짜주는 시스템 개발
  • 기대효과로는 천안에 유명한 대학(단국대, 상명대, 호서대, 등) 청년인구 경제 활성화, 지역 경제 활성회, 빵리단길과 같은 지역 특성 개발가능

About

2024_2nd_천안공모전_클라우드

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 59.6%
  • Python 18.3%
  • R 15.8%
  • JavaScript 4.7%
  • CSS 1.6%