Skip to content

Instantly share code, notes, and snippets.

@TkrUdagawa
TkrUdagawa / Jubatus MIX アルゴリズム.md
Last active January 3, 2016 20:09
https://gist.github.com/kumagi/8000306 の清書Jubatus MIXアルゴリズムの改善の折に、ドキュメント周りの整備をする

Jubatus MIXアルゴリズムの改善

##概要 Jubatus 0.5.0から0.5.1のアップデートで、MIXで交換する学習モデルにバージョン情報を持たせる変更を行った。 これによりモデル更新失敗時の耐用性(?)や新規プロセス追加時の運用性が向上する。 ここでは、これまでのMIXアルゴリズムの挙動とその問題点をまとめ、それらに対する今回のアップデートによる解決法を記述する。 また、この変更によりユーザーに留意していただきたい点についてまとめる。

###1. Jubatus 0.5.0 までのMIXアルゴリズム

from jubatus.recommender import client
from jubatus.recommender import types
from jubatus.common import Datum
NAME="lsh_nn_test"
port = 9199
serv = "127.0.0.1"
recommender = client.Recommender(serv, port, NAME)
d1 = Datum()
d1.add_number("height", 165.0)
#include <string>
#include <utility>
#include <vector>
#include <iostream>
#include <sstream>
#include <jubatus/core/anomaly/light_lof.hpp>
#include <jubatus/util/lang/shared_ptr.h>
#include <jubatus/core/nearest_neighbor/euclid_lsh.hpp>
#include <jubatus/core/storage/column_table.hpp>
#include <jubatus/core/driver/anomaly.hpp>
@TkrUdagawa
TkrUdagawa / cla.txt
Last active November 9, 2015 08:36
https://www.apache.org/licenses/icla.txt に準じた書式で書く
# Jubatus Contributor License Agreement
# 貢献者ライセンス同意書
Thank you for your interest in Jubatus project (hereinafter referred to as "Jubatus") which Jubatus community handles.
Jubatusコミュニティが運営するオープンソースプロジェクト (以下, 「Jubatus」といいます。) に関心をお寄せいただき, ありがとうございます。
In order to clarify the intellectual property license granted with Contributions from any person or entity, Jubatus community must have a Contributor License Agreement ("CLA") on file that has been signed by each Contributor, indicating agreement to the license terms below.
貢献者によるプロジェクトへの貢献について、知的財産権の許諾を得ていることを明確にするため、Jubatusコミュニティは, 各貢献者が署名した「貢献者ライセンス同意書」(以下「この契約」といいます。) を保存しておく必要があります。
This license is for your protection as a Contributor as well as the protection of Jubatus community; it does not change your rights to use your own Contributions for any other purpose.
Subject: Release Announcement: Jubatus 0.8.6
Hi Jubatus guys,
We are happy to announce that Jubatus 0.8.6 is now available.
In this release we have implemented the morpheme n-gram in Mecab feature extraction plugin.
You can use consecutive morphemes as a feature in Japanese text.
The full changelogs are as follows:
======== test.py ====================
from jubatus.anomaly import client
from jubatus.common import Datum
cl = client.Anomaly("127.0.0.1", 9199, "test", 0)
for num in range(20):
d = Datum({str(1): num})
print cl.add(d)
cl.clear()
ハンズオンで扱ったgenderのjubadumpの実行結果です。
"storage" : "weight" 以下に各特徴量のラベルごとの重みが出力されます。
例)
"bottom$skirt@str#bin\/bin": {
"male": {
"v1": -0.272366054356,
"v3": 0,
"v2": 0
},
diff --git jubatus/core/bandit/bandit_factory_test.cpp jubatus/core/bandit/bandit_factory_test.cpp
index 559b5be..a1117c6 100644
--- jubatus/core/bandit/bandit_factory_test.cpp
+++ jubatus/core/bandit/bandit_factory_test.cpp
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import time
from jubatus.recommender.client import Recommender
from jubatus.common import Datum
interval_count = 512
#include <iostream>
#include <vector>
#include <cmath>
using std::vector;
using std::sqrt;
float add_inp_scores(vector<float> a,
vector<float> b) {
unsigned int i;