White Whale Studio

[SQL Server Business Intelligence Development Studio] 용어 추출 본문

IT Engineering/Intelligent Information

[SQL Server Business Intelligence Development Studio] 용어 추출

glorymind 2012. 7. 3. 16:48
반응형

Configure and Manage Word Breakers and Stemmers for Search 라는 MS의 문서 한장으로 시작한 작업이다.. 아주 정신적으로 고된 작업이었씀.. 별것 아닌데도..ㅠㅠ

 

SQL Server Business Intelligence Development Studio는 MS 사의 작품인데, MS-SQL 2008을 설치하면 부가적으로 사용할 수 있는 프로그램이다.

 

잘 사용할 일은 없는데, 주로 마이닝이나 분석을 목적으로 사용하게 된다.

다양한 이용 방법이 있겠지만, 이번 포스팅에는 용어 추출에 대해서 살펴보자.

(사실 이것밖에 모른다..-_-)

본인의 기억력을 의심하기 때문에 나 스스로 다시봐도 쉽게 알 수 있게 포스팅 하겠다.

본의 아니게 한국어판 Studio를 사용하는데, 이쪽 계열 분들은 아이콘이랑 대충 번역해서 충분히 하실 수 있을 것으로 예상하고 번역은 따로 하지 않겠다.

 

1. 우선 SQL Server Business Intelligence Development Studio를 실행해서 새로운 프로젝트를 만들어 보자.

 

 

Integeration Services 프로젝트를 선택하자. 이름은 아무거나 해도 된다. 입력한 후 확인을 클릭!

 

2. 프로젝트를 생성하고 나면 디자인 화면에서 제어흐름, 데이터 흐름, 이벤트 처리기, 패키지 탐색기로 구성된 탭이 나오는데 우선 제어 흐름 탭을 선택하고 왼쪽(설치 상황에 따라 오른쪽일 수도 있음)에 위치한 도구 상자에서 데이터 흐름 태스크 아이콘을 선택해서 끌어 옮기자. 영어로는 Data Flow Task 정도겠지.

 

 

3. 다음으로 제어 흐름 탭 옆에있는 데이터 흐름 탭을 눌러 또 다시 도구상자에서 플랫 파일 원본을 찾아 화면으로 옮겨 보자.

 

 

플랫 파일 원본을 가져다 놓으면 찝찝하게 오른쪽에 x 표시가 뜬다...... 그러나 걱정은 마시라.

다음으로 할 작업은 아래에 위치한 연결 관리자 부분에서 오른쪽을 클릭해서 '새 플랫 파일 연결'을 클릭해보자.

 

 

 

만들고 나면 아래와 같이 플랫 파일 연결 관리자 편집기가 팝업 된다. 아래와 유사하게 입력해보자.

 

여기서 중요한 것은 파일을 경로에 맞게 연결해주고 Locale을 영어로 코드 페이지를 65001(UTF-8)로 설정해줘야한다는 것이다. 한국어 버젼도 시도를 해봤지만 잘 안되는 듯하다.

 

왼쪽 일반 탭에서 입력을 마쳤다면 왼쪽의 고급 탭을 눌러 오른쪽의 DataType을 변경하자.

문자열[DT_STR] -> 유니코드 문자열[DT-WSTR]로 변경해야한다.

용어 추출 유닛이 작업할 수 있는 문자열형이 [DT-WSTR]으로 한정되기 때문이다.

또 하나 유의해야 할 점은 OutputColumnWidth의 수치이다. 텍스트 파일을 예로 들자면 50자 이상이 되버리면 데이터가 잘려버려서 에러 메시지를 발생시키므로 좀더 큰 숫자를 넣거나 원본 텍스트 파일을 엔터를 먹여서 50자 이상이 되지 않게 구성해두면 무리없이 진행된다.

바꾸고 난 후 확인을 누르면 아까 연결 관리자 탭에 내가 만들 플랫 파일 유닛이 생성된 것을 확인 할  수 있을 것이다.

 

 

자, 이제 메인 화면에 있는 플랫 파일 원본과 연결 관리자에 있는 유닛을 연결할 차례이다. 매우 간편하다.

플랫 파일 원본에서 오른쪽을 클릭해서 연결해주면 된다. 처음 연결할 때는 거의 자동으로 해주는데, 필요에 따라 설정을 해주면 된다.

 

확인을 누르면 연결이 완료된다.

 

4. 이제 용어 추출 아이콘을 메인화면으로 옮기고 연결할 차례이다.

플랫 파일 원본에 마우스를 가까이 해보면 녹색 화살표와 적색 화살표가 나타나는데 그 중에서 녹색 화살표를 선택해서 드래그하여 용어 추출 아이콘에 연결시킨다.

여전히 용어 추출 아이콘에 X 표가 불안하게 표시될 것이다. 설정이 필요하다.

더블클릭을 해보면 아래와 같이 용어 추출 변환 편집기가 나타나는데 용어 추출 탭에서 나타나는 사용 가능한 입력 테이블 빈칸에 체크 해주자.

대충 감을 잡겠지만 아래쪽의 용어, 점수 부분에는 자신의 원하는 속성명을 지정해주면 된다.

 

고급 탭에 가보면 용어추출시에 세부 설정을 할 수 있다. 용어 유형, 점수 유형, 매개 변수를 통해서

원본 문서에 맞게 추출시 설정을 할 수 있다.

 

다 확인 한 뒤 확인을 누르자.

 

지금까지 진행한 후 화면은 다음과 같다.

 

오른쪽에 삼각형 느낌표가 뜨는 이유는 오류가 발생할 여지가 있기 때문에 데이터 출력 유닛과 에러 출력 유닛이 필요하다는 것이다. 당연히 녹색 화살표가 데이터 출력을 담당하고 에러 출력은 적색 화살표가 담당한다.

음... 이 두 가지 출력 유닛은 플랫 파일이 될 수도 있고 DB가 될 수 도 있겠지만, 사용자의 의도에 따라 달라질 테니... 일단은 플랫 파일 원본으로 진행한다.

 

5. 결과물의 경우에는 도구 상자에서 아이콘을 꺼내오는데 분류에서 데이터 흐름 원본이 아닌 데이터 흐름 대상 에서 가져와야 한다.

 

플랫 파일 같은 경우는 위에서 보는 것처럼 가장 아래에 있다. 가져와서 화면에 배치한다. 2개를..

배치하고 난 뒤 연결 관리자에서 오른쪽 클릭을 해서 3번에서 플랫파일 연결한 것과 같은 순서로 실제 파일과 연결해주자. (당연히 파일은 따로 만들어야 한다. 본인 같은 경우는 결과는 Results.txt, 에러 결과는 error.txt로 생성해서 C 드라이브 밑에 위치시켰다.)

아이콘과 실제 파일을 연결했다면 녹색 화살표와 적색 화살표를 각각 연결해주자.

 

다 완성이 되면 위와 같은 형태가 된다.

 

이제 실행을 시켜보자.

 

가장 위에 메뉴바에 있는 녹색 화살표를 눌러 실행한다.

 

제대로 작성이 되었다면 위의 그림과 같이 아이콘들이 녹색으로 변하면서 작업에 사용된 행들이 표시된다.

결과는 C 드라이브 밑에 두었으니 이제 Results.txt 파일을  열어 확인해보자.

 

아차... 에러가 발생했다면 우측 하단에 있는 출력 탭을 확인해보자. 여기서 에러 정보또한 확인 할 수 있으니 참고하면 된다.

주로 열이 잘렸다는 경우가 대부분이었는데, 이런 경우 위에서 설명했듯이 width를 변경하거나 엔터를 먹여주면 된다.

 

원본 파일과 결과 파일도 첨부하겠음.

 

Mytext.txt // 원본 파일

 

Results.txt.txt// 결과 파일

 

information,3
health,3
exercise,2
attention,2
system,2
health management,2

결과 파일은 위와 같은데 단어와 오른쪽의 빈도수로 구성이 된다. TFIDF로 설정해두면 점수가 출력되므로 참조하자.

 

이로써 용어 추출 작업이 끝났다. 이번에는 Text 파일을 사용해서 단순하게 해보았지만, 도구 상자에 있는 OLE DB나  Excel, XML 등을 이용해서 다양한 원본 소스를 분석해서 용어 추출을 수행하고 결과물을 DB나 엑셀로 출력할 수 있는 응용이 가능하니 나름 괜찮은 방법인 듯하다.

 

전공은 컴퓨터 공학 계열이기는 한데 지능정보 계열 전공이 메인이 아니라 형태소 분석이나 용어 추출에 대해서는 지식이 많이 부족합니다. 다만 해당 포스팅에서는 SQL Server Business Intelligence Development Studio를 사용해서 용어 추출이나 TF-IDF 계산이 가능하다는 것만 알려드리고자 했습니다.

혹여나 궁금한 점이 있으신 분은 댓글로 남겨주세용..

 

반응형

'IT Engineering > Intelligent Information' 카테고리의 다른 글

Porter Stemming Algorithm  (0) 2012.11.20
Comments