Subscribed unsubscribe Subscribe Subscribe

MNISTデータセットをNArray配列として扱う

RubyからMNISTのデータセットを扱えるように、書籍「ゼロから作るDeepLearning」のコードをベースにMNISTのデータセットをNArray配列としてロードするコードを書いてみました。 www.oreilly.co.jp コード全体 まずはコード全体を掲載します。 require 'open-…

3層ニューラルネットワーク実装

書籍「ゼロから作るDeepLearning」で紹介されている3層ニューラルネットワークをRubyで実装してみました。 www.oreilly.co.jp サンプルコード全体 まずは実装したコード全体を掲載します。 # 3層ニューラルネットワーク実装 # 各層のニューロン数は下記の通…

NumPyとNumo::NArray, Matrixでの演算の比較

最近「ゼロから作るDeepLearning」を読み始めました。 www.oreilly.co.jp この本ではプログラミング言語としてはPythonを使用していて、配列や行列の演算にはNumPyが使われています。第1章ではNumPyでの基本的な演算について説明されているのですが、その内…

ベイズ推定による回帰分析のコード

今回は下記書籍のベイズ推定による回帰分析のコードを Ruby で実装してみたいと思います。今回で下記書籍のコードの置き換えは終了です。 www.amazon.co.jp サンプルコードはこちらで公開されています。 github.com 単位行列の生成 Python版では numpy.ident…

ベイズ推定による正規分布の推定のコード

今回は下記書籍のベイズ推定による正規分布の推定のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 https://www.amazon.co.jp/IT-ebook/dp/B016Q22IX2/ サンプルコードはこちらで公開されています。 github.com スクリプ…

混合ベルヌーイ分布による手書き文字分類のコード

今回は下記書籍の混合ベルヌーイ分布による手書き文字分類のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 https://www.amazon.co.jp/IT-ebook/dp/B016Q22IX2/ サンプルコードはこちらで公開されています。 github.com …

k平均法による画像の減色処理のコード

今回は下記書籍のk平均法による画像の減色処理のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 https://www.amazon.co.jp/IT-ebook/dp/B016Q22IX2/ サンプルコードはこちらで公開されています。 github.com 画像ファイ…

ロジスティック回帰のROC曲線のコード

今回は下記書籍のロジスティック回帰のROC曲線のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 www.amazon.co.jp サンプルコードはこちらで公開されています。 github.com データセットの更新 Python版では計算結果の確…

ロジスティック回帰とパーセプトロンの比較コード

今回は下記書籍のロジスティック回帰とパーセプトロンの比較のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 https://www.amazon.co.jp/IT-ebook/dp/B016Q22IX2/ サンプルコードはこちらで公開されています。 github.co…

パーセプトロンによる二項分類のコード

今回は下記書籍のパーセプトロンによる二項分類のコードを Ruby で実装してみたいと思います。 ITエンジニアのための機械学習理論入門 https://www.amazon.co.jp/IT-ebook/dp/B016Q22IX2/www.amazon.co.jp サンプルコードはこちらで公開されています。 githu…

推定量の一致性と不偏性の確認コード

今回は下記書籍の推定量の一致性と不偏性の確認のサンプルコードをRubyで実装してみたいと思います。 ITエンジニアのための機械学習理論入門 | 中井悦司 | 工学 | Kindleストア | Amazon サンプルコードはこちらで公開されています。 github.com 算術平均メ…

最尤推定による正規分布の推定コード

今回は下記書籍の最尤推定による正規分布の推定のサンプルコードをRubyで実装してみたいと思います。 ITエンジニアのための機械学習理論入門 サンプルコードはこちらで公開されています。 github.com 算術平均 python では numpy.mean を使って配列に含まれ…

Amazon Dash Button を押したら Slack にポストする(RxRuby版)

前回の投稿で、 Amazon Dash Button を押したら Slack にポストする記事を書いたのですが、Facebookでシェアしたところ、「イベントハンドリングのところで、RxRubyあたりを使うとクールに実装できそうです。」というコメントをいただいたので、RxRubyを使う…

Amazon Dash Button を押したら Slack にポストする

12月5日に日本でも Amazon Dash Button の提供が始まりましたが、すぐに下記の記事を投稿されている方がいて、面白そうだったので私もやってみました。 qiita.com 他にもすでに同様のことを行われている記事はあるのですが、パケットキャプチャ部分を Ruby …

最尤推定による回帰分析のコード

今回は「ITエンジニアのための機械学習理論入門」の最尤推定による回帰分析のサンプルコードを ruby で実装してみます。書籍のサンプルコードは下記に公開されています。 github.com 自然対数 今回は前回までのコードと似ている部分が多く、新しい要素は自然…

最小二乗法による分析結果のグラフ表示コード

今回は前回までのメソッドを使って分析した結果をグラフに表示する部分のコードを ruby で実装します。書籍のコードの下記の部分になります。 # Main if __name__ == '__main__': train_set = create_dataset(N) test_set = create_dataset(N) df_ws = DataF…

平方根平均二乗誤差の計算部分のコード

今回も引き続き書籍のサンプルコードを ruby で実装します。今回は平方根平均二乗誤差を計算するメソッドです。サンプルコードのうちの下記部分になります。渡された多項式で平方根平均二乗誤差を計算しています。 # 平方根平均二乗誤差(Root mean square e…

最小二乗法で解を求めるコード

今回は前回に引き続き書籍のサンプルコードの下記部分を ruby で実装します。最小二乗法の公式を用いて係数を計算するメソッドです。 メソッドの戻り値として、決定された多項式と係数を返しています。 # 最小二乗法で解を求める def resolve(dataset, m): t…

誤差関数(最小二乗法)による回帰分析サンプルのデータセット作成コード

とりあえず前回で ruby と python のコードを動かす環境を作ったので、サンプルコードを ruby に書き換えていきます。まずは誤差関数(最小二乗法)による回帰分析のサンプルコード。書籍のコードは下記に公開されています。 github.com この中で、まず今回…

Vagrant + rbenv + pyenv で機械学習の勉強用環境構築

機械学習の勉強をしようと下記書籍を読み始めました。機械学習といえばやはり言語はPythonなのですが、普段Rubyをメインで使っている自分としては、Rubyで同様のことができないかなと思い、書籍のサンプルコード実行の為の環境に加えてRubyの実行環境も用意…

からあげ Beer Bash を開催(社内イベント)

先日社内イベントとして、開発部で「からあげ Beer Bash」を開催しました。イベント名は、唐揚げとビール片手に交流しましょう、ということでつけました。今まであまり開発部内でこういったイベントはできていなかったのですが、下記のような意図から今回や…

システム思考セミナー

先日、システム思考のセミナーに参加してきました。 learningvesper.doorkeeper.jp イベントやセミナー情報のメルマガでたまたま今回のセミナーを見かけて、課題の深掘りをできるようにしていくというところに興味を持ちました。 システム思考とは システム…

SlackでRSSフィードを通知する

個人的にはFeedlyというRSS Readerを使って技術系のニュース等をチェックしているのですが、弊社の主なサービス対象である業界に関するニュースは、個人任せではなくチームとして最新の動向をキャッチアップできる仕組みを作っておいた方が何かと便利です。…

ユーザーローカルの人工知能ボットAPIを試す

以前申し込んであったユーザーローカル人工知能ボットAPIのAPIキーが届いたので試してみました。 下記サイトの開発者向けAPI申込フォームから利用登録をしておくと、後日APIキーがメールで送られてきます。 ai.userlocal.jp APIの機能はこちら 自動会話API …

IoT領域でのデータ分析セミナー

Sassorさんによる、「IoT領域におけるデータ分析の現状とこれから」というセミナーに行ってきました。 イベント概要はこちら。 atnd.org Sassorさんは2010年に創業されて、IoTという言葉が言われ始めた頃から、デバイス作成からサービスまでワンストップで提…

メッセンジャー・チャットUI系スタートアップのピッチイベント

Chat UI Campという、メッセンジャー・チャットUI系のサービスを提供するスタートアップのピッチイベントに行ってきました。 イベントの詳細はこちら www.asahi.com 内容としては、 スタートアップ13社がそれぞれ持ち時間5分でのピッチ&質疑応答 その中から3…

to_travel は DateTime.now に対応してない

RSpecで現在時刻に関連するテストをするときに、Rails4.1からはTimecopを使わなくても ActiveSupport::Testing::TimeHelpers の to_travel というメソッドを使って現在時刻を設定することができます。 たとえば、下記のように現在時刻を返すメソッドがあると…

RailsアプリにPassengerから環境変数を渡す

環境変数によってRailsアプリの動作を切り替えたいことがあって、 nginx + Passenger で動かしているRailsアプリに環境変数を渡す方法を調べました。 nginx の起動スクリプト(/etc/init.d/nginx)に書いても、 /etc/default/nginx に書いてもうまくいかなか…

Rails4 で datetimepicker を使う

Rails4で入力フォームから日時を選択できるように datetimepicker を使ったのですがちゃんと動くまでに軽くはまったのでメモ。 bootstrap3-datetimepicker-rails まずはGemfileに下記エントリを追加して bundle install gem 'momentjs-rails' gem 'bootstrap…

Vagrant VM上のUbuntuから名前解決できない

VagrantでUbuntu環境を立ち上げようとするとChefでのProvision中にabortするというのが発生していてしばらく原因が分からなかったのですが、名前解決できなかったのが問題だったようです。 私のケースでは config.vm.box に chef/ubuntu-14.04 を指定して、 …

Passengerがgitからinstallしたgemを認識しない

Passenger + Nginx でアプリケーションを起動しようとしたときに、下記のようなエラーが出ました。 git://github.com/nzifnab/msgpack-rails.git (at master) is not checked out. Please run `bundle install` (Bundler::GitError) もちろん bundle install…

APIレスポンスとしてのMessagePack検証

今まではネイティブのクライアントへJsonでレスポンスを返していたのですが、新しいサービスを開発する際に、レスポンスをMessagePackにしてはどうかとクライアントサイドから提案があったので検証してみました。 ちなみにリクエストまでMessagePackにすると…

MongoDBとCouchbaseを比べてみました

仕事で新しいサービスのDBを何にするか検討していて、MongoDBと同じような使い方ができてサーバコストが抑えられるものがないか探していたときにCouchbaseのことを思い出してハンズオンセミナーなど受けてきました。結局Couchbaseは使わないことにしたのです…

RailsでMySQLを使う

Ruby on Rails で普通にプロジェクトを作成すると sqlite3 が使われるようになっていますが、mysql を使用するにはプロジェクト作成時に -d オプションで mysql を指定します。 $ rails new turntable_test -d mysql create create README.rdoc create Rakef…

MacにMySQLをインストール

私物のMacBook AirにMySQLをインストールしました。せっかくなので手順をメモしておきます。 インストール自体はHomebrewでコマンド一発です。 $ brew install mysql Warning: It appears you have MacPorts or Fink installed. Software installed with oth…

Rails APサーバの比較検証(Puma, Unicorn, Passenger)

仕事でRailsを使うことになり、APサーバの選定にあたってPuma, Unicorn, Passenger の比較検討を行いました。方法としてはJMeterでAPサーバにデプロイしたRailsアプリケーションに対して負荷をかけられるだけかけるというやり方です。 試験環境 試験の環境と…

MongoDB University で TAやりました

MongoDB Advent Calendar 2013 の 5日目です。 先日、MongoDB University M101P コースのTAをさせていただく機会に恵まれました。MongoDB University というのはMongoDB社が提供している、MongoDBを使用したプログラミングについてオンラインで学習できるコ…

MySQL 特定のDBのコネクション数を確認する

show processlist だとすべてのDBのコネクションが表示されるので、 show processlist コマンドで出力される情報のもとになっている、 information_schema.processlist テーブルにクエリを発行して確認する。 mysql> desc information_schema.processlist; +…

Ubuntuへmongodbをインストール

Ubuntuにmongodbをインストールしたので内容をメモしておきます。 まずapt-keyを追加します。 $ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10 10genのリポジトリを追加します。 $ sudo vi /etc/apt/sources.list.d/10gen.list $ cat …

NginxとFuelPHPの開発環境構築

Nginx、php-fpm、FuelPHPの環境で開発することになったので、 開発環境を構築してみました。 <参考書籍> ハイパフォーマンスHTTPサーバ Nginx入門 はじめてのフレームワークとしてのFuelPHP <参考サイト> FuelPHPをNginxで動かしてみる PHPインストール …

Eclipse, PDT, FuelPHP, EGit で github を使う

Eclipse上でPDTを使ってFuelPHPのプロジェクトをGit管理したかったので、EGit で github を使えるようにしてみました。 参考にさせていただいたサイトはこちら。 FuelPHPってなんじゃ?(Git管理編) Eclipse、PDT、FuelPHP は既に使える状態になっているも…

yum で php-mbstring をインストール

PHPを勉強中なわけですが、下記のようなスクリプトを書いたところ、mb_strlen という関数が使えませんでした。 $ php hello.php テキストを入力:hello PHP Fatal error: Call to undefined function mb_strlen() in /home/akanuma/scripts/php/hello.php o…

CentOSにPHPインストール

PHPを使うことになったので、CentOS5.8にPHP5.3をインストールしました。yumコマンド一発です。 # cat /etc/redhat-release CentOS release 5.8 (Final) # # rpm -qa | grep php # # yum install php Loaded plugins: fastestmirror Loading mirror speeds f…

Haskell GHCiのプロンプト設定

参考にしている書籍にあわせてGHCiのプロンプトを変更するために、ホームディレクトリに下記のように .ghci ファイルを作成しました。 $ cat -n .ghci 1 :set prompt "ghci> " これでGHCiを起動してみます。 $ ghci GHCi, version 6.10.4: http://www.haskel…

Haskell GHCインストール

Scalaを勉強しなおすために、まずHaskellを勉強してからの方がScalaを理解しやすいという話を聞いたので、Haskellの勉強を始めることにしました。ということでまずはHaskellのコンパイラ、GHC(The Glasgow Haskell Compiler)をインストールしました。yumで…

Perl Catalystインストール

Perl と cpanm がインストールされて入れば、Catalystをインストールするには cpanm Ctalyst::Devl を実行するだけでOK。 $ cpanm Catalyst::Devel ! ! Can't write to /usr/lib/perl5/site_perl/5.8.8 and /usr/bin: Installing modules to /home/akanuma/p…

CentOS上からgithubを使う

CentOS上からgithubを使えるようにしたので作業内容をメモ。 まずはyumでgitをインストールします。ちなみにCentOSのバージョンは5.8です。 # yum install git Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: rsync.atw…

Linux ファイル名が文字化けした場合の操作

Linux上でファイル名が文字化けする場合があります。 $ ls result.log.* result.log.Fri result.log.Thu result.log.?? result.log.?? result.log.?? こうなると普通にファイル名を指定して操作することができません。 $ wc -l 'result.log.??' wc: result.l…

CPANでのモジュールインストール時に「サーバの応答にエラーがあるので、接続を終了します。」となってしまう

CGI::Sessionを使うためにCPANでインストールしようとしたところ、「サーバの応答にエラーがあるので、接続を終了します。再試行しています。」となって最終的にインストールに失敗してしまいました。ネットで検索したところ、FTPサーバに接続できていないた…

Perl Date::Simpleのインストール

CPANからDate::Simpleをインストールしようとすると、make testで失敗してインストールできませんでした。 # perl -MCPAN -e 'install Date::Simple' CPAN: Storable loaded ok Going to read /root/.cpan/Metadata Database was generated on Tue, 22 May 2…