전체 글

전체 글

    [Programmers] 해쉬 - 베스트앨범

    해당 글은 프로그래머스 해쉬 Level3. 베스트 앨범을 풀고 작성한 글임을 밝힙니다. https://programmers.co.kr/learn/courses/30/lessons/42579 베스트앨범 문제 설명 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 많이 재생된 장르를 먼저 수록합니다. 장르 내에서 많이 재생된 노래를 먼저 수록합니다. 장르 내에서 재생 횟수가 같은 노래 중에서는 고유 번호가 낮은 노래를 먼저 수록합니다. 노래의 장르를 나타내는 문자열 배열 genres와 노래별 재생 횟수를 나타내는 정수 배열 plays가 주어질 때, 베스트 앨범에 들어갈 노래..

    [Programmers] SQL 고득점 Kit

    [Programmers] SQL 고득점 Kit

    해당 글은 프로그래머스 SQL 고득점 Kit를 바탕으로 작성됐음을 밝힙니다. 코딩테스트 연습 | 프로그래머스 (programmers.co.kr) - https://programmers.co.kr/learn/challenges SQL 고득점 Kit에는 SELECT, AGGREGATE(SUM, MAX, MIN), GROUP BY, IS NULL, JOIN, String, Date와 관련된 문제들로 구성되어 있습니다. LEVEL 2 문제만 골라풀다가 GROUP BY와 JOIN 문제들을 풀어나가는 중입니다. 드디어 1개 남았습니다. Keep Going! 다 풀었습니다~! SELECT # 문제명: 모듬 레코드 조회하기 # 모든 레코드 조회 SELECT * FROM ANIMAL_INS ORDER BY ANIMAL_..

    [리뷰] 추천 API 최적화 하기 - RIDI 유지훈님

    병렬적으로 공부하기로 다짐하면서 꾸준히 관심 분야 현직자 분들의 글을 읽고 정리해나갈 예정입니다. 추천시스템 오픈 카카오톡방에서 추천한 글들을 위주로 먼저 읽겠습니다. 🎈 인용구 박스에 들어있는 내용은 추가 아이디어나 제 개인적인 생각을 열어보기 위해 기록한 부분입니다. 해당 글은 RIDI의 유지훈님이 2018년 08월 31일에 발표한 추천 API 최적화 하기라는 발표자료를 읽고 정리한 내용임을 밝힙니다. 발표자료를 보고 개인적으로 이해한 내용을 위주로 정리했기 때문에 발표 내용이 아닙니다. 틀린 내용이 있으면 댓글로 알려주세요 :) 리디북스의 추천 API 추천 알고리즘 리디북스의 추천 API는 2가지의 추천 방식을 취합니다. Book-to-book, Book-to-user 방식의 추천 알고리즘을 가진 ..

    [SQLite] CREATE, INSERT, DELETE, UPDATE, SELECT, ALTER, DROP

    [SQLite] CREATE, INSERT, DELETE, UPDATE, SELECT, ALTER, DROP

    해당 글은 SQLite3로 가볍게 배우는 데이터베이스를 기반으로 작성했음을 밝힙니다. 글에서의 실습은 DB Browser for SQLite를 활용하여 진행했습니다. SQLite 실습을 하기 위해서는 DB Browser for SQLite를 다운로드해야합니다. 해당 브라우저에서 SQLite를 활용해 데이터베이스를 파일에 기록할 뿐 SQLite의 DB Server 개념이 아닙니다. 실습 진행을 위한 DB Browser는 해당 페이지에서 다운로드했습니다. CREATE 테이블을 정의할 때는 CREATE문을 사용합니다. 테이블을 정의할 때 테이블명은 단수형/복수형 둘 중 하나로 통일(주로, 단수형 권장)해서 사용할 것을 권장합니다. Type 지정: INTEGER, TEXT NN: Null값 허용 Null값을 허..

    [SQLite3] 데이터베이스와 DBMS

    [SQLite3] 데이터베이스와 DBMS

    해당 글은 SQLite3로 가볍게 배우는 데이터베이스와 TCPSchool을 기반을 작성됐음을 밝힙니다. 추가적으로 개발자 인터뷰 대비 Github을 바탕으로 내용을 보완했습니다. 데이터베이스: 컴퓨터에 체계적으로 저장한 데이터 DBMS: 데이터베이스를 관리하는 시스템, 데이터베이스를 관리하는 별도의 미들웨어(응용 프로그램 X) => 2개의 용어는 크게 구분하지 않습니다. 파일 시스템 < 데이터베이스의 특징 파일 시스템의 단점 보완 = 데이터베이스를 사용하는 이유 파일 시스템의 단점: 중복 데이터가 많이 발생하고, 데이터의 일관성이 떨어지며 보안, 백업/복구가 불편한 문제가 있습니다. 즉, 데이터 종속성, 중복성, 무결성의 이슈가 있습니다. 데이터의 모델링, 무결성, 다수 사용자를 위한 동시성 제어 등을 ..

    [회고] 10월, 11월, 12월

    스타트업 입사와 빠른 퇴사 스타트업 입사 7일차만에 사직서를 제출했습니다. 입사 과정에서도 1달 반 정도의 시간동안 입사가 미뤄지기도 했고, 계약서를 쓰는 날에 타 기업으로의 계약을 제안(?)받는 당황스러운 일도 있었습니다. "스타트업이니까..." 라는 마법의 주문을 속으로 읊조리며 많은 당황스러운 일들을 이해하려고 했지만, 3개월 이후에 나는 A기업이 아니라, 이제는 진짜 B기업으로 근로 계약을 할 수 있을까? 라는 두려움이 커졌습니다. 안정적인 시스템에 익숙한 나였기 때문에 생각보다 처음 겪어본 스타트업 환경에 대해 체계화시켜보고자하는 욕심도 크게 다가왔지만 불안정한 인사와 근로 계약으로 나의 욕심은 짓눌렀습니다. 이 글을 쓸 때 써야하나 말아야하나 고민이 됐지만 블로그의 약 2개월의 공백이 모두 입..

    [Programmers] 스택/큐 - 기능개발

    해당 글은 프로그래머스의 스택/큐 파트에 해당하는 문제를 풀고 공부하는 과정에서 작성한 글입니다. 틀린 부분이 있으면 댓글로 알려주세요! 감사합니다. 프로그래머스 기능개발 - http://https://programmers.co.kr/learn/courses/30/lessons/42586 문제 설명 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 기능보다 먼저 개발될 수 있고, 이때 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포됩니다. 먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열 progresses와 각 작업의 개발 속도가 적힌 정수 ..

    [Topic Modeling] LSA(잠재 의미 분석)

    [Topic Modeling] LSA(잠재 의미 분석)

    해당 글은 아래의 위키독스를 기반으로 학습 후, 요약정리한 내용입니다. 딥러닝을 이용한 자연어 처리 입문 - https://wikidocs.net/24949 LSA(잠재 의미 분석) BoW에 기반한 DTM이나 DTM의 단점을 보완하여 단어의 중요도에 따라 가중치를 부여한 TF-IDF는 기본적으로 단어의 빈도 수를 이용한 수치화 방법이기 때문에 단어의 의미를 고려하지 못한다는 단점이 있습니다. LSA는 BoW에 기반한 알고리즘의 한계점을 보완하는 대안으로 제시되었습니다. LSA를 이해하기 위해서는 아래의 수학적인 개념을 이해해야 합니다. 특이값 분해(SVD, Singular Value Decomposition) 절단된 특이값 분해(Truncated SVD) 특이값 분해(SVD, Singular Value ..