분류 전체보기
-
Global Average PoolingAI 2021. 9. 3. 23:55
Conv. Layer들과 FC Layer들 사이에 avg pooling을 진행하는 이유가 궁금해서 찾아봤다. GAP(global average pooling)은 앞에서 설명한 Max(Average) Pooling 보다 더 급격하게 feature의 수를 줄입니다. 하지만 GAP의 목적은 앞에서 사용한 Pooling과 조금 다릅니다. GAP의 목적은 feature를 1차원 벡터로 만들기 위함입니다. 위 그림을 보면 같은 채널 (같은 색)의 feature들을 모두 평균을 낸 다음에 채널의 갯수(색의 갯수) 만큼의 원소를 가지는 벡터로 만듭니다. 이런 방식으로 GAP는 (height, width, channel) 형태의 feature를 (channel,) 형태로 간단하게 만들어 버립니다. 그러면 이렇게 극단적인..
-
requirements.txt 만들고 설치하기etc. 2021. 9. 3. 12:10
파이썬 라이브러리 설치 모듈인 pip를 이용하여 필요한 패키지들을 한꺼번에 관리하는 쉬운 방법은 자주 requirements.txt안에 requirements.txt에 파이썬 패키지 리스트 만들기 pip freeze 명령이다. pip freeze > requirements.txt requirements.txt를 이용해 파이썬 패키지 설치 하기 pip install -r requirements.txt 패키지 모듈들을 저장하고 이를 이용하여 설치하는 방법이다.
-
Flask 기본 개념WEB/flask 2021. 9. 3. 01:52
자! 기본적으로 web service는 response(Status line, Headers, Body)와 request(Start line, Headers, Body)의 관계로 끝난다! 그렇다면 Flask는?! 1. Response - Response() 로 객체를 만든다 첫번째 인자는 표시할 문자열, 두번째 인자는 status line, 세번째 인자는 Header+Body - make_response() 로 보내야 큰 데이터를 보낼 때 서버도, 클라이언트도 가볍다 -Response의 속성들 - environ 은 플라스크의 환경 변수를 담고 있다 environ[‘REQUEST_METHOD’]처럼 부를 수 있다 - start_response라는 함수를 인자로 받음 - return make_response..
-
서버와 클라이언트 기본 구조WEB 2021. 9. 3. 01:44
- 기본적으로 원래의 서버와 클라이언트의 소통은 다음과 같다 (클라이언트-서버-DB로 이루어진 단순 구조 ) 하지만 정적인 요소보다 동적인 요소들을 추가하기 위해(페이스 북처럼 동시에 옆에 방금 로그인한 사람 알려줌/ 페북 메시지 알림 등 동적으로 작동) 백엔드 서버와 프론트 엔드 서버를 구분하게 되었다. (https://it-eldorado.tistory.com/85) (https://www.youtube.com/watch?v=wcsVjmHrUQg) 1. 프론트 서버 프론트 서버는 어떤 주소에 대한 요청을 보냈을 때, markup Language (html ,css) 를 보내줘서 사용자에게 GUI 환경을 제공해주는 서버를 의미한다. (화면을 그려주는 역할) react, next, styled compo..
-
Web에서의 페이지 전환 방법 2가지WEB 2021. 9. 3. 01:41
웹은 현재 작업중인 페이지에서 다른 페이지로 이동하기 위해 2가지 페이지 전환 기능을 제공합니다. 오늘은 2가지의 페이지 전환 방법의 차이와 사용법에 대해 알아보도록 하겠습니다. 1. Forward 방식 Forward는 Web Container 차원에서 페이지의 이동만 존재합니다. 실제로 웹 브라우저는 다른 페이지로 이동했음을 알 수 없습니다. 그렇기 때문에 웹 브라우저에는 최초에 호출한 URL이 표시되고, 이동한 페이지의 URL 정보는 확인할 수 없습니다. 또한 현재 실행중인 페이지와 forward에 의해 호출될 페이지는 Request 객체와 Response 객체를 공유합니다. 위와 같이 Foward는 다음으로 이동 할 URL로 요청정보를 그대로 전달합니다. 그렇기 때문에 사용자가 최초로 요청한 요청정..
-
Jinja2 기본 문법WEB 2021. 9. 3. 01:39
jinja는 아래처럼 되어 있는 문서를 받아서, 해당 문서의 필요한 부분들, content2와 같은 부분을 변경해주고, 웹브라우저가 인식할 수 있는 html로 변환해주는 기능을 수행합니다. 즉, jinja2는 어떤 파일, 실재하는 파일에 어떤 변수들을 집어넣어서 약간 변경시켜서 html로 만들어주는 엔진, 같은 것이다 출처: https://ddaaadd.tistory.com/276 jinja2란 Jinja2의 정의 Jinja2는 파이썬에서 가장 많이 사용되는 템플릿 엔진 중 하나입니다. Django의 템플릿 시스템에서 영감을 얻었지만 템플릿 작상자에게 더 강력한 도구 세트를 제공하는 표현 언어로 ddaaadd.tistory.com https://jinja.palletsprojects.com/en/3.0...
-
HTTP 구조 및 핵심 요소WEB 2021. 9. 3. 01:36
1. HyperText Transfer Protocol 2. HTTP 핵심 요소 2-1. HTTP 통신 방식 2-2. HTTP Request 구조 2-2-1. Start Line 2-2-2. Headers 2-2-3. Body 2-3. HTTP Response 구조 2-3-1. Status Line 2-3-2. Headers 2-3-3. Body 3. 자주 쓰이는 HTTP Methods 3-1. GET 3-2. POST 3-3. OPTIONS 3-4. PUT 3-5. DELETE 4. 자주 쓰이는 HTTP Status Code 4-1. 200 OK 4-2. 301 Moved Permanently 4-3. 400 Bad Request 4-4. 401 Unauthorized 4-5. 403 Forbidden..
-
Git / Github 공부 1etc. 2021. 9. 3. 01:31
Git 이란? : 모든 파일들의 과거의 저장 상태를 가져오기 쉽도록, 또는 협업하기 쉽도록! Like 평행우주 Git을 사용하는 방법은 크게 두 가지가 있다 1. CLI 2. GUI (Source Tree 같은 걸로~!) Git 사용법 1. Git 저장소 만들기 컴퓨터에서 프로젝트를 진행할 폴더를 만든 후, 해당 폴더를 VS code로 연다 방법 1) Source Tree로 만드는 법 메뉴 바에서 create을 눌러 프로젝트 폴더를 열어준다 방법 2) CLI로 만드는 법 Command 창에서 해당 폴더의 경로로 들어간다 git init 입력 -> 빈 저장소가 만들어졌다는 메세지가 뜬다 / git의 관리 하에 두겠다는 뜻! git config --global user.name "(내 이름)" git con..