2013년 2월 12일 화요일

은전한닢 프로젝트를 소개합니다.

은전한닢 프로젝트는 “검색에서 쓸만한 오픈소스 한국어 형태소 분석기를 만들자!” 라는 생각으로 시작하게 된 프로젝트입니다.

‘검색에서 쓸만한’이란 목표 때문에 다음의 두 가지 항목에 초점을 맞춰 개발을 진행하였습니다.
  • 검색 엔진 색인기에서 쓸 수 있는 적당한 품질과 속도
  • 자유로운 라이센스
현재 이용운, 유영호 두 명의 개발자가 공동으로 개발하고 있으며, 총 세 가지의 프로젝트 목표 중 처음 두 개의 결과물을 사용해보실 수 있습니다.
위의 모든 배포물은 아파치 라이센스 2.0에 따라 사용, 재배포 할 수 있습니다. 보다 자세한 사항은 Apache License 2.0을 참조하시기 바랍니다.

형태소 분석을 위한 말뭉치 학습과 사전 목록 일부는 21세기 세종계획의 성과물을 사용하였으며, MeCab을 사용하게 된 것은 다음의 글과 사이트가 결정적 역할을 하였습니다.
프로젝트에 관한 보다 자세한 사항을 은전한닢 프로젝트 마인드맵에서 보실 수 있습니다. 검색이나 한국어 형태소 분석기에 관심이 많으신 분들은 한번 사용해보시고, 많은 피드백 부탁 드립니다. 제발~!!!

형태소분석기 테스트 해보기 - mecab 자체에서의 형태소 분석과 solr 또는 elasticsearch 에서 어떻게 분석되는지를 간단하게 보실 수 있습니다.

댓글 43개:

  1. 와우, 훌륭한 일 하십니다. 결과도 훌륭하네요.

    답글삭제
  2. 멋집니다. 자랑스러운 프로젝트네요!!

    답글삭제
  3. 좋은 프로젝트 좋은 글 잘 보고 있습니다.
    테스트 페이지 접속이 안되네요? 살려주실 수 있나요?

    답글삭제
    답글
    1. 답변이 늦어서 죄송합니다. 일단 아래의 주소에서 solr의 analysis를 테스트 해보실 수 있습니다.

      http://eunjeon.vps.phps.kr:8983/solr/#/collection1/analysis

      삭제
  4. 안녕하세요 궁금한게 있어서요 보면 루씬하고 solr로 적용 할수있게 하셨는데 혹시 php기반인데 스핑크스는 가능할까요? 아님 루씬 php로 되어있는데 거기에도 동작이 가능할까여? ㅜㅜ

    답글삭제
    답글
    1. 스핑크스 용으로는 따로 작업할 계획이 없습니다. 루씬 PHP는 정확히 무엇을 말씀하시는 것인지 모르겠네요. Lucene에 대한 지식이 있으시다면 Lucene을 사용하는 프로그램에 적용하여 쓰실 수 있으실 것으로 생각됩니다.

      삭제
    2. 답글 감사 드립니다 모바일 앱 개발만 하다가 2주안에 검색앤젠을 해야해서 ㅠㅠ 지금 맨붕이네여 ㅎㅎ

      삭제
    3. 빠른 개발을 해야하시면 Solr를 사용하시는 것을 추천드립니다.

      http://codeflow.co.kr/question/722/solr-%EA%B2%80%EC%83%89-%EC%97%94%EC%A7%84-%ED%8A%9C%ED%86%A0%EB%A6%AC%EC%96%BC/

      http://dev-b.blogspot.kr/2012/10/apache-solr-3-enterprise-search-server.html

      위의 URL을 참고하시고,

      은전한닢 형태소 분석기의 설치는 아래의 URL을 참조하시기 바랍니다.
      https://github.com/bibreen/mecab-ko-lucene-analyzer

      solr 쿼리식의 작성은 http://eunjeon.blogspot.kr/2013/06/solr-query.html 이 글이 도움이 될 것으로 보입니다. 많은 도움 못드려서 죄송합니다.

      삭제
  5. 작성자가 댓글을 삭제했습니다.

    답글삭제
  6. 안녕하세요 어찌어찌 솔라설치하고 arirang이라는 형태소 분석기를 넣어서 해봤는데
    생각보다 동작이 잘안되더라고요
    그래서 여기 올려놓아주신거로 해보려고하는데요
    윈도우에서 작업중인데 혹시
    $ cp MeCab.jar [solr 디렉터리]/example/lib/ext # JNI 클래스는 System classpath에 위치해야 합니다. Jetty는 기본값으로 $jetty.home/lib/ext에 추가적인 jar를 넣을 수 있습니다.
    $ sudo cp libMeCab.so /usr/local/lib
    이부분이 이해가 가질않아서요 혹시 자세히좀 알수있을까여?

    답글삭제
    답글
    1. 현재 은전한닢 프로젝트는 윈도우를 지원하지 않고 있습니다. 따라서, 은전한닢 프로젝트를 사용하시려면 리눅스나 MacOS를 사용하셔야합니다. libMeCab.so는 linux에서 사용되는 동적 라이브러리 입니다.

      삭제
    2. 위의 문서는 Solr를 Jetty기반으로 운영한다는 전제로 쓰여진 문서입니다. 혹시 리눅스에서 사용해보실 생각은 없으신가요?

      삭제
    3. 아 centos도 상관없는건가여?

      삭제
    4. 네, centos에서 사용가능합니다. 단 버전 6이상을 추천드립니다.

      삭제
    5. 그렇군여 근데 궁금한게 jetty는 솔라안에 기본으로 있는거 아닌가여?
      아님 새로 설치 받아야하는건가여?

      삭제
    6. Solr에 기본으로 있는 것을 사용하시면 됩니다.

      삭제
    7. [solr 디렉터리]/example/lib/ext # JNI 클래스는 System classpath에 위치해야 합니다
      일단 이말이 무슨말인지가 ㅠㅠ 잘모르겠네요 그리고
      $jetty.home/lib/ext 여기가 어딘지

      삭제
    8. Solr 디렉토리에 lib 디렉토리가 있을꺼에요. 거기다 ext 디렉토리 만드시면 됩니다.

      삭제
    9. Solr 디렉토리에 lib 디렉토리가 있을꺼에요. 거기다 ext 디렉토리 만드시면 됩니다.

      삭제
    10. 넵 ㅎㅎ devb에있는 자료 잘보고있습니다 꾸벅 ㅎㅎ

      삭제
    11. 작성자가 댓글을 삭제했습니다.

      삭제
  7. 안녕하세요 지금까지 댓글달아주셔서 감사합니다
    보다 보니까 master와 slave가 존재하던데 혹시 마스터에 confFiles 여기에 schema.xml,stopwords.txt,synonyms.txt
    이런것들 등록하고 슬레이브에서 pollInterval 시간 지정해주면 특정 시간마다 색인이 될수있는건가여?

    답글삭제
    답글
    1. 제가 master/slave 기능을 사용해본 적이 없어서 이것에 대해서는 답변을 드릴 수 없겠습니다. 죄송합니다.

      삭제
    2. 아 넵 감사합니다 혹시 사전 외부로 빼서 링크거시는건 아세요?

      삭제
    3. 어떤 사전을 외부로 빼서 링크를 건다는 것인지, 질문의 뜻이 정확히 파악이 안됩니다.

      삭제
    4. 답변 감사합니다 사전문제는 해결햇는데요 궁금한게요
      사전 다운받아서 보니까
      미국,100000000X
      영국,100000000X
      프랑스,100000000X
      이렇게 되어있던데요 아무리 봐도 ㅠㅠ 이건 도무지 이해가 안가네요 ㅠㅠ

      삭제
    5. 뭔가 착각이 있으신거 같은데, mecab-ko-dic의 사전은 설명해주신 것 처럼 생기지 않았습니다.
      다음의 URL에서 은전한닢 프로젝트의 사전 모양을 보실 수 있습니다.

      https://bitbucket.org/bibreen/mecab-ko-dic/src/c728edeed25961bbd12abcd3d2964be035371543/seed/CoinedWord.csv?at=master

      삭제
    6. 넵 ㅎㅎ 감사합니다 귀찮게 해드려서죄송해유

      삭제
    7. 혹시 사전이 추가 되거나 하면 서버를 재부팅하는거 말곤 없는건가여?

      삭제
    8. 현재 제가 아는 바로는 그 방법밖에 없는 것으로 알고 있습니다.

      삭제
  8. 작성자가 댓글을 삭제했습니다.

    답글삭제
  9. 안녕하세요. 형태소사전이 가지는 열별 데이터의 의미는 어떻게 되나요 ?

    답글삭제
    답글
    1. https://docs.google.com/spreadsheet/ccc?key=0ApcJghR6UMXxdEdURGY2YzIwb3dSZ290RFpSaUkzZ0E&usp=drive_web#gid=2

      위 URL에서 사전 형식 시트에 설명되어 있습니다. 감사합니다.

      삭제
  10. 안녕하세요. 동의어들도 어떤 체계를 가지고 분석되는 것인지 질문 드립니다.

    답글삭제
    답글
    1. 안녕하세요. 은전한닢에서는 따로 동의어(유의어)처리를 하고 있지 않습니다.

      질문은 https://groups.google.com/forum/#!forum/eunjeon 여기로 주시면 감사하겠습니다~

      삭제
    2. 동의어는 synonym 필터를 만드시고, seunjeon analyzer 설정에 "filter" 에 추가해주셔야해요~~~ 저 그렇게 쓰고 있어요

      삭제
  11. 유용하게 잘 쓰겠습니다. 고맙습니다.

    답글삭제
  12. 작성자가 댓글을 삭제했습니다.

    답글삭제
  13. 은전한닢은 무슨 뜻인가요??

    답글삭제