분류 전체보기

    [빅데이터/분산처리] Hadoop 하둡

    하둡 설치하기 (Mac/M1)

    [AI/추천시스템/RecSys] Transformer기반 추천시스템 모델, SASRec, SSE-PT, BERT4Rec

    언어 모델은 추천 문제에 사용하기 좋습니다. Seq2Seq 모델 번역 문제, QA 문제에 적용하며 긴 문장에 대해서는 성능이 떨어집니다. Attention 모델 Attention을 통해 어떤 노드를 얼마나 참조할지 가중치를 사용합니다. 이전 RNN 노드들을 다시 이용하여 최종 출력치를 결정합니다. Transformer 모델 Attention 을 이용하여 encoding과 decoding을 진행합니다. 순서를 표시하기 위한 positional encoding을 함께 진행합니다. Encoder: self-attention 사용 Decoder: 일반 attention 사용, masked self-attention 사용(순차적 입력 고려) self-attention을 통해 단어 간 유사성을 파악할 수 있습니다...

    [AI/추천시스템/RecSys]Model-based, User-based 협업 필터링(Collaborative Filtering), 스포티파이(Spotify)의 RecSys

    협업 필터링(Collaborative Filtering) - 사용자 행동 데이터로 아이템 추천. - 유사 사용자 그룹에서 공통 관심 아이템을 추천. - 대규모 데이터 필요(데이터 적은 경우, 신규 아이템/사용자에는 어려움) - 새로운 아이템 추천 가능. • Memory Based Approach(메모리 기반 방식) - User-based Filtering : target user와 유사한 user들의 아이템 선호 기반 추천 - Item-based Filtering: target item과 유사한 item들에 대한 사용자 추천 • Model Based Approach - 사용자-아이템 평점 표현한 수학적 모델로부터 데이터 학습. - 행렬 분해(Matrix Factorization): MF, SVD, NMF..

    [Flask] 플라스크: 마이크로 웹 프레임워크

    플라스크는 Python의 마이크로 웹 프레임워크이다. 다양한 웹 엔진과 붙여서 쓸 수 있고 또 가볍기도 해서 Django와 같이 쓰는 경우도 있다. 코드도 비교적 단순하고, 특히 API 서버를 만들기에 매우 편리하다. 관련된 확장 기능들이 많기 때문이다. 풀 스택 웹 프레임워크인 Django와는 달리 마이크로 프레임워크라고 해서 보다 기능성이 떨어지는건 결코 아니다. 단지 Django에서는 단순히 임포트해서 편리하게 사용할 수 있는 일부 부가적인 기능들을 Flask에서는 직접 손을 써야 할 뿐이다. 이 말인 즉슨, 오히려 Django에 비해서 Flask가 개발자의 능력과 목적에 맞게 커스텀이 가능하다는 얘기. 사실, 아예 웹 프레임워크가 없이 파이썬(심지어는 C로도) 자체로도 웹 서버는 충분히 구현이 가..

    [AI/추천시스템/Recommender System] 순차적 추천(Sequential Recommendation)

    일반적 추천과 순차적 추천 비교 일반적 추천(Conventional Recommendation): - 과거의 사용자-아이템 피드백을 기반으로 새로운 아이템을 추천합니다. - 피드백이 발생한 시간 혹은 발생 순서를 고려하지 않습니다. ex) 1년 전 본 영화와 지난주에 본 영화가 같이 고려됩니다. 시리즈물 1, 2를 연속으로 본 행위가 고려되지 않습니다. 순차적 추천(Sequential Recommendation) - 사용자 행동을 시간 순으로 관리하는 것이 가능해졌습니다. (웹시스템의 발전) - 사용자의 과거행동에 기반하여 다음 번 아이템을 추천합니다. 순차 데이터 (Sequence Data) 시간 혹은 어떤 순서에 따라서 발생하는 데이터 시계열 데이터, 음성, 동영상, 언어 등 언어 데이터와 추천 데이..

    [AI/추천시스템/Recommender System] FM: Factorization Machine

    Rendle, “Factorization Machine”, ICDM, 2010 일반적인 예측 모델로 SVM과 유사성이 높습니다. 방법론적 특성상 MF와 같은 행렬분해 방식의 추천 알고리즘이 확장된 것입니다. Factorization Machine은 매우 sparse한 데이터를 다루고, 사용자와 아이템 정보 외의 다양한 feature들을 포함해서 활용합니다. 사전에 소개했던 MF는 사용자와 아이템 정보, rating 정보만 활용했던 것과 다릅니다. MF와 FM이 이름도 비슷해서 헷갈릴 수 있는데, FM은 Polynomial Regression(다항 회귀)에 가깝습니다. X에서 Y를 예측하는 일반적인 지도학습 모델로, NeuralCF와의 차이는 - NeuralCF는 사용자와 아이템 정보만으로 target을 ..

    [NLP/추천시스템/Recommender System] RecBole 라이브러리 소개

    https://recbole.io/data_flow.html Data Processing Pipeline | RecBole The overall data flow can be described as follows: The details are as follows: Raw Input: Unprocessed raw input dataset. Detailed in [ Dataset List ]. Atomic Files: Basic components for characterizing the input of various recommendation tasks, proposed by recbole.io “世有伯乐,然后有千里马。千里马常有,而伯乐不常有。”——韩愈《马说》 "세상에는 백락이 있고, 그 다음에는 천리마가 ..

    [NLP/검색/Information Retrieval/아파치] 아파치 솔라 Apache Solr 를 통한 검색 서버 구현 실습

    아파치 솔라는 아파치 루씬에 기반을 둔 강력하고, 고성능, 스레드 안전한 검색 서버다. 오픈 소스 엔터프라이즈 검색 서버. 솔라가 제공하는 기능: - 색인 생성, 검색을 위한 쉬운 HTTP 기반의 프로토콜이나 자바 및 PHP, Ruby 등에 대한 클라이언트(Restful API를 사용) - 성능 향상을 위한 고급 캐싱과 복제 - 패싯 브라우징 - 일치 강조(하이라이팅) - 맞춤법 검사 - 분산 검색(NoSQL 데이터베이스) - 아파치 티카를 사용한 콘텐츠 추출 https://kafka.apache.org/ Apache Kafka Apache Kafka: A Distributed Streaming Platform. kafka.apache.org 아파치 설치하기 환경: Mac M1 brew install s..

    [NLP/검색/Information Retrieval/아파치] 검색 개념 개론, 정보 검색, 패싯, 색인 생성, 사용자 입력, 순위화, 결과 표시

    검색이란 것은 인터넷에서 정보를 검색하거나, sns에서 친구를 찾거나, 텍스트 조각에서 주요 단어를 찾는 일이다. 사용자가 거대한 텍스트 덩어리를 관찰하는 데이터 주도 애플리케이션에서는 특히나 이 검색 기능이 중요하다. 오픈소스를 활용한 검색 도구는 - 유연성, 개발 비용, 가격, 콘텐츠에 대한 이해 - 등의 장점으로 품질이 굉장히 높다. 검색과 패싯: 아마존과 이베이 검색과 패싯은 아마존과 이베이와 같은 온라인 상점의 표준 검색 기능으로 자리잡았다. 만약에 사용자가 방탄소년단 굿즈를 사고 싶다고 하자. 아마존에서 'bts merchandise'를 입력하고 다음과 같은 결과를 받았다고 하자. 당연히 이렇게 일반적인 질의를 입력했기 때문에 원하는 결과가 아니다. 그래서 이제 검색 결과를 좁혀야 한다. 패싯..

    [AI/이론] 딥러닝 기반의 추천시스템 Recommender System, 행렬분해(MF), NeuralCF, GMF, MLP

    딥러닝 추천시스템 모델 기반 협업 필터링 - MF, 딥러닝 - MLP: 주로 행렬분해(Matrix Factorization) 개선 ex) NeuralCF, DeepFM, Wide&Deep Learning - AutoEncoder: 차원축소 등 딥러닝 ex) RBM-Rec, AutoRec, CDAE - RNN/CNN: Sequential Recommendation. ex) GRU4Rec, Caser, SLi-Rec - Transformer: 주로 언어모델 활용 ex) SASRec, SSE-PT, BERT4Rec 평점 예측 - 연속된 숫자 형태의 평점을 예측하고 이를 평가. ex) 0~5 - 일반적으로 관측된 테스트 데이터에 대해서만 평가. - RMSE, MAE를 주로 사용. MF: Matrix Factor..

    [AI/이론] 추천시스템 Recommender System_ 협업필터링, 사용자기반, 컨텐츠 기반, 지식 기반 추천

    추천시스템 (Recommender System): 사용자가 관심을 가질만한 콘텐츠 (상품, 영화, 이미지, 뉴스 등)을 추천하는 기계학습의 한 방법으로 사용자의 선호도 및 과거 행동을 토대로 사용자의 관심과 흥미를 가질만한 콘텐츠를 제공하는 것 ex) 사용자의 과거 행동 데이터(구매지표, 평점, 좋아요수) 등 메타데이터: 상품 정보, 사용자 그룹 등 추천시스템 활용도: 상품 추천, 컨텐츠 추천, 뉴스 추천, 개인 맞춤형 광고, 앱 추천 case 1. 상품 추천하는 경우) – 상품: 도서, 음악, 전자제품, 식료품 등 –사용자 행동: 명시적 (별점, 리뷰), 암묵적 (구매, 검색) –추천 기준: 베스트셀러, 관심그룹별 추천, 비슷한 상품 case 2. 개인 맞춤형 광고) - 사용자 행동: 암묵적(접속로그,..

    [AWS 개념이론정리/CS] 스토리지, 데이터베이스, Amazon S3, EBS, EFS, Storage Gateway, Aurora, RDS, DynamoDB, ElastiCache

    스토리지 Amazon S3 Amazon Simple Storage Service(Amazon S3)는 웹 어느 곳에서든지 용량에 관계없이 데이터를 저장하고 검색할 수 있는 단순한 웹 서비스 인터페이스를 갖춘 객체 스토리지입니다. Amazon Elastic Block Store Amazon Elastic Block Store(Amazon EBS)는 AWS 클라우드의 Amazon EC2 인스턴스에 사용할 영구 블록 스토리지 볼륨을 제공합니다.29 각 Amazon EBS 볼륨은 가용 영역 내에 자동으로 복제되어 구성 요소 장애로부터 보호하고, 고가용성 및 내구성을 제공합니다. Amazon EBS 볼륨은 워크로드 실행에 필요한 지연 시간이 짧고 일관된 성능을 제공합니다. Amazon EBS를 사용하면 프로비저닝..

    [AWS 개념이론정리/CS] 클라우드 보안, Amazon Web Services 클라우드 플랫폼, EC2, Lambda, Auto-scaling

    보안 및 규정 준수 보안 AWS 클라우드의 장점은 보안 환경을 유지하고 사용하는 서비스에 대해서만 요금을 지불하면서 확장 및 혁신을 이룰 수 있다는 것입니다. 따라서 온프레미스 환경보다 더 적은 비용으로 필요한 보안 수준을 유지할 수 있습니다. AWS 보안의 혜택 - 데이터를 안전하게 유지: AWS 인프라는 강력한 보안 조치를 적용하여 고객의 개인 정보를 보호합니다. 모든 데이터가 고도로 보안된 AWS 데이터 센터에 저장됩니다. - 규정준수 요구사항 충족: AWS에서 인프라에 있는 수십 개의 규정준수 프로그램을 관리합니다. 따라서 고객의 규정 준수 부문 중 일부가 이미 충족되어 있습니다. - 비용 절감: AWS 데이터 센터를 사용하여 비용을 줄이십시오. 자체 시설을 운영할 필요 없이 가장 높은 보안표준을..

    [AWS 개념이론정리/CS] 클라우드 컴퓨팅, IaaS, SaaS, 온프레미스

    클라우드 컴퓨팅 클라우드 컴퓨팅이란 인터넷에서 종량 요금제 방식으로 클라우드 서비스 플랫폼을 통해 컴퓨팅 파워, 데이터베이스 스토리지, 애플리케이션, 기타 IT 리소스를 온디맨드로 제공하는 서비스를 말합니다. 클라우드 컴퓨팅은 서버, 스토리지, 데이터베이스 및 광범위한 애플리케이션 서비스를 인터넷을 통해 간단하게 액세스할 수 있는 방법을 제공합니다. Amazon Web Services와 같은 클라우드 서비스 플랫폼은 이러한 애플리케이션 서비스에 필요한 네트워크 연결 하드웨어를 소유 및 유지 관리하는 한편, 고객은 웹 애플리케이션을 통해 필요한 것을 프로비저닝하고 사용하는 방식입니다. 클라우드 컴퓨팅의 여섯 가지 이점 자본 비용을 가변 비용으로 대체 데이터 센터 및 서버를 어떻게 사용할지 계획을 세우기도 ..

    [python] 파이썬 랜덤함수(random) 정리

    파이썬 랜덤 함수 (random function) 정리 random.seed(a=None, version=2) 난수 생성기를 초기화합니다. random.getstate() 생성기의 현재 내부 상태를 포착하는 객체를 반환합니다. 이 객체는 setstate()로 전달되어 상태를 복원 할 수 있습니다. random.setstate(state) state는 getstate()에 대한 이전 호출에서 얻은 것이어야 하고, setstate()는 생성기의 내부 상태를 getstate()가 호출될 당시의 상태로 복원합니다. 바이트열 함수 random.randbytes(n) n 무작위 바이트를 생성합니다. 정수 함수 random.randrange(stop) random.randrange(start, stop[, step]..

    [프로그래머스](Lv.3)길 찾기 게임[2019 KAKAO BLIND RECRUITMENT][파이썬/트리/전위순회/후위순회/Preorder/Postorder/Tree]

    https://school.programmers.co.kr/learn/courses/30/lessons/42892 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 길 찾기 게임 전무로 승진한 라이언은 기분이 너무 좋아 프렌즈를 이끌고 특별 휴가를 가기로 했다. 내친김에 여행 계획까지 구상하던 라이언은 재미있는 게임을 생각해냈고 역시 전무로 승진할만한 인재라고 스스로에게 감탄했다. 라이언이 구상한(그리고 아마도 라이언만 즐거울만한) 게임은, 카카오 프렌즈를 두 팀으로 나누고, 각 팀이 같은 곳을 다른 순서로 방문하도록 해서 먼저 순회를 마친 팀이 ..

    ComDensE : Combined Dense Embedding of Relation-aware and Common Features for Knowledge Graph Completion

    논문선정이유 KG 관련 국내 연구 읽기 위해. Abstract Real-world knowledge graphs (KG) are mostly incomplete. The problem of recovering missing relations, called KG completion, has recently become an active research area. Knowledge graph (KG) embedding, a low-dimensional representation of entities and relations, is the crucial technique for KG completion. Convolutional neural networks in models such as ConvE, SACN..

    Multimodal Interactions Using Pretrained Unimodal Models for SIMMC 2.0

    논문선정이유 멀티모달 모델 관련 국내연구를 찾기 위해서. Abstract This paper presents our work on the Situated Interactive MultiModal Conversations 2.0 challenge held at Dialog State Tracking Challenge 10. SIMMC 2.0 includes 4 subtasks, and we introduce our multimodal approaches for the subtask #1, #2 and the generation of subtask #4. SIMMC 2.0 dataset is a multimodal dataset containing image and text information, which..

    [프로그래머스](Lv.3) 외벽점검 [2020 KAKAO BLIND RECRUITMENT][파이썬/Python/슬라이딩윈도우/원형큐]

    https://school.programmers.co.kr/learn/courses/30/lessons/60062 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 더보기 문제 설명 레스토랑을 운영하고 있는 "스카피"는 레스토랑 내부가 너무 낡아 친구들과 함께 직접 리모델링 하기로 했습니다. 레스토랑이 있는 곳은 스노우타운으로 매우 추운 지역이어서 내부 공사를 하는 도중에 주기적으로 외벽의 상태를 점검해야 할 필요가 있습니다. 레스토랑의 구조는 완전히 동그란 모양이고 외벽의 총 둘레는 n미터이며, 외벽의 몇몇 지점은 추위가 심할 경우 손상될 수도 있는 취약한..

    [백준/BOJ] #15961 #2535 회전초밥 [투포인터/슬라이딩윈도우/파이썬/Python]

    https://www.acmicpc.net/problem/15961 15961번: 회전 초밥 첫 번째 줄에는 회전 초밥 벨트에 놓인 접시의 수 N, 초밥의 가짓수 d, 연속해서 먹는 접시의 수 k, 쿠폰 번호 c가 각각 하나의 빈 칸을 사이에 두고 주어진다. 단, 2 ≤ N ≤ 3,000,000, 2 ≤ d ≤ 3,000, 2 www.acmicpc.net https://www.acmicpc.net/problem/2531 2531번: 회전 초밥 첫 번째 줄에는 회전 초밥 벨트에 놓인 접시의 수 N, 초밥의 가짓수 d, 연속해서 먹는 접시의 수 k, 쿠폰 번호 c가 각각 하나의 빈 칸을 사이에 두고 주어진다. 단, 2 ≤ N ≤ 30,000, 2 ≤ d ≤ 3,000, 2 ≤ www.acmicpc.net 요..