⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 poseventstream.cs

📁 英语句子自然语言处理统计分析例子 Statistical parsing of English sentences Shows how to generate parse trees for
💻 CS
字号:
using System;

namespace OpenNLP.Tools.POSTagger
{
	/// <summary> An implementation of EventStream whcih assumes the data stream gives a
	/// sentence at a time with tokens as word_tag pairs.
	/// </summary>
	
	public class PosEventReader : SharpEntropy.ITrainingEventReader
	{
		
		private IPosContextGenerator ContextGenerator;
		private SharpEntropy.ITrainingDataReader Data;
		private SharpEntropy.TrainingEvent[] Events;
		private int EventIndex;
		
		public PosEventReader(SharpEntropy.ITrainingDataReader data):this(data, new DefaultPosContextGenerator())
		{
		}
		
		public PosEventReader(SharpEntropy.ITrainingDataReader data, IPosContextGenerator contextGenerator)
		{
			ContextGenerator = contextGenerator;
			Data = data;
			EventIndex = 0;

			if (Data.HasNext())
			{
				AddNewEvents((string) Data.NextToken());
			}
			else
			{
				Events = new SharpEntropy.TrainingEvent[0];
			}
		}
		
		public virtual bool HasNext()
		{
			return (EventIndex < Events.Length || Data.HasNext());
		}
		
		public virtual SharpEntropy.TrainingEvent ReadNextEvent()
		{
			if (EventIndex == Events.Length)
			{
				AddNewEvents((string) Data.NextToken());
				EventIndex = 0;
			}
			return ((SharpEntropy.TrainingEvent) Events[EventIndex++]);
		}
		
		private void  AddNewEvents(string sentence)
		{
			//String sentence = "the_DT stories_NNS about_IN well-heeled_JJ communities_NNS and_CC developers_NNS";
			SharpEntropy.IEventCollector oEventCollector = new PosEventCollector(new System.IO.StringReader(sentence), ContextGenerator);
			Events = oEventCollector.GetEvents();
		}
		
		[STAThread]
		public static void  Main(string[] args)
		{
			EventStream oEventStream = new PosEventStream(new Maxent.PlainTextByLineDataStream(new System.IO.StreamReader(System.Console.In)));
			while (oEventStream.HasNext())
			{
				System.Console.Out.WriteLine(oEventStream.GetNextEvent());
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -