분류 전체보기 120

[골목길 탐지하기]_종로구 정사영상 기준 실험 (2/2)

최근 진행 중인 프로젝트의 일부로, 공개 도로 데이터를 보완할 수 있는 방법을 고민하다가 간단한 토이 프로젝트를 진행하고 있었다.[골목길 탐지하기]_종로구 정사영상 기준 실험 (1/2) 이전 실험에서는 기존 공개 도로데이터를 학습 라벨로 활용하여 정사영상에서 도로를 탐지하고자 했다. 그러나 실험을 반복하면서 모델 구조를 변경하는 것만으로 해결하기 어려운 문제가 있다는 점을 확인했다. 특히 기존 도로데이터에는 실제 보행에 이용되는 일부 골목길이 포함되어 있지 않았고, 도로 중심선을 일정한 폭으로 확장하여 만든 라벨 역시 실제 영상에서 보이는 도로 경계와 정확하게 일치하지 않았다. 결국 모델에게 더 복잡한 구조를 적용하기 전에 학습에 사용하는 정답 데이터부터 다시 확인할 필요가 있다고 판단했다. [직접..

[골목길 탐지하기]_종로구 정사영상 기준 실험 (1/2)

공공데이터로 제공받을 수 있는 도로가 실제 이동 가능한 모든 길을 포함하는 것은 아니다. 도로를 어느 기준까지 포함하여 작도할지는 각 자료가 제작된 목적에 따라 달라질 수도 있기 때문이다. 특히 주거지 내부의 골목길과 생활도로는 기존 도로 자료에서 누락되는 경우가 있으며, 이로 인해 보행 경로 분석에서는 실제보다 긴 우회 경로가 계산될 수 있다. 따라서 국토정보플랫폼에서 제공하는 정사영상을, 데이터는 표준노드링크의 링크 데이터를 사용하여 서울특별시 내 보행 가능한 골목길을 탐지하는 과제를 진행해보기로 했다. 우선 분석 전에 서울특별시 전체의 정사영상은 약 110~120GB 정도로 예상되는 상황이었으며, 무작정 분석을 돌리기엔 학원 PC의 사양이 문제가 되었다. 또한 시간적인 문제도 매우 큰 관계로 학..

#5 5일차_감성 분석 (나이브베이즈, RNN)

01 쇼핑몰 후기 감성 분석 02 참고 : 최신 java 설치 03 쇼핑몰 후기 감성 분석 - 모델링(나이브베이즈) 04 쇼핑몰 후기 감성 분석 - 모델링(RNN) 01 쇼핑몰 후기 감성 분석 # 1. 데이터 로딩 import pandas as pd df = pd.read_table('shopping_ratings_total.txt', names = ['ratings', 'reviews']) df.head() df.shape # (200000, 2) # 2. target 변수 변환(평점 -> 이진데이터) import numpy as np np.unique(df['ratings']) # [1, 2, 4, 5] df[..

[골목길 탐지하기]_위성영상 탐색과 활용 : Sentinel-2

중간 프로젝트를 진행하며 도로망 데이터에 대한 아쉬움을 매우 크게 느끼고 있었다. 이륜차 사고다발지역에 대한 특성이다보니 일반적인 승용차와 다르게 협소한 골목, 공원 내, 아파트 혹은 대학교 부지 내 도로 등에서도 사고가 발생한 지점이 있었는데, 분석에 활용한 도로망 데이터는 대부분 교통 네트워크 구축 혹은 행정 목적에 맞춰 제작된 데이터였기에 원하는 해상도에서의 생활도로까지는 충분히 표현되지 않은 경우가 존재했다. 서울시 내 생활도로, 좁은 골목까지 모두 도로를 새로 작도하기에는 시간적인 여유가 없었기에 도로 데이터가 존재하지 않는 사고 포인트도 10개 미만이었기에 인접 격자에서의 최솟값들을 가져와 대치하는 것으로 마무리했었던 기억이 있다. 그러던 중 딥러닝 수업을 들으며 문득 새로운 가능성이 떠..

#4 4일차_CNN, 얼굴 사진 분류하기, 쇼핑몰 후기 감성 분석

01 CNN (컨볼루션 신경망) 02 유명인사의 얼굴 데이터 분류하기 -01 이미지 분석 - pca + knn (얼굴 데이터) -02 이미지 분석 - ANN(3차원 학습 불가) (얼굴 데이터) -03 이미지 분석 - CNN(3차원 학습 가능) (얼굴 데이터) -04 새로운 얼굴 사진 예측 함수 -05 사전학습 모델(EfficientNetB0) + 얼굴 데이터 전이학습 03 쇼핑몰 후기 감성 분석01 CNN (컨볼루션 신경망) - 심층신경망에 컨볼루션 망을 추가한 신경망 - 컨볼루션 망에서 이미지의 정교한 특징을 추출 - 마스크(=필터=윈도우)에 의해서 재추출된 신호 - hyper parameter : 컨볼루션층 수, 마스크 수, 마스크 사이즈 - parameter : 각 마스크 가중치 - 풀링(=서브샘..

#3 3일차_ANN(다중 분류), 이미지 분석(PCA+KNN, ANN, CNN)

01 ANN - 다중 분류02 PCA + KNN 모델을 이용한 이미지 분석03 ANN 모델을 사용한 이미지 분석04 CNN 모델을 사용한 이미지 분석01 ann - 다중 분류1) 데이터 로딩from sklearn.datasets import load_iris iris = load_iris() X, y = iris.data, iris.target X.shape y.shape X.shapeOut[4]: (150, 4)y.shapeOut[5]: (150,)# target 변수 원핫 인코딩 (3개 클래스) import pandas as pd y3 = pd.get_dummies(y, prefix='Y').astype('int')pd.get_dummies(y, prefix='Y').astype('int')Out[..

#2 2일차_인공신경망의 구조, 실습

01 인공신경망의 구조 -01 layer + node -02 활성함수 -03 오차함수 -04 최적화 -05 오차 역전파 -06 기울기 소실 02 실습 -01 ANN - 회귀 -02 ANN 튜닝 - batch_size, early stopping (적절한 epoch 결정) -03 ANN - 분류01 인공신경망의 구조 -01 layer + node 입력층 - 중간층 - 출력층 구조로 구성되어 있으며 각 층마다 여러 노드(뉴런)이 존재한다. > 입력층 : 데이터를 전달받는 층 (노드의 수 = 피쳐 수)> 출력층 : 최종 예측 결과를 리턴하는 층 (노드의 수 = 출력 결과) * 회귀분석 : 1개의 target * 분류분석 : ex) 사망여부 -> 1개 target -> 원핫인코딩 (클래스별로 서로 다른..

#1 1일차_tensorflow, keras 설치하기

01 설치하기01 설치하기pip install tensorflow * 만약 ImportError : DLL load failed while importing _pywrap_profiler 이라는 오류가 발생한 경우, 애플리케이션 제어 정책에서 파일을 차단하는 경우이다. 윈도우 검색 > 스마트 앱 컨트롤 > 끄기로 설정이 가능하다. tensor라는 언어를 베이스로 개발된 keras라는 언어도 있다.이 역시 설치를 진행한다.pip install keras spyder 등에서 import tensorflow as tf, import keras 등을 통해 설치가 제대로 진행되었는지 확인할 수 있다.

#7 7일차_반복 제어문, sed, awk

01 반복 제어문 02 sed - 비대화형 편집기 03 awk - 자료처리 -01 산술연산 -02 grep -03 cut01 반복 제어문 - continue 특정 조건을 만나면 반복문 스킵, 다음 대상부터 다시 반복문을 수행한다. ex)for fname in $(ls *.sh)do if [ $fname = "a.sh" ] then exit 1 echo "$fname"doneecho "프로그램 종료"exit 0 vi 22_continue.sh#!/bin/shfor i in $(seq 1 10)do echo "숫자 출력" if [ $i -eq 5 ] then continue fi echo "현재번호 : $i"doneitwill@itwill-VMware-Virtual-Platform:..

#6 6일차_파이썬 스크립트 실행, 로깅 처리, 정렬, 특수기호 정의

01 리눅스에서 파이썬 스크립트 실행하기 02 로깅 처리 -01 echo -02 tee 03 정렬 -01 ls 결과 정렬 -02 sort 04 특수기호 정의 -01 * 과 ? -02 [] -03 ~와 - -04 ''와 "" -05 ; 과 | 05 논리 연산자 -01 and 연산자 -02 or 연산자 -03 not 연산자01 리눅스에서 파이썬 스크립트 실행하기os 프롬포트에서 파이썬 프롬프트로 명령어 전달을 수행할 수 있다. (입력 프롬프트를 사용) ipython 사용 시 쓸데없는 헤더들을 출력하고 싶지 않다면 --no-banner와 함께 python prompt로 진입하는 것도 좋다.(base) itwill@ubuntu:~$ cds(base) itwill@ubuntu:~/linux_ex/ch9$ ipy..