Menu

Category

Archive

logo


C言語の関数へのポインタ

2014-04-03 03:24:00 +0900

Objective-C でもブロックの構文をすぐに忘れてしまうように、C言語の関数へのポインタもすぐに忘れてしまいます。備忘録として残しておきます。

...More


C言語の落とし穴

2014-03-31 22:47:00 +0900

Expert C Programming” で紹介されていたC言語の落とし穴を3つのカテゴリに分けて紹介したいと思います。C言語とは直接関係はありませんが、アメリカの宇宙計画は、少なくとも2度プログラムのバグにより失敗してしまったそうです。Mercury というプロジェクトでは、プログラムが . を , の代わりに使用したことにより、大きな事故が起きそうになりました。この事件は幸いにも、発射前にエラーが確認されたため大きな損失はありませんでした。原因は、Fortran の欠陥です。また、Mariner 1 では、アルゴリズムの間違った仕様書を渡されたプログラマが、その通りに実装したために起こりました。実際に$12 million のロケットが破壊されてしまったそうです。こんなロケットを打ち上げるプロジェクトに関われるなんてことはそうそうないと思いますが、普段のプロジェクトでも注意してコーディングしたいですね。

...More


Unsign と Sign の注意点

2014-03-31 06:01:00 +0900

Expert C Programming” を読んでいてunsign と sign を扱うときにおもしろかった違いがあったのでメモ。

...More


Machine Learning 概要

2014-03-31 05:57:00 +0900

最近、機械学習に関心があります。機械学習を利用したツイッタークライアントとか作ってみたいな。機械学習の有名な本、”Learning From Data” の著者の授業が Youtube で受けることが出来ます。また、Caltech のサイトには、パワポ資料等もあります。その授業の中で機械学習の概要が解説されていたので、本格的に勉強を初めて見る前に、個人的にまとめてみました。ほとんど Wikipedia からの転載です。ちょっとずつ追記あり。

...More


ナイーブベイズフィルタ (Naive Bayes classifier)

2014-03-30 16:54:00 +0900

ナイーブベイジアンフィルタとは、Naive Bayes というアルゴリズムを使用して、カテゴリやスパムメールの振り分けを行うとてもシンプルなフィルタです。強い独立性を仮定して処理するので、”ナイーブ”と言われます。*1 事前にコンピューターに手動で学習させておく(訓練フェーズ)ので、Supervied Leaning と呼ばれる機械学習の手法の一つ。

...More