このまま大量にテキストを学習させていくだけですと、あまり面白くもないので、チャットボットを作って、その反応にマルコフ連鎖でテキスト生成を行わせたいと思います。
まずは簡単なChatbotを作成してみる
Chatbotを作ったことがないので、まずは簡単なものを作ってみたいと思います。
まずは名前を返すだけのchatbotです。
name = input("Hello, what is your name? ") print(“こんにちは” + name + “さん”)
次は選択肢を増やして、言葉を変えるchatbotです。
greet = input(“元気ですか? ") if “うん” in greet: print(“最高ですね”) else: print(“あらら”)
これだけですと、「元気です」でも「あらら」と返ってくるので、リストにしてみます。
res = ["うん", "はい", "元気です"] greet = input("元気ですか? ") if greet in res: print("最高ですね") else: print("あらら")
これをつなげると、一応chatbotになります。
name = input("お名前はなんですか?") print("こんにちは" + name + "さん") res = ["うん", "はい", "元気です"] greet = input("元気ですか? ") if greet in res: print("最高ですね") else: print("あらら") print("じゃあ、バイバイ")
お名前はなんですか?山田 こんにちは山田さん 元気ですか? うん 最高ですね じゃあ、バイバイ
こんな感じで作ったChatbotの返答の部分をマルコフ連鎖で作成してみたいと思います。
とりあえず今日はこんなところです。
今日の結果
今日のAKBの呟きは40件でした。 kh corderですが、どうやら読み込める量がありまして50行くらいが限度のような気がします。 とりあえずの画像はできました。
'ない': 4, '可愛い': 4, 'すごい': 4, '嬉しい': 4, '楽しい': 3, '暑い': 1, 'たのしい': 1, '良い': 1, '少ない': 1, 'いい': 1, '弱い': 1, '強い': 1, '小さい': 1, 'はやい': 1}) '日': 7, 'こと': 6, '笑': 5, 'ちゃん': 5, 'ない': 4, '可愛い': 4, 'すごい': 4, '嬉しい': 4, '私': 4, '幸せ': 4, '明日': 4, '今日': 4, '夏': 4 'する': 29, 'てる': 10, '日': 7, 'れる': 7, 'こと': 6, '笑': 5, 'ちゃん': 5, 'みる': 5, 'くる': 5, 'ない': 4, '可愛い': 4, 'すごい': 4, '嬉しい': 4, '私': 4, '幸せ': 4, '明日': 4, '今日': 4, '夏': 4, '人': 4, 'ファン': 4, '皆さん': 4, 'ゆう': 4, '撮る': 4, 'く': 4, 'くださる': 4,