Coder Social home page Coder Social logo

sag-kelp / kelp-full Goto Github PK

View Code? Open in Web Editor NEW
51.0 14.0 10.0 54.54 MB

Home Page: http://www.kelp-ml.org

License: Apache License 2.0

Java 100.00%
machine-learning kernel-methods kernel-functions batch-learning online-learning tree-kernel clustering-algorithm

kelp-full's Introduction

kelp-full

KeLP is the Kernel-based Learning Platform developed in the Semantic Analytics Group of the University of Roma Tor Vergata.

This is a complete package of KeLP. It aggregates the following modules:

  • kelp-core: it contains the core interfaces and classes for algorithms, kernels and representations. It contains also the base set of classifiers, regressors and clustering algorithms. It serves as the main module to develop new kernel functions or new algorithms.

  • kelp-additional-kernels: it contains additional kernel functions, such as the Tree Kernels or the Graph Kernels.

  • kelp-additional-algorithms: it contains additional learning algorithms, such as the KeLP Java implementation of Liblinear or Online Learning algorithms, such as the Passive Aggressive.

KELP is released as open source software under the Apache 2.0 license and the source code is available on Github.

##Working examples

This packages contains a set of fully functioning examples showing how to implement a learning system with KeLP. Batch learning algorithm as well as online learning algorithms usage is shown here. Different examples cover the usage of standard kernel, tree kernels and sequence kernel, with caching mechanisms.

Clone this project to obtain access to these examples with the complete datasets with:

git clone https://github.com/SAG-KeLP/kelp-full.git

NOTE: many of the provided examples require some memory in order to load the datasets and set up the kernel cache. You can assign memory to the Java Virtual Machine (JVM) using the option -Xmx. For instance -Xmx2G will provide 2G of memory to the JVM. In Eclipse such parameter shuld be written in Run->Run Configurations->Arguments->VM arguments.

Classification:

  • QuestionClassification (it.uniroma2.sag.kelp.examples.demo.qc): this class implements the Question Classification demo. It includes both kernel operating on vectors and kernel operating on trees (stk, ptk, sptk, csptk).
  • QuestionClassificationLearningFromJson (it.uniroma2.examples.demo.qc): the same demo as QuestionClassification with the difference that the learning algorithm specification is read from a Json file.
  • RCV1BinaryTextCategorizationLibLinear, RCV1BinaryTextCategorizationPA, RCV1BinaryTextCategorizationPegasos, RCV1BinaryTextCategorizationDCD and RCV1BinaryTextCategorizationSCW(it.uniroma2.sag.kelp.examples.demo.rcv1) are examples of binary classifiers on the RCV1 dataset that can be found on the LibLinear website. These classes perform a N-Fold Cross Validation and show KeLP facilities to divide a dataset in N-Fold.
  • TweetSentimentAnalysisSemeval2013 (it.uniroma2.sag.kelp.examples.demo.tweetsent2013): a demo with multiple kernels and multiple classes on a dataset for the Twitter Sentiment Analysis task of Semeval2013.
  • NystromExampleMain (it.uniroma2.sag.kelp.examples.demo.nystrom): an example that shows the usage of the NystromMethod to project examples into linear representation, i.e. vectors. It is used within Question Classification.
  • OneVsAllSVMExample (it.uniroma2.sag.kelp.examples.main): an example that shows the usage of the OneVsAll strategy with SVM over the IRIS dataset for a multiclassification schema.
  • SequenceKernelExample (it.uniroma2.sag.kelp.examples.main): an example that shows the usage of a Sequence Kernel.
  • MultipleRepresentationExample (it.uniroma2.sag.kelp.examples.main): a basic example showing the usage of multiple representations with multiple kernel functions with a PassiveAggressive algorithm.
  • KernelCacheExample (it.uniroma2.sag.kelp.examples.main): an example that shows the usage of the KernelCache class to store the already computed kernel values between instances.
  • MutagClassification (it.uniroma2.sag.kelp.examples.demo.mutag): an example that shows the application of graph kernels to the mutag dataset
  • SequenceLearningKernelMain and SequenceLearningLinearMain (it.uniroma2.sag.kelp.examples.demo.seqlearn): some examples showing how to use KeLP to operate over the labeling of items in a sequence, making the classification of each item dependant on the decision made on the previous one(s).

Regression:

  • EpsilonSVRegressionExample (it.uniroma2.sag.kelp.examples.demo.regression): This class contains an example of the usage of the Regression Example. The regressor implements the e-SVR learning algorithm discussed in [CC Chang & CJ Lin, 2011]. In this example a dataset is loaded from a file and then split in train and test.

Clustering:

  • KernelBasedClusteringExample (it.uniroma2.sag.kelp.examples.demo.clustering): this class contains an example of the usage of the Kernel-based clustering.
  • LinearKMeansClusteringExample (it.uniroma2.sag.kelp.examples.demo.clustering): this class contains an example of the usage of the Linear K-means clustering.

General Purpose:

  • ClassificationDemo (it.uniroma2.sag.kelp.examples.main): it is a meta-learner that takes in input a Json description and a dataset.
  • Learn (it.uniroma2.sag.kelp.main): the main file for learning a model. It takes in input a training dataset, a learning algorithm description in JSON and the path where the model will be saved.
  • Classify (it.uniroma2.sag.kelp.main): the main file for classification. It takes in input the dataset to be classified, a previously learned model and the path where to store the final classifications.

##Including KeLP in your project

If you want to include the full functionalities of KeLP you can easily include it in your Maven project adding the following repositories to your pom file:

<repositories>
	<repository>
			<id>kelp_repo_snap</id>
			<name>KeLP Snapshots repository</name>
			<releases>
				<enabled>false</enabled>
				<updatePolicy>always</updatePolicy>
				<checksumPolicy>warn</checksumPolicy>
			</releases>
			<snapshots>
				<enabled>true</enabled>
				<updatePolicy>always</updatePolicy>
				<checksumPolicy>fail</checksumPolicy>
			</snapshots>
			<url>http://sag.art.uniroma2.it:8081/artifactory/kelp-snapshot/</url>
		</repository>
		<repository>
			<id>kelp_repo_release</id>
			<name>KeLP Stable repository</name>
			<releases>
				<enabled>true</enabled>
				<updatePolicy>always</updatePolicy>
				<checksumPolicy>warn</checksumPolicy>
			</releases>
			<snapshots>
				<enabled>false</enabled>
				<updatePolicy>always</updatePolicy>
				<checksumPolicy>fail</checksumPolicy>
			</snapshots>
			<url>http://sag.art.uniroma2.it:8081/artifactory/kelp-release/</url>
		</repository>
	</repositories>

Then, the Maven dependency for the whole KeLP package:

<dependency>
    <groupId>it.uniroma2.sag.kelp</groupId>
    <artifactId>kelp-full</artifactId>
    <version>2.1.0</version>
</dependency>

Alternatively, thanks to the modularity of KeLP, you can include a fine grain selection of its modules adding to your POM files only the dependancies you need among the modules stated above.

How to cite KeLP

If you find KeLP usefull in your researches, please cite the following paper:

@article{JMLR:v18:16-087,
  author  = {Simone Filice and Giuseppe Castellucci and Giovanni Da San Martino and Alessandro Moschitti and Danilo Croce and Roberto Basili},
  title   = {KELP: a Kernel-based Learning Platform},
  journal = {Journal of Machine Learning Research},
  year    = {2018},
  volume  = {18},
  number  = {191},
  pages   = {1-5},
  url     = {http://jmlr.org/papers/v18/16-087.html}
}

Usefull Links

KeLP site: http://www.kelp-ml.org

SAG site: http://sag.art.uniroma2.it

Source code hosted at GitHub: https://github.com/SAG-KeLP

kelp-full's People

Contributors

crux82 avatar joedsm avatar kamei86i avatar simonefilice avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kelp-full's Issues

Incremental training

Hi,
I have a quick question about your library.
Is it possible to train a model, save it in json, then load it, and continue training?

Getting tp, tn, fp, and fn for each class in the case of Multi-class classification

Hi,
I have a multi-class classification and I need to evaluate the classifier based on micro-averaging measures, e.g. micro-precision, micro-recall and micro-f1. For this purpose, I need to get tp, tn, fp, fn of each class of the problem. Unfortunately, it is not possible to get such information from MulticlassClassificationEvaluator class. Can you please add such capabilities.

Thanks in advance.

Could kelp-input-generator process Chinese word ?

Recently, I used KELP to analyze short text classification. However, I encountered the following problem.

  1. Could kelp-input-generator analyze Chinese words?
  2. If I have the string already processed by Stanford Parser, how could I parse these data into tree presentation like LCT or GRCT? Just like: (ROOT(NP(NR 湯姆)(CC 和)(NR 傑利))(VP(ADVP(AD 正在))(PP(NP(NR 花園)))(PP(P 替)(NP(NR 花草)))(VP(VV 灌溉)))).

Thank you for help.

Error when creating maven project

Hi,
I've encountered some problems when trying to import kelp-full into my maven project. I followed the instruction given in readme.md and edited my pom.xml , however, no jar seems to be download. Could you kindly help me figure out what's the problem. Thanks

Parenthesis within String Literals

KeLP cannot ignore parenthesis within the string literal
e.g. tree representation ("str+("), it would crash because it has an open parenthesis inside the string.

CGRCT creation and CSPTK similarity computation

Hi,

I've seen that kelp-input-generator provide the possibility to generate GRCT, LOCT, LCT, so I was wondering if there is also way to generate the Compositional Grammatical Relation Centered Tree of a sentence using KeLP.

I've also read issue 6 and seen how kernel similarity between two tree representation is computed using SubSetTreeKernel, SubTreeKernel and PartialTreeKernel. Is there a way to compute such similarity using a Compositionally Smoothed Partial Tree Kernel?

Thanks in advance

Best regards
Marco

Bug in method isCompatible of SequenceRepresentation

The method isCompatible of SequenceRepresentation wrongly checks whether the given representation is an instance of TreeRepresentation.

As a matter of fact, it's not possible to properly use sequence representations and, thus, sequence kernels right now.

Would be great if this could be fixed soon!

Thanks,
Henning

NegativeArraySizeException

Hi,
I have upgraded kelp-full maven dependency to version 2.2.1 recently, after that I got "NegativeArraySizeException" with the last line of the following lines of code:

int cacheSize = trainingSet.getNumberOfExamples();
PartialTreeKernel ptk = new PartialTreeKernel("lct");
ptk.setMu((float) 0.4);
ptk.setLambda((float) 0.4);
ptk.setKernelCache(new FixIndexKernelCache(cacheSize));

I have tested other types of KernelCache and I got the same error. While with previous version I did not get such errors. If I should set somethings or add some codes, can you please direct me.

Regards

FixIndexKernelCache

Hi,
I have a 70,000 row data set, and I have converted them into LCT. When I run classification, I got NegativeArraySizeException and the message indicate to usedKernel.setKernelCache(new FixIndexKernelCache(cacheSize)). I think maybe it was caused by the maximum value of Integer. Do I have any other cache to run the data set? Thank you!

Can KeLP kernel functions be used with abstract syntax trees?

Hi,
Unlike natural language text I have source code which I converted to an abstract syntax tree (AST). I want to run tree kernels on these ASTs but I suppose GRCT is not what I need. Even though KeLP is not limited to natural language but at the moment can we use KeLP kernel functions to work with ASTs, of course, with some modifications to the code? What modifications might be needed and do you think it is worthwhile?
Thank you

Normalized PTK

For the partial tree kernel, you only have a non-normalized kernel computation. How can I normalize the score?

How to classify a document?

Can KeLP be used in order to classify an entire document written in natural language?
I've tried to do these steps:

  • generating the syntax tree (TreeRepresentation) from each sentence of my document using the Stanford Parser module;
  • assigning a class label to the trees;
  • putting them in a dataset for training or testing;
  • executing the classification algorithm with the TreeKernel.
    My problem is that the classifier works to every single sentence as a separate example, losing the "document concept". Each sentence is classified, but how can I classify an entire document?

Thanks.

different number of open and close parentheses

When I call setDataFromText function using the following tree representation
((ROOT (S (NP (NNP KeLP)) (VP (VBZ is) (ADJP (JJ very amazing)))))
it works fine but a few extra spaces here and there(shown using asteriks *) e.g. as shown below
(ROOT (S (NP (NNP****** KeLP)) (VP (VBZ is) (ADJP (JJ very amazing)))))
gives the error that parentheses are not equal and following is printed
Error in analyzing: (ROOT(S(NP(NNP((((((KeLP))))(VP(VBZ(is))(ADJP(JJ(very(amazing))))))))))

Another example:
((ROOT (S (NP (NNP KeLP)) (VP******(VBZ is) (ADJP (JJ very amazing)))))
Error in analyzing: (ROOT(S(NP(NNP(KeLP)))(VP(((VBZ(((is))(ADJP(JJ(very(amazing)))))))))).
So extra spaces are replaced by arbitrary number of parenthesis which creates a problem during analysis. Since I have source code lines i.e. entire sentences instead of words I cannot control the spaces. Hence any workaround or suggestions welcome. thanks

unrecognized structureElement StringLiteral

Has anyone faced this issue and knows a workaround? Below is the exception I get while setting data using setDataFromText() function.

[main] WARN it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel - Increasing the size of cache matrices to host trees with height=22 and maxBranchingFactor=50 [main] WARN it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel - Increasing the size of cache matrices to host trees with height=34 and maxBranchingFactor=391 [main] WARN it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel - Increasing the size of cache matrices to host trees with height=22 and maxBranchingFactor=50 [main] WARN it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel - Increasing the size of cache matrices to host trees with height=23 and maxBranchingFactor=153 [main] WARN it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel - Increasing the size of cache matrices to host trees with height=30 and maxBranchingFactor=50 [main] WARN it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel - Increasing the size of cache matrices to host trees with height=24 and maxBranchingFactor=50 java.lang.IllegalArgumentException: unrecognized structureElement StringLiteral:" at it.uniroma2.sag.kelp.data.representation.structure.StructureElementFactory.parseStructureElement(StructureElementFactory.java:121) at it.uniroma2.sag.kelp.data.representation.structure.StructureElementFactory.parseStructureElement(StructureElementFactory.java:154) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO.parseNode(TreeIO.java:141) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:89) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO._parseCharniakSentence(TreeIO.java:124) at it.uniroma2.sag.kelp.data.representation.tree.utils.TreeIO.parseCharniakSentence(TreeIO.java:56) at it.uniroma2.sag.kelp.data.representation.tree.TreeRepresentation.setDataFromText(TreeRepresentation.java:253)

Any help is appreciated.

TreeKernel similarity computation

Hi,

I'm trying to compute similarity between two TreeRepresentations using different Kernel Type.
I'm following the example reported by @crux82 in ISSUE 6 but I'm encountering some problems.

Whenever I compute similarity between two different TreeRepresentation objects using SubTreeKernel and SubSetTreeKernel, I get the same value.
The two values are different only if I try to compute such similarities over the same object.
For example:

TreeRepresentation t1 = new TreeRepresentation();
t1.setDataFromText("(a (b) (c (d)))");
TreeRepresentation t2 = new TreeRepresentation();
t2.setDataFromText("(a (b) (c (d)))");

SubSetTreeKernel subSetTreeKernel = new SubSetTreeKernel(1f, "tree");
SubTreeKernel subTreeKernel = new SubTreeKernel(1f, "tree");

System.out.println("CASE 1:");
System.out.println("Similarity t1-t2 SubSetTreeKernel res = " + subSetTreeKernel.kernelComputation(t1, t2));
System.out.println("Similarity t1-t2 SubTreeKernel res = " + subTreeKernel.kernelComputation(t1, t2));

System.out.println("CASE 2:");
System.out.println("Similarity t1-t1 SubSetTreeKernel res = " + subSetTreeKernel.kernelComputation(t1, t1));
System.out.println("Similarity t1-t1 SubTreeKernel res = " + subTreeKernel.kernelComputation(t1, t1));

OUTPUT:
CASE 1
Similarity t1-t2 SubSetTreeKernel res = 4.0
Similarity t1-t2 SubTreeKernel res = 4.0
CASE 2
Similarity t1-t1 SubSetTreeKernel res = 5.0
Similarity t1-t1 SubTreeKernel res = 4.0

Am I doing it wrong or the similarities should be 5.0 (for SST) and 4.0 (for ST) in both cases?

Would it also be possible to have an example of how similarity is computed using SmoothedPartialTreeKernel with different StructureElementSimilarity?

Thank you so much for your kind attention.

Best regards
Marco

Error running PTK with large trees

Hi,

I am trying to use the PTK with large trees and I receive the following error:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 50 at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:386) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.stringKernelDeltaFunction(PartialTreeKernel.java:405) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.ptkDeltaFunction(PartialTreeKernel.java:330) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.evaluateKernelNotNormalize(PartialTreeKernel.java:261) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.kernelComputation(PartialTreeKernel.java:302) at it.uniroma2.sag.kelp.kernel.tree.PartialTreeKernel.kernelComputation(PartialTreeKernel.java:1) at it.uniroma2.sag.kelp.kernel.DirectKernel.kernelComputation(DirectKernel.java:66) at it.uniroma2.sag.kelp.kernel.Kernel.squaredNorm(Kernel.java:170) at it.uniroma2.sag.kelp.kernel.standard.NormalizationKernel.kernelComputation(NormalizationKernel.java:49) at it.uniroma2.sag.kelp.kernel.Kernel.innerProduct(Kernel.java:93) at it.uniroma2.sag.kelp.kernel.pairs.UncrossedPairwiseProductKernel.kernelComputationOverPairs(UncrossedPairwiseProductKernel.java:94) at it.uniroma2.sag.kelp.kernel.pairs.KernelOnPairs.kernelComputation(KernelOnPairs.java:42) at it.uniroma2.sag.kelp.kernel.Kernel.innerProduct(Kernel.java:93) at it.uniroma2.sag.kelp.kernel.standard.LinearKernelCombination.kernelComputation(LinearKernelCombination.java:94) at it.uniroma2.sag.kelp.kernel.Kernel.innerProduct(Kernel.java:89) at KernelCacheCreatorTaskD.main(KernelCacheCreatorTaskD.java:79)

Thanks in advance
Salvatore

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.