NLTKを使用していくつかの古典的なテキストを分析していますが、文章でテキストをトークン化するのに問題があります。例えば、ここで私はMoby Dickからスニペットのために得るものです:NLTK文トークナイザを調整する方法
はimport nltk
sent_tokenize = nltk.data.load('tokenizers/punkt/english.pickle')
'''
(Chapter 16)
A clam for supper? a cold clam; is THAT what you mean, Mrs. Hussey?" says I, "but
that's a rather cold and clammy reception in the winter time, ain't it, Mrs. Hussey?"
'''
sample = 'A clam for supper? a cold clam; is THAT what you mean, Mrs. Hussey?" says I, "but that\'s a rather cold and clammy reception in the winter time, ain\'t it, Mrs. Hussey?"'
print "\n-----\n".join(sent_tokenize.tokenize(sample))
'''
OUTPUT
"A clam for supper?
-----
a cold clam; is THAT what you mean, Mrs.
-----
Hussey?
-----
" says I, "but that\'s a rather cold and clammy reception in the winter time, ain\'t it, Mrs.
-----
Hussey?
-----
"
'''
私はメルヴィルの構文は少し日付であることを考えると、ここで完璧を期待していませんが、NLTKは、末端に二重引用符を処理することができるはずです「Mrs.」のようなタイトルしかし、トークナイザは、教師なしのトレーニングアルゴの結果であるため、どのようにそれを操作するのか把握することはできません。
誰かが良いsentence tokenizerのための推薦を持っていますか?私は、自分のパーサを訓練するよりも、簡単にヒューリスティックで、ハックすることができます。
ああ、よく知っておいてください。不思議なことに、私の質問であなたの解決策を通して完全な文を実行すると、これは機能しません。どんな考え? –
答えにもう少し詳しい情報を追加しました。 – vpekar
私は一般的に「感謝」のコメントを避けていますが、ここには本当にあります。ありがとう! – Private