나의 큰 O는 log x야

고정 헤더 영역

글 제목

메뉴 레이어

나의 큰 O는 log x야

메뉴 리스트

  • 홈
  • Tag
  • Guestbook
  • Admin
  • 분류 전체보기
    • 적분史
    • 프로그래밍
      • PG어
      • 테크닉
      • 3D
      • Multi precision
      • 포니게임개발
      • 스페샬
      • NLP
    • 소리
    • 언어
      • 어원 이야기
      • 라틴어
    • 수업노트
      • 한국고대경제와사회
      • 영어구조론
      • 정보검색론
      • 인간의삶과역사속의미생물
      • 기타
    • 잉여
      • 미래
      • 수학
      • 종교개혁
    • 그냥 공부
    • 가짜 정보 정정합니다.

검색 레이어

나의 큰 O는 log x야

검색 영역

컨텐츠 검색

python

  • [Python] 호환용 한자를 통합 한자로 변환하기

    2018.10.28 by ∫2tdt=t²+c

  • [Python] 디리클레 분포 추정하기

    2018.09.03 by ∫2tdt=t²+c

  • [Python3] 손상된 ZIP 압축 파일 복구하기

    2018.06.24 by ∫2tdt=t²+c

  • 동시출현빈도 제대로 계산하기!

    2018.03.04 by ∫2tdt=t²+c

  • [Python] 3변수 상호정보량을 활용한 연어 추출 코드

    2018.01.30 by ∫2tdt=t²+c

  • [Python] TextRank 구현 코드

    2017.04.20 by ∫2tdt=t²+c

  • [Python] 특정 분포가 멱법칙(Power-law Distribution)을 따르는지 확인하기

    2017.04.11 by ∫2tdt=t²+c

  • [Python] 네이버 영화 한줄평 크롤링 코드

    2017.03.17 by ∫2tdt=t²+c

[Python] 호환용 한자를 통합 한자로 변환하기

한때 국내를 평정했던 한국어 문자 인코딩 규격인 KS X 1001에는 정말 많고 많은 문제가 있습니다... 다행히도 유니코드의 등장으로 레거시 시스템을 제외하고는 대부분 문자 인코딩 셋이 유니코드로 대통일되고 있는 상황이지만, 아직도 그 잔재가 끼치는 악영향은 이루 말할 수 없죠.. 대표적인 문제 중 하나는 같은 한자인데 발음이 다르다는 이유로 문자 코드에 중복 배당을 하여, 모양은 같지만 코드 상으로는 다른 글자가 수없이 생겨났다는 겁니다. 이 문제의 자세한 정보에 대해서는 나무위키 문서를 참조하시면 좋을 듯 합니다. 현재 유니코드에는 통합 한자와 호환용 한자라는 두 종류의 한자가 배당되어 있습니다. 통합 한자는 말 그대로 모양이 같은(거의 유사한) 한자들은 같은 코드로 합친 영역을 말하며, 호환용 한..

프로그래밍 2018. 10. 28. 23:10

[Python] 디리클레 분포 추정하기

토픽 모델링 이론들을 공부하다 보니 종종 깁스 샘플링 이후에 디리클레 분포를 추정하는 방법을 사용하는걸 봤었는데, 매번 봐도 잘 이해도 못하고 계속 까먹길래 아예 까먹지 포스팅을 하나 파둡니다. 디리클레 분포(Dirichlet Distribution)은 다항 분포에 대한 분포라는 건 잘 알고 계실 겁니다. 예를 들어 토픽 모델링과 같은 상황에서, 각 주제는 단어들에 대한 다항 확률 분포이므로, 주제의 분포는 다항 분포에 대한 분포, 즉 디리클레 분포가 되죠. 디리클레 분포에서 임의의 다항 (확률) 분포를 뽑아낼 수 있고, 다항 분포에서는 n지선다에서 하나를 뽑아낼 수 있습니다. 이런 유용성 때문에 토픽 모델링에서 디리클레 분포는 널리 쓰입니다. 디리클레 분포는 하이퍼 파라미터를 하나 가집니다. 흔히 α라..

그냥 공부 2018. 9. 3. 17:59

[Python3] 손상된 ZIP 압축 파일 복구하기

며칠 전에 서버에서 작업을 진행하다가 용량 문제 때문에 잘 안 쓰는 대량의 파일들을 zip으로 압축해둔적이 있습니다. 문제는 zip 포맷의 한계로 4GB 이상의 파일을 다룰수가 없다는 문제가 있는걸 모르고 그냥 압축을 진행한 뒤 생성된 압축파일을 검증하지도 않고 그냥 원본 파일들을 다 지워버렸던 거죠. 뒤늦게 알아차리고 zip파일 압축을 해제하려고 했으나 손상된 파일이라며 압축 해제를 계속 실패했습니다... Archive: archive.zip End-of-central-directory signature not found. Either this file is not a zipfile, or it constitutes one disk of a multi-part archive. In the latter ..

프로그래밍 2018. 6. 24. 03:00

동시출현빈도 제대로 계산하기!

동시출현(Co-occurrence)은 두 단어(키워드)가 얼마나 같은 문헌에 자주 등장했는지에 대한 개념으로, 단어 간의 연관관계를 따지는데 가장 기초적이면서도 중추적인 역할을 수행합니다. 기초적이지만 중요한 개념이라고 할 수 있죠.동시출현 빈도를 세는 작업은 의외로 간단합니다. 1. A, B, C2. A, D, C3. B, D, E 문헌 1, 2, 3에 단어 A, B, C, D, E가 다음과 같이 분포한다고 할때 단어 A, C는 문헌 1에도 함께 등장하고, 2에도 함께 등장하므로 동시출현 빈도는 2라고 간단하게 셀 수 있습니다. 따라서 이를 프로그래밍하는 것도 비교적 간단한 편이기에 코딩 연습 문제로 자주 나오는 편이기도 하죠. 어느 정도 코딩을 하신 분이라면 머리속에서 동시출현 빈도를 카운트하는 코드..

프로그래밍 2018. 3. 4. 02:58

[Python] 3변수 상호정보량을 활용한 연어 추출 코드

최근 연어 추출과 관련하여 몇몇 문의가 있었어서 '다변수 정규화 상호정보량과 연어 추출'에서 다뤘던 다변수 상호정보량을 계산하는 파이썬 코드를 공유해드립니다. class PMI3: def __init__(self, **kargs): self.dictCount = {} self.dictTriCount = {} self.nTotal = 0 def train(self, sentenceIter, weight = 1): for sent in sentenceIter: self.nTotal += len(sent) for word in sent: self.dictCount[word] = self.dictCount.get(word, 0) + weight for a, b, c in zip(sent[:-2], sent[1:..

프로그래밍/NLP 2018. 1. 30. 18:55

[Python] TextRank 구현 코드

앞선글(TextRank 기법을 이용한 핵심 어구 추출 및 텍스트 요약) 에서 텍스트 랭크 알고리즘을 소개하면서 직접 실험해보고자 파이썬 코드를 짰었는데요, 정리해서 공유해드립니다. 페이지랭크 계산에 networkx 패키지를 사용하므로, networkx가 설치되어있는지 확인부탁드립니다. * 의존 패키지: networkx import networkx import re class RawSentence: def __init__(self, textIter): if type(textIter) == str: self.textIter = textIter.split('\n') else: self.textIter = textIter self.rgxSplitter = re.compile('([.!?:](?:["\']|(?!..

프로그래밍 2017. 4. 20. 17:13

[Python] 특정 분포가 멱법칙(Power-law Distribution)을 따르는지 확인하기

주변에서 찾아볼 수 있는 많은 분포들은 멱법칙(Power-law)을 따릅니다. 멱법칙을 따르는 경우 상위 몇 %가 전체의 대부분을 차지하고 나머지들이 긴 꼬리(long tail)을 형성하게 됩니다. 이는 빈부 격차와 같은 사회 경제적인 분야뿐만 아니라 음파의 주파수 별 진폭 분포처럼 자연 과학에서도 흔히 발견되는 분포입니다. 사람이 사용하는 언어의 단어 분포(지프의 법칙)나 소셜 네트워크의 중심성 계수 값도 이런 분포를 따릅니다. 따라서 실제 실험을 통해서 얻은 결과가 이 법칙을 따르는지 확인해보는건 재미있으면서도 중요한 일이라고 할 수 있죠. 그래서 해당 분포가 멱법칙을 따르는지 계산해주는 파이썬 코드를 빠르게 짜보았습니다. 멱법칙(거듭제곱 회귀)은 위와 같은 공식으로 나타낼 수 있습니다. 주어진 자료..

프로그래밍 2017. 4. 11. 20:46

[Python] 네이버 영화 한줄평 크롤링 코드

스팀 게임평이 양이 적어서 감성사전을 구축하기 어렵다고 판단하여 네이버 영화 평점을 수집하는 일을 수행했었는데요, 이 역시 수집만 하고 다음 단계로 넘어가지 않았기에 방치해두기 아까운 코드, 공유해드립니다. 앞의 글과 마찬가지로 Python3로 작성되었으며, 실행을 위해서 BeautifulSoup 라이브러리가 필요합니다.import urllib import urllib.request import urllib.parse import bs4 import re import os import time from concurrent.futures import ThreadPoolExecutor def deleteTag(x): return re.sub("]*>", "", x) def getComments(code): ..

프로그래밍 2017. 3. 17. 01:03

추가 정보

인기글

최신글

글쓴이 ∫2tdt=t²+c

블로그 이미지

제가 안 것의 대부분은 인터넷으로부터 왔으니, 다시 인터넷에게 돌려주어야 합니다. bab2min@gmail.com

댓글

태그

정보조직론 Direct3D php 텍스트 마이닝 c++ BigFloat 우리역사바로알기대회 영어구조론 토픽 모델링 pg어 python NLP 한국고대경제와사회 포니게임 문헌정보통계 리듬게임 악보 자연언어처리 kiwi 라틴어

방문자

오늘
어제
전체

페이징

이전
1 2 3
다음
나의 큰 O는 log x야
메일 bab2min@gmail.com
Skin Images are from Stinkehund.

티스토리툴바