New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

fasttext

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fasttext

A nodejs binding for fasttext representation and classification

Source
npmnpm
Version
0.1.0
Version published
Weekly downloads
697
44.61%
Maintainers
1
Weekly downloads
 
Created
Source

node-fasttext

Nodejs binding for fasttext representation and classification.

MIT License npm version downloads Travis Appveyor

This is a link to the Facebook fastText. A Library for efficient text classification and representation learning.

  • FASTTEXT_VERSION = 12;
  • FASTTEXT_FILEFORMAT_MAGIC_INT32 = 793712314;

Installation

Using npm:

npm install fasttext --save

fastText Classifier

According to fasttext.cc. We have a simple classifier for executing prediction models about cooking from stackexchange questions:

const path = require('path');
const fastText = require('fasttext');

const model = path.resolve(__dirname, './model_cooking.bin');
const classifier = new fastText.Classifier(model);

classifier.predict('Why not put knives in the dishwasher?', 5, (err, res) => {
    if (err) {
        console.error(err);
    } else if (res.length > 0) {
        let tag = res[0].label; // __label__knives
        let confidence = res[0].value // 0.8787146210670471
        console.log('classify', tag, confidence, res);
    } else {
        console.log('No matches');
    }
});

Before we haved trained model to use the followings params:

# Training
~/fastText/data$ ./fasttext supervised -input cooking.train -output model_cooking -lr 1.0 -epoch 25 -wordNgrams 2 -bucket 200000 -dim 50 -loss hs
Read 0M words
Number of words:  8952
Number of labels: 735
Progress: 100.0%  words/sec/thread: 1687554  lr: 0.000000  loss: 5.247591  eta: 0h0m 4m

# Testing
~/fastText/data$ ./fasttext test model_cooking.bin cooking.valid
N       3000
P@1     0.587
R@1     0.254
Number of examples: 3000

Nearest neighbor

Simple class for searching nearest neighbors:

const path = require('path');
const fastText = require('fasttext');

const model = path.resolve(__dirname, './skipgram.bin');
const query = new fastText.Query(model);

query.nn('word', 5, (err, res) => {
    if (err) {
        console.error(err);
    } else if (res.length > 0) {
        let tag = res[0].label; // letter
        let confidence = res[0].value // 0.99992
        console.log('Nearest neighbor', tag, confidence, res);
    } else {
        console.log('No matches');
    }
});

Contributing

Pull requests and stars are highly welcome.

For bugs and feature requests, please create an issue.

Keywords

vntk

FAQs

Package last updated on 10 Dec 2017

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts