カテゴリー別アーカイブ: software_development

『人工知能はどのようにして「名人」を超えたのか』を読んだ

『人工知能はどのようにして「名人」を超えたのか』を読んだ。

人工知能はどのようにして 「名人」を超えたのか?―――最強の将棋AIポナンザの開発者が教える機械学習・深層学習・強化学習の本質(Amazon)
続きを読む

機械学習 名古屋 分科会 #4に行ってきた

機械学習 名古屋 分科会 #4に行ってきた。

前回の続きだ。

サテライト会場が東京に設置されて中継されていたりして、結構大がかりになってきてる。

今回は、第4章のニューラルネットワークの学習をやった。
4章の最初は、学習データに関する話で、特にハンズオンでやることは無し。
4章の前半は、学習の結果を評価する方法として損失関数という評価関数について、実際に2乗和誤差や交差エントロピー誤差の計算のコードを書くハンズオンをやった。
(今回、自分の持ってきたPCの調子が悪く、ハンズオンはできなかった。)

そのあと、微分と偏微分の数値解法について進んだところで今回は終了した。
ちょっと今回は進みが少ない気がする。
続きを読む

機械学習 名古屋 第11回勉強会に行ってきた

機械学習 名古屋 第11回勉強会に行ってきた。
前回の第10回には都合が悪くて参加できなかった。

第7回と同様、東建ホールでの開催だ。
ハンズオンとか無しで、発表のみだった。
Googe Cloud PlatformとかのAPIを使ってみた話とか、Julliaの紹介とか、機械学習のビジネスをやってみてる話とか色々だ。
来栖川電算の新サービスの話とかもあった。@smogamiさんが作ったもので、機械学習のアノテーションを簡単にするためのツールというかサービスらしい。
続きを読む

OpenCVをPythonで使う場合の書き方を調べている

OpenCVをPythonで使う場合の書き方を調べている。

自分の場合はずっと、APIとしてC言語のインターフェースで動かして使っていた

IplImage *img1,*img2;
img1     = cvCreateImage( cvSize(640,480), IPL_DEPTH_8U , 3);
img2     = cvCreateImage( cvSize(640,480), IPL_DEPTH_8U , 1);
cvCvtColor( img1, img2, CV_RGB2GRAY); // color -> grayscale

これからcv::Matを使ったC++での使い方に馴染んでいこうとしている。

ちなみに、C++で同様の処理を書くとこのようになるようだ。

cv::Mat img1,img2;
cv::cvtColor(img1, img2, cv::COLOR_BGR2GRAY);

Pythonで使う場合も似た感じになる。(戻り値に結果が出るようにちょっとAPIが変更されている。)

img2 = cv2.cvtColor(img1, cv2.COLOR_BGR2GRAY) # Python

Pythonの場合は、cv::Matに相当するものは無く、numpyの行列を使うので、numpyでいろいろ計算するのに慣れている人は使いやすいのだと思う。
例えば、画像をグレースケールで読み込んで表示させる処理は、こんな風に書ける。

import numpy as np
import cv2
img = cv2.imread('test.jpg',0) #grayscale
cv2.imshow('image',img)

Pythonのnumpyで機械学習の行列計算を書く代わりにOpenCVのcv::Matが使えないだろうか

Pythonのnumpyで機械学習の行列計算を書く代わりにOpenCV(C++)のcv::Matが使えないだろうか?

例えばpythonだと2行2列の行列の内積の計算は次のように書く。

import numpy as np
A=np.array([[1,2],[3,4]])
B=np.array([[5,6],[7,8]])
X=A.dot(B)

続きを読む

機械学習 名古屋 分科会 #3に行ってきた

機械学習 名古屋 分科会 #3に行ってきた。

前回の続きだ。

今回は、第3章のニューラルネットワークをやった。
基本的には行列の掛け算と足し算で構築される。
行列の掛け算は、参考書ではnp.dot(A,B)という形で書いているが、A.dot(B)と書く方が短く書けるという。
後半部分は、既に学習済みの行列データ(重みデータ,バイアスデータ)をダウンロードして読み込んで動かすという内容なのだが、データの用意をしてなくてハンズオンでは試せなかった。
pythonのpickleという仕組みを使っていたのだが、参考書にはimportが書いてない。参考書のこのコードを動かすにはimportが必要なので注意。
続きを読む

痴漢冤罪からの逃走のための安全に線路上を逃げられるようにアシストするアプリとか需要があるのだろうか

痴漢冤罪からの逃走のための安全に線路上を逃げられるようにアシストするアプリとか需要があるのだろうか?

最近、痴漢あるいは痴漢冤罪で線路を逃げるというニュースが頻発していて、線路を逃げるべきでないという意見と、やはり線路を逃げるべきという意見があり、対立している。
20150815_080514

有名な痴漢冤罪事件などはWikipediaなど出ている。
痴漢冤罪 – Wikipedia

特にショッキングなのが、三鷹バス痴漢冤罪事件だろう。(電車では無いが)
【怖すぎ】「三鷹バス痴漢冤罪事件」の有罪判決理由が酷すぎると話題に – NAVER まとめ
「逆転無罪」を勝ち取ったとはいえ~三鷹バス痴漢冤罪の教訓│小石勝朗「法浪記」 マガジン9

痴漢冤罪の防止用に電車に乗っている間は手を拘束する特殊な時限式の鍵付き手袋のような物が必要なのではと思ったが、どんなに痴漢ができないということを証明しても上記のような裁判官の場合には無駄だろう。
続きを読む