| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| package opennlp.tools.disambiguator.ims; |
| |
| import java.io.File; |
| |
| import opennlp.tools.disambiguator.WSDParameters; |
| |
| /** |
| * This class contains the parameters for the IMS approach as well as the |
| * directories containing the files used |
| */ |
| public class IMSParameters extends WSDParameters { |
| |
| protected String languageCode; |
| protected int windowSize; |
| protected int ngram; |
| |
| public static final String resourcesFolder = "src\\test\\resources\\"; |
| public static final String trainingDataDirectory = resourcesFolder |
| + "supervised\\models\\"; |
| |
| /** |
| * This constructor takes only two parameters. The default language used is |
| * <i>English</i> |
| * |
| * @param windowSize |
| * the size of the window used for the extraction of the features |
| * qualified of Surrounding Words |
| * @param ngram |
| * the number words used for the extraction of features qualified of |
| * Local Collocations |
| * @param source |
| * the source of the training data |
| */ |
| public IMSParameters(int windowSize, int ngram, |
| TrainingSource trainingSource, SenseSource senseSource) { |
| this.languageCode = "En"; |
| this.windowSize = windowSize; |
| this.ngram = ngram; |
| this.trainingSource = trainingSource; |
| this.senseSource = senseSource; |
| this.isCoarseSense = false; |
| |
| File folder = new File(trainingDataDirectory); |
| if (!folder.exists()) |
| folder.mkdirs(); |
| } |
| |
| public IMSParameters() { |
| this(3, 2, TrainingSource.SEMCOR, SenseSource.WORDNET); |
| } |
| |
| public IMSParameters(TrainingSource source) { |
| this(3, 2, source, SenseSource.WORDNET); |
| } |
| |
| public IMSParameters(int windowSize, int ngram) { |
| this(windowSize, ngram, TrainingSource.SEMCOR, SenseSource.WORDNET); |
| } |
| |
| public String getLanguageCode() { |
| return languageCode; |
| } |
| |
| public void setLanguageCode(String languageCode) { |
| this.languageCode = languageCode; |
| } |
| |
| public int getWindowSize() { |
| return windowSize; |
| } |
| |
| public void setWindowSize(int windowSize) { |
| this.windowSize = windowSize; |
| } |
| |
| public int getNgram() { |
| return ngram; |
| } |
| |
| public void setNgram(int ngram) { |
| this.ngram = ngram; |
| } |
| |
| void init() { |
| } |
| |
| /** |
| * Creates the context generator of IMS |
| */ |
| public IMSContextGenerator createContextGenerator() { |
| |
| return new DefaultIMSContextGenerator(); |
| } |
| |
| @Override |
| public boolean isValid() { |
| // TODO Auto-generated method stub |
| return true; |
| } |
| |
| } |