전체 글
-
[Data Structure] 자료구조 - ArrayStudy/Data Structure 2020. 9. 21. 23:47
1. Introduction to Arrays Array는 item들의 collection이 메모리에 연이은 위치에저장된다. 여러 같은 type의 여러 item을 같이 저장하는 것이다. 기본 값에 offset을 추가하여 각 요소의 위치를 쉽게 계산할 수 있다. 더보기 offset: 기준이 되는 주소에 더해지는 값 각 element는 array의 index로 식별할 수 있다. Array의 장점 1. Array에서는 element의 random access가 된다. 이 말은 위치로 element에 접근하는 것이 빠르다는 것이다. 2. Array는 성능에 큰 차이를 만들 수 있는 더 나은 캐시 locality를 가지고 있다. 더보기 locality: 기억 장치 내의 정보를 균일하게 접근하는 것이 아닌 어느 한..
-
[Python] Pylint - 정의와 예제를 통해 Python 린트 툴 알아보기Software Development/Python 2020. 9. 3. 19:00
Lint? 린트(lint) 또는 린터(linter)는 소스 코드를 분석하여 프로그램 오류, 버그, 스타일 오류, 의심스러운 구조체에 표시(flag)를 달아놓기 위한 도구들을 말합니다. 이 용어는 C 언어 소스 코드를 검사하는 유닉스 유틸리티에서 왔습니다. Pylint란 Pylint는 Python 코드의 에러를 확인하고, 표준을 적용시키며 코드의 이상한 부분을 찾는 도구입니다. 또한 특정 유형의 에러를 찾을 수 있으며, 코드 일부분에 대한 리팩토링을 제공하며 코드의 복잡성에 대한 자세한 정보를 제공하기도 합니다. Python에서 다른 종류의 유사한 툴로 pychecker, pyflakes, flake8, mypy 등이 있습니다. Pylint에서 사용하는 기본적인 코딩 스타일은 PEP8이라 보시면 됩니다. ..
-
[Recommeder System] 추천 시스템 - 관련 자료 및 사이트 정리Research/Personalized Recommender Systems 2020. 8. 28. 10:23
작성중... Keras Implementation of Item2Vec[Code] : https://github.com/lujiaying Lua Implementation of Word2Vec[Code] : https://github.com/yoonkim/word2vec_torch/blob/master/word2vec.lua Tensorflow Implementation of Word2Vec[Code] : https://github.com/carpedm20/word2vec-tensorflow 추천 시스템에 대한 전반적인 이해를 위한 글[설명] : https://www.oss.kr/info_techtip/show/5419f4f9-12a1-4866-a713-6c07fd36e647 ALS Implementat..
-
[Algorithm] 알고리즘 - 문자열 매칭(Pattern Matching)Study/Algorithm 2020. 8. 27. 19:00
문자열 매칭 또는 패턴 매칭은 컴퓨터 과학에서 중요한 문제이다. 노트패드나 워드파일 또는 웹 브라우저 데이터베이스에서 문자열을 검색할 때 패턴 매칭 알고리즘을 사용하여 검색 결과를 표시한다. 문자열 매칭 방법의 종류는 아래와 같다. 1. Naive Matching (원시적인 매칭) - $O(mn)$ 2. Automata Algorithm (오토마타를 이용한 매칭) - $\Theta(n + |\sum| m)$ 3. Rabin-Karp Algorithm (라빈-카프 알고리즘) - $\Theta(n)$ 4. Knuth-Morris-Pratt(KMP) Algorithm (KMP알고리즘) - $\Theta(n)$ 5. Boyer-Moore Algorithm (보이어-무어 알고리즘) - $\Theta(n)$ Wor..
-
[Database] 인덱스 자세히 알아보기Software Development/Database 2020. 8. 19. 18:34
인덱스의 기본적인 목적은 검색 성능의 최적화이다. 즉, 검색 조건을 만족하는 데이터를 인덱스를 통해 효과적으로 찾을 수 있도록 돕는다. 그렇지만 Insert, Update, Delete 등과 같은 DML 작업은 테이블과 인덱스를 함께 변경해야 하기 때문에 오히려 느려질 수 있다는 단점이 존재한다. 인덱스 기능 인덱스는 어떤 종류의 검색 연산을 최적화하기 위해 데이터베이스상에 로우들의 정보를 구성하는 데이터 구조이다. 인덱스를 이용하면 전체 데이터를 검색하지 않고 데이터베이스에서 원하는 정보를 빠르게 검색할 수 있다. 인덱스는 인덱스를 생성한 컬럼값으로 정렬되어 있고 테이블 내 값들이 저장된 위치를 갖고 있으므로 인덱스를 이용하면 전체 테이블을 읽지 않아도 찾으려는 데이터를 찾을 수 있다. 그래서 테이블에..
-
ITEM2VEC: NEURAL ITEM EMBEDDING FOR COLLABORATIVE FILTERING 번역Research/Personalized Recommender Systems 2020. 7. 22. 18:29
논문 링크 https://arxiv.org/ftp/arxiv/papers/1603/1603.04259.pdf ITEM2VEC: NEURAL ITEM EMBEDDING FOR COLLABORATIVE FILTERING 많은 Collaborative Filtering 알고리즘은 item과 item 간의 유사성을 생성하기 위해 item-based 방법을 사용한다. (Natural Language Processing)NLP 분야에서 neural embedding algorithms을 이용한 단어의 의미를 학습하는 방법들이 제안되었다. Skip-gram with Negative Sampling (SGNS) 또는 word2vec이라고 알려진 방법은 다양한 언어학적 관점에서 최신 기술로 여겨진다. 이 페이퍼에서 it..
-
ORA-01654 인덱스를 확장할 수 없습니다Software Development/Database 2020. 7. 9. 19:00
테이블 스페이스 에러가 나는 이유 http://database.sarang.net/?inc=read&aid=18973&criteria=oracle&subcrit=&id=&limit=&keyword=&page= 데이터베이스를 사랑하는 사람들의 모임 데이터베이스 사랑넷 오라클 초보입니다.. 들어가는 자료 크기가 좀 큰 배치 몇개를 돌리다가 ... 모두 이런 오류로 종료되었는데 정확히 원인이 뭔지 알고 싶습니다. ORA-01654: IVLU01.S02_EB574DM 인덱스를 256(으)로 DATA 테�� database.sarang.net https://m.blog.naver.com/PostView.nhn?blogId=bluejames77&logNo=80039596674&proxyReferer=https:%2..