반응형

분류 전체보기 487

[Week02] Pytorch - 1강 Introduction to Pytorch

딥러닝을 할 때 코드는 처음부터 다 짠다? ㄴㄴ 남이 만든 걸 쓰는게 이점이 많다. 자료가 많고 관리도 잘되고 표준임 왜 텐서플로를 개방했는가? 문서화하기 위해서 지금 표준은 파이토치와 텐서플로 두 개다. 케라스 자체가 연산 지원하기 보다 이러한 다른 언어를 쉽게 쓸 수 있게 함 케라스는 텐서플로 사에 흡수되었다. 파이토치와 텐서플로 가장 큰 차이는 그래프 그리는 점 하나는 스태틱 -> 백프로포게이션 파이토치는 실행 시점에서 그래프를 그린다. 자동미분 실행시점에서 그래프를 그린다. 텐서플로는 - Define and Run 그래프 정의 코드를 만들고 실행 시점에 데이터를 넣어준다. 파이토치는 - Define by Run (Dynamic Computational Graph, DCG) Pytorch는 실행을 ..

TIL 2022-01-20 벡터, 행렬, 경사하강법까지

#부스트캠프3기 #TIL Today I Learned Date : 2022.01.20(목) □ Facts 벡터 사이의 각도 벡터 사이의 각도는 l2 노름으로만 구할 수 있다. 제2코사인 법칙에 의해 구할 수 있는데 식은 다음과 같다. 두 벡터가 이루는 각을 찾을 때 저 공식을 한 쪽으로 미룬 cos 각도를 구하면 된다 각을 구하기 위해너는 두 벡터의 크기와 내적이 필요하다 밑의 벡터는 l2 노름으로 나온 유클리드 공식 적용한 값이고 위는 내적 그걸 콘사인 잔대를 하면 theta 값이 나온다 https://ko.wikihow.com/%EB%91%90-%EB%B2%A1%ED%84%B0-%EC%82%AC%EC%9D%B4-%EA%B0%81%EB%8F%84-%EA%B5%AC%ED%95%98%EA%B8%B0 두 벡..

[Week01] AI Math - 경사하강법과 알고리즘

경사하강법 - 순한맛 미분이란? 미분(differentiation)은 변수의 움직임에 따른 함수값의 변화를 측정하기 위한 도구. sympy 의 diff 함수를 사용하면 미분을 구할 수 있다. 미분은 함수 f의 주어진 점 (x, f(x))에서의 접선의 기울기를 구합니다. 경사하강법 미분값을 더하면 경사상승법(gradient ascent)이라 하며, 함수의 극대값의 위치를 구할 때 사용합니다. 미분값을 빼면 경사하강법(gradient descent)이라 하며, 함수의 극솟값의 위치를 구할 때 사용합니다. 경사상승/경사하강 방법은 극값에 도달하면 움직임을 멈춥니다. 따라서 미분이 가능한 함수의 x에서 접선의 기울기가 음수라면 x를 증가하면 감소한다. 미분값이 음수든 양수든 더하면 상승하고 빼면 감소한다 ?? ..

[Week01] AI Math - 행렬과 역행렬 그리고 무어-펜로즈 역행렬

행렬 벡터를 원소로 가지는 2차원 배열 numpy에서는 row 행이 기본 단위다. ---->이 방향 행렬을 표기할 때 row-column 순서 벡터랑 다른 점 벡터는 공간에서 한 점을 의미한다면 행렬은 여러 점들을 나타낸다. 행렬 xij는 i번째 데이터의 j번째 변수 값을 말한다. 전치행렬 전치행렬 transpose matrix는 행과 열의 인덱스가 바뀐 행렬을 말합니다. 첫번째 행은 첫번째 열이 되는 것 12 34 면 역행렬은 13 24 겠지 행렬의 덧셈 뺄셈 성분곱 스칼라곱 행렬끼리 같은 모양이면 덧셈 뺄셈이 가능하다. 곱셈부터 조금 다른데 행렬 곱은 앞의 열과 두번째 행렬의 행의 개수가 같아야 한다. 행벡터와 열 벡터 사이의 내적으로 계산되는 것이 곱셈 3*3 3*2 매트릭스 두개라면 3행 2열이 ..

[Week01] AI Math - 벡터의 길이, 각도, 내적 구하기

벡터 벡터는 숫자를 원소를 가지는 리스트 또는 배열. 스카라곱이 1보다 크면 길이가 늘어나고 1보다 작으면 길이가 줄어든다. 벡터끼리 같은 모양을 가지면 덧셈 뺄셈을 할 수 있다. 덧셈 : 상대적 위치 이동 뺄셈 : 반대방향, -벡터를 더한다고 생각하면 편하다 벡터의 노름 norm 벡터의 노름은 원점에서부터의 거리를 의미한다. 임의의 d 차원에 대해서 임을 이해하자 (위) L1 노름은 변화량 절대 값을 모두 더한다 (아래) L2 노름은 피타고라스 정리를 이용한 유클리드 거리를 계산한다. def l1(x): x_norm = np.abs(x) return np.sum(x_norm) def l2(x): x_norm = x * x x_norm = np.sum(x_norm) return np.sqrt(x_norm..

jupyter notebook : ModuleNotFoundError 모듈 설치했는데도..

우선 gradient descent 문제를 풀기 위해서는 conda에 sympy를 설치해야 한다 그래서 conda install sympy로 설치를 완료했음 (upstage) ➜ stage1 git:(master) ✗ conda install sympy Collecting package metadata (current_repodata.json): done Solving environment: done Proceed ([y]/n)? y Downloading and Extracting Packages mpmath-1.2.1 | 766 KB | ##################################### | 100% openssl-1.1.1m | 2.2 MB | ######################..

TIL 2022-01-19 시작

#부스트캠프3기 #TIL Today I Learned Date : 2022-01-19(수) □ Facts 벡터 벡터는 숫자를 원소를 가지는 리스트 또는 배열. 스카라곱이 1보다 크면 길이가 늘어나고 1보다 작으면 길이가 줄어든다. 벡터끼리 같은 모양을 가지면 덧셈 뺄셈을 할 수 있다. 덧셈 : 상대적 위치 이동 뺄셈 : 반대방향, -벡터를 더한다고 생각하면 편하다 벡터의 노름 norm 벡터의 노름은 원점에서부터의 거리를 의미한다. 임의의 d 차원에 대해서 임을 이해하자 (위) L1 노름은 변화량 절대 값을 모두 더한다 (아래) L2 노름은 피타고라스 정리를 이용한 유클리드 거리를 계산한다. def l1(x): x_norm = np.abs(x) return np.sum(x_norm) def l2(x): x..

개발자 블로그 글 팁 소재의식을 갖추자

개발자가 글을 쓸 때 적합한 마음가짐 세 가지 1. 소재 위주의 글쓰기 2. 자기 수준의 글쓰기 3. 재미있는 글쓰기 1. 소재 위주의 글쓰기 보편적인 주제로 많은 사람들이 읽기 원하는 것 보다 자기가 맞닥뜨렸던 상황을 어떻게 해결했는지 담담하게 말하는 글 쓰기 수필 같은 글이라고 생각하면 된다. 2. 자기 수준으로 글쓰기 구글 면접 질문에서 8살 조카에게 데이터베이스를 3문장으로 소개하기가 있었다고 한다. 사람들은 지니, 냉장고, 레고 등 다양한 비유법으로 설명을 했다. 구글 면접 질문으로 쓰일 만큼 개발 용어를 쉽게 설명하는게 ㅇ렵다는 뜻. 그러니까 기술 블로그를 쓸 때 독자를 생각해서 모든 용어를 설명하려고 하지 말자. 결국 핵심 내용만 쓰고 독자가 공부할 수 있게 길만 터놓는 것이 현명하다. 3...

장애보고서 3가지 글쓰기

장애보고서 개발자만 쓸 수 있다. 보통의 개발 문서랑 다른데.. 1. 무엇보다 신속한 글쓰기가 중요하다. 장애 보고서는 개발자가 원할 때 쓰는 것이 아니다. 문제(장애)가 발생하고 인지하는 순간부터 장애를 해결한 직후, 또는 그 다음날 오전까지 쓰는 것을 추천한다. 2. 원인과 이유를 찾는 분석적 글쓰기가 필요하다 장애의 재발을 막으려면 원인을 해결하는 것이 아니라 원인이 발생한 이유와 예방을 막기 위한 방법 등을 ㅅ알아내야 한다. 즉 분석적 글쓰기가 필요하다. 3. 비즈니스 관점의 글쓰기가 필요하다. 임원들은 장애 보고서를 보고 결과론적으로 손익에 대해 묻는다. 따라서 그들과 소통하기 위해 비즈니스 관점의 글쓰기가 필요하다. 각각 요구에 따라 쓰는 법 1. 신속한 글쓰기 사용자가 결제를 할 수 없다. ..

[코딩 네이밍] camelcase, 표기법, 중요한 단어는 앞에 쓰기

자바 네이밍 컨벤션 클래스는 UpperCamelCase 함수는 lowerCamelCase 상수는 UPPER_DELIMITER_CASE 패키지와 모듈은 lowercase CSS BEM 표기법 (Block, Element, Modifier) 대상___요소--상태 form__button--disabled {} 중요한 단어는 앞에 쓴다 방문 통계 total을 나타내고 싶을 때 어떤게 더 좋을까? totalVisitor, totalRegister, totalBuyer 아니면 visitorTotal, registerTotal, buyerTotal 책에서는 Total을 뒤에 두라고 한다. 수식어 보다는 본래 의미를 뜻하는 visitor를 앞에 두라는 뜻 from. 개발자의 글쓰기(김철수)

반응형