전체 글

SOOHO 개발공부노트
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 최성준 교수님 - Convolution은 무엇인가? 1) Convolution 2D convolution 계산을 해준다는 것은 해당 convolution 필터의 모양을 이미지에 찍는 것과 같습니다. 우리가 어떤 필터를 적용하는지에 따라 Blur 처리되기도 하고, Outline을 잡아주기도 합니다. Blur 처리를 한다고 할 때에는 필터의 크기가 3*3이라고 가정하면, 모든 필터 값이 $\frac{1}{9}$이면, 전체 픽셀의 값의 평균을 내면서 Blur 효과를 얻을 수 있는 것입니다. Convolution의 채널의 개수는 필터의 개수에 따라 달라지게 됩니다. 파라미터의 개수는 커널의 크기와 인풋 채널 숫자와 ..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 최성준 교수님 - Optimization 1) 소개 최적화에서는 많은 용어들이 나오게 되는 데 이 용어들을 잘 정리해두지 않으면 뒤로 가면서 오해가 생길 수 있습니다. 다른 연구자들과 이야기할 때 큰 문제가 생길 수 있습니다. 2) Optimization 용어 이해 Generalization이 좋다는 것은 무엇을 뜻하게 될까요? 우선 그 의미를 알아보기 전에 학습에 관한 이야기를 해보고자 합니다. Training Error는 Iteration에 따라 줄어들게 되지만 Test Error는 Iteration이 무조건 증가한다고 계속 감소하지는 않습니다. Generalization Gap은 바로 여기서의 Test ..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 임성빈 교수님 - 베이즈 통계학 맛보기 베이즈 통계학은 어떤식으로 모델의 모수를 추정하고 모델을 추정할 때 사용되는 베이즈 정리에 대해서 알아보고자 합니다. 베이즈 정리는 데이터가 새로 추가될 때 정보를 업데이트하는 방식에 대해서 이론적인 기반을 소개하는 내용입니다. 머신러닝 예측 모형의 방법론에 많이 활용되는 이론입니다. 1) 조건부 확률 조건부 확률은 베이즈 통계학을 이해하기 위해 필수적으로 개념을 이해해야 합니다. 여기서 조건부 확률이란 사건 B가 일어난 상황에서 사건 A가 발생할 확률을 의미하며 $P(A\cap B) = P(B)P(A|B)$ 정의를 만족합니다. 여기서 $P(A|B)$가 조건부확률입니다...
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 최성철 교수님 - Data Visualization - Graph tools 1) Matplotlib Matplotlib 라이브러리는 다양한 graph 지원하며 Pandas와 연동이 되고 있습니다. pyplot 객체를 사용해서 데이터를 표시합니다. pyplot 객체에 그래프들을 쌓은 다음에 flush(plt.show())하는 과정을 거쳐서 보여줍니다. 최대 단점은 argument를 kwargs로 받기 때문에 어떤 parameter가 필요한지 알아보기가 어렵다는 단점이 있습니다. graph는 원래 figure 객체에 생성됩니다. pyplot 객체 사용할 때 기본 figure에 그래프가 그려집니다. Matplot..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 최성철 교수님 - pandas 1) groupby groupby는 SQL groupby 명령어랑 동일합니다. split, apply, combine 과정을 거쳐서 연산합니다. df.groupby("묶음의 기준이 되는 칼럼")["적용받는 칼럼"]. 적용받는 연산(), 한 개 이상의 column을 묶을 수 있습니다. 묶음의 기준이 되는 칼럼에 리스트 형태로 묶고 싶은 column명을 넣어주면 됩니다. 앞의 column을 기준으로 작성합니다. 엑셀의 피벗테이블과 동일한 효과를 얻을 수 있는 명령어입니다. Gropuby 명령의 결과물도 결국은 dataframe을 얻게 됩니다. 두 개의 column으로 groupby할..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 최성철 교수님 - Pandas 1) pandas pandas는 구조화된 데이터의 처리를 지원하는 Python 라이브러리입니다. panel data의 줄인 말입니다. 고성능 array 계산 라이브러리인 numpy와 통합하여, 강력한 스프레드시트 처리 기능을 제공합니다. 인덱싱, 연산용 함수, 전처리 함수 등을 제공합니다. 데이터 처리 및 통계 분석을 위해서 사용합니다. 2) series DataFrame 중 하나의 Column에 해당하는 데이터의 모음 object를 series라고 합니다. 하나의 column vector를 표현하는 object입니다. Series 인덱스는 숫자뿐만 아니라 문자로도 지정이 가능하..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 임성빈 교수님 - 경사하강법(순한맛) 1) 미분 미분(differentiation)은 변수의 움직임에 따른 함수값의 변화를 측정하기 위한 도구로 최적화에서 제일 많이 사용하는 기법입니다. 파이썬에서는 sympy.diff를 이용해서 미분을 구할 수 있습니다. 미분은 함수 $f$의 주어진 점 $(x, f(x))$에서의 접선의 기울기를 구하는 방법입니다. 이것을 알면 어느 방향으로 점을 움직여야 함수값이 증가/감소하는지를 알 수 있습니다. 증가시키고 싶다면 $x$값에 미분값을 더하고, 감소시키고 싶으면 $x$값에서 미분값을 뺍니다. 미분값을 더하면 경사상승법(gradient ascent)이라고 하며 함수의 극대값의..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 최성철 교수님 - Numpy(Numerical python) numpy의 주된 내용은 "어떻게 행렬을 코드로 표현할 것인가?"입니다. numpy는 행렬을 표현하고 다양한 선형대수 연산들을 활용할 수 있습니다. 비교적 파이썬에서 리스트를 통해서 계산하는 것보다 빠른 계산을 지원하고 있고 반복문 없이 데이터 배열에 대한 처리를 지원합니다. 또한 numpy는 C로 구현되어 있어서 성능을 확보할 수 있지만 C의 특징처럼 dynamic typing(동적 타이핑)을 지원하지 않는 특징이 있습니다. 1) ndarray numpy는 np.array 함수를 활용해서 배열을 생성합니다. 이때, 생성된 객체를 ndarray라고 ..
· 알고리즘
해당 문제를 풀어보고 싶으시면 여기를 클릭하세요! 1. 문제 세준이는 영어로만 이루어진 어떤 문서를 검색하는 함수를 만들려고 한다. 이 함수는 어떤 단어가 총 몇 번 등장하는지 세려고 한다. 그러나, 세준이의 함수는 중복되어 세는 것은 빼고 세야 한다. 예를 들어, 문서가 abababa이고, 그리고 찾으려는 단어가 ababa라면, 세준이의 이 함수는 이 단어를 0번부터 찾을 수 있고, 2번부터도 찾을 수 있다. 그러나 동시에 셀 수는 없다. 세준이는 문서와 검색하려는 단어가 주어졌을 때, 그 단어가 최대 몇 번 중복되지 않게 등장하는지 구하는 프로그램을 작성하시오. 2. 입력 첫째 줄에 문서가 주어진다. 문서의 길이는 최대 2500이다. 둘째 줄에 검색하고 싶은 단어가 주어진다. 이 길이는 최대 50이다..
해당 포스팅은 네이버 부스트캠프 AI Tech 학습 정리 자료임을 알려드립니다. 1. 강의 정리 최성철 교수님 - File / Exception / Log Handling 1) Exception 예외(Exception)는 예상이 가능한 예외, 예상 불가능한 예외로 나눌 수 있습니다. 예상 가능한 예외는 사전에 발생 여부를 인지할 수 있는 예외입니다. 예상 가능한 예외는 if문을 통해서 핸들링할 수 있습니다. 예상 불가능한 예외는 인터프리터 과정에서 발생하는 예외입니다. 리스트의 범위를 넘어가는 값을 호출하거나 0으로 나누는 것들이 이에 해당됩니다. 이런 경우 프로그램에서 인터프리터가 알아서 에러를 호출해주고 프로그램을 종료시킵니다. 예상 불가능한 예외는 exception을 통해서 핸들링할 수 있습니다. ..
Sooho_Kim
SOOHOCODE