チラシの裏的な何かネット関係とかアニメとか。久しぶりのブログ更新です。今回はタイトル通りですが、自分のメモという面が大きいです。見にくいかもしれませんが、参考になれば幸いです。今回は人口知能を作ってみます。マルコフ連鎖なので無能と言われればそこまでですが、AIですAI。そもそも、マルコフ連鎖とは何か。いう話なのですが、多くの他のブログさん同様、あまり理解できていませんが、こういう事だそうです。property)とは、次の状態が過去の状態に依存せず現在の状態のみによって決まる性質のことである。byニコニコ大百科Wikipediaさんや個人ブログさんでも良かったのですが、前者はもう何言ってるのか分からない、後者はなかなか簡単に説明しているのが無かったため、大百科さんにしました。簡単に言っちゃうとユーザーが送信したメッセージに最適な返答を確率で求めよう!...だと思っています(間違っていたらどなたかコメントにお願いします(;'∀'))さて、実際にやってみよう!なのですが、やろうとしたことは先人が大体やっているこの世の中。調べたら多数のサイトが出てきました。参考になったサイトを紹介しようと思います。TensorFlowで会話AIを作ってみた。こちらのサイト(というかプレゼン)はまずは概念理解にお勧めです。「AI?何それ?機械が学習するの?」って方はまずこれを読んで概念理解から初めて頂けると分かりやすいと思います。他のサイトとかはこんな感じです。作り方」とかでググってネサフすれば出てくると思います)取り敢えずはこれぐらいにしておきます。次にコードで参考になった記事です。等々....何十サイトと見ました。それぞれのサイトの執筆者さん、ありがとうございます。上記のサイトでもコーディング能力がある方は十分できるかと思いますが、如何せん私は初心者。簡単にしてあるサイトの方がいいと思い、ネサフを続けます。....そして、結局このサイトさんに書いてある内容を使わせて頂くことに。ai-coordinator.jpこちらのサイトさんが直感的に理解できましたので採用。SlackBotですので、適宜Discord用に変換しないといけません。コードを読んでいくと、どうやらマルコフ連鎖のコード部分は最後のSlackbotに返事させる部分以外は丸ごと使えるみたいでしたので、ほぼ全部(一部変えた部分もあった記憶ですが)利用させて頂きます。ちなみにその時SlackBotについては全く知りませんでしたのでちょっと調べました。閲覧させて頂いたサイト様のリンクを載せときますので参考になれば幸いです。Pythonを使ったSlackBotの作成方法PythonのslackbotライブラリでSlackボットを作る又、janomeという形態素解析を使用しているという事なのでjanomeについても調べました。(ja)(タイトルは英語ですが、タイトルにも書いてあるように中身は日本語です)そして、肝心のDiscord部分の実装です。上記サイト様のコードを利用させてもらいつつ、適宜Discord用に改変していきます。フォルダ構成は以下の通りです。#ここにソースコードを書きます。#自動生成されますので、最初は無いですこれだけです。Slackbotは結構多くのフォルダ分けが必要みたいですが、DiscordBotなのでソースコード1個とデータ保存用のjsonファイルだけですみます。Slackbot部分を適宜Discordに適応させていく作業に入ります。....ここで、今更ですが、環境を書きます。Pythonコードを書くためのソフトです。なくても良いですが、滅茶苦茶使いやすいですのでもしよければ是非。インストールしていないのならこれだけはインストールお願いします。janomeもpipでインストールしておいてください。」で調べたら出てくると思います)そこまで出来たら、次はDiscordbot側の登録に移ります。Discordbot作ったことのない方は以下の記事が参考になりますので、以下の記事を参考にしてbot登録を行ってください。作成が終わったら、コードを書いていきましょう。先程のサイトにあったマルコフ連鎖のコードをそのまま持ってきてください。message.reply(res)以下の様に変えます。コード最上部に記述してください・'token'の部分はご自身のDiscordトークンに変えてください。これでマルコフ連鎖での会話が可能なdiscordbotが出来ました。ない量の会話練習が必要ですが、複数人で数日に渡って教育を積めばそれっぽい会話をしてくれる気はします。質問などあればコメント欄や私のdiscordのDMへ送っていただければわかる範囲でお答えします~(分からなかったら申し訳ございません(;'∀'))追記:ソースコード全文をGithubに公開しました。皆さんおはこんばんにちは。短期間のうちに投稿しました。SPRTSの買い方...皆さんどうも、おはこんにちばんは。いつものようにSysnetです...2018-01-13Sprouts+公式発表の翻訳(超訳などもありますので仮訳です)みなさんどうもこんにちは。自己紹介は省かせて頂きます。»プロフィールid:Sysnetネット関係を書いていけたらと思ってます。)はてなブログをはじめよう!Sysnetさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。