C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[15129] Re:한글로 쓰여있건만 이해가 안갈때...쩝
강재호.만해 [greenuri] 4202 읽음    2008-09-25 22:35
검색 엔진 쪽에서 일 하고 있는 만해입니다. ^^ ㅋ

Markov Model에 대한 설명을 드리고 싶어서 답변 달기를 눌렀는데..

누르는 순간 깨달은 사실..

앗 나도 모르지.. 쩝.

다만 업무가 약간 관련이 있는 관계도 대략 뭐라는것만 알고 있어서 이거라도 알려 드릴려고 합니다 ^^

제가 맡은 업무는 한글 형태소 분석기란 부분이고요

이 묘듈에서는 HMM(Hidden Markov Model)이란 알고리즘을 이용합니다.

쉽게 얘기 하면

"알뜰하다 " 이 단어를 해석 할때

알뜰 + -하- + - 다.   (명사 + 접미사 + 어말어미)

알뜰하- + -다.          (형용사 + 어말어미)

라는 두가지 경우의 수가 나옵니다.

이 단어는 간단한 수준이고요

나는 하늘을 나는 비행기를 보았다.
->
나는    : 나 + 는
하늘을 :하늘+을
나는 : 날다 + 는
비행기를 : 비행기 + 를
봤다 : 보다 + 았 + 다

저 문장으로 봤을때 "나는" 이라는 단어가 두번 나올때 한번은

주격명사 "나" + 조사 "는" 
날다"동사" + 조사 "는"

이거 두개를 컴퓨터는 구분을 못합니다.

저것을 구분하기 위해서 이전 상태와의 연관성을 파악해서 다음 상태를 결정 하는 방법론 중 하나입니다.

요즘 대부분의 형태소 분석기는 HMM이고.

최신 기술로는 CRF(Conditional Random Field)라는 기법이 쓰이고 있으며,

Chunking Using Conditional Random Fields in Korean Texts. 라는 포항 공대에서 나온 논문이 있습니다.

저 논문을 보면 뭔가 힌트가 좀 있나 싶어서 봤더니 별거 없더군요.. 제길..

개념적인 부분은 "Conditional Random Fields : An Introduction"이라는 제목의 논문을 참고 하시기 바랍니다.

30일날 PPT 발표가 잡혀 있어서 회사에서 PPT 작성중에 한번 들러 봤습니다. ^^

내일도 오프 참가가 힘들것 같네요.. T_T


크레브 님이 쓰신 글 :
: 한글로 되 있는 설명이 이해가 안갈때
: 보통 두가지를 생각합니다.
:
: 1. 설명이 잘못됐거나
: 2. 내 머리가 나쁘거나.. 흑~
:
: "프로그래밍 수련법"이란 책을 보다가 보면
: 마르코프 체인 알고리즘이라고 설명이 나오던데 뭔소리 하는건지 왜 이렇게 이해가 안갈까요?
: 알고리즘에 자신있는 분이 알기쉽게 설명 좀 해주시죠~
:
: 도대체 이 알고리즘은 무엇을 하기  위한 걸까~ 쩝
:
:
:
: 
: The Markov Chain Algorithm (마르코프 체인 알고리즘)
: 
: 이 알고리즘은 입력되는 데이터를 중복되는 문구의 연속이라 가정하고, 각 문구를 두 부분으로 나누는데 한 부분은 둘 이상의 전위단어(prefix)이고 또 한 부분은 이들 뒤에 따라오는 하나의 후위단어(suffix)이다. 마르코프 체인 알고리즘은 이미 존재하는 텍스트를 처리하여 저장하고, 이 정보에 따라 전위단어 뒤에 오는 후위단어를임의로 선택하여 새로운 텍스트를 생성한다.
: 
: 설명을 위해 다음을 보자.
: 
: Show your flowcharts and conceal your tables and I will be mystified. Show your tables and your flowcharts will be obvious.(end)
: 
: 전위 단어를 두 개로 제한하면 그들 뒤를 따라오는 후위단어들로 이루어진 쌍으로 만들 수 있다.
: 
: Input prefix :           Suffix words that follow:
: Show your              flowcharts   tables
: your flowcharts       and   will  
: flowcharts and        conceal  
: flowcharts will         be
: your tables             and   and
: will be                     mystified.   obvious.
: be mystified.           Show
: be obvious.            (end)
: 
: 위의 테이블을 보면서 마르코프 체인 알고리즘을 살펴보면, 우선 "Show your"을 출력하며 시작한다. 그리고 나서 이들의 후위단어인 "flowcharts"나 "tables"를 선택할 것이다. 전자를 선택하면 전위단어는 "your flowcharts"가 되고 다음 후위단어를 찾는다. 이런 식으로 충분한 문장이 생성되거나 끝 표시가 들어올 때까지 반복한다. 전위단어의 수를 많게 하면 많게 할수록 생성되는 문장은 원문에 가까워진다. 또한 너무 적게 하면 뜻을 지닌 글을 만들기 어렵게 된다.
: 
: 
: ---------------------> 요기까지는 인터넷에서 찾음 , 책내용과 비슷함
: 
: ----------->  여기서부터는 책에서 발췌: 
: 원본 글의 첫 두단어를 w1과 w2로 잡는다.
: w1 과 w2를 출력한다.
: 반복문 :
:     글에서 접두사 w1, w2 를 따라 나오는 단어들 가운데에서 임의로 w3을 선택한다.
:    w3을 출력한다.
:    w1과 w2를 w2와w3으로 바꾼다.
:    반복한다.
: 
: 
크레브 [kkol]   2008-09-25 23:33 X
검색쪽이라 ....
코딩보다는 알고리즘 공부하는게 더 많겠네요~
알기쉽게 설명해 주셔서 잘봤습니다.
뭐를 하려는 놈인지는 이제 알겠네요..
아직 어떻게 하는지를 모르겠지만~ ^^
강재호.만해 [greenuri]   2008-09-26 00:49 X
추가적으로 얘기 하자면 형태소 분석을 하는 이유는 색인을 위해서입니다.
우리가 찾는 검색어는 거의 대부분 명사인경우가 많죠.
웹 페이지에서 명사를 뽑아내서 이 페이지에는 이런 이런 명사가 있다라는 기록을하고
그 기록을 바탕으로 검색의 과정중 일부가 이루어집니다 ^^

+ -

관련 글 리스트
15128 한글로 쓰여있건만 이해가 안갈때...쩝 크레브 4440 2008/09/25
15129     Re:한글로 쓰여있건만 이해가 안갈때...쩝 강재호.만해 4202 2008/09/25
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.