イントロダクション
こんにちわ!この記事ではOpenAIが出したGPT-2で日本語の文章を出力してみるシリーズを紹介します。
GPT-2とは
OpenAIのGPT-2は文章を出力する機械学習のアルゴリズムであり、フェイクニュースや人物のなりすましなどが恐れられているほどの文章が生成できるアルゴリズムです。サンプルコードはもう公開されています。しかし、現在は英語の文章にしか対応してません。なので、よくやられていることは単純にその英語の文章をGoogle翻訳することです。
そこでGPT-2を最初から日本語の文章に対応させたら、どんな文章が生成されるのかっというのに興味を持ってこのシリーズを始めました。
段階
####1. ウェブスクレイピング
ウェブスクレイピングとはウェブサイトからテキストデータなどのデータを摘出することです。例えば、このサイトのデータをウェブスクレイピングしようとすればここのテキストデータをすべて.txtのファイルに保存することもできます。GPT-2を作ったOpenAIはRedditというアメリカのほぼ何でも投稿できるサイトで学習させたので、日本語のウェブサイトAmebaとLivedoorっていうサイトからデータをとってみようと思います。
####2. コードを編集
GPT-2は先ほど言ったように英語のみに対応しています。なのでテキストデータを機械が認識できるデータに変える際にも英語のみに対応した文章や単語の区切り方(スペースで区切る、's, 'veなどを区切る)などの工夫がされています。なので日本語では日本語独自の単語の区切り方を使うようにコードを編集しないといけません。
####3. 学習
正直これが一番大変だと思いますが、最後には最初からGPT-2のモデルを日本語のデータで学習させてみます。
####4. テスト
最後には実際にLivedoorとAmebaにブログを1個か2個程度載せてみて実際に人気あるか試してみます。