분류 전체보기 309

쿠팡 리뷰기반 추천시스템 (문제 정의, 목표 설계, 데이터 수집, 정제)

문제 정의 & 목표 설계 해결하고자 하는 문제온라인 쇼핑몰에는 방대한 리뷰데이터가 지속적으로 축적되고 있으나,고객의 개인별 특성이 리뷰 텍스트에 충분히 반영되어 있음에도 불구하고 이를 체계적으로 분석하여 개인 맞춤형 상품 추천에 활용하는 데에는 한계가 있다.현재의 추천 시스템은 주로 판매량, 별점 평균, 인기 순위에 의존하고 있어 개인별 니즈를 정밀하게 반영하지 못하며, 그 결과 고객은 자신에게 적합하지 않은 제품을 추천받는 경험을 하게된다. 특히 화장품은 피부 타입과 취향에 따른 만족도 편차가 크기 때문에 이러한 문제는 구매 실패와 재구매율 저하로 이어질 수 있다. 본 프로젝트는 화장품 리뷰 텍스트를 기반으로 감성 분석과 키워드 유사도 분석을 수행하여, 설명 가능한 상품 유사도 추천 시스템을 구축..

Rubik Dungeon

게임 플레이 링크 RubiksDungeon by full-fish full-fish.itch.io 플레이 영상 git 링크https://github.com/full-fish/RubicksDungeon GitHub - full-fish/RubicksDungeonContribute to full-fish/RubicksDungeon development by creating an account on GitHub.github.com 게임 개요 루빅 던전은 루빅스 큐브의 회전 메커니즘을 던전 탐험에 결합한 퍼즐 어드벤처 게임입니다.플레이어는 단순히 캐릭터를 이동시키는 것을 넘어 던전의 가로줄과 세로줄 전체를 회전시켜 지형 자체를 재구성하며 목적지에 도달해야 합니다.핵심 게임 메커니즘 플레이어는 화살표로 캐릭터를..

Project/unity 2025.12.12

Transformer

1. Transformer의 등장 배경과 핵심 아이디어기존의 RNN(순환 신경망) 모델은 단어를 순서대로 하나씩 처리해야 했기 때문에 속도가 느리고, 문장이 길어지면 앞부분의 정보를 잊어버리는 단점이 있었습니다. 핵심 아이디어: RNN처럼 순차적으로 처리하지 않고, 문장 전체를 한 번에 입력받아 병렬로 처리합니다.장점:병렬 연산이 가능하여 GPU 효율이 높습니다.문장 내에서 거리가 먼 단어들 사이의 관계도 한 번에 파악할 수 있습니다. 구조: 오직 Attention(어텐션) 메커니즘만으로 이루어진 Encoder-Decoder 구조입니다.2. 가장 중요한 부품: Self-Attention (자가 주의 집중)Transformer가 문맥을 이해하는 핵심 원리입니다. 문장 내의 각 단어가 다른 단어들과 어떤 연..

Attention

1. Attention의 필요성전통적인 Encoder-Decoder 모델의 문제점Attention 메커니즘이 등장하기 이전의 기본적인 Seq2Seq 모델(RNN 기반의 Encoder-Decoder)은 다음과 같은 문제점을 가지고 있었습니다.Encoder: 긴 문장을 읽고 그 모든 정보를 하나의 요약 벡터(thought vector)인 마지막 hidden state에 압축합니다.Decoder: 이 요약 벡터만을 보고 순서대로 단어를 생성합니다.문제:문장이 길어질수록, 모든 정보를 단 하나의 hidden state에 압축해야 하므로 압축의 정도가 심해집니다.압축이 심해질수록, 문장 앞쪽의 단어 정보가 손실되기 쉽습니다. (Long-term Dependency 문제)LSTM/GRU와 같은 개선된 RNN 구조가..

시퀀스 모델

01. 시퀀스 데이터란?시퀀스 데이터는 순서가 중요하고, 앞뒤 문맥이 데이터의 의미를 결정하는 데이터를 말합니다.특징: 동일한 단어라도 앞뒤 문맥에 따라 의미가 달라지므로, 순서를 반영할 수 있는 모델이 필요합니다.예시:텍스트: 문장이나 문서 (단어의 순서가 의미 형성)시계열: 날마다 변동하는 주가, 매출 데이터음성: 시간 축에 따라 흐르는 음성 신호02. RNN (Recurrent Neural Network, 순환 신경망)RNN은 시퀀스 데이터를 처리하기 위한 가장 기본적인 딥러닝 모델입니다.핵심 원리: 현재 시점의 입력 x_t와 직전 시점의 은닉 상태 h_{t-1}를 함께 사용하여 현재의 은닉 상태 h_t를 계산합니다. 이를 통해 이전 정보를 기억하며 다음 시점으로 넘어갑니다.수식: 한계 (기울기 소..

단어 임베딩

01. 단어 임베딩(Word Embedding)1. 텍스트를 숫자로 바꿔야 하는 이유머신러닝과 딥러닝 모델은 숫자 형태의 데이터만 처리할 수 있습니다. 따라서 자연어 처리(NLP)는 텍스트를 숫자로 변환하는 단계에서 출발합니다.2. 단어를 숫자로 변환하는 대표 방식단어를 숫자로 변환하는 세 가지 대표적인 방식이 있습니다.정수 인덱스: 단어를 단순한 정수 값으로 매핑합니다. (예: "나는" -> 0, "밥을" -> 1)원-핫 인코딩 (One-Hot Encoding):임베딩 (Embedding):3. 단어 임베딩의 아이디어 (Word Embedding)단어 임베딩은 원-핫 인코딩의 단점, 특히 의미적 정보의 부재와 고차원 문제를 해결하기 위해 고안된 방법입니다.임베딩의 정의 및 목표정의: 각 단어를 의미를 ..

딥러닝 텍스트 전처리

1. 텍스트 정제(Cleaning) 및 토큰화(Tokenization)이 단계는 텍스트를 기계가 처리하기 쉬운 단위로 쪼개는 과정입니다.정제: 불필요한 HTML 태그, 특수 문자, 이모지 등을 제거하거나 표준화합니다.토큰화: 문장을 의미를 가지는 최소 단위(단어, 형태소, 서브 워드 등)로 분리합니다. (예: "나는 학생이다" -> ['나', '는', '학생', '이다'])2. 단어(또는 서브 워드) 사전(Vocabulary) 생성토큰화된 결과물을 바탕으로 전체 데이터셋에 존재하는 고유한 단어들의 집합을 만듭니다.역할: 모델이 인지할 수 있는 모든 단어들의 목록을 정의합니다.특징: 빈도수가 낮은 단어는 제거하여 사전 크기를 줄이고, 모르는 단어(OOV, Out-Of-Vocabulary)를 처리하기 위해 ..

폰 분실 대비 2. (GPS. 이동 경로 보내기)

요약핸드폰 분실 했을 시정해진 트리거가 작동 했을때GPS를 1분 단위로 계속 저장,이동 경로를 kml형태로 메일로 전송 트리거 . 정해진 패턴이 들어간 문자 수신시GPS 저장 시작, GPS 저장 중지, 모든 데이터 전송, 정해진 기간 데이터 전송(@start, @stop, @send all, @send 2025-11-26_19:00 2025-11-26_23:59)헤맨점. 위치정보의 provider이 GPS가 정확도가 높지만 실내에서는 안됨.먼저 GPS 탐색 실패시 network 탐색을 했는데 GPS 실패시 1분간의 유휴시간이 발생(성공후 바로 같은 provider 탐색은 1초 미만으로 걸림) 유휴시간을 없애고자 GPS 실패시 해당 프로세서 kill하고 바로 실행 시켜 보려고 하였으나 안드로이드 단계에서 ..

폰 분실 대비 (사진, GPS, 녹음)

요약핸드폰 분실 했을 시정해진 트리거가 작동 했을때전 후면 카메라, 현재 GPS, 녹음해서 내 메일로 보내게 하기 트리거 1. 비밀번호 틀렸을 시트리거 2. 정해진 패턴이 들어간 문자 수신시 (@show) 핸드폰에 termux를 깔아 리눅스 환경을 만들고Tasker로 트리거와 해당 트리거에서 실행할것들 정해준다 헤맨점 1. 녹음을 백그라운드에서 돌리면서 나머지 실행했는데 카메라 찍을 때 녹음이 꺼짐-> 독립적으로 실행 시킴 헤맨점 2. 위치정보의 provider이 GPS가 정확도가 높지만 실내에서는 안됨. 먼저 GPS 탐색 실패시 network 탐색을 했는데 GPS 실패시 1분간의 유휴시간이 발생(성공후 바로 탐색은 1초 미만으로 걸림) 유휴시간을 없애고자 GPS 실패시 해당 프로세서 kill하고 바로..