2016-05-30 7 views
0

機械学習用に自然なテキストファイルが必要です。この目的のためにはWikipediaのダンプが最適です。だから、どのようにXMLタグ(コンテンツだけ)なしでいくつかの言語(non-eng)でいくつかのgbのテキストをダウンロードできますか?wikiパーツを1つのtxtファイルにダウンロードするには

答えて

0

フェーズ:

ゴーdumps.wikimedia.orgします。あなたの要求に合ったダンプを探しましょう。機械学習では、あなたの言語の「すべてのページ、最新バージョンのみ」のダンプをダウンロードするのが最善の方法です。ダウンロードして解凍します。

相B:ダンプとして

は、コンテンツのウィキ・マークアップ構文を持つXMLファイルである - それは、プレーンテキストに変換する必要があります。私が見つけた最良の解決策は、このツールキット(https://github.com/yohasebe/wp2txt)を使用することです。それは多くの記憶を必要とせず、うまく動作します。

相C:

wp2txtは、10メガバイトのtxtファイルの数百を生成しますので、我々はそれらを連結する必要があります。窓のいずれかの

cat * > all.txt 
nixシステムで

または

cat dump.txt | sed 's/\W/ /g' 

を使用してください。

P.S.また、私はMLケースのためのより良い準法的解決法を見つけました。解決策は、いくつかの巨大なtxt-literatureライブラリをダウンロードすることです。素晴らしい学習を!

+0

誰かがそれをやったことがあれば、それをどこかにアップロードすれば素晴らしいだろう、多くの人に役に立つかもしれない。 – bits

1

dumps.wikimedia.orgから任意のウィキペディアのすべてのコンテンツのダンプを取得できます。おそらく*wiki-20160501-pages-articles.xmlファイルのいずれかが必要です。その後、あなたはxmlstarletなどのツールを使用してダンプからすべてのXMLタグを取り除くことができます:

xml sel -t -c "//text()" fywiki-20160501-pages-articles.xml > articles.txt 

しかし、Wikipediaのダンプ内のテキストはwikiのマークアップではなく、自然な文章になります。これはあなたのきれいなコーパスを与えるものではありません(例えば、wikimarkupキーワードやHTMLエンティティは、まだあなたのダンプファイルになります)が、それは十分に近いかもしれ

cat dump.txt | sed 's/\W/ /g' 

:あなたはsedのようなもので、英数字ではないすべてのものを取り除きますあなたの目的のために。

+0

Xmlstarletはあまりにも多くのメモリを必要とします。私はそれを試したたびにメモリ不足の例外が発生しました。代わりにwp2txtを使用してください。 – tmt

関連する問題