“파이썬으로 시작하는 한국어 정보 검색과 자연어 처리”와 관련하여 300여 개의 소스 코드(book_src_py_irs.zip)는 패키지 별로 다음과 같이 구성되어 있다.
다운로드: book_src_py_irs.zip
t2bot 자동 색인 시스템 매뉴얼과 다운로드
예제 소스 코드 폴더: py-irs
예제 소스 코드는 이 책에 수록된 소스 코드를 모아 놓은 것이다.
01-04.py 01-05.py 01-06.py 01-07.py 01-08.py
01-09.py 01-10.py 01-11.py 01-12.py 01-13.py
01-14.py 01-15.py 01-16.py 01-17.py 01-18.py
:
text_c_euc-kr.txt text_c_utf-8.txt text__001.txt text__002.txt text__003.txt
tuple_base.py
한글 처리 커널 폴더: hgmorp
한글 처리 커널은 한글 처리와 관련된 기능을 모아 놓은 것으로 토큰과 키워드, 음절과 자모 변환, 키워드 목록과 사전, 한글 텍스트 파일 등을 처리한다. 한글 처리 커널과 관련하여 한 가지 주의할 점이 있다. 이 책은 한국어 인공지능 시리즈 중 하나로, 이 책의 한글 처리 커널은 앞서 출판된 “한국어 인공지능Ⅰ”의 한글 처리 커널과 파일명은 같지만 업그레이드한 것이므로 구별하여 사용해야 한다. 한편 자모 처리기(자모.py)는 본문에서 깊이 있게 다루지 않았지만 옛한글 처리를 비롯하여 한글 처리에서 꼭 필요한 기능이므로 커널에 포함시켜 제공한다.
모듈명 | 주요 기능 |
hgbasic.py | 한글 처리 기초 |
hgchartype.py | 글자 처리 |
hgeng_spell_rule.py | 영어 처리용 |
hgunicode.py | 유니코드 처리 |
hgwordlist.py | 단어 처리 |
자모.py | 자모 처리(옛한글 포함) |
hgsysinc.py | 폴더 경로 조정 |
한글 데이터 과학 커널 폴더: hgdatsci
한글 데이터 과학 커널은 한글 처리를 중심으로 데이터 과학과 관련된 기능을 모아 놓은 것으로 단어 빈도 사전, 단어 및 문장 유사도 알고리즘, 트라이 알고리즘, 검색어 추천 알고리즘, n-gram과 철자 교정 알고리즘, 두벌식 오토마타와 한/영 변환 알고리즘, 통계와 협업 필터링, 영화 데이터와 영화 추천 알고리즘 등을 처리한다.
모듈명 | 주요 기능 | 커널 및 상태 |
hgcrawl.py | 웹 페이지 처리 | 커널 |
hgdict.py | 사전 처리 | 커널 |
hgdict_low.py | 사전 처리 일부 | 커널 |
hgdistance.py | 유사도(거리) 알고리즘 | 커널 |
hgfind.py | 탐색 및 트라이 알고리즘 | 커널 |
hgfind_ngram_test.py | n-gram 테스트용 | – |
hgfind_test.py | 탐색 테스트용 | – |
hgkbd.py | 두벌식 오토마타(키보드 처리) | 커널 |
hgkbd_test.py | 두벌식 오토마타 테스트용 | – |
hgstat.py | 통계 처리 | 커널 |
hgstat_test.py | 통계 테스트 | – |
hgstat_test_data.py | 통계 테스트 데이터 | – |
hgstat_test_kagmov.py | 캐글 영화 데이터 처리 | – |
hgstat_test_movie.py | 영화 데이터 처리 | 영화 추천 커널 |
hgstat_test_movielens.py | 무비렌즈 영화 데이터 처리 | – |
hgstat_test_print.py | 영화 처리 | – |
hgsysinc.py | 폴더 경로 조정 | – |
hgtest.py | 테스트용(텍스트 파일) | – |
hgtest_ext_kbs.py | 테스트용(kbs 뉴스 텍스트) | – |
hgtext.py | 샘플 텍스트 | – |
hgtrie_inter.py | 예제용 트라이 알고리즘 | – |
hgtrie_wordlist.py | 예제용 트라이 알고리즘 | – |
hgworddistance.py | 단어 거리 알고리즘 | 커널 |
hgwordfile.py | 텍스트 파일과 키워드 처리 | 커널 |
그래프 처리 폴더: hggraph
그래프 처리는 통계와 관련된 부분을 설명하기 위해 모아 놓은 것으로 선, 막대, 산포도 등을 출력하고 파일로 저장할 수 있다.
모듈명 | 주요 기능 |
hggraph.py | 선, 막대, 산포도 출력 |
hgsysinc.py | 폴더 경로 조정 |
외부 데이터 폴더: ext-src, testtext
예제에서 사용한 데이터 중에서 미국 대통령 취임사와 구텐베르크 프로젝트는 부록에 있는 모듈을 실행하면 지정된 폴더에 데이터를 다운로드한다. 이를 제외한 나머지 데이터는 저작권 보호를 위해 경로명만 제공하므로 해당 사이트에서 직접 다운로드하여 경로명에 맞게 실행해야 한다.
- , 위키문헌(wikisource): https://en.wikisource.org/wiki/Category:U.S._Presidential_Inaugural_Addresses
- 프로젝트 구텐베르그(Project Gutenberg): http://www.gutenberg.org/ebooks/45
- 뉴스9: https://news.kbs.co.kr/
- (MovieLens Dataset), 미네소타 대학 GroupLens 연구소: https://grouplens.org/datasets/movielens/
- , 캐글(Kaggle): https://www.kaggle.com/rounakbanik/the-movies-dataset