전체 글 (18) 썸네일형 리스트형 6-2. 자연어분석(베이즈정리) 1. 베이즈 정리 베이즈 정리란 확률에 관한 정의로 P(B|A) = P(A|B) * P(B) / P(A) 이다. 풀어 쓰자면 A가 발생한 후 B발생 확률 = B가 발생 후 A발생 확률 * B 발생확률 / A발생 확률 이라는 의미이다. 이 베이즈정리를 이용해서 A라는 사건이 B에 속하는지. 즉 지도학습을 구현할 수 있다. 나이브베이즈분류란 텍스트 내부에서 단어 출현 비율을 조사하여 이 텍스트를 어떤 카테고리로 분류할지 판단하는 것이다. 이 때 단어의 출현율은 단어의 출현횟수 / 카테고리 전체 단어 수 로 판단한다. import math, sys from konlpy.tag import Twitter class BayesianFilter: def __init__(self): self.words = set().. 6-1. 자연어분석(NoMLPy, Gensim) 1. 형태소분석: 문장을 형태소 단위로 분할하고 품사를 판별하는 작업 KoNLPy를 사용하여 문장을 형태소분석을 해보자. KoNLPy란 한국어 형태소 분석 라이브러리로 한나눔, 꼬꼬마, Komoran, MeCab, 트위터 등의 형태소 분석기 사용할 수 있다. KoNLPy를 사용하기 전에 자바, KoNLPy 등을 설치해야한다. #apt-get install g++ openjdk-8-jdk python-dev python3-dev #pip install konlpy from konlpy.tag import Twitter twitter = Twitter() malist = twitter.pos("이건 무슨 소리냨ㅋㅋㅋ?!", norm=True, stem=True) print(malist) 코드에서는 트위터 분.. 문자열 문제 www.acmicpc.net/problem/1157 1157번: 단어 공부 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. www.acmicpc.net S = input().lower() L = [] for i in range(97, 97+26): L.append(S.count(chr(i)))#a갯수, b갯수, c갯수..., z갯수 A = max(L) #각 알파벳 갯수중에 최댓값 if L.count(A) >= 2: #해당 최댓값이 중복인 경우 print("?") else: print(chr(L.index(A) + 97).upper()) www.acmicpc.net/problem/2908 290.. 이전 1 2 3 4 5 6 다음