タグ

ブックマーク / blog.unnono.net (2)

  • unnonouno

    私は仕事柄、「人工知能」とか「AI」というものを扱っていることになっている。ところが、私は「人工知能」や「AI」という言葉をほとんど会話の中で使わない。使うときも極めて選択的な文脈でしか使わない。この業界、こういう人は多いようだ。昨年、知り合いの主催するパネルディスカッションのテーマとして、「人工知能」という言葉についてどう思うかと言った議論を扱い、そこで普段言いたかったことを吐き出したのでこちらにも書いておきたい。 なぜ使わないかといえば、端的に言えば、人によってこの言葉の意味の捉え方が全く違うため、「言葉」として機能しないからだ。

  • 動的計画法は再帰で表せ

    動的計画法の説明は常に再帰関数で書き表すことにしています.いやゆるメモ化再帰です.参照透過な関数は,同じ引数に対して同じ値を返すので,保存しておけばいいという感覚です.計算量の見積もりも簡単で,引数の異なり数に関数中のループの上限をかければおしまいです.特に再帰で書くことに慣れていれば自明に書けますし,テーブルを使ったDPと違って,ループの順番を意識する必要がありません.このテクニックは学部時代に@ohkuraに教えてもらいました.関数型言語に触れた今でこそ当たり前に見えますが,当時は目から鱗だったのを覚えています. メモ化再帰と不動点に関する@kinabaさんの日記や,プログラミングコンテスト的には@chokudaiさんの記事が参考になります. 今更ですが,ちょっと例で説明します.フィボナッチ数を計算する関数fib(x)は再帰式で,fib(x) = fib(x - 1) + fib(x

  • 1