プログラミング

Project Euler 545

http://projecteuler.net/index.php?section=problems&id=54544着。 眺めていても全く分からないので、検索していたら日本語のページが引っかかって、そこから単語を拾って英語のページにたどり着いた。 しかし、メモリがけっこう厳しくて、なんとか解いたら…

Project Euler 499

http://projecteuler.net/index.php?section=problems&id=499148着。 1年前、全くわからずにシミュレーションをしたのみで1週間が過ぎ、放置していた。 昨日の朝から考えて、夜にはだいぶいい近似が得られた。そして、風呂入って考えたらだいたいわかった。…

Project Euler 522

http://projecteuler.net/index.php?section=problems&id=522135着。 2週間前、Problem 490が解けてからずっと考えていた。最初は出題された頃の域を出なかったが、とりあえずグラフを捨ててみようと考えたらたぶん6日前くらいから進んだ。そこから毎日匍匐…

Project Euler 542

http://projecteuler.net/index.php?section=problems&id=54227着。 夜10時の出題なので問題だけ見て寝ようと思っていた。風呂入って考えたらだいぶわかったので、とりあえずT(1000)だけ出した。 朝起きて2時間弱で答えを出した。しかし、1分弱かかって、し…

Project Euler 490(3)

http://projecteuler.net/index.php?section=problems&id=490124着。 1年前考えたときは、C++で70日くらいかかる勘定だった。 冬休みに入ってからずっと考えていたら、ごり押しには違わないが、それほど時間がかからないことが分かった。組んで動かしてみた…

Project Euler 535

http://projecteuler.net/index.php?section=problems&id=535141着。 出題された日の夜にだいたいの解き方は分かった。ただ、組みにくくて放置していた。それでもだいたいの組み方は分かっていた。先週の土曜日にだいたい組んで、火曜日の東京出張の新幹線の…

Project Euler 539

http://projecteuler.net/index.php?section=problems&id=53930着。 最初よくわからなかったが、買い物に行くときに考えていたらわかった。 あとでフォーラムを見たら、自分と違う方法ばかりだった。だからフォーラムに書いた。https://projecteuler.net/thr…

機械学習(4) 確率的勾配降下法

前回とほとんど同じなのですが、 ηという学習率を掛けるところが違います。これは時間の関数になっていて、t = 1, 2, …に対し、恐らく単調減少になっているほうが収束が速くなると思われます。η= 1 次元 1000サンプル 10000サンプル 100000サンプル 2 0.0433…

機械学習(3) パーセプトロン

ここからは、この本を参考に進めていきます。オンライン機械学習 (機械学習プロフェッショナルシリーズ)作者: 海野裕也,岡野原大輔,得居誠也,徳永拓之出版社/メーカー: 講談社発売日: 2015/04/08メディア: 単行本(ソフトカバー)この商品を含むブログ (5件)…

機械学習(2) 超球面上にランダムに点を打たれているか確認する

点を打つのはいいのですが、本当にそれが超球面上に一様に分布しているのか確認したいところです。ある点を固定して、超球の中心を挟んでその点と他の点との成す角度がある分布をしているはずです。例えば3次元で考えると、角度θとθ+dθの間の表面積は 2πr2si…

機械学習(1) 超球面上にランダムに点を打つ

まずは、二値分類のプログラムを書こうと思います。そのために、ランダムに超平面を作ります。しかし、超平面をランダムに作ろうとすれば、法線ベクトルをランダムに作る必要があります。すなわち、これは超球面上にランダムに点を打つことになります。最も…

Rosalind Construct a Profile HMM

http://rosalind.info/problems/ba10e/3週間前に考えてみたがわからなかった。ここにあるthresholdの意味がわからなかった。もちろん問題文には書いてないし、ネットを探ってみても全然出てこなかった。HMM(Hidden Markov Model)とthresholdは関係無いような…

Project Euler 531

http://projecteuler.net/index.php?section=problems&id=53123着。 なんの工夫もする必要もない問題だったが、なんかしらんつまらないミスをしまくって時間がかかってしまった。

Rosalind 再開

木曜日にEulerのフォーラムに書いて、金曜日に微調整してから、そろそろRosalindをやろうかと見てみたら、いつの間にか大量に問題が来ていた。あと5問だったはずなのに。 とりあえず2問解いた。

Project Euler 530

http://projecteuler.net/index.php?section=problems&id=53034着。 最初よくわからなかったが、床屋に行って考えたらだいたいわかった。 その日のうちにできたが、4分弱かかっている。 いろいろと式変形ができて、最終的に50分くらいになったので、フォーラ…

Project Euler 529

http://projecteuler.net/index.php?section=problems&id=52956着、4時間弱。 解法はすぐに気が付いた。書いてみたがものすごく遅い。結局C++で書いて分散化して火曜くらいにT(5)が出たので、7時間くらいかけて動かしてみたが、答えが合わない。進数を変えた…

Project Euler 524

http://projecteuler.net/index.php?section=problems&id=52411着。 Problem 523の続きの問題。2題出題されるので事前には簡単な問題だと予想されたが、そんなことはなかった。七転八倒して、6時間半で答えを出した。

Project Euler 523

http://projecteuler.net/index.php?section=problems&id=5238着。 2か月ぶりの再開で勘が戻るか心配したが、15時開始というアドバンテージもあって、かなり久しぶりのひとけたをゲット。 ちょっと考えただけだと、こんな問題解けるのかとも思ったが、具体的…

Finding All Similar Motifs

http://rosalind.info/problems/ksim/恐らく、最も正答者数が少ない問題がやっと解けた。 これであと5問になった。Strongholdはあと1問。これはもうすぐ解けるようなことを1年前に書いていたが、本当だろうか。明日からEulerが再開するので、もうなかなか解…

Leaderboard Cyclopeptide Sequencing Problem

http://rosalind.info/problems/2f/この問題はアルゴリズムが問題文に書いてあるからその通りに書くだけである。 しかし、これを組んでみるとPyPyで16分くらいかかる。どこを直したらいいのかわからないので、仕方なくC++で組んでみた。なかなかバグが取れな…

Bioinfomatics Text Track 2D

今週、1年ぶりにROSALINDを再開した。そして、2Dを書いてみたが、例題を解いてみるとやはり1年前のメモと同じ値しか出てこない。プログラミングの問題としては非常に単純なはずなのだ。何か隠れた条件があるに違いない。ROSALINDにはそういう問題があるのだ…

Project Euler 521

http://projecteuler.net/index.php?section=problems&id=52131着。5時間ごり押し。 4つに分けて、流して、走りに行って食事して帰ってきたら、まだ計算していた。1/4等分した最後の領域が遅いだろうからそれだけ優先度を上げておいたら、それがすぐに終わっ…

Project Euler 520

http://projecteuler.net/index.php?section=problems&id=52045着。 最初、よくわからなかったが、真面目に考えたらだいたいわかった。しかし、そこから正解にたどり着くまでに間違えまくった。 この問題のポイントは、アレを知っているかどうか。知らなかっ…

Project Euler 519

http://projecteuler.net/index.php?section=problems&id=51938着。 意外と早く解法を思いついたが、なかなか答えが合わない。そのうちに間違いに気が付いた。 最初59秒だったが、少し工夫して17秒になった。

Project Euler 518

http://projecteuler.net/index.php?section=problems&id=51884着。 なんの工夫も無く、普通に書くだけだった。 最初108秒だったものを少し変えたら47秒になった。

Project Euler 517(3)

http://projecteuler.net/index.php?section=problems&id=517昨日考えていた高速化を行ったら、4.3秒になった。 もうネタが無い。

Project Euler 517(2)

http://projecteuler.net/index.php?section=problems&id=517昨日考えていた高速化を行ったら、6秒になった。 今日3秒かかっている部分の高速化を考えたので、まだ速くなるはず。

Project Euler 517

http://projecteuler.net/index.php?section=problems&id=51788着。 なんかよくわからなかったが、昨日風呂に入っていたら気が付いた。それを今日コードにした。 まだ、17分かかっているが、速くする方法はわかっている。

Project Euler 516

http://projecteuler.net/index.php?section=problems&id=51614着。 これは簡単だった。 久しぶりに1時間を切ったので、その前がいつだったか調べてみた。Problem 479以来だった。

Project Euler 514(3)

http://projecteuler.net/index.php?section=problems&id=514フォーラムに書いた。https://projecteuler.net/thread=514#207014でも、うまく書けず手抜きした。日本語で書くのも難しい。 今日また高速化の方法を思いついた。でもめんどうだ。