본문 바로가기

전체 글

(13)
SQL_1주차_개발일지 / where문 1) orders 테이블에서 created_at이 '2020-07-13' 과 '2020-07-15' 사이 데이터 출력 select * from orders where created_at between '2020-07-13' and '2020-07-15' 2) users 테이블에서 email 주소가 daum인 데이터 출력 select * from users where email like '%daum.net' 3) user 테이블에서 email 주소가 s로 시작해서 naver로 끝나는 데이터 출력 select * from users where email like 's%naver.com' 4) orders 테이블에서 email 주소가 naver로 끝나고, 웹개발 종합반을 들으며 결제 수단이 카카오페이인 데이터..
파이썬 matplotlib 시각화 / X, Y 축 범위 바꾸기 / xticks & yticks 우선 나는 길이가 100인 리스트 500개의 분포를 파악하기 위해 matplotlib을 이용해 시각화 하였다. 하지만 Frequency bin이 아닌 실제 주파수 대역에 맞춰줘야 했는데 [0,2,9,30,95 ...] 이런식으로 간격이 일정하지 않은 점들을 나타내려다 보니 그래프 모양까지 바껴 애를 좀 먹었다. 그러던 중 발견한 xticks라는 기능을 발견해 해결할 수 있었다. labels1=[0,2,9,30,95,304,966] import matplotlib.pyplot as plt for i in range(len(ss1)): plt.scatter(list(range(0,120,1)),ss1[i],color='paleturquoise',s=1) plt.plot(line1,'r-',linewidth=..
Grad-CAM 간단한 논문 리뷰 / 설명 가능한 AI 딥러닝의 가장 큰 문제점은 소위 말하는 '블랙박스'라는 점이다. 쉽게 말해 어떤 과정을 통해 이런 결과가 나왔는지 확인 할 수 없다는 것이다. 이러한 한계점으로 인해 딥러닝 사용을 꺼려하는 분야도 있다. 그래서 요즘 설명가능한 AI(XAI)가 주목을 받고 많은 연구들이 이뤄지고 있다. 그러한 연구 중 하나인 Grad-CAM을 소개해보고자 한다. 그래드 캠(Grad-CAM)은 CNN 모델에서 시각적으로 어떤 부분을 더 많이 봤는지 or 인식했는지를 시각적으로 확인 할 수 있는 획기적인 기법이다. 이전에 나왔던 CAM이라는 기법의 generalized 된 버전이라고 생각하면 될 것 같다. 하지만 CAM은 GAP(Global Average Pooling) 층이 있어야 했는데, 이는 GAP 층을 통과해 나온 가..
MobileNet1 논문 리뷰 / 딥러닝 경량화 ※ 모바일넷은 2017년 구글에서 제안하였으며, 성능보다는 효율성에 초점을 맞췄고 다양한 분야에 적용될 수 있다. 현재 약 6800건의 citation이 있으며 간단한 아이디어로 엄청난 파라미터의 절감을 보여줘 딥러닝의 경량화하면 먼저 떠올리게 되는 논문이다. 모바일넷의 아키텍처는 다음과 같다. 1. Depthwise Seperable Convolution Depthwise Seperable Convolution을 가장 잘 설명해주는 그림이 아닐까 싶다. Depthwise Seperable Convolution은 Depthwise Convolutions과 Pointwise Convolutions 두 개의 층으로 이루어져있다. 채널별로 3×3 필터를 사용하여 Depthwise Convolution을 진행한..
ADSP PART 3. 데이터 분석 배깅 여러개의 붓스트랩 자료를 생성하고 각 붓스트랩 자료에 예측 모형을 만든 후 결합하여 최종 예측 모형을 만드는 방법 붓스트랩은 주어진 자료에서 동일한 크기의 표본을 랜덤 복원추출로 뽑은 자료 보팅은 여러개의 모형으로 부터 산출된 결과를 다수결에 의해서 최종결과를 선정 배깅에서는 가지치기를 하지 않고 최대로 성장한 의사결정 나무들을 활용 훈련 자료를 모집단으로 생각하고 평균예측모형을 구하여 분산을 줄이고 예측력을 향상시킬수 있다. 부스팅 예측력이 약한 모형들을 결합하여 강한 예측 모형을 만드는 방법 Adaboost는 이진 분류 문제에서 랜덤 분류기보다 조금 더 좋은 분류기 n개에 각각 가중치를 설정하고 n개의 분류기를 결합하여 최종분류기를 만드는 방법 제안 랜덤포레스트 배깅과 부스팅보다 더 많은 무작위..
ADSP PART 2. 데이터 분석 기획 요약 정리 분석 대상과 방법 분석의 대상 (what) known unknown optimization insight known 분석의 방법 solution discovery unknown 방법론의 적용업무의 특성에 따른 모델 1. 폭포수 모델 : 단계를 순차적으로 진행하는 방법, 이전 단계가 완료되어야 다음 단계로 진행가능 2. 프로토타입 모델 : 폭포수 모델의 단점을 보완하기 위해 점진적으로 시스템을 개발해 나가는 접근 방식, 일부분을 우선 개발하여 사용자에게 제공 3. 나선형 모델 : 반복을 통해 점증적으로 개발하는 방식 관리 체계를 효과적으로 갖추지 못한 경우 복잡도가 상승하여 프로젝트 진행이 어려울 수 있다. KDD 분석 방법론 프로파일링 기술을 기반으로 데이터로부터 통계적 패턴이나 지식을 찾기 위해 활용할..
ADSP PART 1. 데이터의 이해 요약 정리 데이터의 유형 정성적 데이터 언어, 문자 저장, 검색, 분석에 많은 비용 소모 정량적 데이터 수치, 도형, 기호 비용소모 적음 지식경영의 핵심 이슈 암묵지 겉으로 드러나지 않는 지식 김장김치 담그기, 자전거 타기 다른 사람에게 공유되기 어려움 공통화, 내면화 형식지 형상화 된 지식 교과서, 비디오, DB 전달과 공유가 용이함 표출화, 연결화 ex) 암묵지 : 개인에게 축적된 내면화 된 지식 -> 조직의 지식으로 공통화 형식지 : 언어, 기호, 숫자로 표출화 된 지식 -> 개인의 지식으로 연결화 DIKW 피라미드 데이터 : A 마트는 100원에 B 마트는 200원에 연필을 판매 정보 : A 마트의 연필이 더 싸다 지식 : 상대적으로 저렴한 A 마트에서 연필을 사야겠다 지혜 : A 마트의 다른 상품들도 B ..
BERT / Transformer / Attention / Transformer Attention is all you need 설명 BERT를 설명하기 위해서는 Attention 과 Transformer에 대한 설명이 선행되어야 하기 때문에 Attention -> Transformer ->BERT 의 순서로 간단하게 설명해보겠습니다. 먼저 Transformer / Attention의 장점은 무엇일까요? 바로 RNN을 사용하지 않았다는 것입니다. RNN은 장기의존성 문제뿐 만 아니라 계산 속도가 느리다는 단점을 가지고 있습니다. 그렇다면 장기의존성 문제(long-term dependency problem)이란 무엇일까요? 다소 말이 안되는 문장일 수는 있지만,,ㅎㅎ 이 문장을 예로 설명해보자면 밑줄 친 부분에 대한 키워드를 생성하고자 할 때 사진찍기 보다는 딥러닝이라는 단어와의 거리가 더 가깝기 때문에 이미지가 아닌 텍스트 or 오디오..