すなぶろスマートフォン用の表示で見るすなぶろPythonistaを目指しているつもりが、Hyのおかげで無事脱線。Clojurian目指すことになりました。この広告は、90日以上更新していないブログに表示しています。Clojure大切なことを言い忘れていました。いう名前のチャットボットです。したブームになった頃、そのトンチンカンな返事を揶揄して『人工知能』ならぬ『人工無能』と呼ばれていました。なり、雲母(うんも・きらら)という宝石の名前にかかっています。年に刊行された古い本ですが、思考エンジンをひとつひとつ追加して完成に近づけていく感覚が楽しく、新しい言語を学ぶときはいつもこれを実装することにしています。著者の方が急逝されたのが残念でなりませんが、現在は電子書籍として復刊されているので、この記事でチャットボットに興味を持った方はぜひ手にとってみてください。Kindle版この商品を含むブログを見るというわけで今回は『辞書』および『ランダムレスポンス』を実装していきます。:random次回は辞書の学習だよランダム辞書を作るチャットボットである以上、会話の中で成長してほしいものです。ある日突然自我に目覚め、人類を支配しようとしたり、あるいは歩み寄ったりしてほしい。ロマンがてんこ盛りです。無から何かを学習するプログラムを作るのは現代技術では不可能だと思われますので、まずは人間の力を貸してあげましょう。辞書の形式はこんな感じです。円ひろった」「チョコ食べたい」という3つの文字列が入ったベクタです。この中からランダムにひとつ選択して返すことで、少なくとも前回よりは一歩進んだチャットボットに進化するはずです。「要素の集まり」を表現するデータ型がいくつかありますが、そのうち代表的なものが『リスト』と『ベクタ』です。いう疑問が閉じ括弧のように湧き出てきます。いう新型エイリアンなんだよ!!とのことです(個人の感想が多く含まれています)。入門者としては「ベクタを使えばいいらしい」で思考を停止させておかないと遠い世界に旅立ちそうなので、調べるのはやめます。:random辞書を用意したところで、それを使ってくれなければ困ります。"チョコ食べたい"何度か評価してみると、その都度返り値が違うのがわかると思います。実装はほとんど終わっています。書き換えて関数にしてしまいましょう。包み込んで関数本体にすることができます。系言語を触るならぜひとも覚えておきたい機能ですね。式を書いてきた情報弱者です。ごめんなさいめっちゃ便利でした......知らなくてすみません......。オブジェクトを返しますが、この関数が返すのは文字列のみ。例外を投げてしまうので、プログラムがそこで終了してしまいます。"ランダム辞書が空です。設定するようにしました。詰め込んだほうが楽になりそう」という思いつきでこういう実装にしただけで、特に深い意味はないです。みたいなことは考えました。動作テストをしてみましょう。"ランダム辞書が空です。自分で実装しておきながらこの仕様に慣れません。今後巨大になるであろう辞書がまるごと関数を行ったり来たりするのは果たして健康的なのかどうかはさておき、意図した通りに動いてくれています。怪しい部分は未来の自分がリファクタリングしてくれるでしょう。次回は辞書の学習だよ学習も書こうかと思いましたが、もう疲れたので次回に持ち越しすることにします。わかってはいるんですが、コードだけで全てを語れるほど男らしくもなれませんので、このペースでだらだら続けていきます。記事に掲載するにあたって過去のコードを読み返すたびに「なんというクソコードなの......」と絶望感に打ちひしがれていますので、石や腐ったトマトなどを投げつけるといった行為はできるだけお控えください。一応こっそりリファクタリングしています......。【ランクAよりもPython力をつけろ】編スマートPythonプログラミング、引き続き読んでます。ヶ月)実践CommonLispをちょっとだけ翻訳した人。AIブームもっかい来ないかなと思ってたら本当に来て引く。好きな言語はClojureです。Part2はてなブログをはじめよう!sandmarkさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。