본문 바로가기

Python

(36)
Python Project 03. Classification Model 0. Train / Test Split ◎ 분류 모델을 학습하기 위한 Train, Test Set을 생성. ○ train.txt / test.txt # train, test txt file import random as rd all_num = list(np.arange(1, 501)) train_num = rd.sample(all_num, int(len(all_num) * 0.8)) test_num = list(set(all_num).difference(train_num)) f = open('train.txt', 'w') # train.txt 생성 for i in range(0,2): for n in train_num: data = path + 'apple_' + str(i) +'_' + format(n..
Python Project 02. 데이터 전처리 및 프로그래밍 준비 1. 데이터 전처리 - 수집한 이미지들을 불러오고 이미지 크기를 확인한 결과, 이미지들의 크기가 다름. ⇒ 모델 훈련을 위해 이미지 크기를 맞추는 것이 필요. ⇒ 모든 이미지를 "256×256×3" 형식으로 맞춤. ('알씨' 프로그램을 이용하여 일률적으로 수정) - 이미지 파일의 라벨링을 변경 ⇒ 과수화상병 중 '사과탄저병' 만을 사용 & 질병의 유무만을 확인할 예정 ⇒ 병이 없는 정상 이미지의 경우 'apple_0_(num).jpg' / 탄저병이 있는 이미지의 경우 'apple_1_(num).jpg' 로 rename. ○ 데이터 전처리 과정이 끝난 이미지 파일들 - https://github.com/zaegeon/Project/tree/main/apple GitHub - zaegeon/Project C..
Python Project 01. 주제 선정 및 데이터 수집 - 아이티윌 교육센터에서 진행한 팀 프로젝트 정리. 0. 프로젝트 주제 선정 - 주제 후보 김해시 CCTV 공모전 미세먼지 예측 식물 정상 / 비정상 이미지 분류 모델 생성 환경 조건에 따른 병 심각도 조사 게임 / 영화 리뷰 분석(텍스트마이닝) 온라인 쇼핑 동향을 이용한 성별, 계절별 쇼핑 아이템 추천 네이버 지도를 이용한 음식점 창업 위치 추천 기상에 따른 혈관질환 발생 예측 소방안전 빅데이터를 활용한 재난 방지 or 소방 시설 개선 방안 등 조사 서울시 노인 현황 및 관련 시설 현황을 조사하여 특정 구에 추가 노인 시설을 설립할 효율적인 방안 모색 https://data.seoul.go.kr/dataList/10020/S/2/datasetView.do - 서울시 고령자 통계 https://data...
Python Day 34 - Machine Learning part 14. CNN ◎ CNN (Convolutional Neural Network, 합성곱 신경망) ○ Imports import numpy as np import matplotlib.pyplot as plt from scipy.signal import convolve, convolve2d, correlate, correlate2d from sklearn import datasets from sklearn.model_selection import train_test_split import tensorflow as tf from tensorflow import keras ● Convolutional(합성곱) 연산 ○ 1-D Convolution ㆍ'valid' x = np.arange(1, 5) x >> array([1, ..
Python Day 32, 33 - Machine Learning part 13. ANN ◎ ANN (Artificial Neural Network, 인공신경망) ○ Imports import numpy as np import matplotlib.pyplot as plt from sklearn import datasets from sklearn.linear_model import SGDClassifier from sklearn.model_selection import train_test_split # tensorflow, keras import tensorflow as tf from tensorflow import keras tf.__version__ # Google Colab에 설치된 Tensorflow 버전 >> 2.8.2 keras.__version__ # Google Colab에 설치..
Python Day 31 - Machine Learning part 12. unsupervised learning ◎ Unsupervised Learning (비지도학습) ○ Imports import numpy as np import pandas as pd import matplotlib.pyplot as plt from sklearn.cluster import KMeans # 비지도 학습 clustering 알고리즘 from sklearn.decomposition import PCA # 주성분 분석, 비지도 학습 ○ Fruits Dataset !wget https://bit.ly/fruits_300_data -O fruits_300.npy # !(linux명령어) # wget 파일저장위치(URL) -O 파일이름 : URL에서 데이터를 다운로드해서 파일에 저장. >> ... fruits_300.npy 100%[==..
Python Day 30 - Machine Learning part 11. image classification ◎ Image Classification ○ Imports import numpy as np import pandas as pd import matplotlib.pyplot as plt # plot(), scatter(), imshow(), ... from matplotlib import image # image 모듈 import : imsave(), imread(), ... from sklearn import datasets # scikit-learn에서 제공되는 예제 데이터 셋을 사용하기 위해서 ○ Python에서 Image 다루기 china = datasets.load_sample_image('china.jpg') type(china) >> numpy.ndarray china.shape >> (42..
Python Day 29 - Machine Learning part 10. Ensemble ◎ Ensemble Learning(앙상블 학습 방법) 앙상블(Ensemble) : 머신 러닝에서 사용되는 일련 모델(알고리즘)들. 서로 다른 모델 여러 개를 학습시키는 방법. 한 가지 모델을 서로 다른 훈련 셋에서 학습시키는 방법. 앙상블 학습 방법 : 앙상블을 사용한 머신 러닝 방법. 투표(voting) 방식 : 여러 개의 모델을 학습시켜서 각각의 예측값을 투표(다수결, 최빈값) 또는 평균값으로 예측하는 방법. Bagging(Bootstrap Aggregating) : 중복을 허용해서 샘플링한 훈련 셋의 부분집합들을 하나의 알고리즘에 학습시켜서 예측(최빈값, 평균)하는 학습 방법. Pasting : 중복을 허용하지 않고 샘플링한 훈련 셋의 부분집합들을 알고리즘에 학습시켜서 예측하는 방법. Boosti..