• ベストアンサー

人工知能の勉強

人工知能を趣味でやっている方にお聞きしたいです。 今高校生で、人工知能(人工無能も)に興味があるのですが、独学できるものなのでしょうか(というか、独学でされている方はどのような分野に取り組んでおられるのでしょうか)。また、趣味でどのくらいの範疇にまで手を出せるのかがお聞きしたいです。 ちなみに、自分の興味がある分野(というか最終的にやりたいこと)は、自然言語処理を前提とした「思考」する人工知能です。 思考といっても、あらかじめ与えられた事象(自然言語によって蓄積されたデータ)に対して「(ある程度の推論を含めた)的確な関連付け」を行うことを考えています。言い換えれば、「ある突拍子もない推定」を、蓄積された知識による「演繹」と「(不確実性内包する)推論」によって、ある程度の妥当性を以って「人間が常識的に認識できる基本的な常識(つまり、最初に挙げた「自然言語によって蓄積されたデータ」)」にまでレベルを下げることです(というか、たぶんこれが人間の行っている「思考」だと思います)。「人間らしい応答」を求めているのではなく、「人間らしくなくてもいいから思考できる(論理的に物事の関連付けができる)もの」を求めています。 自分のやりたいと思われることが恐ろしく高度だということのは承知していますが、一応興味の方向性を示すために書きました。例えば、自然言語処理の困難性が高いということであれば、もう少しな抽象的事案において「思考」プロセスのみを研究するという妥協も考えています。 調べると、ファジー理論やらニューロンネットワークやら「ヤバそう」な単語がたくさん出てくるのですが、こうしたものは素人が手に負えるものなのでしょうか(手に負うべきものなのでしょうか)? プログラミングの方は一応cの触りだけはやってあります。調べてみると、lispやprologといった非手続型言語が使用されることが多いみたいですが、そちらの言語を用いたほうがよいのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • dummyplug
  • ベストアンサー率58% (134/230)
回答No.2

とりあえずさらっと答えられそうなことだけコメントします。 >調べると、ファジー理論やらニューロンネットワークやら「ヤバそう」な単語がたくさん出てくるのですが、こうしたものは素人が手に負えるものなのでしょうか(手に負うべきものなのでしょうか)? 「べき」かどうかはわかりませんが、手に負えないものではありません。色々なことを勉強していく必要はあるでしょうが私が高校・中学のころには(先端の理論ではないものの、専門書籍などで勉強できるレベルのことは)理解していました。 あなたが目指すものの中にこうしたもの(ファジーとかニューラルとか)が必要かどうかはわかりませんけれども、個人的には高校生くらいなら手広く色々なことを知っておくといつか役に立つこともあるだろうと思うので、調べたところに出てきたのなら何でもどん欲に勉強していくといいと思います。 プログラム言語はCの触りくらいだとつらいので、CならCでいいので触りといわず、もっと突き進んじゃってください。理論方面で進んでいくというのならプログラミングはしないということもあるかもしれませんが、やはり実践してどうなのかを確認したいことは多々あります。その際、自分の考えを正しく実装する能力はどうしても必要です。 LispやPrologは知らないといけないと言うことはないですが、知っておくとうれしいことはあります。一つには知識情報などを扱うデータ表現方法や処理方法の典型を知ること。もう一つは既存のシステムでそうした言語で記述されているものを読めるようになることです。もちろん、処理によってはCで書くよりもLispやPrologあるいはほかの言語で書くと早いしわかりやすいということはあり得ますから、自分の使える道具を増やしておくという意味もあります。 独学でできるか、ということについては、むしろ独学でできないことは何もない、とコメントしておきます。ただ、体系立てた学習(知識の構築)とか学習効率という点では不利な点もあるかとは思います。ですが、自ら学ぼう・考えようという意欲に勝るものはないと思いますし、高校生という時期にそれをスタートできることの方がずっとメリットだと思います。 あなたのやりたいことについては、そうしたことに興味を持って勉強しようとするのは頼もしいと思いました。ぜひ頑張ってください。内容について細かくコメントするのは字数の都合もあって難しいので割愛しますが、気になったのは最後の一文の「妥協も考えています」というところです。言葉の綾かもしれませんけれど、「とりあえず(難しいから)ここだけやろう」という妥協の仕方ではなく「まずは(自分の興味がある)ここからやろう」という考え方の方がよいと思います。その際、自分のやりたいこと全体と今やろうとしていること(部分)との関係がどうなっているのかは意識しながら考えを進めるとよいでしょう。 とにかく勉強しないといけないこと、考えを巡らせたいこと、たくさんあると思います。自分のやりたいことを見据えながら一つ一つクリアしていってください。

christophe
質問者

お礼

一応C言語の方は、ポインタ・構造体あたりまでやりました。それ以降、何を目標付けて行こうか迷っていたところでした。 ネットワーク関係のことよりは、アルゴリズムのほうに興味があったので、AIという結論に至りました。 >「まずは(自分の興味がある)ここからやろう」という考え方の 確かに…。まずは、やりたいことを把握するために既存の理論を勉強して、プログラムで実装・実験していくことにします。その仮定で処理の典型を習得することにします。 丁寧な回答、ありがとうございました。

christophe
質問者

補足

ニューラルネットワークを少し勉強しはじめたのですが…数式自体は理解できますが、理論(概要は勿論理解できる)が無理です。でも、ニューラルネットワークを調べてたら、シュミレーションにも興味が湧いてきました。

その他の回答 (2)

回答No.3

門外漢ですが強化学習周りを講義で習いました. それらのアルゴリズム自体はそんなに難しく無いと思います. なぜならそれ自体は「簡単な自動判断・分別機」のようなものであり それを膨大な回数繰り返すことにより解を出すものなので. それよりも「何をどういう風に定義してそこに放り投げるか」が重要かと. 言語はcでも実装できると思いますが何がベストなのかは言い切れません. 自然言語理解について研究している学友がいますがこちらもまだまだ難しいようで. 翻訳サイトがまだまだ使い物にならないことがこれを示していると思います. christopheさんの考えていることはそのまま人間から見るとやはり”よくできたデータベース”なのですから どれだけ他人に知能や魂を持っている風に振舞えるかが大事かもしれませんね. 命や知能を持ち合わせていない物質にも魂を感じることができるのが人間なのですから.

christophe
質問者

お礼

「。」じゃなくて「.」ですね…理系。 >それよりも「何をどういう風に定義してそこに放り投げるか」が重要かと. そうですね。それは感じています。 人間はどのようにして「イス」を認識しているのか。何が「イス」なのか(4本くらい足が付いてる板?じゃあ、足ってなんだよ…っていう)。それすらものすごく難しいことです。抽象化も、誤謬が含まれないようにするには難しい。 >”よくできたデータベース” googleみたいな。自分はそんな形を想像しているのかもしれません。人間がツールとして使えるものでも良いと思っています。ただ、「思考」の要素を加えるのが重要かな、と。 付け加えれば、自分に今一番興味があるのは「イメージの形成」です。 まったくの独論ですが、人間の思考を既定するのがこの「イメージ」だと思うんですね。イメージっていうのはある程度の誤りを含んでいるかもしれない、経験上おおよそ正しいと言えるものを指します。 この「イメージ」と、あらかじめ与えた普遍的事実を軸として、思考(推論を基本的事実のレベルにまで下げる練習)を繰り返させるうちに、「よく使う論理パターン」をAIに習得させ、その「よく使う論理パターン」の思考における使用優先順位を上げていくことで、「知能や魂を持っている風に振舞える」ようになっていくと考えています。

回答No.1

人工知能に関しては完全に門外漢です。 ・ベイズ理論 ・MeCab ・フムフムヌクヌクアプアア本 などについて調べると幸せになれるかもしれません。

christophe
質問者

お礼

フムフムヌクヌクアプアア本ですね…ありがとうございます。 ベイズ理論を用いたデータベースは、自分が勝手に構想していたAIと近いものがあるみたいです。

関連するQ&A

専門家に質問してみよう