본문 바로가기

[Python] 이항분포 그래프 그리기 ##################### 이항분포 B(n, p) ##################### import sysfrom functools import lru_cacheimport mathimport numpy as npimport matplotlib.pyplot as plt @lru_cache(None)def ncr(n, r): '''조합. 재귀식을 이용함. n이 커지면 스택오버플로우 발생. ''' if r in (0, n): return 1 return ncr(n-1, r) + ncr(n-1, r-1) def bidist(n, p): '''이항분포 ''' q = 1-p dist = np.array([ ncr(n, k)*(p**k)*(q**(n-k)) for k in range(n+1)]) re..
[Python] pandas read_csv issue regarding non-ascii filename (textanal3664) D:\Users\daewon\Downloads\crime>python ana.pyTraceback (most recent call last): File "ana.py", line 5, in df = pd.read_csv('2000년.csv', encoding='euc-kr') File "D:\PythonEnvs\textanal3664\lib\site-packages\pandas\io\parsers.py", line 678, in parser_f return _read(filepath_or_buffer, kwds) File "D:\PythonEnvs\textanal3664\lib\site-packages\pandas\io\parsers.py", line 440, in _read ..
[Win32] CharLowerA(utf8str) 은 문제가 생길 수 있다. utf-8 인코딩된 한글 문자열에 대해서 CharLowerA 를 적용하면, 문자가 깨질 수 있다. char utf8str[200];WCHAR s1[200] = L"제공호";WCHAR s2[200]; // s1 을 utf8 인코딩으로 변환하여 utf8str 을 채운다. (WideCharToMultiByte 등을 사용.) CharLowerA(utf8str); // utf8str 중에서 알파벳만 모두 소문자로 바꾸려 한다. // 변경된 utf8str 을 unicode 로 변환하여, s2 에 저장한다. (MultiByteToWideChar 등을 사용.) cmp = wcscmp(CharLowerW(s1), s2); 위 코드에서 두가지 경로로 문자를 소문자화하여 비교한다.1. s1 -> utf8로 인코딩 -> Ch..
fasttext, word2vec, pretrained word vector 평가 인터넷에서 찾을 수 있는 한국어 fasttext 와 word2vec 의 pretrained vector 들이 얼마나 쓸만한 것인지 궁금했다. gensim KeyedVecor 에는 accuracy, evaluate_word_analogies 메소드로 그 성능을 측정해 볼 수 있다.측정을 위한 아날로기 데이터는 영문의 경우에는 gensim 패키지에 들어 있지만, 한국어는 패키지에 포함되어 있지 않고, https://github.com/SungjoonPark/KoreanWordVectors 에서 받을 수 있다. github fasttext 에 있는 fasttext wiki pretrained model, github kyubyong 에 있는 word2vec 과 fasttext pretrained model 로..
[gensim|fasttext] KeyError: 'all ngrames for word absent from model' gensim 의 FastText 모델을 이용하여, pretrained 된 fasttext word vector 를 이용해 보려 했다. github.com/Kyubyong 의 pretrained model 을 다운받아서, fasttext word vector 를 구하려고 해봤다. fasttext 는 word2vec 과는 달리 train 시에 없었던 단어에 대한 word vector 도 구해준다고 알고 있었기 때문에, 단어가 아닌 단어로 테스트를 해 보았다. 그런데, 에러가 발생했다. 아래를 보자. from gensim.models import FastTextmodel = FastText.load_fasttext_format('kyubyong_pretrained/fasttext/ko.bin')model.wv..
[SPACY] windows 에 spacy 설치 윈도우의 바닐라 파이썬 pip 명령으로 spacy 를 설치하려 하면, 윈도우용 바이너리가 제공되지 않고, 소스만 제공되기 때문에, 컴파일러가 없으면 설치가 되지 않는다. 두가지 방법이 있다. 파이썬 설치에 익숙한 사람들에게는 별스러운 이야기는 아니지만, spacy 예제를 찾아보면, ubuntu 환경에서 실행한 예만 나와서 윈도우 환경에선 불가능할 거라고 생각했었는데, 의외로 간단하게 설치가 되어서 포스팅을 작성. 방법1. 아나콘다( anaconda ) 배포판을 이용하여 설치.바닐라 파이썬이 아니라 아나콘다를 설치하여 아나콘다 가상환경을 만들어 설치하면 간편하게 설치된다.가상환경을 생성하고,conda create -n envspacytest생성한 가상환경을 활성화하고,activate envspacytest..
[QUORA|번역] word2vec 과 fasttext의 가장 큰 차이점은 무엇인가? https://www.quora.com/What-is-the-main-difference-between-word2vec-and-fastText word2vec 과 fasttext의 가장 중요한 차이점은 다음과 같다. word2vec은 각 단어를 (쪼개질 수 없는) 원자적 단위로 취급해서, vector 를 만든다. 이점에서 word2vec 과 glove는 동일하다. fasttext 는 본질적으로 word2vec 모델을 확장한 것이지만, 단어를 문자(character)의 ngram 조합으로 취급한다. 그래서, 한 단어에 대한 벡터는 이들 ngram 의 합으로 만들어진다. 예를 들자면, "apple" 이란 단어의 벡터는 "", "ppl", "ppple", "pple>", "ple", "ple>", "le>" ..
[따릉이] 따릉이앱 18년 6월 업데이트 이후 지도에 물방울 표시/대여소 표시가 되지 않는다. 한줄요약 : 앱업데이트후 지도가 버벅거리고 대여소표시가 나오지 않는다면, 앱을 삭제했다가 다시 깔아보라. 2018년 6월 서울시 공공자전거 따릉이 모바일앱이 업데이트 되었다. 내 안드로이드(넥서스5X)에 깔렸던 따릉이앱도 며칠 전 업데이트 되어 있었다. 기존보다 디자인에 신경을 쓴 모양새고, 가장 큰 변화로는 첫화면이 따릉이 대여소를 표시하는 지도가 나오게 바뀌어 있었다. 그런데 그 지도부분이 영 버벅거리고, (지도위치를 옮기면 주변 지도를 표시하는데 시간이 엄청걸림) 결정적으로 대여소와 대여소의 자전거 대수를 나타내는 물방울 아이콘이 아무리 기다려도 표시되지 않았다. 며칠동안 따릉이앱을 켜보면서 지도가 잘 동작하는지 확인했지만, 계속 버벅거리는 상태였다. 아직도 안정화가 안 됐나 참 한심하네라고 생각하..