grpcを使ってみたかったので、npm installできるところまでのメモ。 前提:Ubuntuの用意 $ vagrant box add ubuntu-14.04 https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-amd64-vagrant-disk1.box $ vagrant init ubuntu-1…
(1)~(3)では負荷試験について、負荷をかける方法を学びました。 今回は負荷をかけられたサーバの状態を知る方法についてです。 Ganglia GangliaはRRDtoolのフロントエンドだと思えばいいみたいです。 監視したいサーバ内で、gmondのようなGangliaのプロセス…
今回は、jmeterからMySQLに負荷をかけてみます。 準備 jmeterがあるフォルダのlib以下に、mysql-connector-java-5.1.29-bin.jar を配置します。 このjarファイルはOracleのページからダウンロードできます。次に、テスト計画を作成します。 JDBC RequestとJD…
実際に Apache JMeter を利用して負荷テスト(性能テスト)をやってみました。 JMeterの設定をする コマンドラインからjmeterを起動します。 上の画像のようにスレッドグループを作りました。 とりあえず、自分が作ったサイトのトップページとその後遷移する…
passengerからnginxを使うのは簡単です。passengerをインストールしていれば、passenger-install-nginx-moduleが一緒にインストールされているので、これを実行します。いくつか1問1答形式で答えていくと、勝手にコンパイルしてnginxをインストールしてく…
1つのサーバーでmaster/slave環境を作ります。 ここではmyqsld_multiを利用します。 複数のmysqldをたてる まず、既に /var/lib/mysql のような場所で1つ動いていると仮定します(こいつがマスターになります 元の環境を汚したくないので、/usr/local/var/…
2014/02/20にgit-pluginの2.0.2が出ましたが、バグがあったようです。 2014/02/21にバグが修正された2.0.3がリリースされていますので、あれって思った人はアップデートしましょう!バグがあると、こんなエラーが起きます。 過去のビルドが見れない 以下のよ…
負荷テストをしたことがないので、何回かにわけて負荷テストについて勉強します。 負荷テストとは 以下、IT用語辞典から引用したものです。 負荷テストとは、システムが実際の業務に耐えられる処理能力を持っているかどうかを検証するためのテストのことであ…
topicsには、LDA.scalaしかありません。 LDAとは 文書のトピックを決めるときに使われることがあります。 スマートニュースを想像してもらえばよくわかりますが、ニュースがスポーツだったり、テクノロジーだったりとトピックごとにわけられています。 LDAは…
ScalaNLPのbreezeは以前紹介した通りですが、他のプロジェクトとしてchalkやnakがありました。 今回はchalkの中でもtext以下にあるプログラムがどんなことができるのか調べてみました。ディレクトリを見ると、analyze、segment、tokenize、transformがあった…
以前、C++, PythonからMeCabを使ったことがありますが、JavaやScalaから使ったことがなかったので、使ってみました。 mecab-javaの利用 mecab本体のインストールは他の記事を参照してください。当初、Sbtの設定に一行だけ加えるだけで使えるようになるんじゃ…
前回、Scalaで機械学習などをサポートすることを目的としたScalaNLPを紹介しました。 しかし、ScalaにはJavaの資産を使えるというメリットがあるので、今回はJavaを利用して、PFIが開発しているリアルタイム解析基盤Jubatusを使ってみました。 Jubatusについ…
ScalaNLPとは ScalaNLPには、BreezeとEpicという2つのプロジェクトがある。 Breezeは、Scalaで書かれた機械学習や数値計算のためのライブラリ Epicは、高パフォーマンスな統計的パーザー(Coming soon) Pythonにはnumpyやscipyという便利なライブラリがある…
チュートリアルに従っていけば基本問題なし. 一箇所だけエラーが出た.jsonをインストールするときに以下のエラーが出た. /usr/bin/ruby extconf.rb mkmf.rb can't find header files for ruby at /usr/lib/ruby/ruby.hこれはruby-develをインストールして…
さくらVPSで鍵認証するときにputtygenの結果をそのまま使うと「server refused our key」が出てしまい鍵認証できません.そんなときは ---- BEGIN SSH2 PUBLIC KEY ---- Comment: "rsa-key-20130405" AAAAB3Nzaagfhdhdfj RrEadgarhdfgjjfaga Y+dgadgfhhghdfj…
前回のエントリでインストールしたcdbを使ってみました. 今回はmcdbを利用した例を紹介します. cdbあれこれ 実は最初はcdb++で試行錯誤していたのですが,何か上手く扱えていないらしく,なぜかハッシュ化したデータベースをメモリにのせてしまっているよ…
Constant Database (cdb)のインストールをしたときのメモ. cdbは高速処理のために作られたデータベースで,変更処理ができないようになっています.mcdbとcdb++をインストールしました. mcdb のインストール これはcdbの拡張版. cdbよりも高速かつ大規模…
UTF-8で保存されたテキストの日本語判定をする必要があったので,そのメモ. 参考にしたのは,文字コードUTF-8の多言語を含むテキストデータの中に日本語を含むかどうかを調べる方法を探しております。 考え方 文字ずつUTF-8→UCS-2(あるいは、UCS-4)への変換…
SVMで多項式カーネルを使うメリットを考えてみます. 非線形カーネルである これは当然といったところでしょう. 入力空間をある特徴空間で考えられます. 例えば,2次元平面では分離できなかった標本を3次元,4次元にマッピングすることでうまく分離でき…
ファイルに数値が入っていたときにawkを使って平均を出す方法をメモ普通にpythonとか使って書けばいいのですが,コマンドラインだけで実行できるメリットがあります. 用意するファイル 1.341055 2.124602 2.032869 1.423714 2.488840 1.098920 2.377547 2.2…
Djangoでcssやimageを使いたいけど,どう設置していいかわからないときのメモです. settings.pyなどの変更 Djangoのチュートリアルで使ったmysiteの構成を考えます.まずmysiteの下にstaticフォルダを作ります. mysite/ __init__.py manage.py settings.py…
機械翻訳のデモをやりたいと思ったときに,さすがにローカルのマシンでMosesを動かすのは自殺行為です. そこで,どこかのサーバーに置いておいて,そこにアクセスしたくなるでしょう. そのときのメモです. daemon.plを使う 詳しくはTranslating Web pages…
前回に引き続き,ドメイン適応させるときに翻訳モデルを線形補間したくなったときのメモです. tmcombine.pyを使う 今回は言語モデルのときとは異なり,単純にmoses.iniに2つ翻訳モデルを書けば出来るわけではないようです. そこで,tmcombine.pyを使いま…
機械翻訳をやるときにドメイン適応させるために複数の言語モデルを線形補間したくなることがあります. そのときの方法をメモしておきます. 線形補間の式 各々のドメインで学習した言語モデルをとしたときの式です. IRSTLMを使ったときのチューニング IRST…
C++で正規表現を使いたいなって思った時のことです. std::regex_replace か boost::regex_replace か? 最初は,std::regex_replaceを使うつもりで意気揚々と乗り込んだのですが, std::regex_replaceがなんちゃらってエラーメッセージが出て使えませんでし…
liblinearというSVM学習ライブラリを用いてマルチラベルをやろうとしたときの話です. 公式サイトにマルチラベルと書いてある!? LIBSVM Tools: Multi-label classificationのページにマルチラベル分類について書いてあります. このページの案内に従って,…
C++でMeCabを使ってみます. いろいろなファイルは全て揃ってること前提です. プログラム #include <iostream> #include <mecab.h> #include <string> int main(int argc, char **argv) { std::string input2 = "すもももももももものうち"; const char* input = input2.c_str(); MeCab</string></mecab.h></iostream>…
例えば,2つのintをハッシュのキーにしたいと思ったときの対処法です. boostの利用 今回は boost/unordered_map.hpp と boost::hash_combine を利用します. この hash_combine によって、ハッシュ値を計算します. hash_combine は与える値の順番によって…
ファイルが大きくなると、どうしても圧縮して保存しなくてはいけません。 そんなときにpythonのgzipを使ったときにどれくらいの遅延がでるのか知りたくて調べてみました。 プログラム #-*- coding:utf-8 -*- import time import gzip def test_a(): """圧縮…
ファイルが大きくなると、どうしても圧縮して保存しなくてはいけません。 そんなときにpythonのgzipを使ったときにどれくらいの遅延がでるのか知りたくて調べてみました。 プログラム #-*- coding:utf-8 -*- import time import gzip def test_a(): """圧縮…