전체 글 111

[추가학습 정리] 미분 공식 정리

인공지능을 공부하다 보면 '미분'이라는 장치는 알지 못하면 수식 자체를 이해하지 못하는 경우가 대부분이다 특히, 문과출신인 나에게 '미분'이라는 과제는 크게 다가온다 기본적인 미분의 공식은 잘 알고 있지만 지수나, 로그 함수를 미분했을 때 만들어지는 도함수는 머리속에서 잘 그려지지 않는다 그래서 공부를 하면서 참고할려고 아래에 여러 '미분 공식'을 정리하였다 아직, 지수 및 로그 함수의 미분 결과가 왜 저렇게 나오는지 이해해보려고 노력하고 있지만 일단 수식 자체를 이해하기 위해서 아래의 공식을 활용할 것이다. ✅미분 공식 정리 1. 상수를 미분하면 0이된다 2. 상수배한 함수를 미분하는 것은 도함수에 상수배를 한 것과 같다 3. 두 함수 f(x)와 g(x)의 합과 차를 미분하는 것은 각 함수의 도함수의 ..

[네이버 부스트 캠프 AI Tech] CNN & RNN

본 글은 네이버 부스트 캠프 AI Tech 기간동안 개인적으로 배운 내용들을 주단위로 정리한 글입니다 본 글의 내용은 새롭게 알게 된 내용을 중심으로 정리하였고 복습 중요도를 선정해서 정리하였습니다 ✅ Week 1 목차 CNN RNN ✅CNN (복습중요도 ⭐⭐⭐) 기존 DNN - Fully Connected 구조 - 모든 input 과 가중치가 연결되어 있음 Convolution 연산의 경우 커널이 커널크기만큼 input을 이동하면서 연산 이는 파라미터 수를 효율적으로 줄이는 효과를 낳을 수 있다 관련 ppt CS231N 수업 내용 PPT로 요약한 내용입니다 ✅RNN (복습중요도 ⭐⭐⭐) 시퀀스 데이터 소리, 문자열, 주가 등의 데이터를 시퀀스(Sequence) 데이터로 분류 08-01 순환 신경망(Re..

[네이버 부스트 캠프 AI Tech] 딥러닝 수학기초

본 글은 네이버 부스트 캠프 AI Tech 기간동안 개인적으로 배운 내용들을 주단위로 정리한 글입니다 본 글의 내용은 새롭게 알게 된 내용을 중심으로 정리하였고 복습 중요도를 선정해서 정리하였습니다 ✅ Week 1 목차 벡터 행렬 경사하강법 역전파 확률, 통계 벡터 (복습 중요도 : ⭐⭐) 벡터는 공간에서 한 점 n차원 공간에서 한 점 (공간 ⬇️) 1 차원 - 수직선 2 차원 - 좌표 평면 벡터는 원점으로부터 상대적 위치를 표현 벡터에 숫자를 곱해주면(스칼라 곱) 길이만 변화 (방향 변화 x) 단, 곱해주는 실수의 값이 0보다 작다면 반대 방향으로 변화 벡터끼리 같은 모양이면 덧셈, 뺄셈을 계산할 수 있다. 같은 모양이 아니면 불가 벡터가 같은 모양이면 성분곱(Hadamard product)를 계산할 ..

[네이버 부스트 캠프 AI Tech] 파이썬, Numpy, Pandas

본 글은 네이버 부스트 캠프 AI Tech 기간동안 개인적으로 배운 내용들을 주단위로 정리한 글입니다 본 글의 내용은 새롭게 알게 된 내용을 중심으로 정리하였고 복습 중요도를 선정해서 정리하였습니다 ✅ Week 1 목차 Lambda, map, reduce decorate logging Handling logging configparser, argparser 정규식 numpy shape handling pandas ✅lambda, map, reduce (복습 중요도 : ⭐⭐) ✔️lambda - 함수 이름 없이 - ex) def ~~~, 함수처럼 쓸 수 있는 익명 함수 #일반적으로 함수를 활용해서 뺄셈 기능을 구현한다고 한다면 def minus(x , y): return (x - y) #함수 사용 prin..

[논문 리뷰] CutMix : Regularization Strategy to Train Strong Classifiers with Localizable Features

CutMix는 Data Augmentation의 방법 중 하나로 자랑스러운 우리 Naver Clova에서 작성한 논문이다. 2019년도에 나온 논문이지만 아직까지 상당한 영향을 미치고 있고 실제로 데이콘, 캐글같은 대회에서 Agumentation을 할때 무조건 등장하는 기법이다. 오늘은 이러한 CutMix의 논문인 CutMix : Regularization Strategy to Train Strong Classifiers with Localizable Features을 자세히 살펴보고 추가적인 설명과 코드를 살펴보려고 한다. 본 글은 논문의 1~3 부분까지 리뷰를 하고 있으며 4에 해당되는 실험결과 내용은 논문을 참고하기를 바란다 ✅Paper : https://arxiv.org/pdf/1905.04899..

[데이콘] 포디블록 구조 추출 AI 경진대회 리뷰 🚩

포디블록 구조 추출 AI 경진대회 - DACON 분석시각화 대회 코드 공유 게시물은 내용 확인 후 좋아요(투표) 가능합니다. dacon.io Intro 61번이라는 엄청난 제출 횟수에도 불구하고 아쉬움이 많이 남은 대회였다. 이번글을 통해서 코드를 살펴보고 어떤 부분을 추후에 보완하면 좋을지 생각해보려고 한다. 우선 대회 결과는 다음과 같다. 🚩Public score 🚩Private score 아쉽지만 목표한 상위 10%안에 들어가지 못했다. 아래는 대회를 위해서 작성한 코드 및 깃허브 주소이다. https://github.com/Eumgill98/DAICON_4D-Blcok-AI Idea 1. Data 우선 대회의 데이터의 핵심은 Train data와 Test data의 형태가 달랐다는 점이다. 쉽게말..

[백준] 1717번 집합의 표현 Python 파이썬 풀이

1717번: 집합의 표현 첫째 줄에 n(1 ≤ n ≤ 1,000,000), m(1 ≤ m ≤ 100,000)이 주어진다. m은 입력으로 주어지는 연산의 개수이다. 다음 m개의 줄에는 각각의 연산이 주어진다. 합집합은 0 a b의 형태로 입력이 주어진다. 이는 www.acmicpc.net [문제] [코드] import sys sys.setrecursionlimit(1000000) input = sys.stdin.readline n, m = map(int, input().split()) parent = [i for i in range(n + 1)] def find_parent(x): if parent[x] != x: parent[x] = find_parent(parent[x]) return parent[x]..

[백준] 1339번 단어수학 Python 파이썬 풀이

1339번: 단어 수학 첫째 줄에 단어의 개수 N(1 ≤ N ≤ 10)이 주어진다. 둘째 줄부터 N개의 줄에 단어가 한 줄에 하나씩 주어진다. 단어는 알파벳 대문자로만 이루어져있다. 모든 단어에 포함되어 있는 알파벳은 최대 www.acmicpc.net [문제] [코드] import sys input = sys.stdin.readline reference = {} N = int(input()) words = [] for _ in range(N): word = input().rstrip() words.append(word) for j in range(len(word)): if word[j] in reference: reference[word[j]] += 10 **(len(word)-j-1) else: ref..

[딥러닝]활성화 함수 (Activation)

1. Activation? 딥러닝 모델을 구성하다 보면 레이어 안에 활성화 함수(Activation)이 구성된다는 것을 알 수 있다. 그렇다면 활성화 함수는 무엇일까? 그리고 왜 사용하는 것일까? 활성화 함수는 은닉층을 통과 해서 나온 가중치 곱의 합에 '비선형성'을 추가하기 위해서 사용된다. '비선형성'을 왜 추가해야할까? 바로 모델 레이어를 깊게 쌓는 것에 의미를 부여하기 위해서이다. 쉽게 말해서 활성화 함수 위치에 선형함수를 사용하게 되면 그냥 단순한 선형분류기의 기능밖에 하지 못한다. 위의 사진을 보면 선형과 비선형의 의미를 이해할 수 있을 것이다. 선형으로 분류하는 문제같은 경우는 신경망 모델이 아니더라고 기존 머신러닝 모델로 해결가능하다. 그러나 실제 세계의 문제에서는 선형 그래프의 모양처럼 ..