学習元データとなるWikipediaデータの下処理(ファイル操作と記事タイトル抽出)
Python勉強スタートから約10日が経過。
『みんなのPython』をもとに基礎学習と並行して、Wikipediaのダンプデータの下処理に挑戦。
ダウンロードしたダンプデータはすでにwikiextractorを利用して最低限の整形が行われている。テキストファイルで2ギガほどあり、記事タイトルを確認するだけでも大変なので、タイトルから必要なデータと不必要なデータを分別する。
各項目の一行目は"doc id","URL","TITLE"という風にならんでいるので”doc id”と"TITLE"だけを抽出して簡単な目録にする。
コードを貼り付ける方法をあとで調べる。
引用だとインデントが崩れてしまう。
1,134,133項目のタイトルを抽出できた。コードを書いてる時間と実際の処理実行にかかる時間の落差に愕然とするが、手作業で行った場合、途方もない時間が掛かることは間違いなく、これで数百倍の生産性アップであることは間違いない。プログラミングの力、すごい!
Wikipediaの記事の利用方法についてだが、
- 人物紹介のみを学習させ、架空のキャラクター紹介を自動生成。
- あらすじのみを学習させ、架空のあらすじを自動生成。
というようなことをまずは試すつもりである。
歴史上の人物や小説、アニメなどの人物をどういう振り分けにするかなどはまだ考えていないが、フィクションに寄せていく方がよいのではないかと考えている。
自動生成してみた系の事例を読んでみると、自然な文法に則していないまま生成された文章で、現実に即したワードや話題について読まされると、いまひとつ弾けきれない印象を受ける。
文体としてはめちゃめちゃなのは構わないが、選択されたワードや話題がよく見知っているだけに読み手の想像力を制限する気がするのだ。自動生成による得体の知れない文体で、先入観に染まっていない架空の人物や出来事について読んでみたいのである。