• 締切済み

人工知能の作り方

最近すごく人工知能について興味を持っているんですけど。 実際に人工知能はどのようなアルゴリズムで動いているのか どのようなソースで動いているのかまったくわかりません。 高卒程度の学力しかない自分でも果たして人工知能は作れるのでしょうか? どのようなことを勉強すれば人工知能を作成できるのでしょうか? できればわかりやすい参考書などを教えていただけるとありがたいです。 決してむずかしいものを作ろうとはまだしていませんので、 どうか、どなたかわかる方教えてください。よろしく御願いします。

みんなの回答

  • uyama33
  • ベストアンサー率30% (137/450)
回答No.10

http://www.geocities.jp/bonanza_shogi/ 最近はプロ棋士を負かす将棋ソフトがあります。 人工知能とは少し異なるかも知れませんが参考にはなると思います。 上のURLは、有名なもので、ソースコードが公開されています。

回答No.9

長い時間をかけて、様々な方が回答をされていますので 私が回答すべきか悩みどころですがあえて… 人工知能に関してよく言われることは そもそも人間は「知能」というのがそもそも何であるのかを定義できていないということです 人間に知能はあるのでしょう、おそらくチンパンジーにも、では猫には?鼠には?昆虫には?と、その境目も曖昧です ただ、論理的に順番に手順を踏んでいく能力であれば人間は、世界最初の貧弱極まりないコンピューターにさえ勝つことは出来ませんのでそれだけで結果を計算するものは人工知能とはまず言いません 大学の人工知能の教科書などもありますが、人工知能という体系立った学問があるとは言えないで ・将棋などのゲーム有限確定完全情報ゲームの攻略 ・(自然)言語処理 ・コンピュータービジョン 等々の各分野のカタログ的な紹介になっている状態です ただ、誤解を解いておかないのは「人間みたいなものを作る」というのが今の人工知能の研究ではないということです (作りたい研究者はたくさんいそうですが、取っ掛かりが掴めていなのです…) 強化学習やパーセプトロン、サポートベクターマシンや遺伝的アルゴリズム等 ”比較的”よく使われるアルゴリズムや言語などはありますが まずは、人工知能の世界を俯瞰(ふかん)して、自分がやってみたいことを朧気ながら掴みるのがオススメでしょう アルゴリズムはその分野で性能が良く、比較的よく使われるものがあるので、その2,3の候補から自然と選ぶようになるはずです 他の道としては、やっとそういう研究が出来るようになってきたということなのでしょうが 言語処理や認知、コンピュータービジョンなどの、人工知能の各分野の成果を統合するとどうなるかの研究に参加出来るようになる さらに厳しい道として、そもそも知能とは何かを考える、これは回答された方々の中で欲求や五感とは何かを考えるよう答えられた方々がいらっしゃいますが、正直未だ哲学者地味た議論の最中で、コンピューターのプログラムにどう落とすべきか、取っ掛かりがない試練の道ではあります とりあえず、おすすめの書籍は、大学の人工知能の講義で説明されるような本ですね Amazon等で「人工知能 概論」で条件検索して200~350p程度の分量、2500~3500円の価格の 書籍を探すのがよいでしょう ここの当たりに関しては、難解な数式も殆ど出てきませんし、楽々突破できると思いますよ http://www.amazon.co.jp/%E4%BA%BA%E5%B7%A5%E7%9F%A5%E8%83%BD%E3%81%AE%E5%9F%BA%E7%A4%8E-%E6%83%85%E5%A0%B1%E7%B3%BB%E6%95%99%E7%A7%91%E6%9B%B8%E3%82%B7%E3%83%AA%E3%83%BC%E3%82%BA-%E9%A6%AC%E5%A0%B4%E5%8F%A3-%E7%99%BB/dp/478562048X/ref=pd_sim_sbs_b_4 そこから再度やりたいことが絞り込めたら、その分野のオススメをもう一度こちらで質問してみてください 大学の専門書の場合個々のプログラム言語でのサンプルコードなどは余り掲載されていないで、Φとかλとかの記号で 基本的な数式と論理的な意味の解説に終始しているものが多いので 数式を見てコードが浮かんでくるレベルの経験があるわけでないのならば サンプルコードが豊富な替わりに、平たい文章でワンステップづつ進んでいけるものを求めたほうがいいですよ

回答No.8

2001年の質問だこれ@@ 5感や生命活動をパラメータ的に設定して 例えば一定値以上の温度なったら火傷イベント発生、冷やすや直前で離れるという行動を取ったらその個体(プログラム)は生存、しなかったら失敗 みたいなのを永遠にシミュレートしていってとりあえずプログラム上の(生物)を作るといいかもしれない。 生命活動に影響がありそうなパラメーターが増えてくると恐怖パラメーターが増えていくみたいな感情パラメーターも大切でしょう。 逆に幸福パラメーターも必要でしょうね。でも薬漬けみたいになって頭らりっちゃっても死亡イベント発生するとか。 そうやって生き残ったプログラムが状況に対してどういう判断を下すかすぐれたものにはなってそうです。 範囲外の値を出したら死亡みたいな。 観測者(神)とプログラム(人間)の間で何度も淘汰されつつ我々にとってもっとも親和性の高そうなものを間引いていけばいいのではないでしょうか。 いやまぁ思いつきで適当に書いただけでかなり無茶や的外れ言ってるかもしれないけど。

  • mttya
  • ベストアンサー率0% (0/0)
回答No.7

機械学習という分野を専門に勉強している学生です. 一般的に言われる人工知能とは,幅広く使われる単語のため,何に焦点を当てて話したらよいかわからないのですが,私の専門である「学習」という分野における人工知能について話します. 「学習」の分野に限って言えば,人工知能の最終目的は「人間みたいな行動をするように学習すること」ではありません.言ってしまえば人間も頭が悪い部分が多いため,人間がとる行動というのは常に最適化されているというわけではありません.よって,学習という分野における人工知能とは,人工的に作り出す知能で,最終的には人間のとる行動よりも良い行動をとることを目指しています. 話は変わりますが,今年4月に行われたプロ将棋棋士とコンピュータの対戦(電王戦という名前だったような...)をご存じですか?この時に使われたコンピュータソフトには全て機械学習という手法が用いられています.この時の電王戦(?)はコンピュータ側の勝利となり,コンピュータは今や将棋においてはプロと同等以上の知能を持っていることになります. 機械学習について語る前に,学習の概念において大切な2つのキーワードを紹介します.教師あり学習と教師なし学習です.それら単語の意味は文字通り,教師がいるかいないかという違いになってきます.たとえば野球のバッティングなどを習う際,コーチがいてスイングの際に腕の角度やら腰の使い方やらいちいちひとつひとつの行動についてチェックしてくれるのが教師あり学習です.一方で教師なし学習はとりあえず,バッティング練習をひたすらやって,自分がうまく打てたかどうかによって,自分で考えて上手なバッティングフォームを見つけることを指します. これら二つの学習にはそれぞれメリットデメリットがあります.教師あり学習では学習速度はめちゃくちゃ早いです.教師がどこが悪いか言ってくれるので,すぐに学習できます.しかしながら,その教師が悪ければ,学習した後の行動もよくなりません.そして,最終目標は教師の模倣であるため,教師以上に賢くなることはありません.教師なし学習では,これらの教師といったものが無いため,学習の可能性は無限大ですが,学習スピードは極めて遅く,また学習効率も悪いです.何事も自分ひとりで考えるのは難しいもんです.教師あり学習と教師なし学習はたぶん人間に対しても同じようなことが言えると思います.そして,今現在の機械学習の多くは人間の学習と似ています.面白いですね. コンピュータ将棋ではこれらのハイブリット手法が用いられていました.教師あり学習では,人間のプロ棋士同士が戦った際の棋譜を教師とし,まずは人間のプロのように打てることを学習させました.そののち,教師なし学習で,何度もほかのコンピュータ等と戦い,そしてプロ棋士以上の知識を身に着けようとしていきました.その結果,プロ棋士対コンピュータ将棋の結果はコンピュータ側の勝利となりました. 今後の機械学習の課題は教師あり学習ではなく,教師なし学習をいかに効率化できるかがポイントとなっています.それさえクリアできてしまえば,本当に人間よりも賢いコンピュータができる可能性も充分にあると自分は思っています. ちなみに,一般人が思っているような,「コンピュータが人らしくなる」という意味での人工知能はこの機械学習という手法ではおそらく難しいでしょう.まず,人間の話している「言語」について教師あり学習させようと思っても,まず教師データ自体をつくるのが極めて困難だからです.コミュニケーションの際に「こういう会話が来たらこう返答する」という教師をつくること自体がそもそも難しく人間自体もわかっていません.また,教師なし学習で学習させようとしても,コンピュータ自体,話すこと自体の良し悪しを決定するのはとても無理です.よって教師なし学習も無理でしょう.100歩譲って,コンピュータができる範囲は言語の意味理解まででしょう. じゃあ人間はコンピュータに学習できないようなことまで学習できるとは天才か,と思う人もいるかもしれませんが自分はそうは思っていません.人間は生まれもって,お腹がすくなどという生命活動をしているため,生きるためにはしなければならないことが数多く存在します.個人的には,「話す」という行為も実は生命活動にかかわっている大切な行動だと思っています.なので,生まれもって人間は「お腹がすくと死ぬ」という学習をすでに行っており,極端な話にはなるけれども「お腹がすかないためには他の人と話してごはんを得る」という学習結果を得て,他の人とコミュニケーションをとるようになります.つまり,人間は話す目的が存在するので,それに従って学習するようになりますが,コンピュータ側は目的が無いので学習できない,私にとって人間とコンピュータの学習の違いはただそれだけのことだと思っています. ちなみに,人間らしいコンピュータを作るための研究ではどちらかといえば人口無脳の研究が多いと思います.これは以前の回答者様が回答済みなようなので割愛させていただきます.

回答No.6

今の人工知能に足りないのは生き物は生命活動を中心に生きていて、五感は生命活動をカバーする手段にすぎないという事です。 赤ちゃんは他の動物と同じように本能などで動きます。私は覚えています。 カギになるのは感情、特に三大欲求だと思います。睡眠は情報を整えたりするのに大切で、食欲は動力に必要で、性欲は自分以外の認識に大切だと思います。 睡眠はスイッチ、食事は燃料、性欲は五感が中心だと思います。

  • msystem
  • ベストアンサー率42% (79/186)
回答No.5

私は、人工知能の作りかたというのは、決まった方法はないと思います。 やはり、「知能」をどう考えるか・・・という点が重要だと思います。おそらく、プログラムというもの自身がそうだと思います。目的があってその目的を達成するために、どのように論理的に考え、それをプログラムにするかが、プログラミングだと思います。 ですから「高卒程度の学力しかない自分でも・・・」は、まったく関係ないように思います。 一般に言われる、「人工知能」とは何かを知りたければ、文献などを探せばよいであろうし、作りたいのであれば、どのような機能を持ったものを作りたいかを徐々に具体化することが必要だと思います。(「人工無能」のような反応は、やはりそのようなことを突き詰めていってできたものだと思います。) アルゴリズムも大切ですが、自分が何かを考えたときに、「何を基準にどのように判断したか」などを、具体化していってはどうでしょうか?

ukyaah
質問者

お礼

ご回答ありがとうございます。 確かに自分の中で「知能」については漠然とした考えしかありませんでした。 どのような機能を持たせたいかも具体的に考えていきたいと思います。 ありがとうございました。

  • callhiro
  • ベストアンサー率35% (54/152)
回答No.4

どうもこんばんは。 下記の「人工無能」はフリーのチャットCGIでもあちこちにあるので 探して設置してみればいいかと思います。 けっこうおもしろいですよ。 僕は学生時代にQ学習という手法を使ってロボットに学習をさせていました。 それは、学習のプログラムを作った後は、目的の行動を与えてやるだけで、 ロボットは試行錯誤しながら次第に目標の行動を達成できるようになるという物です。 実際には、ロボットにQマップという情報を保持させて、 ロボットのとった行動に従ってQマップの値を変化させていきます。 目標の行動を偶然とった場合にその行動を高く評価してやり、 目標行動へ達する行動、目標行動の直前の行動へ達する行動 その直前の行動へ達する行動と最適な行動を覚えていき、 最後には与えられた環境のどこでも目標の行動をとるというものです。 有名なのは、数カ所の駆動部分があり、そのロボットにメジャーを取り付け、 できるだけメジャーの増え幅が大きくなるように行動させるという学習ロボットです。 最初は適当に動かしていた駆動部分ですが、次第に素早く動き回るようになるという物です。 見たことありませんか? 他には遺伝的アルゴリズムを使って、よりよい行動を個体を残しながら進化させるというプログラムもありますよ。 まずはこれらのキーワード(Q学習、遺伝的アルゴリズム等)で検索して見てくださいな。

ukyaah
質問者

お礼

ご回答ありがとうございます。 ロボットの話は初めて聞いたので「そうなのか~」と思いました。 教えていただいたキーワードで検索してみます。 ありがとうございました。

  • honiyon
  • ベストアンサー率37% (331/872)
回答No.3

こんにちは、honiyonです。  検索エンジンで調べてみましたが、以下のような面白いものを見つけました。  人工知能ではなく、人工アリです。    http://home.ksp.or.jp/csd/ga/gatrial/ChA_3_2.html  また、たくさんヒットしたのでその検索結果をのせておきます。(参考URL)  既存のアルゴリズムを学ぶのも良いですが、自分で考えてみるのも面白いですよ。 奇抜な発想が出てくるかもしれません。  私も人口無能を作って遊んだ事がありますが、なかなか楽しかったです。 基本的なアルゴリズムは Pesukoさんの回答にあるものと同じものを使いました。 「この単語とこの単語が入っていたら、このメッセージを表示」とか独自の拡張をしたりしていました。  参考になれば幸いです(..

参考URL:
http://www.google.com/search?q=%90l%8DH%92m%94%5C+%83A%83%8B%83S%83%8A%83Y%83%80+%83T%83%93%83v%83%8B&hl=ja&safe=off
ukyaah
質問者

お礼

ご回答ありがとうございます。 「人工アリ」ですか、参考URLまで教えていただきありがとうございます。 自分自身、発想力はあまりないので(妄想力は大いにあり)まず既存から 学んでいきたいと思います。 ありがとうございました。

  • sesaami
  • ベストアンサー率25% (9/36)
回答No.2

リスト処理というデータの処理方法を使用して、アルゴリズムを作成するのが普通です。人工知能を作成しやすい言語としては、LISPやプロローグ(スペル忘れた)が良く使われるようですね。 人の脳に如何に近づけるかということよりも、人の考え方に近いデータをすばやく引き出すことが出来るかが問題となるようです。 人工知能については多くの書籍が出ていますので参考にされたらいかがですか?

ukyaah
質問者

お礼

ご回答ありがとうございます。 人工知能に関する書籍を近くの大きな書店で探したんですが、 なかなか、これといったものがありません。 もし、お勧めの書籍がありましたら教えてください。 「リスト処理」で探してみます。 ありがとうございました。

  • Pesuko
  • ベストアンサー率30% (2017/6702)
回答No.1

10年ほど前に”人工無能”なるプログラムがありました。 PC<こんにちは OP<こんにちは PC<こんにちはてなに? OP<こんにちは、は挨拶 PC<挨拶とは? と延々PCが質問してくることに答えていったように思います。 文章の関連付けのみで50語程度覚えさせるとそれなりにAIのような会話が成立した記憶がありますが、一太郎のVer6(バージョンの記憶はあいまいです)あたりのマクロでも同じようなプログラムがありました。 確かDOS版だったように思います。 AIの回答でなくてごめんなさい。

ukyaah
質問者

お礼

回答ありがとうございます。 その「人工無能」は語句の意味を理解していっているということでしょうか。 そのものが「人工知能」のように思えます。 もっと自分でもいろいろ調べてみようと思います。「人工無能」についても ありがとうございました。

関連するQ&A

  • 人工知能は何に使われていますか?

    人工知能って自分で学習するシステムとして有名ですけど、実際のところ人工知能って何に使われているんですか?おしえてください。

  • 人工知能

    お世話になってます。 最近人工知能に興味が出てきまして、勉強してみたいと想うようになりました。 機械系の数値解析でga法などは扱ったことはありますが、情報工学については素人です。 どんなことを勉強すれば良いでしょうか? 漠然とした質問ですが、よろしくお願いします。

  • 人工知能について

    人工知能の勉強方法について質問です。 社会人が人工知能について勉強するにはどうすればいいですか? 書籍で勉強するというのが一番に思いつくのですが、どのような書籍や情報を参考にしたらいいかw狩りません。 生活もあるので、学校に通うことも現在は考えていません。 すると、どうやって勉強したらいいかわからなくなりました。 社会人のおすすめの勉強法について回答お願いします。

  • 人工知能について学ぶ

    こんにちは。 私は今、とある高専の4年生です。高専卒業後は、大学編入を考えています。 将来的には、人工知能について研究したく、大学院進学もしたいと思っています。 そこで、質問なんですが、人工知能について学ぶ為には、どのような 学科に進学するべきなんでしょうか? 一番近いところで、『知能情報』系の学科かなぁと思い、九州工業大学か 名古屋工業大学・・・などを検討しています。 どなたか、アドバイスよろしくお願いします。 補足ですが、人工知能といっても、エキスパートとかの応用よりも、 知能そのもの、人間の知能そのものを人工的に再現(プログラムなど)する っていうほうに、特に興味があります。学科的には、一緒なんですかね?? すいません、分かりにくくって!

  • 人工知能について

    私ハードウェアを専門としているにもかかわらず、人工知能に強い関心を持っております。 もし、デスクトップに人工知能の友達がいてくれたら、それはもう夢のようなセカンドライフになる事でしょう。(廃人が量産されそうですがw) 現在、人工知能の研究はどの程度まで進んでいるのでしょうか。又は、将来的に実現する目処は立っているのでしょうか。 大学でも研究が行われていると聞き及びます。ご存知の方いらっしゃいましたらよろしくお願いします。

  • 人工知能と将棋

     とあるプログラミングの課題で、将棋のプログラムを作りました。  そこで、将棋に人工知能をつけてみようと思い立ち、先輩に相談したところ、「遺伝的アルゴリズムを使うと人間に勝つのは無理だけど結構マシなのができるんじゃないのか」といわれました。  僕は今まで遺伝的アルゴリズムについてまったく無知だったので、基礎の本を買って勉強しました。  しかし、将棋の人工知能ってどうやったら作れるんだろう?とそこで考え込んでしまい、いろいろと思考をめぐらしています。  僕が考えているのは決して強いプロうグラムじゃなく、学習していくようにしたいのですが、  1.どの駒をどこに動かすという遺伝子カードを何十万枚と作る(乱数か何かを使って)  2.カードの適合度にしたがって、ある1枚を引き、今の盤面で有効ならば実際に駒を動かす  3.その2手目か3手目に盤面を評価し、以前よりも状況が悪化していれば、そのカードの適合度を落としていく、有利になればカードの適合度を上げる  (4.交叉や、突然変異を用いてカードを変化させる?)  こんな感じにすればまあまあかなと考えていました。  しかし、ここでよく考えると、  たとえあるカードによって状況が不利になって適合度が落ちても、それは別の状態において有利になれるカードなのかもしれない。それなのに適合度を落としてもよいのか?  むちゃくちゃなことを書いているかもしれません。遺伝的アルゴリズムではないことを書いているかもしれません(爆)。が、皆さんはこの疑問についてどう思われますか?  何かご意見、アドバイスをお願いします。

  • 人工知能の現状について

    ファジィから始まった人工知能(と個人的に思っています)ですが、現状はどうなのでしょうか。  A.世界中の人工知能研究機関が今、最もネックとしているものは何ですか?  B.また、現状ではどの程度まで実現しているのでしょうか? 解答例としては・・・ 現状として人工知能としての問題は言語処理だけであり翻訳までが実現されている、 画像の認識はあらゆる物に対して可能となったが処理速度が人や動物まではない、 人や動物と比べると学習に大量の時間やデータが必要でありその解決策はあるが現状としてそれは実現化しておらず研究段階である、 人と同等の人工知能は現状でも作成可能だが処理速度に問題がある、 犬や猫程度の脳は完成されているが胴体部分がまだまだである(ソフトはできてもハードができない)、 人工知能だけでの話ならば動物は作成可能だが人は作れないという結果が出ている、、等

  • VBAで人工知能の搭載したプログラミングは可能でしょうか?

    VBAで人工知能の搭載したプログラミングは可能でしょうか? 最近、人工知能に興味があるのですが VBAでも可能なのでしょうか? (オセロゲームなど?) しかし、人工知能の条件に「学習」が入るとしたら 厳しいでしょうか? もしくは人工知能の条件が合えば 言語は何であろうと可能でしょうか? よろしくお願いします。

  • 脳科学をやりたいです。人工知能を作りたいです。何学部へ行けばいいですか?

    大学カテゴリよりもこっちのほうが詳しい人が多そうなのでこっちにしました。 質問はタイトルの通りです。夢は人工知能を作ることです。 どういう学部へ行けばいいのでしょうか? よくわからずに生物科学化を考えてるんですが、 生物科学化って実際のところ何をやるんでしょうか? ちなみに学力は現在高3で東京一工以外の旧帝なら受かるかなあ・・・ という感じです(一は旧帝じゃないですが)。 ここで、医学部は学費・学力の双方面で無理で、 その上自分に不必要な方面の医学を必死になってやるのも意味がない(できない)と思うので、 医学部は無しの方向でお願いします。 ところで、人工知能作ろうとするならば ある程度人体側(骨筋臓等)も勉強しなきゃならないと勝手に決め付けてるんですが、 こちらは資料充実(英語書物において)してるようなので自力でやろうと思ってます。 なので、脳科学をやろうとするならばどこへ行けばいいのかを教えてください。

  • 人工知能の定義

    どこに質問すればよいか迷いましたが、プログラミング関連かなと思い、ここに質問してみました。 まず人工知能とはどこからが人工知能でどこをもって人間の知能とは違うのでしょうか。 「人工知能」の皆さんなりの定義はなんでしょうか。 最近の携帯電話でも、最近漢字変換したものの優先度を高くして変換されやすいようにする等、点数化して学習させるものは普通になってきました。これもある意味人工知能といえるものなのかなと自分では思っていたりします。 あらゆる経験をつみ、知能を発達させる人間ですが、 コンピューターも超膨大な経験(情報)を処理し(どう処理し、記憶させるかが大きな問題ですが…)、蓄えることで人間のように考える知能を持ちうることができたりする可能性は少なからずともあるのでしょうか。 みなさんの意見を伺いたいです。