Computer Programming/AI 75

TIL_CNN, RNN, LSTM

CNN, RNN, LSTM은 모두 deep learning에서 널리 사용되는 인공 신경만 구조이다. 각각의 구조는 특정한 유형의 데이터 처리에 특화되어 있는데, 이들에 대해 정리를 해 보았다. CNN(Convolutional Neural Network) 이미지 처리에 주로 사용되는 구조. 합성곱층과 풀링 층을 포함하여 이미지에서 특징을 추출 합성곱 층이 이미지의 특징을 감지 풀링 층은 이미지의 크기를 줄이는 등의 작업 이미지 인식, 객체 감지, 이미지 분할 등 다양한 컴퓨터 비전 작업에 효과적임 RNN(Recurrent Neural Network) 순차적인 데이터나 시계열 데이터를 처리하는 데 사용 이전 단계의 출력이 다음 단계의 입력으로 사용되는 순환 구조를 가짐 순차적인 패턴을 파악하고 처리 가능 긴..

TIL_Machine Learning(3)

Machine Learning에서 사용되는 주요 library 정리 NumPy Python에서 수학적인 작업을 수행할 수 있도록 만들어진 library. 배열이나 행렬과 같은 다차원 데이터를 쉽게 다룰 수 있다. 리스트보다 빠르고 강력하며, 다양한 수학적 연산을 지원한다. 데이터 과학, machine learning, 과학 연구, 공학 등 다양한 분야에서 매우 유용하게 사용된다. 복잡한 수학적 연산을 효율적으로 수행할 수 있다. Pandas 데이터 조작과 분석을 위한 python library이다. 데이터를 구조화하고 조작할 수 있으며, 데이터를 빠르게 분석하고 처리할 수 있다. 엑셀 시트처럼 데이터를 테이블 형태로 다룰 수 있게 해 주는 도구이다. 데이터를 필터링하고 정렬하며, 누락된 데이터를 처리하고..

TIL_Machine Learning(2)

Linear Regression 두 변수 사이의 관계를 알아보는 방법. 예를 들어, 하루에 먹는 초콜릿의 양과 나의 행복 감정 사이의 관계를 알아볼 때, 만약 먹는 초콜릿의 양이 많을수록 더 행복해진다면, 이 둘 사이에는 양의 선형 관계가 있을 것이다. 이렇게, 데이터에서 두 변수 사이의 '직선적인' 관계를 찾는 것이 선형회귀이다. 하나의 변수를 알면 다른 변수를 예측할 수 있다. Multi-variable linear regression Linear regression과 똑같지만 입력 변수가 여러 개인 경우를 말한다. Gradient descent method 함수의 기울기를 이용하여 함수의 최솟값을 찾는 알고리즘 중 하나. 시작점을 잡고, 그 위치에서 함수의 기울기를 계산. 그리고 기울기가 가리키는 ..

TIL_Machine Learning

Algorithm(알고리즘) 수학과 컴퓨터 과학, 언어학 또는 관련 분야에서 어떠한 문제를 해결하기 위해 정해진 일련의 절차나 방법을 공식화한 형태로 표현한 것. 즉, 어떤 문제를 풀기 위해 공식을 만든 것이라고 보면 됨. Machine Learning > Deep Learning Machine Learning의 범위 안에 Deep Learning이 포함되어 있다. Machine Learning Regression(회귀) 나이의 값처럼 출력값이 연속적인 소수점으로 예측하게 하도록 푸는 방법 Classification(분류) 출력값이 딱 떨어짐. Binary class(0과 1로 나뉨)처럼 0 또는 1로만 출력값이 나옴. 여기서 class는 Bionary Classification 뿐만 아니라 여러 개의 ..

TIL_DRF(Django REST Framework) project, Frontend에서 게시글 내용 받아서 DB에 저장하기

어느 정도 backend part가 만들어져서 이제는 frontend 쪽을 손 보았다. login이 된 user가 게시글(post)를 작성하고, '게시글 저장' 버튼을 누르면 database로 입력 내용이 저장되는 것을 구현해 보려 한다. url 주소 http://127.0.0.1:5500/frontend/postdetail.html Frontend 화면 로그인이 된 사용자가 게시글을 작성하고 '게시글 저장' 버튼을 클릭하면, 입력한 세 가지 정보(이미지(image), 제목(title), 내용(content))가 DB에 저장된다. 코드를 보면 다음과 같다. frontend/postdetail.html 게시글 작성 이미지 업로드 제목 내용 게시글 저장 button의 onclick='handlePostSub..

WIL_아홉 번째 주

Facts Django REST Framework(DRF)를 이용한 웹사이트를 만드는 팀 프로젝트를 시작했다. 우리 조는 비슷한 조건의 사람들끼리의 만남을 이어주는 결혼 정보 웹사이트를 만들기로 했다. 이번에는 DRF를 이용하기 때문에 backend와 frontend를 나누어 작업할 수가 있어서 우선 모두가 각자의 파트를 맡아서 backend를 끝내고, frontend를 이어서 하기로 정했다. Feelings views.py와 serializers.py를 작성하는 부분이 익숙해지도록 강의를 4번 정도를 반복해서 들었다. 확실히 처음 때보다는 좀 익숙해진 느낌이 들었는데, 팀 프로젝트를 시작하면서 빈 페이지에 무언가를 작성하려니 강의를 보고 따라 작성하는 것과는 난이도가 다르게 느껴졌다. 정말 다양한 프로..

TIL_Django REST Framework(DRF)의 serializers 사용 방법

DRF(Django REST Framework)에서 serializers를 사용하여 article을 불러오고 생성하는 방법에 대해 알아보자. 우선 urls.py에서 url을 지정해 준다. #urls.py from django.urls import path from articles import views urlpatterns = [ path('articles/', views.ArticleView.as_view(), name='article_view'), ] 그리고 views.py에서 ArticleView를 작성해 준다. #views.py from rest_framework.views import APIView from rest_framework import status from rest_framework...

TIL_Cookie/Session 방식과 Token 방식의 차이점

Django에서 Cookie와 Session 방식과, Token 방식의 차이점을 정리해 보았다.. Cookie Session Token 저장 위치 client 측에 저장, 사용자의 브라우저에 정보 저장 서버 측에 저장, 서버에 저장된 데이터는 일반적으로 메모리나 데이터베이스에 보관 client 측에 저장, 주로 웹 클라이언트의 로컬 스토리지나 쿠키, 모바일 앱의 메모리에 저장 데이터 유지 기간 만료 날짜/시간을 설정할 수 있고, 만료 기간이 지나면 삭제 세션 데이터는 일반적으로 사용자가 브라우저를 닫을 때까지 유지 보통 설정된 만료 시간까지 유효, 만료 시간이 지나면 더 이상 사용할 수 없음 보안 브라우저에 저장되어 보안에 취약할 수 있음, 민감한 정보를 저장하기에는 적합하지 않을 수 있음 서버에 저장되..

TIL_JWT(JSON Web Token)

로그인 인증 방식 중 하나인 JWT가 무엇인지 알아보자. JWT란? JSON Web Token 웹 어플리케이션 간에 정보를 안전하게 전달하기 위한 간단한 토큰 기반의 인증 방식 사용자가 로그인한 후에 발급 토큰은 사용자의 신원을 확인 토큰은 JSON 형식으로 인코딩되어 있고, 사용자의 정보와 함께 서명되어 있어 데이터의 무결성을 보장 사용자의 인증 및 권한 부여를 처리하는 데 매우 유용 웹 서비스와 모바일 앱 등에서 널리 사용 JWT의 구조 JWT는 Header, Payload, Signature 이렇게 세 부분으로 구성 1. Header(헤더) JWT의 header는 두 가지 정보를 가지고 있음 1) 이 토큰이 JWT임을 나타내는 "typ" 필드 2) 어떤 hashing 알고리즘을 사용해 시그니처를 생..

TIL_HTTP, HTTPS, SSH란?

AWS를 배우면서 HTTP, HTTPS, SSH라는 용어가 등장한다. 이들의 정확한 뜻과 차이점이 무엇인지 알아보자. HTTP Hypertext Transfer Protocol의 약자 인터넷을 통해 정보를 주고받는 데 사용되는 규칙 또는 프로토콜 웹 브라우저와 웹 서버 사이에서 문서, 이미지, 비디오 등의 리소스를 요청하고 전송하기 위해 사용됨 웹에서 데이터를 주고받는 방법을 정의한 것 웹 브라우저에서 웹 페이지를 열 때나 검색 엔진에서 웹 페이지를 색인 할 때 사용됨 사용자가 웹 주소를 입력 => 브라우저는 해당 웹 서버로 HTTP 요청을 보냄 => 서버는 요청된 웹 페이지를 HTTP 응답으로 다시 보내줌 이렇게 웹 페이지를 브라우징 할 수 있음 HTTPS Hypertext Transfer Protoc..

LIST