ブログのテキストを利用してちょっとした実験を行いました。
12月に書いた記事中、私がよく使う語句を抜き出します。それをChatGPT渡して作文をさせたらどんな文章が出てくるか?そんな実験です。
はじめに:12月のブログを振り返るシリーズものです
過去の記事を振り返りながら、ChatGPTやPythonの使い方、ディープラーニングや形態要素解析などを学んでいく内容となっております。
一つ前の記事は、文章の中にある単語の頻度を調べて、ワードクラウドというものを作成しました。バレバレだと思いますが、タイトルにテキストマイニングと書きながら他のWebサービスのテキストマイニング(文書解析)を使用したので、肝心のテキストマイニング工程を外注した形でした。徐々に自前で解析ができるようにできればと思います。
プログラミング未経験者が大きなことを言えるのもChatGPTのおかげです。まずは、形態要素解析というものを使って単語の出現回数を調べます。その後その語句を使ってChatGPTに作文をしてもらいました。
自分の文章の単語の出現回数を調べる
日本語のテキストを単語に分解し、各単語の出現回数をカウントするためには、日本語の形態素解析という技術を使用するそうです。
プログラミング言語Pythonでは「janome」がそのような目的でよく使用されるライブラリの中で一番簡単に使えるとのこと。ChatGPTに言われるがままことを進めていきます。
形態素解析 ってなんですか?
形態素解析にはいくつかのライブラリがあるようですが、ChatGPTのおすすめに従ってjanomeを使うことにしました。
ライブラリ | 特徴 | 使いやすさ | カスタマイズ性 |
---|---|---|---|
Janome | Pythonで書かれており、インストールや使用が簡単。日本語テキストの基本的な分析に適している。 | 非常に使いやすい | 低 |
MeCab | 高速で正確、広く使われている。セットアップが少し複雑。形態素解析の精度が非常に高い。 | やや複雑 | 高 |
Kuromoji | Javaで書かれており、Javaプロジェクトに組み込みやすい。多機能で柔軟性がある。 | Javaユーザーには使いやすい | 高 |
Sudachi | 分かち書きと形態素解析の精度が高い。ビジネス用途に最適化されている。 | 普通 | 中 |
いろいろ技術がある中で、一つ一つブログ等を見ていくと途方もなく時間がかかります。AIがこのようにわかりやすい表を作成してくれるので、とりあえずやってみることのハードルが下がったように思います。
Python+janomeで単語の出現数を書き出した結果
janomeライブラリを使用して、敬体要素解析のファイルを書き出しました。下記画像が結果の一部です。25行分の結果しかありませんが、吐き出された単語は2,500行に及びます。4万弱の文字数の文章が、2,500語で表されているわけです。
アウトプット結果を見ると、「こと」「の」「よう」を一番使っていました。また数字や「てにおは」などの助詞が多く含まれています。
- こと:動詞を名詞化するときに使う
- の:助詞、主に名詞を修飾するときに使う
- よう:形容詞や動詞について、比喩や類似適用法に使う
後日改めて名詞のみを抽出するように作り替える予定です。
私がよく使う語句で、ChatGPTによる作文をお願いする
ファイルの上の方から100行分を抜き出して1000字程度の文章を作成してください
生成された文章
春の日差しの中、大阪の川沿いに位置するカフェで、iPhoneを手にした若いライターがブログの記事を書いていました。彼女は最近、AIと音声入力の進化について深く考えており、その思いを文章にしたためていました。「このように技術が進歩する中で、私たちの生活はどのように変わっていくのでしょうか?」彼女は考えながら、カフェの窓から外の景色を眺めていました。
彼女の目の前では、人々が日常を楽しんでいる光景が広がっていました。子供たちは公園で遊んでおり、その親たちは写真を撮っている様子が見えました。昔ならば、これらの写真は現像され、アルバムに収められるのが一般的でした。しかし今では、スマートフォンで一瞬にして撮影し、デジタル化された写真はクラウドに保存され、いつでもどこでも見返すことができます。
彼女はブログに向かって、この変化について書き始めました。「私たちの生活は、テクノロジーによって大きく便利になりました。しかし、その一方で、プライバシーの問題やデジタル依存症など、新たな課題も生まれています。」
彼女の言葉は、画面上のテキストに変換され、ブログの記事として形を成し始めました。彼女は、技術の進歩と人間の生活の間のバランスを見つけることの重要性について熱心に語っていました。記事を通じて、彼女は読者に、テクノロジーと共に歩む未来の可能性と、その中で私たちが直面するであろう課題について考える機会を提供していました。
一方、彼女自身も、このデジタル時代における人間の役割や、テクノロジーとの健全な関係の構築について深く考え始めていました。彼女のブログは、単なる情報提供を超え、読者に新たな視点を提供し、深い思考を促すものとなっていきました。
夜が訪れ、カフェは閉店の時間を迎えました。彼女は記事を完成させ、満足そうにパソコンの画面を閉じました。彼女の記事は、デジタル時代を生きる私たち一人一人に、テクノロジーとの向き合い方を問いかけるものであり、多くの人々に影響を与え続けることでしょう。
この文章は、ファイルの上部から抽出した100行の内容を元に創作されたものです。
結果
特に指定はしていませんが、小説調になりました。
内容的には「音声入力」「iPhone」「大阪」「写真」「ブログ」が使用されましたが、「グランド」は36位「ラグビー」も47位にあるものの採用されなかったようです。
ChatGPTへのプロンプトを工夫することで、さまざまな変化が起こるのでしょう。
まとめ
素人がPythonの形態素解析を、とりあえずやってみました。なんとなく出来ました。ChatGPTのおかげ、といつも言っていますが、実は先人の知見を学習した集合知のおかげですね。