Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/factorie/factorie
FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference.
https://github.com/factorie/factorie
Last synced: 10 days ago
JSON representation
FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference.
- Host: GitHub
- URL: https://github.com/factorie/factorie
- Owner: factorie
- License: apache-2.0
- Created: 2013-06-25T01:21:29.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2017-12-19T16:36:45.000Z (over 6 years ago)
- Last Synced: 2024-05-07T10:07:40.824Z (16 days ago)
- Language: Scala
- Size: 43.9 MB
- Stars: 553
- Watchers: 70
- Forks: 145
- Open Issues: 26
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.txt
- License: LICENSE.txt
Lists
- AI - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modelling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modelling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learnings - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning-library - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modelling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modelling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-master - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning - FACTORIE - FACTORIE is a toolkit for deployable probabilistic modeling, implemented as a software library in Scala. It provides its users with a succinct language for creating relational factor graphs, estimating parameters and performing inference. (Scala / General-Purpose Machine Learning)
- awesome-machine-learning-cn - 官网
- awesome-scala - FACTORIE ★ 486 ⧗ 7 - A toolkit for deployable probabilistic modeling, implemented as a software library in Scala. (Science and Data Analysis)
README
# FACTORIE
[![Build Status](https://travis-ci.org/factorie/factorie.svg?branch=master)](https://travis-ci.org/factorie/factorie)
This directory contains the source of FACTORIE, a toolkit for probabilistic modeling based on imperatively-defined factor graphs. More information, see [the FACTORIE webpage](http://factorie.cs.umass.edu).
## Installation
Installation relies on Maven, version 3. If you don't already have maven, install it from http://maven.apache.org/download.html.
Alternatively, you can use [sbt](http://scala-sbt.org) as outlined below (a script for running sbt comes bundled with Factorie).To compile type
```
$ mvn compile
```To accomplish the same with sbt, type
```
$ ./sbt compile
```You might need additional memory. If so, for sbt type
```
export SBT_OPTS="$SBT_OPTS -Xmx1g"
```and for Maven type:
```
export MAVEN_OPTS="$MAVEN_OPTS -Xmx1g -XX:MaxPermSize=128m"
```To create a self-contained .jar, that contains FACTORIE plus all its dependencies, including the Scala runtime, type
```
$ mvn -Dmaven.test.skip=true package -Pjar-with-dependencies
```To accomplish the same with sbt, type
```
$ ./sbt assembly
```To create a similar self-contained .jar that also contains all resources needed for NLP (including our lexicons and pre-trained model parameters), type
```
$ mvn -Dmaven.test.skip=true package -Pnlp-jar-with-dependencies
```To accomplish the same with sbt, type
```
$ ./sbt -J-Xmx2G with-nlp-resources:assembly```
## Try out a simple exampleTo get an idea what a simple FACTORIE program might look like, open one of the class files in the tutorial package
```
$ ls src/main/scala/cc/factorie/tutorial
```
To run one of these examples using maven type
```
$ mvn scala:run -DmainClass=cc.factorie.tutorial.Grid
```## Try out implemented NLP models
Then you can run some FACTORIE tools from the command-line. For example, you can run many natural language processing tools.
```
$ bin/fac nlp --wsj-forward-pos --conll-chain-ner
```will launch an NLP server that will perform part-of-speech tagging and named entity recognition in its input. The server listens for text on a socket, and spawns a parallel document processor on each request. To feed it input, type in a separate shell
```
$ echo "I told Mr. Smith to take a job at IBM in Raleigh." | nc localhost 3228
```You can also run a latent Dirichlet allocation (LDA) topic model. Assume that "mytextdir" is a directory name containing many plain text documents each in its own file. Then typing
```
$ bin/fac lda --read-dirs mytextdir --num-topics 20 --num-iterations 100
```will run 100 iterations of a sparse collapsed Gibbs sampling on all the documents, and print out the results every 10 iterations. FACTORIE's LDA implementation is faster than MALLET's.
You can also train a document classifier. Assume that "sportsdir" and "politicsdir" are each directories that contain plan text files in the categories sports and politics. Typing
```
$ bin/fac classify --read-text-dirs sportsdir,politicsdir --write-classifier mymodel.factorie
```will train a log-linear by maximum likelihood (MaxEnt) and save it in the file "mymodel.factorie".
The above are simply a few simple command-line options. Internally the FACTORIE library contains extensive and general facilities for factor graphs: data representation, model structure, inference, learning.