Пример #1
0
def flushBuffer(x, y, t):
	c = int(cnt[x, y, t])
	fvs = []
	for cutFrom, cutTo, fvSize, gmm, partName in parts:
		desc = np.ascontiguousarray(buffer[x, y, t, :c, cutFrom:(1 + cutTo)])
		fv = yael.fvec_new_0(fvSize)
		yael.gmm_fisher(c, yael.FloatArray.acquirepointer(yael.numpy_to_fvec(desc)), gmm, flags, fv)
		fvs.append(yael.fvec_to_numpy(fv, fvSize).flatten())
	
	ndescr[x, y, t] += c
	cnt[x, y, t] = 0
	return np.sqrt(c) * np.hstack(tuple(fvs))
Пример #2
0
def flushBuffer(x, y, t):
    c = int(cnt[x, y, t])
    fvs = []
    for cutFrom, cutTo, fvSize, gmm, partName in parts:
        desc = np.ascontiguousarray(buffer[x, y, t, :c, cutFrom:(1 + cutTo)])
        fv = yael.fvec_new_0(fvSize)
        yael.gmm_fisher(
            c, yael.FloatArray.acquirepointer(yael.numpy_to_fvec(desc)), gmm,
            flags, fv)
        fvs.append(yael.fvec_to_numpy(fv, fvSize).flatten())

    ndescr[x, y, t] += c
    cnt[x, y, t] = 0
    return np.sqrt(c) * np.hstack(tuple(fvs))
Пример #3
0
#! /usr/bin/env python

import sys
import argparse
import numpy as np
import yael

parser = argparse.ArgumentParser()
parser.add_argument('--gmm_ncomponents', type=int, required=True)
parser.add_argument('--vocab', nargs=2, required=True)
args = parser.parse_args()
cutFrom, cutTo = map(int, args.vocab[0].split('-'))

data = np.loadtxt(sys.stdin,
                  dtype=np.float32,
                  usecols=range(cutFrom, 1 + cutTo))

npoints, nfeatures = data.shape
niter = 50
nthreads = 1
seed = 0
redo = 1
flags = yael.GMM_FLAGS_W
gmm = yael.gmm_learn(nfeatures, npoints, args.gmm_ncomponents, niter,
                     yael.FloatArray.acquirepointer(yael.numpy_to_fvec(data)),
                     nthreads, seed, redo, flags)

yael.gmm_write(gmm, open(args.vocab[1], 'w'))
Пример #4
0
#! /usr/bin/env python

import sys
import argparse
import numpy as np
import yael

parser = argparse.ArgumentParser()
parser.add_argument('--gmm_ncomponents', type = int, required = True)
parser.add_argument('--vocab', nargs = 2, required = True)
args = parser.parse_args()
cutFrom, cutTo = map(int, args.vocab[0].split('-'))

data = np.loadtxt(sys.stdin, dtype = np.float32, usecols = range(cutFrom, 1 + cutTo))

npoints, nfeatures = data.shape
niter = 50
nthreads = 1
seed = 0
redo = 1
flags = yael.GMM_FLAGS_W
gmm = yael.gmm_learn(nfeatures, npoints, args.gmm_ncomponents, niter, yael.FloatArray.acquirepointer(yael.numpy_to_fvec(data)), nthreads, seed, redo, flags)

yael.gmm_write(gmm, open(args.vocab[1], 'w'))