나의 큰 O는 log x야

고정 헤더 영역

글 제목

메뉴 레이어

나의 큰 O는 log x야

메뉴 리스트

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

검색 레이어

나의 큰 O는 log x야

검색 영역

컨텐츠 검색

프로그래밍

  • [Tensorflow] 문자 인식용 신경망 Python3 코드

    2018.11.14 by ∫2tdt=t²+c

  • [Python] 임의의 웹 페이지에서 텍스트를 추출하기

    2018.11.04 by ∫2tdt=t²+c

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

    2018.10.28 by ∫2tdt=t²+c

  • [C++] 템플릿 함수를 이용해 STL 컨테이너를 직렬화해보자

    2018.10.05 by ∫2tdt=t²+c

  • AdaGram : 동음이의어를 구분하는 Word2Vec

    2018.09.23 by ∫2tdt=t²+c

  • Word2Vec을 이용한 한국어 관련어 네트워크 보기

    2018.09.17 by ∫2tdt=t²+c

  • [c++] 템플릿 메타 프로그래밍으로 르장드르 다항식 계산하기

    2018.07.08 by ∫2tdt=t²+c

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

    2018.06.24 by ∫2tdt=t²+c

[Tensorflow] 문자 인식용 신경망 Python3 코드

고문헌의 textualis로 쓰인 글자를 인식하기 위해서 사용한 신경망입니다. https://medium.com/@akashg/character-recognition-using-tensorflow-a93dbbdf4af 코드를 참고하여 작성하였구요, tensorflow와 scikit-learn이 설치되어 있어야 작동합니다. 신경망의 구조는 다음과 같습니다. INPUT (크기: nImgSize * nImgSize) ↓ activation: sigmoid LAYER1 (크기: layer1) ↓ activation: sigmoid LAYER2 (크기: layer2) ↓ activation: softmaxOUTPUT (크기: nClasses) 고문헌 라틴어를 인식하는 작업에 imgSize = 32, layer1 ..

프로그래밍/NLP 2018. 11. 14. 18:28

[Python] 임의의 웹 페이지에서 텍스트를 추출하기

텍스트 마이닝을 하는 데에 있어 텍스트 데이터를 수집하는것은 아주 중요합니다. 아무리 휘황찬란한 텍스트 분석 기술이 있어도 분석할 텍스트가 없다면 쓸모가 없으니깐요. 과거였다면 대량의 텍스트 데이터를 구하는게 어려운 작업이었겠지만, 현재는 다행히도 웹으로부터 (정제되지는 않았지만) 수많은 텍스트를 구할 수 있습니다. 웹 페이지에서 텍스트를 추출하는 작업은 의외로 간단합니다. 웹 페이지들은 HTML이라는 마크업 랭귀지로 구성되어 있고, 여기에서 필요한 텍스트만을 뽑아오는건 HTML 파서나 정규표현식 등을 이용해 쉽게 이뤄질 수 있기 때문입니다. 다만 문제는 우리가 보는 웹 페이지에는 실제 알맹이보다 다양한 껍데기들이 많다는 것입니다. 위 사진은 한 신문사의 기사 페이지입니다. 이 페이지의 알맹이는 기사 내..

프로그래밍 2018. 11. 4. 15:34

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

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

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

[C++] 템플릿 함수를 이용해 STL 컨테이너를 직렬화해보자

프로그래밍을 하다보면 클래스나 구조체의 내용물을 그대로 파일에 저장하거나, 파일로부터 읽어와야 할 경우가 생깁니다. 구조가 있는 객체의 내용물을 바이트 배열로 저장하는 것을 직렬화(Serialization)이라고 하고, 반대로 바이트 배열로부터 내용물을 읽어와 객체에 채우는 것을 역직렬화(Deserialization)라고 합니다.Java나 C#과 같은 여러 언어에서는 직렬화 기능을 언어차원의 라이브러리로 지원해주는 경우가 많습니다. 따라서 클래스나 구조체의 내용물을 저장하는데에 어려움을 겪지 않죠. 하지만... 당연하게도 C++에서는 언어 자체적으로 그런 기능을 지원하진 않습니다. 직렬화가 하고싶으시다면 직접 짜시면 됩니다. (어떻게 보면 그게 C++의 매력이라고 할수도 있겠죠...?) 사실 이런 꼭 필..

프로그래밍/테크닉 2018. 10. 5. 18:10

AdaGram : 동음이의어를 구분하는 Word2Vec

2013년 등장한 Word2Vec은 강력한 단어 임베딩 기법입니다. 의미적으로 유사한 단어를 벡터 공간 상에 가까운 위치에 배치시키도록 학습하는 신경망을 이용해서 성공적으로 단어를 임베딩시켰습니다. 유사한 단어가 유사한 위치에 배치된다는 특징 덕분에 여러 자연언어처리 기법에서 이미 널리 쓰이고 있는데요, 사실 이 기법에는 한가지 약점이 있습니다. 오직 단어의 형태로만 단어를 구분하기 때문에 형태가 같아도 의미가 전혀 다른 단어를 구분해내지 못한다는 것입니다. 예를 들어 한국어 단어 '밤'을 생각해봅시다. 해 진 이후의 시간대를 뜻하는 '밤'과 견과류의 일종인 '밤'이 같은 형태로 적히기 때문에 Word2Vec은 학습과정에서 두 단어를 동일한 단어로 간주하고 처리합니다. 실제로 두 단어는 다른 단어인데 말..

프로그래밍/NLP 2018. 9. 23. 03:38

Word2Vec을 이용한 한국어 관련어 네트워크 보기

Word2Vec이 단어 간의 의미론적인 관계를 잘 잡아준다는 것은 이미 널리 알려진 사실이지요. 신기해서 작년에 실제로 실험도 돌려보았었구요 (https://bab2min.tistory.com/545), 당시에는 세종 말뭉치의 데이터만 가지고 Word2Vec을 학습했었는데, 꽤나 그럴싸한 결과가 나와서 놀랐던게 기억에 남네요. 한동안 잊고 지냈었는데, 최근 Kiwi 0.5 버전을 준비하면서 코퍼스에서 사전에 등록되지 않은 단어를 발견하는 기법에 대해서 알게 되었고, 이가 적용된 Kiwi 0.5버전을 이용해 실제로 나무위키의 수 몇 백만건의 문헌을 형태소 분석을 진행하여 약 20여만건의 단어를 추출해보았습니다. 하는 김에 이 단어들을 가지고 Word2Vec을 돌려보았는데요(gensim 라이브러리를 사용했고..

프로그래밍/NLP 2018. 9. 17. 17:28

[c++] 템플릿 메타 프로그래밍으로 르장드르 다항식 계산하기

르장드르 다항식은 [-1, 1] 구간에서 직교(orthogonality)하는 다항식들의 집합을 가리킵니다. 다항식들간에 서로 직교하면서, 간단하게 곱셈과 덧셈만으로 계산이 가능하다는 특징 덕분에 물리학이나 공학 등의 분야에서 특정 상태를 근사하여 풀 때 직교 기저로 자주 사용합니다. 저 역시도 최근 연구에서 임의의 모양을 띈 다차원 공간의 함수를 근사하기 위해서 이 다항식을 사용했는데요, 이를 위해서 르장드르 다항식을 구현하여 L-BFGS 함수식에 넣어 그 값을 계산해야 할 일이 있었습니다.이 다항식은 재귀적 방법이나 조합식을 이용하여 쉽게 계산될 수 있지만, 이를 매번 함수 값을 구할때마다 반복할 수 없으므로 컴파일 타임에 처리하고자 템플릿 메타 프로그래밍(template meta programming..

프로그래밍/테크닉 2018. 7. 8. 18:26

[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

추가 정보

인기글

최신글

글쓴이 ∫2tdt=t²+c

블로그 이미지

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

댓글

태그

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

방문자

오늘
어제
전체

페이징

이전
1 2 3 4 5 6 7 8 ··· 28
다음
나의 큰 O는 log x야
메일 bab2min@gmail.com
Skin Images are from Stinkehund.

티스토리툴바