見出し画像

ChatGPT先生でプログラミング : ワードクラウドでその人の発言をざっくり掴む

AI にプログラムを作ってもらう時代はもう来ていた

私は IT業界に身を置いていますが、SE・開発者ではありません。技術要素は理解していても、プログラムを書くことはほとんどない(新人時代に COBOL をやったけど)。

そんな自分もデータ分析は自力でやりたいので、Python というプログラム言語を使えるようになりたいと願っている。Python の教本を買ったけど、プログラムが書けるようになった訳ではない(教則本も、「買うだけ」では楽器を演奏できるようにはならない)。初心者にはサンプルプログラムと自分がやりたいこととのギャップを埋める能力がない。なかなか使い物にならない。

が、ChatGPT の登場で事態は変わった。そう、ChatGPT にプログラムを書いてもらえばいいんだ!

現時点で全くの素人がプログラムを自由に扱えるところまでは来ていない。しかし、プログラム骨子提案、要望に応じた機能追加、エラーが出た際の修正・最適化は問題なくできる。特に対人と違って、初歩的な内容でもしっかり・優しく・とにかくじっくり付き合ってくれるのがいい

ChatGPT を英語学習に使っている人も多いみたいですが、個人学習系には本当に役にたつと思います(ここらへんは勉強会やイベントの時に話しましょう)。

データ分析の初歩・ワードクラウドを生成するプログラムを書いてもらう

AI 相手でも丁寧にお願いするポリシー

素直にこのように頼めばいい。サンプルテキストを渡すだけでプログラムを書いてくれる。「私はプログラムの初心者です」と表明すれば説明も丁寧にしてくれる。

from wordcloud import WordCloud
import matplotlib.pyplot as plt

def generate_wordcloud(text, save_path):
    # ワードクラウドの設定
    wc = WordCloud(background_color='white', max_words=200, width=800, height=400)
    
    # テキストからワードクラウドを生成
    wc.generate(text)
    
    # 表示
    plt.figure(figsize=(10, 5))
    plt.imshow(wc, interpolation='bilinear')
    plt.axis('off')
    
    # 画像として保存
    plt.savefig(save_path)
    print(f"ワードクラウドを {save_path} に保存しました。")
    
    # 画像を表示
    plt.show()

# テキストの例
text = "ここにはテキストを入力してください"
save_path = "/mnt/data/wordcloud.png"

generate_wordcloud(text, save_path)

出力されるのは Python プログラムだが、形態素解析ライブラリ(と辞書)、ワードクラウドを描写する wordcloud の導入が必要。個別にインストールするのだが、そこで躓いても ChatGPT 先生に聞けば教えてくれる。

もちろん最初のコードは機能も処理も不足しているし、うまく動作しない。しかし、「形態素解析には MeCab を使いたい」「名詞と動詞と形容詞を優先したい」「1文字の単語は除きたい」「一般的な用語は覗きたい」など、リクエストをすればどんどんプログラムを修正してくれる。

↓こんな感じでやりとりが進みます。

プログラムが動かなくてもじっくりデバッグに付き合ってくれる(というか、デバックのためにプログラムを何度も修正してくれる)。

去り際も爽やかな ChatGPT GPT-4 & Code Interpreter

プログラムは一応、完成。システムの環境構築や使用するフォントのパス記載、生成する画像の大きさ、ストップワードの記載以外は全部 ChatGPT に書いてもらった。

試しに岸田さんの所信表明演説を分析してみる

技術開発のプレスリリースを解析するために作った(作ってもらった)プログラムだが、試しに、岸田首相の所信表明演説を分析してみた。

演説全文から、基本的な名詞・動詞・形容詞だけ抽出し、1文字の言葉、「れる」「なり」「ます」などの意味が薄い言葉を除外している。

岸田首相の所信表明演説

うーん。対応・進め・強化、ですか。私が実施する中小企業の管理職研修で「指示が適切な指示や報告を多なう上では使ってはいけないワード」がトップに並びます(笑)。

もちろん、演説は国民に分かりやすく政策を説明することが目的であり、指示・報告ではないにせよ、力強いキーワードが頻発するものの具体性に欠けるところが気になります。言葉は多く、勢いはあるけどよく分からない、彼の人柄・発言が滲み出ているワードクラウドになりました。

歴代首相はどうだろう

「なるほどな」と思いつつ、歴代の首相はどんな感じになるんだろう?と思い、やってみました。

菅首相(第二百三回国会における菅内閣総理大臣所信表明演説)

菅首相(第二百三回国会における菅内閣総理大臣所信表明演説)

令和 2年 10月の所信表明演説から。新型コロナウィルス、経済、地方、あたりがが大きくなっていて、細かい文字では菅首相が進めた施策が分かる内容になっている。非常に厳しい社会環境だったこともあり、早急などの言葉と一緒に皆さん・皆様・全力・決意など、呼びかける言葉やコミットを示す言葉が多いですね。

安倍首相(第百八十三回国会における所信表明演説)

安倍首相(第百八十三回国会における所信表明演説)

平成 25年 1月の演説。経済再生・成長・外交安全保障とこれも分かりやすい。特に危機管理や外交、それに国家というワードが入っているのが安倍首相らしい。経済再生・経済成長はぜひとも達成して欲しかったけど。

全部に入っている「まいり」は除いてもよかったかも。

小泉首相(第153回国会における小泉総理大臣所信表明演説)

小泉首相(第153回国会における小泉総理大臣所信表明演説)

最後に国民に分かりやすく呼びかけたといえば小泉首相。構造改革・雇用強化・経済などが並ぶ結果に。構造改革といいう分かりやすくキャッチーなフレーズと国民・我が国・改革・できる・実現など、力強いワードが並びます。改革・強化・推進・進め、勢いのあるスピーチです。

こうやって並べてみると、施策の面では安倍さんの経済成長(実現しなかった)、菅さんの細かくもバランスのとれた政策というのが光る結果に。それぞれの個性も分かりやすく、分析としても面白いものになりました。

アンケートやお客様の声の分析に

一般的にワードクラウドは概略をおおまかに把握することと、論点や課題を抽出するために使います。

ワードクラウドでトレンドを掴み、対策を行い、その結果をまた分析するという一連のプロセスが大切です。よって、時系列での比較というのが大切。上記の首相所信表明演説についても、時系列で比べるとより現在の論点・立ち位置が明確になると思います。

ちなみに、上記の分析を行うのに必要なコストはハードウェアやネットワークを除けば、ChatGPT の月額 20ドルの費用だけ。中小企業でも簡単に導入できますよ!

この記事が気に入ったらサポートをしてみませんか?