スタンフォード NLP ツールを使用して日付 (8/11/2012) フォーム テキストを抽出しようとしています。
ここにリンクがあります!このツールのデモについて
日付を識別するために分類子をトレーニングする方法を教えてください (8/11/2012)。
トレーニングデータを次のように使用してみました
Woodhouse PERS 2012 年 8 月 18 日
しかし、同じテストデータでは機能しません。
スタンフォード NLP ツールを使用して日付 (8/11/2012) フォーム テキストを抽出しようとしています。
ここにリンクがあります!このツールのデモについて
日付を識別するために分類子をトレーニングする方法を教えてください (8/11/2012)。
トレーニングデータを次のように使用してみました
Woodhouse PERS 2012 年 8 月 18 日
しかし、同じテストデータでは機能しません。
テキストから日付を抽出するために NLP ツールを使用することは、これだけを達成しようとしている場合、やり過ぎのように思えます。単純な Java 正規表現 (例: here ) などの他のオプションを検討する必要があります。
スタンフォード NLP ツールの機能をさらに必要とする場合は、SUTimeアノテーターを参照してください。彼らのデモページでは、それがどのように動作するかを感じることができます. オプションを確認するRead rules from file
と、日付に注釈が付けられることがわかります。
使用法:
SUTime annotations are provided automatically with the StanfordCoreNLP pipeline by including the ner annotator.
日付と時刻を認識できるように、CRF ベースの NER を確実にトレーニングできます。提供されたenglish.muc.7class.distim.crf.ser.gzモデルを実行すると、その例を見ることができます。NER システムのトレーニングについては、FAQを参照してください。ただし、時刻/日付認識の主なツールは正規表現ベースの SUTime になっていることに注意してください。他のアプリケーション用に SUTime のルールを作成することもできます。SUTime ページと、そのページのTokensRegex へのリンクを参照してください。
sutime/english.sutime.txt の 319 行目には、米国のタグ付けのパターンがいくつかあります。
{ 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/ }
必要な順序にするために、いくつかのルールタイプを追加するだけです