読者です 読者をやめる 読者になる 読者になる

のんびりしているエンジニアの日記

ソフトウェアなどのエンジニア的な何かを書きます。

Scikit learnで行う文章の特徴ベクトルの抽出

皆さんこんにちは お元気ですか。私は元気です。今日は、Scikit learnを使って、お手軽に文を特徴ベクトルに変換してみます。 どんな時に使うのか? ある文章、例えば、This is a pen(①)とThat is a pen(②)を機械学習で学習させるとき、 基本的に文字を…

外付けHDDを購入し、使ってみた

皆さんこんにちは お元気でしょうか。私は元気です。最近のデータ関係のコンペティションのデータが非常に多く データの保存環境に困っていました。そこで、遂に購入してみました。 内蔵HDDの拡張ではなく、外付けHDDとしました。 因みにメーカーはケースは…

OpenCVの使い方(8) 顔検出を行ってみる

皆さんこんにちは お元気ですか。私は元気です。さて、今日はOpenCVで顔検出を行ってみます。 顔検出とは、画面の中から顔を検出するタスクのことです。早速ですが、ソースコードを書いてみました。 #include <opencv2/opencv.hpp> #include <iostream> using namespace std; using namespa</iostream></opencv2/opencv.hpp>…

Kaggleのコンペティションで公開されている手法・ソースコードのリンクをまとめてみた

皆さんこんにちは お元気ですか。私は元気です。日々、Kaggleで勉強しながら、自己研磨しているのですが、 優勝者の手法とか参考になる手法ってなかなか纏まってないと感じたので、探して、見つかった内容をこちらに載せようと思います。時々、追記して、情…

Android Studioを起動しようとするとエラーが出た

皆さんこんにちは お元気ですか。私は元気です。Android Studioでエミュレータを立ち上げようとするとまさかのエラーが発生した。 /Users/Tereka/Library/Android/sdk/tools/emulator -avd Small -netspeed full -netdelay none emulator: ERROR: x86 emulat…

ある日、いきなりOpenCVが動かなくなった

こんにちは。 お元気ですか?私は元気です。今日は突然OpenCVが動かなくなった話をします。 どんなエラー? >>> import numpy >>> import cv2 RuntimeError: module compiled against API version 9 but this version of numpy is 6 原因 必要なのはAPIが9の…

Kaggleで、Deep Oceanの画像コンペの結果が出ました

皆さんこんにちは お元気ですか。私は元気です。久々の投稿ですね。Kaggleで出場したコンペについて記載します。 どんなコンペティション? コンペティションのページはこちらです。 プランクトン121種類の画像を識別します。プランクトンの画像サイズは異な…

Scikit-learnのモデルをまとめてみた

皆さんこんにちは お元気ですか。私は元気です。今日はScikit-learnで扱えるモデルについて紹介したいと思います。気が向いたら追加します。 ※Sampleは割りと公式サイトのを少々改変したもの使っていたりします。ご了承ください。 モデル全般について Parame…

C++でモンテカルロ法を書いて、円周率を計算した

C++

皆さんこんにちは お元気ですか。私は元気です。さて、今日はモンテカルロ法を書いて、円周率を計算してみました。 基本的な戦略は簡単で、円の中にあるかどうかを判定します。判定式ですが(x**2 + y**2 円より中にあると計算します。四角の中に対してラン…

久々に自作PC作りました

皆さんこんにちは お元気ですか。私は元気です。私、久々に自作PCを作成してみました。 目的 Kaggleやり始めてGPUマシンが欲しくなった。計算時間の短縮を図る。 結構ハイスペックにします。OSはUbuntu14.04 Serverです。 購入物品 マザーボード なんでもい…

Ubuntu14.04 ServerでCUDA 6.5.14の環境を整える

皆さんこんにちは お元気ですか。私は元気です。さて、今日はUbuntu 14.04 ServerでCUDAの環境を整えようと思います。 何やらapt-getを使う方法がweb上では沢山見受けられますが、今回はrunを使ってインストールしてみます。 環境 OS:Ubuntu 14.04 Server LT…

近況報告とKaggle

皆さんこんにちは お元気ですか。私は元気です。最近は修士論文も修了し、来年からの社会人生活を送るための準備してます。 引っ越しって大変ですね。最近はKaggleと呼ばれるデータを扱うコンペティションを集めたサイトがあるのですが このKaggleのいくつか…

Torch7によるニューラルネットワークを使った機械学習

皆さんこんにちは お元気ですか。私は元気です。Torch7を使って具体的に、機械学習を実装してみようと思います。 Torch7におけるフレームワーク 基本的に以下に添って実装すれば問題ありません。1.データセットを構築する 2.モデルを構築する 3.学習する 4.…

Torch7 のインストール

皆さんこんにちは お元気ですか。私は元気です。Facebookが一部をオープンソースにしたとかで、最近話題のTorch7について記載してみた。 Torch7とは? http://torch.ch/:enable科学技術計算の為の、機械学習ライブラリで、LuaJITで動作します。 CUDAなどのGP…

Ruby on Rails 4.1でUnicorn + Nginxでデプロイ(Ubuntu)

皆さんこんにちは お元気ですか。私は元気です。思ったよりも手こずったUnicorn + Nginxでのデプロイを行ってみます。 既にRailsはinstallされているとします。まずは、Unicornから Unicorn Gemfile gem unicorn Unicornの設定 configの直下にunicorn.rbを置…

UbuntuとMacでUnix Benchを走らせてみた

皆さんこんにちは お元気ですか。私は元気です。正月は終わり、まるで未来の見えない何かと戦っているようです(修論) PCが増えたのはいいんだけど作業が早くなるかどうかを確認したいなと思いBench Markを探していたら 手軽に動かせるのを発見したので動か…

新年あけましておめでとうございます

皆さんこんにちは お元気ですか。私は元気です。新年あけましておめでとうございます。 今年もよろしくお願いします。新年といえば・・・・ずばり目標ですね。修士論文が異常に近かったりしますがまぁいいや 英語の上達 僕、英語の成績ぶっちゃけそんなに良…

プリントマジックで年賀状を作成する

皆さんこんにちは お元気ですか。私は元気です。もう少しでお正月ですね。その前に年賀状を書くというぶっちゃけあまり好きでない行事があるのですが・・・・。 実を言うとMacで年賀状作ったことなかったんです。院生になる前はWindows万歳だったので筆王と…

Cythonを使って、Pythonを高速化してみよう②:型をつけてみる。

皆さんこんにちは お元気ですか。私は元気です。Cythonについてもう少しやってみます。Cython公式の素数の一覧を出力するサンプルを少し変更してみました。 こちらをCythonを使って高速化してみましょう。 def primes(kmax): result = [] k = 0 n = 2 p = [0…

バブルソートをC++で書いてみた

C++

皆さんこんにちは お元気ですか。私は元気です。たまには普通のソーティングアルゴリズムでも書こうかと思います。 んで第一段として本日はバブルソートについて というか第一弾として疾走するネタ増えてないか・・?隣同士を比較して、番号が低いほうが大き…

Cythonを使って、Pythonを高速化してみよう①:インストール

皆さんこんにちは お元気ですか。私は元気です。最近、このブログの色がPythonに傾きつつあるようなないような。 今日はCythonをご紹介したいと思います。 Cythonとは? C言語によるPythonの拡張モジュールの作成の労力を軽減することを目的として開発された…

Image Magickのインストール

皆さんこんにちは お元気ですか。私は元気です。皆さんバッチで画像をモノクロにしたいとか、或いはサイズを変更したいなど、 画像に処理をかけたいと思ったことはありませんか?そんな時に使うのがImage Magickです。 Image Magick Wikipediaには画像を操作…

PythonでPickleを使ったデータ保存

皆さんこんにちは お元気ですか。私は元気です。今日はPickleを使ってみます。Pickleを使うとデータを文字でファイルに保存することができます。 これをすると、どうなるかって? 例えば途中の計算結果を自分のクラスごと保存することができるといったことが…

PyPyのインストール

皆さんこんにちは お元気ですか。TOEIC終わって疲れた。本日はPyPyについて What is PyPy(パイパイ) Pythonの実装の一つでございます・JIT コンパイラで動く為、高速。CPythonの代わりを目指したんだとかなんとか ・RPythonで書かれているとか(Wikipedia…

FrickrのAPIで画像を探してダウンロードする

皆さんこんにちは お元気ですか。私は元気です。今日はFrickrのAPIの画像検索を紹介したいと思います。 Frickrのデータ取得方法 準備するもの API Keyの獲得が必要です。 そのためには、Yahoo!への登録とAPIKeyの取得の申請が必要です。 コードをかくにあた…

Python リファクタリングに使えるCloneDigger

皆さんこんにちは お元気ですか。私は元気なのか・・・? TOEICのリベンジを果たす時が来るのだろうか。さてと、今日はリファクタリングに使えるソフトであるCloneDiggerを紹介したいと思います。 一言でいうと、ソフトウェアのクローンコードを検出=類似コ…

Octaveのインストール

皆さんこんにちは お元気ですか。私は元気です。海外の研究者の人がよくMatlabで書いてあるソースコードがあるのですが、 Matlab自体がものすごく高くて、実行すらできません。しかし、大体同じようなコードで動くものが有ります。GNU Octaveです。 GNU Octa…

C++の演算子オーバーロード

C++

皆さんこんにちは お元気ですか。私は元気です。 生活習慣が崩壊していることは多々多く、そろそろ戻したいと思うけど、更に加速する気がする今日は演算子のオーバーロードについて 個人的にはあまり使ったことがないので、さくっと勉強してみました。自分で…

Particle FilterでOpencvを使った物体追跡

皆さんこんにちは お元気ですか。私は元気です。さて、今日はOpencvを使ってParticle Filterで遊ぼうと思います。 すみません、遅くなりました。忙しくてなかなかこれを勉強する時間がなかったのですが なんとか実装できました。因みにParticle Filterは自作…

Scikit-Imageのインストールと画像表示

皆さんこんにちは お元気ですか。私は修論という壁に殺されそうでございます。最近は画像日和なので、今日はScikit-Imageを使ってみましょう。 Scikit-Imageとは 画像処理に関するアルゴリズムを集めたライブラリです。 無料で扱うことができて、ボランティ…

Pythonで並列分散処理(multiprocess)

皆さんこんにちは お元気ですか。私は元気です。さて、今日はPythonで並列分散処理を行ってみましょう 今回使うライブラリはmultiprocessです。まずは、引数を与えて出力をしてみましょう。 最も単純な例 #coding:utf-8 import multiprocessing import os de…

Ubuntuで外付けハードディスクを認識するには

皆さんこんにちは お元気ですか。私は年末に向かって干物になりそうです。論文的な意味で計算用のマシンではUbuntuを利用することが心なしか多いのですが、外付けハードディスクを認識するのに手間取ったので、メモ代わりに記載しようかなと思います。まずは…

画像処理 Integral Image(積分画像)

皆さんこんにちは お元気ですか。私は元気です。今日は画像処理で使われるアルゴリズムIntegral Imageをご紹介します。 微分画像と異なって、イメージ図を出すことはできません。 Integral Imageとは? 説明するより見せて説明するのが楽です。 ・通常の画像…

Vagrant(ベイグラント)のインストール

皆さんこんにちは お元気ですか。私は元気です。今日はVargantと呼ばれるソフトをインストールしてみました。 Vargantとは? 仮想環境を構築するソフトウェアです。 実際の開発で人によって環境が異なると、本番環境で動かないことが有ります。 そんな時に仮…

Mac10.9 Marvericksでgccを使う

皆さんこんにちは お元気ですか。私は元気です。さて、今日はMacでgccを使う設定をしてみましょう。え?それって既にあるんじゃないの?と思う方。シェルでgccと打ってみましょう。 特に設定をしていなければ、以下のようなメッセージが出現するはずです。 $…

Opencvの使い方(7) 物体追跡

皆さんこんにちは お元気ですか。私は元気です。さて、今日は物体追跡をどうやるのかを調べてました 人物追跡はもう少し後かな。全然やったことがないので、さっぱりな分野でしたので、サンプルを探せば、なんと公式サンプルが落ちておりました。本日はサン…

Pylearn2のインストール(OS:Mac10.9 Marvericks)

皆さんこんにちは お元気ですか。私は元気です。今日はPythonを使ってDeepLearningを動かすpylearn2をインストールしてみました。なかなか手こずりました 事前準備 さて、事前にインストールしなければいけないソフトウェアが5つあります。 PIL PyYAML IPyth…

OpenCVの使い方(6) エッジ検出の手法

皆さんこんにちは お元気ですか。私は元気です。今日はOpenCVでエッジ検出をやってみたよ。 OpenCVで用意されている関数では3つあります。SobelとLaplacianとCannyです。 #include <iostream> #include <opencv2/opencv.hpp> #include <opencv2/highgui/highgui.hpp> using namespace std; using namespace cv; int main</opencv2/highgui/highgui.hpp></opencv2/opencv.hpp></iostream>…

OpenCVの使い方(5) Matの使い方

皆さんこんにちは お元気ですか。私は元気です。OpenCVにはMat型やRectが使われています。 なんか遅い気がしますが、それらの扱い方を見ていきたいと思います。 因みに今回は画像は扱いません、悪しからず。 (人物追跡についてはアルゴリズムを調査中) Sam…

PythonのTupleに代入ができないことを初めて知ったこの秋

皆さんこんにちは お元気ですか。私は筋肉痛です。PythonのTupleについてのお話 Opencvだと色をTuple形式で記載したりしますが(255,20,0)みたいな形式で計算でもして後で代入しようと思ったらエラーが出ました。tupleってこんなのです (1,2,3) 因みにエラ…

Pythonで使うrangeとxrangeについて

皆さんこんにちは お元気ですか。私は元気です。さて、今日はrangeとxrangeについて見てみましょう。 さて、Pythonを使う人であれば、この2つよく使いますよね Pythonでよく見るコードはこちらです。 for i in xrange(100): print i もちろんrangeで書く人…

C++11 例題でわかるlambda

C++

皆さんこんにちは お元気ですか。私は元気です。さて、今日はlambda式についてやろうと思います。 C++11ではlambda式が導入されました。無名関数、ラムダ式、クロージャとも呼ばれたりしていますが、何やら便利なようなのです。さて、早速実行してみましょう…

C++ デストラクタが呼ばれるタイミング

C++

皆さんこんにちは お元気ですか。私は元気です。というか腹いてぇさて、今日はデストラクタが呼ばれるタイミングについて 知ってる人は当たり前ですが、変数にオブジェクトを突っ込んだものとnewしてポインタに入れたものでは挙動が異なります。言っているこ…

Pythonで演算をするときはnumpyを使いましょう

皆さんこんにちは お元気ですか。私はそこそこ元気です。さて、今日はnumpyをオススメしたいと思います。 皆さんリスト内の合計を求める時、どうしていますか? こんなコードを書いていないでしょうか・・・・・・? for i in xrange(N): sum += list[i] こ…

Python リスト追加についての速度比較(append,内包表記など)

皆さんこんにちは お元気ですか。私は元気です。 実は情報技術者試験が終わったんです。ひゃっほー …受かってそうにないのはまた別のお話さて、今日は便利なPythonのリストについての速度を比較してみましょう 皆さんこんなコードありませんか list = [] for…

Pythonでテストをしてみよう(unittest)

皆さんこんにちは お元気ですか。私は元気です。本日はunittestについて勉強してみましょう。 unittestとはPythonでのテストのライブラリです。JUnitとかCppUnitが親戚に当たりますね。Pythonでは標準についているので、昨日使ってみるとかなり便利でした。…

ユーザーを追加する時に困った。Ubuntu

皆さんこんにちは お元気ですか。私は元気です。 が、、、セキュリティスペシャリストの試験の勉強全くしていないどうしよう。さて、今日はユーザーを追加する時に少々困ったことがあったのでお伝えします。 何があったのかといいますと、ユーザーを追加した…

C++でMPIを使った並列処理(1)

C++

皆さんこんにちは お元気ですか。私は元気かもしれません。なんとなくMPIについてやりたいと思ったので調べてみた。 What is MPI MPIとはMessage Passing Interfaceの略で、並列コンピューティングを行う為の規格だそうな。要は複数のPCを使って計算を並列化…

【ネタ】話題のCodin Gameをやってみた

皆さんこんにちは お元気ですか。私は元気です。さて、今日は少し巷で話題になっている「Codin Game」に挑戦してみたよ どんなゲームかって?そりゃプログラミングで敵を倒すというよりパズルをときます。http://www.codingame.com/games:enbedとりあえず、P…

C++でMeCabを使おう

C++

皆さんこんにちは お元気ですか。私は元気です。今日はC++でMeCabを使います。 MeCabのインストールはこちらをご確認くださいませ。 MeCabの使い方 一番オーソドックスな使い方を見てみましょう。 コンパイルコマンド 初めにコンパイルについてですが、 g++ …