전체 글
프로젝트 회고(BangBangGokGok)
방탈출 테마 추천 사이트라는 주제로 만든 방방곡곡 웹사이트 프로젝트! 이번 프로젝트에서는 SpringBoot를 많이 다뤄보진 못하고 단순 기능 구현에 힘쓴 것 같아 너무너무 아쉽다... [Spring Boot] 선언적 트랜잭션 @Transactional 트랜잭션이란? 데이터베이스의 상태를 변경시키는 작업 또는 한번에 수행되어야하는 연산들을 의미한다. 트랜잭션 작업이 끝나면 Commit 또는 Rollback 되어야한다. 트랜잭션의 성질 원자성(Atomicity bamdule.tistory.com aws ec2에 docker container log를 좀 더 편리하게 보는 방법이 없을까? ELK 스택 사용:ELK (Elasticsearch, Logstash, Kibana) 스택을 사용하면 Docker 컨테이..
[Jenkins] Jenkins로 SpringBoot/Django/React 배포하기 (ver.2)
저번 프로젝트 때 Jenkins에 대한 아쉬움이 많아서 이번엔 각잡고 제대로 해보려고 한다. 저번엔 Docker in Docker 방식으로 진행했었는데 다시 개념을 찾아보니 이러한 문제가 있다고 한다. Docker in Docker는 Docker 컨테이너 내부에서 Docker를 실행하는 방식으로, 하나의 Docker 호스트에서 다른 Docker 호스트를 만드는 것과 유사하지만 문제점이 있다. DinD 방식은 컨테이너 안에서 호스트 시스템의 Docker 데몬을 실행하는 것이므로, 컨테이너 안에서 실행 중인 모든 애플리케이션은 호스트 시스템의 Docker 데몬에 대한 접근 권한을 가지게 됩니다. 이는 보안 문제를 발생시킬 수 있습니다. DinD 방식은 성능에 문제가 있을 수 있습니다. 컨테이너 안에서 Doc..
[AWS] EC2 인스턴스(Ubuntu)에서 Docker 설치
Ubuntu에 Docker 설치하기 먼저 기본 중에 기본. 패키징 툴(apt-get)을 업데이트, 업그레이드 시켜주자. apt update & apt upgrade 다음으로는 Docker 설치에 필요한 필수 패키지를 설치해주자. sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common 설치가 되었다면 Docker의 GPC Key 인증을 하자. curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - 입력 시 'OK'가 출력된다면 정상 작동한 것이다. 다음으로는 Docker Repository를 등록해보자..
[빅데이터 추천] 협업 필터링 구현해보기(아이템 기반 협업 필터링)
"아이템 기반 협업 필터링" 사용 이유 1. Sparse Data 문제 해결 => 사용자 간 유사성을 계산하기 위해서는 많은 사용자들이 공통적으로 평가한 아이템이 있어야함 만약 대부분의 사용자들이 특정 아이템을 평가하지 않은 경우, 이 아이템에 대한 추천 불가 2. 계산 효율성 => 사용자 간 유사성을 계산해야하기 때문에 사용자가 많아질수록 계산 비용이 높아지는데 아이템 기반 협업 필터링은 아이템 수가 많아져도 계산 비용이 비교적 낮음 3. 일반성 => 사용자 기반 CF은 특정 사용자에게만 맞춤 추천을 제공할 가능성이 높음 근데 아이템 기반 CF는 아이템 간 유사성을 계산하여 추천을 제공하기 때문에 다양한 아이템 추천 가능 사용자 기반 협업 필터링은 나와 성향이 비슷한 사람들이 사용한 아이템을 추천해주는..
[빅데이터 추천] 컨텐츠 기반 필터링 구현해보기
테마 1개에 대해서 추천 받기 import pandas as pd df = pd.read_csv('./방탈출테마정보_서울.csv', encoding='cp949') # print(df[['지역(대)','지역(소)','매장명','테마명','장르','난이도','시간','오픈일','최소인원','최대인원','메인사진','예약URL','내용']]) # print(df[['내용']]) # df + df 합쳐서 함 ''' - 사용할 컬럼 정리 csv파일에서 필요한것들만 dataframe으로 따로 만들어주자 ''' data = df[['지역(대)','지역(소)','매장명','테마명','장르','난이도','시간','오픈일','최소인원','최대인원','메인사진','예약URL','내용']] ''' - 평점 전처리 현재 영화..
[CS] 네트워크
프로토콜(Protocol) 서로 다른 시스템에 있는 개체 간에 성공적으로 데이터를 전송하는 통신 규약 컴퓨터 내부에서, 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙 체계 인터넷 인터넷 작동의 원리(Network) Internet 전선 : 네트워크 전기를 흐르게 하는 기술 : 인터넷 왼쪽 처럼 컴퓨터간의 통신을 위해 비효율적인 연결을 쓰지않고 오른쪽 처럼 라우터라는 특수한 소형 컴퓨터에 연결하여 통신을 할 수 ddangjiwon.tistory.com 회선교환(Circuit Switching) 방식 정보 전송 시작할 때 물리적인 견결을 확립하고 전송이 종료될 때까지 연결 유지 전송할 데이터가 있다고 하면 전용선을 할당하고 해당 선로로 모든 데이터를 전송 대용량 + 고속 데이터 처리에 우수 회선 ..
빅데이터 추천 시스템(CBF, CF)에 대해
예시) 영화 추천 시스템에 대한 이해 추천에 이용되는 협업 필터링(Collaborative Filtering) 주요 알고리즘 이해 K-nearest neighbor (KNN) 알고리즘 Matrix factorization 알고리즘 Matrix factorization + PLSI 알고리즘 빅 데이터마이닝에서 많이 쓰이는 기술인 Probabilistic Modeling 기술을 습득 영화 평점과 영화에 대한 다른 텍스트 정보도 이용하는 알고리즘 구현 Python을 사용하여 빅 데이터 처리에 효율적인 코딩 실습 Sparse matrix(희소 행렬) 형태의 데이터를 array에 zero 값들까지 그대로 저장하면 메모리도 많이 필요하고 수행 시간도 오래 걸림 Python의 numpy 라이브러리의 행렬 연산과 sc..
프로젝트 회고(경매중) + 질문 리스트
GitHub - jiwon1027/Auctopus: 경제적이고 매력적인 중고거래 플랫폼 경제적이고 매력적인 중고거래 플랫폼. Contribute to jiwon1027/Auctopus development by creating an account on GitHub. github.com 이번 프로젝트를 하면서 느낀것인 너무너무 많다 아직 모르는것이 너무 많은데 하나씩 정리해보려고 한다 일단 7주간 프로젝트를 하면서 제일 중요하다고 느낀점 소통 솔직히 소통이 중요하다는건 지겹도록 듣고 실제로도 알고있다. 하지만 매번 프로젝트를 하다보면 소통이 정말 중요하다고 다시금 깨닫게 되는 것 같다. 우리팀의 에이스 갓태원님의 Git 강의를 참고 삼아 다음 프로젝트땐 야무지게 Git을 써보자 땅지원의 PMI 회고 Plu..