예를 들어 A라는 문서와 B라는 문서가 있으면, 이 둘의 매칭 정도를 알아 낼 수 있는 프로그램이나 라이브러리가 필요합니다.
대도록이면 A와 B의 매칭률이 백분율로 나왔으면 하는 바램이 있습니다.
욕심이 좀 과한거 같기는 한데...
혹시라도 이런 방법 아시면 적극 추천을 좀...
미리미리 감사드리고, 즐 퇴근들 하시길 ~~~
아님 텍스트에 나오는 단어를 빈도 카운트 후에 통계적으로 유사도를 구하고 싶으신지? 이 경우 베이지언 메서드같은 현재 스팸메일 검사방법으로 많이 사용되는
툴들에 구현되어 있지요. 통계자료 모으면서, 말로는 인공지능 어쩌구 학습 어쩌구라는 거창한 단어도 쓰기도 한다는...
그외에도 Document Clustering이라는 분야에서 많이들 사용하고, 검색엔진등 만드는 쪽에서도 쓴다는...
글쎄요. 문서의 일치성(내용보다는, 외관상이랄까?) diff같은 것을
글쎄요.
문서의 일치성(내용보다는, 외관상이랄까?) diff같은 것을 원하시는지?
아님 텍스트에 나오는 단어를 빈도 카운트 후에 통계적으로 유사도를 구하고 싶으신지? 이 경우 베이지언 메서드같은 현재 스팸메일 검사방법으로 많이 사용되는
툴들에 구현되어 있지요. 통계자료 모으면서, 말로는 인공지능 어쩌구 학습 어쩌구라는 거창한 단어도 쓰기도 한다는...
그외에도 Document Clustering이라는 분야에서 많이들 사용하고, 검색엔진등 만드는 쪽에서도 쓴다는...
음 그리고, 대충 검색해주는 agrep를 검색해보세요.
음 그리고, 대충 검색해주는 agrep를 검색해보세요.
몇년전쯤에 미국의 한 교수가 학생들이 레포트를 카피해서 내지 않나 하
몇년전쯤에 미국의 한 교수가 학생들이 레포트를 카피해서
내지 않나 하는 의심에 .. 검사 프로그램을 만든적이 있습니다.
특정 단어나열이 n번 이상 일치할 경우의 빈도같은 걸로
했다고 아는데.. 재밌겠네요 만들어 보면
^^ be cool ~
http://fromdj.pe.kr
http://bbs.kldp.org/viewtopic.php?t=5377
http://bbs.kldp.org/viewtopic.php?t=53778
아주 비슷한 문제를 raymundo님께서 질문하셨지요. 혹시나 참고가 되시길.
---
http://coolengineer.com
사실 어떤 비교를 원하시는지에 따라 좀 다른 문제인데..예를 들어
사실 어떤 비교를 원하시는지에 따라 좀 다른 문제인데..
예를 들어 diff는 한 줄 단위로는 exact matching을 하고,
전체 문서에 대해서는 LCS(longest common sequence)로
매칭을 합니다.
LCS가 적절한 점은 인위적인 조작을 찾아내기에 용이한 것 같네요.
직접 구현하셔도 좋겠고, 굳이 존재하는 tool을 이용하신다면,
텍스트의 모든 문자뒤에 '\n'을 삽입하셔서 diff한 후 결과의 행수를
세어보면 되겠네요 ^^
또 다른 예로는 어떤 텍스트(T)와 패턴(P)이 있을 때,
P가 T의 어느 부분에서(즉, 모든 부분에서) 몇 %의 일치도를 보이는지 계산할 수 있는
알고리즘이 있습니다. O(a n log(k)) time이구, a는 알파벳 갯수, n은 T의 길이, k는 P의 길이 입니다.
convolution을 이용하는 알고리즘인데 O(nlog(n))을 달성하기 위해선
할 수 없이 DFT와 inverse DFT를 해야하기 때문에 복잡한 점도 있지만,
현재로선 state of the art라고 하네요 ^^
댓글 달기