이런 저런 이야기... 현재 프로젝트를 마무리하고 나서 이 글을 작성하고 있다. 총 6명의 팀원들과 함께 2022 k data 프로젝트를 진행하였다. 세종시 측에서 세종시 하나카드 매출 데이터를 제공받았고 이를 토대로 주제 선정을 하였다. 진행 중에 주제를 변경하였었고, 최종 주제를 정하기까지 많은 시간이 필요했다. 주제에 필요한 데이터를 수집하는데 한계가 있었기 때문이다. 제공받은 카드매출 데이터도 개인정보는 감추어진 포괄적인 정보였기 때문에 유의미한 데이터로 가공하는 것도 쉽지 않았다. 또한 고도의 모델링이 필요하기에 주어진 시간 내에 수행하기에도 무리가 있었다. 결국 최종적으로 정한 주제는 '세종시 소상공인 상권 추천 및 매출 예측 서비스' 이다. 프로젝트 배경 대전일보에 따르면 세종시의 상가공실률..
참고자료: 책 (개정 3판) 데이터 계산/분석/시각화 라이브러리 - Numpy - Pandas - matplotlib - Scipy - sklearn ... 딥러닝 라이브러리 - Tensorflow - Keras - Pytorch - Caffe2 ... 1. 환경 준비 딥러닝을 구동하는 데 필요한 라이브러리 호출 2. 데이터 준비 데이터 업로드, 깃헙에서 불러오기, 공공데이터나 캐클에서 api 사용하여 불러오기 등등... 3. 구조 결정 model.add(...) l첫째, 좋은 딥러닝 모델을 만들려면 몇 개의 층으로 쌓아 올려야 하는가? l둘째, Dense 함수 안에 있는 숫자와 설정의 의미는 무엇이며, 어떻게 정해야 하는가? l딥러닝을 설계한다는 것은 결국 몇 개의 층을 어떻게 쌓을지, Dense 외에..
퍼셉트론 입력값과 활성화함수를 사용해 출력값을 다음으로 넘기는 작은 신경망단위 오차역전파 - 최적화의 계산방행이 출력층에서 시작해 역으로 진행됨. 다층 퍼셉트론에서의 최적화 과정 - 컴퓨터가 예측값의 정확도를 높이기 위해 출력값과 실제 예측하고자하는 값을 비교하여 가중치를 변경하는 작업 참고: https://bskyvision.com/718 오차 역전파(error backpropagation) 개념 제대로 파악하기 미리 말씀드리지만 이 글은 좀 깁니다. 그리고 수식이 많아서 언뜻 보면 너무 어렵게 느껴질 수 있습니다. 하지만 이 글을 끝까지 인내하시면서 읽어내려가신다면 분명 오차 역전파(error backpropag bskyvision.com 활성함수 activation function 신경망 노드에 들..
탐색적 데이터분석 과정에서 수행하는 데이터 시각화는 평면적인 데이터에서 주요한 특성을 드러내는 가장 효과적인 수단이다. 1. 데이터 종류 수치형 - 히스토그램 분포도 커널밀도추정 러그플롯 - 연속형: 값이 연속된 데이터 - 수치형: 정수로 딱 떨어져 셀 수 있는 데이터 - 사칙연산 가능 범주형 - 막대그래프 포인트플롯 박스플롯 카운트플롯 ... - 순서형데이터(ordinal): 순위를 매길 수 있는 데이터 - 명목형 데이터(nominal): 순위가 따로 없는 데이터 - 사칙연산 불가능 데이터관계 시각화 :히트맵 라인플롯 산점도 산점도+회귀선 2. 수치형 데이터 시각화 - 일정한 범위 내에서 어떻게 분포되어 있는지 중요 분포를 알아야 데이터를 어떻게 변환할지, 어떻게 해석해서 활용할지 판단 seaborn이..
1. 선형 회귀 모델 선형회귀 선형 회귀식을 활용한 모델. 선형 회귀 모델을 훈련한다는 것은 훈련데이터에 잘 맞는 모델 파라미터, 즉 회귀계수를 찾는 것이다. https://www.kaggle.com/werooring/ch5-linear-regression [ch5] Linear Regression Explore and run machine learning code with Kaggle Notebooks | Using data from No attached data sources www.kaggle.com 2. 로지스틱 회귀 모델 로지스틱 회귀 선형회귀방식을 응용해 분류에 적용한 모델 스팸 메일일 확률을 구하는 이진분류문제에 로지스틱 회귀를 사용할 수 있다. 3. 결정트리 분류와 회귀문제에 모두 사용가능..
Cross Validation [ch5] Cross Validation | Kaggle [ch5] Cross Validation Explore and run machine learning code with Kaggle Notebooks | Using data from No attached data sources www.kaggle.com k fold 교차 검증 1. 전체 훈련 데이터를 k개 그룹으로 나눈다. 2. 그룹 하나는 검증 데이터로, 나머지 k-1개는 훈련 데이터로 지정한다. 3. 훈련 데이터로 모델을 훈련하고, 검증 데이터로 평가한다. 4. 평가점수를 기록한다. 5. 검증 데이터를 다른 그룹으로 바꿔가면 2~4 절차를 k번 반복한다. 6. k개 검증 평가점수의 평균을 구한다. 층화 K 폴드 교차..
데이터 인코딩 1. 레이블 인코딩 범주형 데이터를 숫자로 일대일 매핑해주는 인코딩 방식 범주형 데이터를 숫자로 치환하는 것 원본 레이블 인코딩 적용 후 사과 3 블루베리 2 바나나 1 귤 0 바나나 1 사과 3 원본데이터에 사전순으로 번호를 매김 단점: 명목형 데이터를 레이블 인코딩하면 모델 성능이 떨어질 수 있음 머신러닝모델이 서로 가까운 숫자를 비슷한 데이터로 판단하기 때문이다. from sklearn.preprocessing import LabelEncoder # 레이블 인코더 fruits = ['사과', '블루베리', '바나나', '귤', '블루베리', '바나나', '바나나', '사과'] # 레이블 인코더 생성 label_encoder = LabelEncoder() # 레이블 인코딩 적용 frui..
1. 분류와 회귀 1.1 분류 classification 어떤 대상을 정해진 범주에 구분해 넣는 작업 이진분류 binary classification: 타깃값이 두 개인 분류 다중분류 multiclass classification: 타깃값이 세 개 이상인 분류 1.2 회귀 regression 독립변수와 종속변수 간 관계를 모델링하는 방법 독립변수: 영향을 미치는 변수 x 종속변수: 영향을 받는 변수 y 단순선형회귀 simple linear regression: 독립변수 하나와 종속변수 하나 사이 관계를 나타낸 모델링 기법 다중선형회귀 multiple linear regression: 독립변수 여러 개와 종속변수 하나 사이의 관계를 나타낸 모델링 기법 회귀 문제에서는 주어진 독립변수(x, 피처...)와 종..