当前位置: 首页>>代码示例>>C#>>正文


C# Cluster.addPhrases方法代码示例

本文整理汇总了C#中Cluster.addPhrases方法的典型用法代码示例。如果您正苦于以下问题:C# Cluster.addPhrases方法的具体用法?C# Cluster.addPhrases怎么用?C# Cluster.addPhrases使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Cluster的用法示例。


在下文中一共展示了Cluster.addPhrases方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: cluster

 private void cluster( LanguageCode language )
 {
     PreprocessingContext context = preprocessingPipeline.preprocess( documents, query, language );
     clusters = new List<Cluster>();
     if ( context.hasLabels() )
     {
         VectorSpaceModelContext vsmContext = new VectorSpaceModelContext( context );
         ReducedVectorSpaceModelContext reducedVsmContext = new ReducedVectorSpaceModelContext( vsmContext );
         LingoProcessingContext lingoContext = new LingoProcessingContext( reducedVsmContext );
         matrixBuilder.buildTermDocumentMatrix( vsmContext );
         matrixBuilder.buildTermPhraseMatrix( vsmContext );
         matrixReducer.reduce( reducedVsmContext, computeClusterCount( desiredClusterCountBase, documents.Count ) );
         clusterBuilder.buildLabels( lingoContext, matrixBuilder.termWeighting );
         clusterBuilder.assignDocuments( lingoContext );
         clusterBuilder.merge( lingoContext );
         int[] clusterLabelIndex = lingoContext.clusterLabelFeatureIndex;
         BitSet[] clusterDocuments = lingoContext.clusterDocuments;
         double[] clusterLabelScore = lingoContext.clusterLabelScore;
         for ( int i = 0; i < clusterLabelIndex.length; i++ )
         {
             Cluster cluster = new Cluster();
             int labelFeature = clusterLabelIndex[i];
             if ( labelFeature < 0 )
             {
                 // Cluster removed during merging
                 continue;
             }
             cluster.addPhrases( labelFormatter.format( context, labelFeature ) );
             cluster.setAttribute( Cluster.SCORE, clusterLabelScore[i] );
             BitSet bs = clusterDocuments[i];
             for ( int bit = bs.nextSetBit( 0 ); bit >= 0; bit = bs.nextSetBit( bit + 1 ) )
             {
                 cluster.addDocuments( documents.ElementAt( bit ) );
             }
             clusters.Add( cluster );
         }
         Collections.Sort( clusters, Cluster.byReversedWeightedScoreAndSizeComparator( scoreWeight ) );
     }
     Cluster.appendOtherTopics( documents, clusters );
 }
开发者ID:theplaymate,项目名称:Lingo-Clustering-Algorithm,代码行数:40,代码来源:LingoClusteringAlgorithm.cs


注:本文中的Cluster.addPhrases方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。