프로그래밍 개발(Development)(39)
-
Web Server, WAS, Web Application 이란?
웹 개발을 하다보면 Web Server, WAS, Web Application 용어를 많이 들어봤지만, 헷갈리는 경우가 있어 다시 한번 정리를 해보자. 1. Web Server(웹서버) 란? 웹 브라우저(Web Browser)와 같은 클라이언트(Client)로부터 HTTP 요청을 받아서, HTML 문서나 정적인 오브젝트(이미지 파일 등)를 전송해주는 소프트웨어이다. 즉, 쉽게 말하면 웹 페이지를 클라이언트로 전달하는 것이다. 대표적인 웹 서버는 Apache, IIS, Nginx, GWS 등이 있다. 2. Web Application Server(WAS) 란? 웹 애플리케이션과 서버 환경을 만들어 동작시키는 기능을 제공하는 소프트웨어 프레임워크이다. 인터넷 상에서 HTTP를 통해 사용자 컴퓨터나 장치에 애..
2022.04.21 -
[클러스터링] K-MEANS(K-평균 군집)
1. K-MEANS란? 대표적인 분리형 군집화 알고리즘 가운데 하나이며, 각 군집은 하나의 중심(centroid)을 가지고 있다. 각 개체는 가장 가까운 중심에 할당되며, 같은 중심에 할당된 개체들이 모여 하나의 군집을 형성한다. 사용자가 사전에 군집 수(k)가 정해야 알고리즘을 실행할 수 있다. 2. 원리 K-means는 EM 알고리즘을 기반으로 작동합니다. EM알고리즘은 크게 Expectation 스텝과 Maximization 스텝으로 나뉘어져 있다. 군집 수 k를 2로 결정. 최초 군집의 중심(빨간색 점)을 랜덤 초기화합니다 모든 개체들(파란색 점)을 가장 가까운 중심에 군집(녹색 박스)으로 할당하며, 이것이 Expectation 스텝이다. 중심을 군집 경계에 맞게 이동하며, 이것이 Maximiza..
2022.04.19 -
[클러스터링] DBSCAN (밀도 기반 클러스터링)
1. DBSCAN이란? DBSCAN(Density-based spatial clustering of applications with noise) 밀도 기반의 클러스터링은 점이 세밀하게 몰려 있어서 밀도가 높은 부분을 클러스터링 하는 방식이다. 쉽게 설명하면, 어느점을 기준으로 반경 x내에 점이 n개 이상 있으면 하나의 군집으로 인식하는 방식이다. Scikit-Learn 라이브러리 사용시 -> sklearn.cluster.DBSCAN 2. DBSCAN의 원리 기준점 부터의 거리 epsilon값과, 이 반경내에 있는 점의 수 minPts를 인자로 전달 P반경 내 5개의 점이 있기 때문에 군집으로 판단하여 P는 core point가 된다. 회색점 P2의 경우 점 P2를 기반으로 epsilon 반경내의 점이 3..
2022.04.19 -
vscode에서 Github 연동 방법(파일 업로드)
신규 파일을 github에 업로드하는 방법 1. Github 레파지토리 생성 레파지토리 이름과 공개 유무 선택 후 README 체크 박스 선택시 기본 main Branch가 생성이 된다. 2. 생성된 레파지토리 URL을 복사한다. 3. vc code에서 해당 프로젝트 실행 후 레파지토리 초기화 4. 변경 사항 추가 및 커밋 + 버튼을 이용하여 변경 사항 -> 스테이징된 변경 사항으로 파일 이동 변경 내용에 대한 메시지를 입력 후 커밋 버튼을 누르면 로컬 Git에 커밋이 된다. ※ 변경 사항에서 + 버튼을 누르면 전체 파일을 일괄 추가를 할 수 있다. 5. 아래의 순서대로 명령어 실행 ※ Git의 기본 레파지토리는 mater 이기 때문에 Github 레파지토리인 main으로 변경 해주어야 한다. # 프로젝..
2022.04.17 -
CentOS Yum 꼬인 경우 재설치 방법
CentOS 7 기준 Python 설치 하다가 가끔 yum 명령어 꼬여서 오류가 나는 현상이 발생 하곤 한다. yum 명령어 자체 실행이 안되고 다른 오류 메세지를 발생 하기도 한다. 필자는 아래와 같은 오류 명령어 발생했다. attributeerror: 'yumconf' object has no attribute 'usercache' 이때는 yum 자체를 완전히 삭제하고 재설치를 하면 된다. 1. yum 삭제 $ rpm -e --nodeps yum 2. yum 설치 패키지 다운로드 http://mirror.centos.org/centos-7/7/os/x86_64/Packages/ 아래의 3개의 파일을 다운로드 받는다. yum-3.4.3-168.el7.centos.noarch.rpm yum-plugin-..
2022.04.08 -
React + django Rest Framework
리액트(React, React.js 또는 ReactJS)는 자바스크립트 라이브러리의 하나로서 사용자 인터페이스를 만들기 위해 사용된다. 페이스북과 개별 개발자 및 기업들 공동체에 의해 유지보수된다. React는 싱글 페이지 애플리케이션이나 모바일 애플리케이션 개발에 사용될 수 있다. 대규모 또는 복잡한 리액트 애플리케이션 개발에는 보통 라우팅, API통신 등의 기능이 요구되는데 리액트에는 기본적으로 제공되지 않기 때문에 추가 라이브러리를 사용해야 한다. 페이스북에서 좋아요를 누르고 댓글을 달고 페메를 보내는 건 전부 한 페이지에서 이뤄진다. 넷플릭스 또한 어떤 작품을 누르든 장르 범주를 바꾸지 않는 이상 해당 페이지에서 계속해서 데이터가 바뀌고 DOM구조가 바뀐다. 지속적인 데이터 변화 및 구조가 변경되..
2022.04.04