일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- C
- GRU
- recursion
- HelloWorld
- Sort
- LSTM
- effective python
- hadoop2
- graph
- NumPy
- 그래프이론
- python
- 하둡2
- 주식분석
- 알고리즘
- Java
- 딥러닝
- codingthematrix
- 하이브
- 텐서플로
- tensorflow
- hive
- 파이썬
- C언어
- RNN
- collections
- 코딩더매트릭스
- yarn
- scrapy
- 선형대수
- Today
- Total
목록Study (184)
EXCELSIOR
1. Support Vector Machine, SVM이란?Support Vector Machine(SVM)은 원 훈련(또는 학습)데이터를 비선형 매핑(Mapping)을 통해 고차원으로 변환한다. 이 새로운 차원에서 초평면(hyperplane)을 최적으로 분리하는 선형분리를 찾는다. 즉, 최적의 Decision Boundary(의사결정 영역)를 찾는다. 그렇다면 왜 데이터를 고차원으로 보내는 것일까? 예를 들어, 아래의 [그림1]과 같이 A=[a, d], B=[b, c]는 2차원에서 non-linearly separable(비선형 분리)하다. 이를 통해 한 차원 높은 3차원으로 Mapping하게 되면 linearly separable(선형 분리)하게 된다. 따라서, 충분히 큰 차원으로 적절한 비선형 매핑..
1. Replacing words matching regular expressions앞의 포스팅(Stemming, Lemmatizing)에서는 언어의 압축(linguistic compression)이었다면 Word Replacement는 텍스트 정규화(text normalization) 또는 오타 수정으로 볼 수 있다. 아래의 예제는 영어의 축약형 표현을 원래의 표현으로 바꿔주는 예제이다. 예를 들어, "can't → can not", "would've → would have"로 바꿔준다. replacers.py의 RegexpReplacer( )를 import 하여 구현하였다. r'(\w+)\'ve'는 've을 포함하는 단어들을 찾아서 '\g have'에서 've 앞의 단어를 g로 그룹핑한 뒤 have를..
1. Stemming wordsStemming은 단어에서 접사(affix)를 제거하는 것을 말한다. Stemming은 검색엔진에서 색인할 때 가장 많이 쓴다. 모든 형태의 단어를 저장하는것 보다 Stemming한 단어를 저장하는 것이 색인 크기를 줄일 뿐만아니라 검색 정확성을 높일 수 있다.Stemming algorithm 중에서 유명한 알고리즘은 Martin Porter의 Porter stemming algorithm이다. Porter 알고리즘은 영어의 접미사(suffix)를 제거한다. 1) The PorterStemmer class from nltk.stem.porter import PorterStemmer stemmer = PorterStemmer() print(stemmer.stem('cookin..
1. Looking up Synsets for a word in WordNetWordNet(워드넷)은 영어의 의미 어휘목록이다. WordNet은 영어 단어를 'synset'이라는 유의어 집단(동의어 집합)으로 분류하여 간략하고 일반적인 정의를 제공하고, 이러한 어휘목록 사이의 다양한 의미 관계를 기록한다. 워드넷은 자연어 처리(NLP, Natural Language Processing)를 위한 특화된 사전이라고 볼 수 있다. NLTK의 wordnet을 사용하기 위해서는 nltk_data/corpora/wordnet에 wordnet이 압축이 풀려있어야 한다.다음과 같이 'cookbook'의 synset을 알아보자. wordnet.synsets(word)를 통해 확인할 수 있다. definition( ) 함..
1. Tokenizing text into sentencesTokenization이란 문자열을 여러개의 조각, 즉 여러 개의 Token(토큰)들로 쪼개는 것을 말한다. Token은 문자열의 한 조각으로 하나의 단어가 하나의 토큰이라고 할 수 있다. 1) paragraph 을 문장 단위로 tokenize하기nltk의 sentence tokenization function인 sent_tokenize를 통해 단락을 문장단위로 분리해본다. from nltk.tokenize import sent_tokenize para = "Hello World. It's good to see you. Thanks for buying this book." print(sent_tokenize(para)) ['Hello World...
NLTK 공부를 하기에 앞서 먼저 NLTK를 설치해 보겠다.Python에 NLTK를 설치하기 위해서는 먼저 Numpy를 설치해야 한다. Numpy 설치는 http://excelsior-cjh.tistory.com/entry/Python%EC%97%90-numpy-%EC%84%A4%EC%B9%98-%EB%B0%8F-%EC%8B%A4%ED%96%89 여기를 참고하자NLTK를 설치하기 위해 다음과 같이 pip 명령어를 입력한다.pip install nltk NLTK가 설치가 제대로 되었는지 확인해 본다. 다음과 같이 아무런 에러가 나지 않으면 제대로 설치된 것이다. 만약 다음과 같은 에러가 난다면 pip install numpy --upgrade 명령어를 통해 Numpy를 업그레이드 해주면 된다. >>>imp..
PACKT에서 발행한 Python 3 Text Processing with NLTK 3 Cookbook을 가지고 공부한 것을 포스팅할 계획입니다~영어에다가 e-book이어서 힘들겠지만 열심히 하겠습니다!
아파치 타조(Apache Tajo)는 2010년 고려대학교 컴퓨터학과 데이터베이스 연구실에서 처음 시작되어 2014년 3월에 아파치 재단의 최상위 프로젝트로 승격되었다. 1. Tajo 기능아파치 타조의 기능은 다음과 같다.SQL 표준을 지원한다.성능 향상을 위해 쿼리 전체를 분산처리한다.HDFS를 기본 저장소로 사용하기 때문에 쿼리 실행 결과가 HDFS에 저장된다.Long Time Query에 해당하는 ETL 작업뿐만 아니라 Low Latency도 지원한다.사용자가 직접 함수를 정의할 수 있다.다양한 최적화를 위해 비용 기반 최적화 모델(Cost-based Optimization Model)과 확장 가능한 Rewrite Rule을 제공한다. 2. Tajo Architecture 클라이언트 : 타조는 다양..