2012-11-13 5 views
3

스탠포드 NLP 도구를 사용하여 날짜를 추출하려고합니다 (2012 년 8 월 11 일) 양식 텍스트.텍스트에서 날짜 추출

여기에 a link입니다! 이 도구의 데모 용

분류자를 훈련시켜 날짜를 식별하는 방법을 알려줄 수 있습니까 (2012/08/11).

나는

우드 하우스 PERS로 2012년 8월 18일 날짜 , O 잘 생긴 O

을 훈련 데이터를 사용하여 시도했지만 같은 테스트 데이터 작동하지 않습니다.

답변

6

텍스트에서 날짜를 추출하는 데 NLP 도구를 사용하면이 모든 작업을 수행하려는 경우 잔인한 것으로 보입니다. 간단한 자바 정규 표현식 (예 : here)과 같은 다른 옵션을 고려해야합니다.

Stanford NLP 도구의 추가 기능이 필요한 작업을 수행하려면 SUTime 주석자를 살펴보십시오. 그들의 demo page은 어떻게 동작하는지 느낄 수있게 해줍니다. Read rules from file 옵션을 선택하면 날짜가 주석으로 표시됩니다.

사용법 :

SUTime annotations are provided automatically with the StanfordCoreNLP pipeline by including the ner annotator. 
2

당신은 확실히 날짜와 시간을 인식하는 CRF 기반 NER을 훈련 할 수 있습니다. 제공된 english.muc.7class.distsim.crf.ser.gz 모델을 실행하여 그 예를 볼 수 있습니다. NER 시스템 교육에 대해서는 the FAQ을 참조하십시오. 그러나 시간/날짜 인식을위한 기본 도구는 정규식 기반입니다 : SUTime. 다른 응용 프로그램의 SUTime에 대한 규칙을 작성할 수도 있습니다. 해당 페이지에서 SUTime page과 TokensRegex에 대한 링크를 참조하십시오. sutime/english.sutime.txt 라인 (319)에

0

, 태그 미국에 대한 몇 가지 패턴이 있습니다 :

{ ruleType: "time", pattern: /yyyy-?MM-?dd-?'T'HH(:?mm(:?ss([.,]S{1,3})?)?)?(Z)?/ } 
{ ruleType: "time", pattern: /yyyy-MM-dd/ } 
{ ruleType: "time", pattern: /'T'HH(:?mm(:?ss(.,)?)?)?(Z)?/ } 
// Tokenizer "sometimes adds extra slash 
{ ruleType: "time", pattern: /yyyy\?/MM\?/dd/ } 
{ ruleType: "time", pattern: /MM?\?/dd?\?/(yyyy|yy)/ } 
{ ruleType: "time", pattern: /MM?-dd?-(yyyy|yy)/ } 
{ ruleType: "time", pattern: /HH?:mm(:ss)?/ } 
{ ruleType: "time", pattern: /yyyy-MM/ } 

그냥에게 필요한 순서를 얻기 위해 몇 ruleTypes를 추가 할 필요가

관련 문제