1.4.0 [July 2, 2013] - Fixed bugs in DistanceCosine and DistanceL2 - Fixed a bug in GraphMetrics where weighted centralities were not computed correctly - Added Approximate Centrality metrics (Alpha-Centrality, Pagerank) as defined in: Non-Conservative Diffusion and its Application to Social Network Analysis. Ghosh, R.; Lerman, K.; Surachawala, T.; Voevodski, K.; and Teng, S. 2011. http://arxiv.org/abs/1102.4639 These are available through the GraphStat function 1.3.0 [May 8, 2012] - NetKit can now build relational classifiers on multiple types of nodes. - Fixed assortativity computations in GraphMetrics to correctly handle multiple types of nodes. - Changed classes in netkit.classifiers.aggregators to take typed inputs (EdgeType and Node) rather than String - Updated all calling methods to new aggregator signatures - Fixed a bug in DataSampler.crossValidate(int numSplits) - Fixed a bug in ClassDistribRelNeighbor inference to correctly deal with zero-vectors and NaN values. - Added toString() methods to relational and nonrelational classifiers - Changed WeightedVoteRelationalNeighbor inference to not use aggregators to make it faster - Finalized adding edge-creation capabilities to NetKit -- it can now generate edges between instances based on various similarity metrics. Based on: Sofus A. Macskassy (2011). Relational Classifiers in a Non-relational world: Using Homophily to Create Relations. The Tenth International Conference on Machine Learning and Applications, 2011. These are available through the edge creation parameters when doing relational learning. 1.2.1p1 [August 22, 2010] - Fixed EdgeTransform to read the correct file (previosuly the input file was always null). 1.2.1 [August 5, 2010] - Fixed bug in exporting/saving NetKit graphs (extra ',' was sometimes added to lines in the nodes files) - Added capabilities to save pajek graphs using different labels and colors (as part of GraphStat functionality) 1.2.0 [August 2, 2010] - Refactored parts of NetworkLearning into Netkit, GraphStat and EdgeTransformer and created three distinct workflows from the main commandline - Added support for GraphStat to compute and save various graph statistics, including saving clusters and components - output in netkit, graphviz (.dot) or pajek formats are supported - Added support for reading and write Pajek net files - Added support for saving inference steps as a pajek project file to vizualize collective inferencing in Pajek - beta capabilities for creating/augmenting graphs with new edges 1.1.0 [May 4, 2010] - Features added: - Active learning added to work with the Harmonic classifier. This adds functionality to duplicate work reported in the KDD-2009 paper on active learning. 1.0.5 (not released) - Features added: - Graph now has a 'subGraph' method to get self-contained sub-graphs defined by a nodeset from the original graph. 1.0.4 [April 21, 2009] - Bugs fixed: - NetworkLearning had bad getter/setter methods for known, truth and test parameters. Fixed. 1.0.3 [August 22, 2008] - Bugs fixed: - SharedNodeInfo - fixed 'countNeighbors' to correctly know when to use a cached counting value or when it needs to recount - PrintEstimateWriter.PrintEstimate.print() now correctly catches when an invalid/unknown class value is being printed. - RelaxationLabeling now correctly outputs its name (instead of 'BeliefPropagation') - Classification constructor now correctly deals with nodes whose class label is missing. - Updated methods - NetworkLearning has made some of its methods public: * getAttribute() * getLearner() - Changes - NetworkLearning has had many getter/setter methods added to promote running NetKit programmatically - Graph now lets you get an array of edgeTypes directly - AggregatorByValueImp and AggregatorImp now has toString() methods - DataView now always has truth and knows if it has missing class labels for any node - DataSplit now knows if it has the complete truth for the test set - ReadPrior now can read priors from a BufferedReader (to promote doing this programmatically) - Factory now throws a more informative exception if a .properties file or a property is not found. 1.0.2 [August 1, 2008] - Bugs fixed: - Node.getNeighbors(String) would throw NullPointerException of no neighbors of the given type. It now returns an empty array. - HistogramDiscrete.getMedianValue() returned a bogus number - New methods - GraphMetrics have a lot of new methods for computing various graph metrics suchs as closeness, betweenness, graph centrality, graph density - GraphMetrics can now export a graph as a COLT MatrixDouble2D (needs the colt library in the classpath to use this functionality) 1.0.0 Initial Release