private void evaluateOneSample() throws DaoException, WikiBrainException, IOException { UniversalPage c1 = concepts.get(random.nextInt(concepts.size())); UniversalPage c2 = concepts.get(random.nextInt(concepts.size())); List<SRResult> results = new ArrayList<SRResult>(); for (Language lang : langs) { SRMetric sr = metrics.get(lang); results.add(sr.similarity(c1.getLocalId(lang), c2.getLocalId(lang), false)); if(sr.similarity(c1.getLocalId(lang), c2.getLocalId(lang), false) == null){ LOG.warn(String.format("error calculating SR for universal page %d %s and %d %s", c1.getUnivId(), c1.getBestEnglishTitle(lpDao, true), c2.getUnivId(), c2.getBestEnglishTitle(lpDao, true))); } } writeRow(c1, c2, results); }
private void evaluateOneSample() throws DaoException, WikiBrainException, IOException { UniversalPage c1 = concepts.get(random.nextInt(concepts.size())); UniversalPage c2 = concepts.get(random.nextInt(concepts.size())); List<SRResult> results = new ArrayList<SRResult>(); for (Language lang : langs) { SRMetric sr = metrics.get(lang); results.add(sr.similarity(c1.getLocalId(lang), c2.getLocalId(lang), false)); if(sr.similarity(c1.getLocalId(lang), c2.getLocalId(lang), false) == null){ LOG.warn(String.format("error calculating SR for universal page %d %s and %d %s", c1.getUnivId(), c1.getBestEnglishTitle(lpDao, true), c2.getUnivId(), c2.getBestEnglishTitle(lpDao, true))); } } writeRow(c1, c2, results); }
counter ++; if(counter % 1 == 0){ LOG.info(String.format("Processing the %d th polygon : %s out of %d", counter, upDao.getById(i.getKey()).getBestEnglishTitle(lpDao, true).getCanonicalTitle(), polygons.size()));
private void writeRow(UniversalPage c1, UniversalPage c2, Integer KNNDistance, List<SRResult> results) throws WikiBrainException, IOException { Title t1 = c1.getBestEnglishTitle(lpDao, true); Title t2 = c2.getBestEnglishTitle(lpDao, true); String[] rowEntries = new String[5 + langs.size()]; rowEntries[0] = t1.getCanonicalTitle(); rowEntries[1] = String.valueOf(c1.getUnivId()); rowEntries[2] = t2.getCanonicalTitle(); rowEntries[3] = String.valueOf(c2.getUnivId()); rowEntries[4] = String.valueOf(KNNDistance); int counter = 0; for (SRResult result : results) { rowEntries[5 + counter] = String.valueOf(result.getScore()); counter ++; } output.writeNext(rowEntries); output.flush(); //if(CSVRowCounter % 1000 == 0 // LOG.info("Finished writing to CSV Row " + CSVRowCounter); //} }
private void writeRow(UniversalPage c1, UniversalPage c2, Integer KNNDistance, List<SRResult> results) throws WikiBrainException, IOException { Title t1 = c1.getBestEnglishTitle(lpDao, true); Title t2 = c2.getBestEnglishTitle(lpDao, true); String[] rowEntries = new String[5 + langs.size()]; rowEntries[0] = t1.getCanonicalTitle(); rowEntries[1] = String.valueOf(c1.getUnivId()); rowEntries[2] = t2.getCanonicalTitle(); rowEntries[3] = String.valueOf(c2.getUnivId()); rowEntries[4] = String.valueOf(KNNDistance); int counter = 0; for (SRResult result : results) { rowEntries[5 + counter] = String.valueOf(result.getScore()); counter ++; } output.writeNext(rowEntries); output.flush(); //if(CSVRowCounter % 1000 == 0 // LOG.info("Finished writing to CSV Row " + CSVRowCounter); //} }
LOG.warn(String.format("Error evaluating between %s and %s", c1.getBestEnglishTitle(lpDao, true), c2.getBestEnglishTitle(lpDao, true)));
return; double TopoDist = polygonDistance(pointPolygonContainingMap.get(c1.getUnivId()), pointPolygonContainingMap.get(c2.getUnivId()), layerName, "earth"); Title t1 = c1.getBestEnglishTitle(lpDao, true); Title t2 = c2.getBestEnglishTitle(lpDao, true); rowEntries[2] = upDao.getById(pointPolygonContainingMap.get(c1.getUnivId())).getBestEnglishTitle(lpDao, true).getCanonicalTitle(); rowEntries[3] = t2.getCanonicalTitle(); rowEntries[4] = String.valueOf(c2.getUnivId()); rowEntries[5] = upDao.getById(pointPolygonContainingMap.get(c2.getUnivId())).getBestEnglishTitle(lpDao, true).getCanonicalTitle(); rowEntries[6] = String.format("%.2f", km); rowEntries[7] = String.valueOf(TopoDist); LOG.warn(String.format("error writing row for universal page %d %s and %d %s", c1.getUnivId(), c1.getBestEnglishTitle(lpDao, true), c2.getUnivId(), c2.getBestEnglishTitle(lpDao, true)));
return; double TopoDist = polygonDistance(pointPolygonContainingMap.get(c1.getUnivId()), pointPolygonContainingMap.get(c2.getUnivId()), layerName, "earth"); Title t1 = c1.getBestEnglishTitle(lpDao, true); Title t2 = c2.getBestEnglishTitle(lpDao, true); rowEntries[2] = upDao.getById(pointPolygonContainingMap.get(c1.getUnivId())).getBestEnglishTitle(lpDao, true).getCanonicalTitle(); rowEntries[3] = t2.getCanonicalTitle(); rowEntries[4] = String.valueOf(c2.getUnivId()); rowEntries[5] = upDao.getById(pointPolygonContainingMap.get(c2.getUnivId())).getBestEnglishTitle(lpDao, true).getCanonicalTitle(); rowEntries[6] = String.format("%.2f", km); rowEntries[7] = String.valueOf(TopoDist); LOG.warn(String.format("error writing row for universal page %d %s and %d %s", c1.getUnivId(), c1.getBestEnglishTitle(lpDao, true), c2.getUnivId(), c2.getBestEnglishTitle(lpDao, true)));
private void writeRow(UniversalPage c1, UniversalPage c2, List<SRResult> results) throws WikiBrainException, IOException { Point p1 = locations.get(c1).getCentroid(); Point p2 = locations.get(c2).getCentroid(); GeodeticCalculator geoCalc = new GeodeticCalculator(); geoCalc.setStartingGeographicPoint(p1.getX(), p1.getY()); geoCalc.setDestinationGeographicPoint(p2.getX(), p2.getY()); double km = geoCalc.getOrthodromicDistance() / 1000; Title t1 = c1.getBestEnglishTitle(lpDao, true); Title t2 = c2.getBestEnglishTitle(lpDao, true); synchronized (output) { output.write(t1.getCanonicalTitle() + "\t" + c1.getUnivId() + "\t" + t2.getCanonicalTitle() + "\t" + c2.getUnivId() + "\t" + km ); for (SRResult result : results) { output.write("\t" + result.getScore()); } output.write("\n"); } }
System.out.println(i.toString() + " " + wdDao.getUniversalPage(i).getBestEnglishTitle(lpDao, true).getCanonicalTitle() + " " + distanceMetrics.getDistance(resMap.get(i), rootPoint) + " km");
System.out.println(i.toString() + " " + wdDao.getUniversalPage(i).getBestEnglishTitle(lpDao, true).getCanonicalTitle() + " " + distanceMetrics.getDistance(resMap.get(i), rootPoint) + " km");
private void writeRow(UniversalPage c1, UniversalPage c2, List<SRResult> results) throws WikiBrainException, IOException { Point p1 = locations.get(c1).getCentroid(); Point p2 = locations.get(c2).getCentroid(); GeodeticCalculator geoCalc = new GeodeticCalculator(); geoCalc.setStartingGeographicPoint(p1.getX(), p1.getY()); geoCalc.setDestinationGeographicPoint(p2.getX(), p2.getY()); double km = geoCalc.getOrthodromicDistance() / 1000; Title t1 = c1.getBestEnglishTitle(lpDao, true); Title t2 = c2.getBestEnglishTitle(lpDao, true); synchronized (output) { output.write(t1.getCanonicalTitle() + "\t" + c1.getUnivId() + "\t" + t2.getCanonicalTitle() + "\t" + c2.getUnivId() + "\t" + km ); for (SRResult result : results) { output.write("\t" + result.getScore()); } output.write("\n"); } }
private void writeRow(UniversalPage c1, UniversalPage c2, List<SRResult> results) throws WikiBrainException, IOException { double km; Point p1 = locations.get(c1.getUnivId()).getCentroid(); Point p2 = locations.get(c2.getUnivId()).getCentroid(); GeodeticCalculator geoCalc = new GeodeticCalculator(); geoCalc.setStartingGeographicPoint(p1.getX(), p1.getY()); geoCalc.setDestinationGeographicPoint(p2.getX(), p2.getY()); km = geoCalc.getOrthodromicDistance() / 1000; Title t1 = c1.getBestEnglishTitle(lpDao, true); Title t2 = c2.getBestEnglishTitle(lpDao, true); String[] rowEntries = new String[5 + langs.size()]; rowEntries[0] = t1.getCanonicalTitle(); rowEntries[1] = String.valueOf(c1.getUnivId()); rowEntries[2] = t2.getCanonicalTitle(); rowEntries[3] = String.valueOf(c2.getUnivId()); rowEntries[4] = String.valueOf(km); int counter = 0; for (SRResult result : results) { rowEntries[5 + counter] = String.valueOf(result.getScore()); counter ++; } output.writeNext(rowEntries); output.flush(); }
private void writeRow(UniversalPage c1, UniversalPage c2, List<SRResult> results) throws WikiBrainException, IOException { double km; Point p1 = locations.get(c1.getUnivId()).getCentroid(); Point p2 = locations.get(c2.getUnivId()).getCentroid(); GeodeticCalculator geoCalc = new GeodeticCalculator(); geoCalc.setStartingGeographicPoint(p1.getX(), p1.getY()); geoCalc.setDestinationGeographicPoint(p2.getX(), p2.getY()); km = geoCalc.getOrthodromicDistance() / 1000; Title t1 = c1.getBestEnglishTitle(lpDao, true); Title t2 = c2.getBestEnglishTitle(lpDao, true); String[] rowEntries = new String[5 + langs.size()]; rowEntries[0] = t1.getCanonicalTitle(); rowEntries[1] = String.valueOf(c1.getUnivId()); rowEntries[2] = t2.getCanonicalTitle(); rowEntries[3] = String.valueOf(c2.getUnivId()); rowEntries[4] = String.valueOf(km); int counter = 0; for (SRResult result : results) { rowEntries[5 + counter] = String.valueOf(result.getScore()); counter ++; } output.writeNext(rowEntries); output.flush(); }
public static void main(String[] args){ try { Env env = new EnvBuilder().build(); Configurator c = env.getConfigurator(); SpatialContainmentDao scDao = c.get(SpatialContainmentDao.class); WikidataDao wdDao = c.get(WikidataDao.class); LocalPageDao lpDao = c.get(LocalPageDao.class); LanguageSet loadedLangs = lpDao.getLoadedLanguages(); // set up the parameters for the call to getContainedItemIds String containerName = "Israel"; Set<String> subLayers = Sets.newHashSet(); subLayers.add("wikidata"); LocalPage lp = lpDao.getByTitle(new Title(containerName,Language.getByLangCode("simple")), NameSpace.ARTICLE); Integer id = wdDao.getItemId(lp); TIntSet containedItemIds = scDao.getContainedItemIds(id, Layers.COUNTRY, RefSys.EARTH, subLayers, SpatialContainmentDao.ContainmentOperationType.CONTAINMENT); int counter = 0; System.out.println("Items contained in the spatial footprint of the article '" + lp.getTitle() + "' are:"); for (int cId : containedItemIds.toArray()){ UniversalPage univPage = wdDao.getUniversalPage(cId); Title t = univPage.getBestEnglishTitle(lpDao, true); System.out.println(t.getCanonicalTitle()); counter++; } System.out.printf("Found %d items\n", counter); } catch(Exception e){ e.printStackTrace(); } }
public static void main(String[] args){ try { Env env = EnvBuilder.envFromArgs(args); Configurator c = env.getConfigurator(); UniversalPageDao upDao = c.get(UniversalPageDao.class); MetaInfoDao miDao = c.get(MetaInfoDao.class); LocalPageDao lpDao = c.get(LocalPageDao.class); InterLanguageLinkDao illDao = c.get(InterLanguageLinkDao.class); // set up conceptualign test LanguageSet loadedLangs = miDao.getLoadedLanguages(UniversalPageDao.class); Iterable<UniversalPage> uPages = upDao.get(new DaoFilter().setLanguages(loadedLangs).setNameSpaces(NameSpace.ARTICLE)); ConceptualignConceptMapper conceptualignMapper = new ConceptualignConceptMapper(uPages, loadedLangs, -1, lpDao, illDao, miDao, true); // actually run conceptualign Iterator<UniversalPage> finalUPages = conceptualignMapper.getConceptMap(loadedLangs); // print what we found while(finalUPages.hasNext()){ UniversalPage finalUPage = finalUPages.next(); System.out.println(finalUPage.getUnivId() + ": " + finalUPage.getBestEnglishTitle(lpDao, true)); } }catch(Exception e){ e.printStackTrace();; } }
public static void main(String[] args){ try { Env env = new EnvBuilder().build(); Configurator c = env.getConfigurator(); SpatialContainmentDao scDao = c.get(SpatialContainmentDao.class); WikidataDao wdDao = c.get(WikidataDao.class); LocalPageDao lpDao = c.get(LocalPageDao.class); LanguageSet loadedLangs = lpDao.getLoadedLanguages(); // set up the parameters for the call to getContainedItemIds String containerName = "Israel"; Set<String> subLayers = Sets.newHashSet(); subLayers.add("wikidata"); LocalPage lp = lpDao.getByTitle(new Title(containerName,Language.getByLangCode("simple")), NameSpace.ARTICLE); Integer id = wdDao.getItemId(lp); TIntSet containedItemIds = scDao.getContainedItemIds(id, Layers.COUNTRY, RefSys.EARTH, subLayers, SpatialContainmentDao.ContainmentOperationType.CONTAINMENT); int counter = 0; System.out.println("Items contained in the spatial footprint of the article '" + lp.getTitle() + "' are:"); for (int cId : containedItemIds.toArray()){ UniversalPage univPage = wdDao.getUniversalPage(cId); Title t = univPage.getBestEnglishTitle(lpDao, true); System.out.println(t.getCanonicalTitle()); counter++; } System.out.printf("Found %d items\n", counter); } catch(Exception e){ e.printStackTrace(); } }
public static void main(String[] args){ try { Env env = EnvBuilder.envFromArgs(args); Configurator c = env.getConfigurator(); UniversalPageDao upDao = c.get(UniversalPageDao.class); MetaInfoDao miDao = c.get(MetaInfoDao.class); LocalPageDao lpDao = c.get(LocalPageDao.class); InterLanguageLinkDao illDao = c.get(InterLanguageLinkDao.class); // set up conceptualign test LanguageSet loadedLangs = miDao.getLoadedLanguages(UniversalPageDao.class); Iterable<UniversalPage> uPages = upDao.get(new DaoFilter().setLanguages(loadedLangs).setNameSpaces(NameSpace.ARTICLE)); ConceptualignConceptMapper conceptualignMapper = new ConceptualignConceptMapper(uPages, loadedLangs, -1, lpDao, illDao, miDao, true); // actually run conceptualign Iterator<UniversalPage> finalUPages = conceptualignMapper.getConceptMap(loadedLangs); // print what we found while(finalUPages.hasNext()){ UniversalPage finalUPage = finalUPages.next(); System.out.println(finalUPage.getUnivId() + ": " + finalUPage.getBestEnglishTitle(lpDao, true)); } }catch(Exception e){ e.printStackTrace();; } }
public static void main(String args[]) throws ConfigurationException, DaoException, WikiBrainException { Env env = EnvBuilder.envFromArgs(args); SpatialDataDao spatialDao = env.getConfigurator().get(SpatialDataDao.class); LocalPageDao pageDao = env.getConfigurator().get(LocalPageDao.class); UniversalPageDao conceptDao = env.getConfigurator().get(UniversalPageDao.class); SphericalDistanceMetric spherical = new SphericalDistanceMetric(spatialDao); spherical.enableCache(true); GraphDistanceMetric graph = new GraphDistanceMetric(spatialDao, spherical); graph.enableCache(true); Point p = WikiBrainSpatialUtils.getPoint(44.916140, -93.266512); System.err.println("matches for " + p); for (SpatialDistanceMetric.Neighbor n : graph.getNeighbors(p, 100)) { UniversalPage page = conceptDao.getById(n.conceptId); Title title = page.getBestEnglishTitle(pageDao, true); System.err.println("neighbor " + title + " has distance " + n.distance); } } }
public static void main(String args[]) throws ConfigurationException, DaoException, WikiBrainException { Env env = EnvBuilder.envFromArgs(args); SpatialDataDao spatialDao = env.getConfigurator().get(SpatialDataDao.class); LocalPageDao pageDao = env.getConfigurator().get(LocalPageDao.class); UniversalPageDao conceptDao = env.getConfigurator().get(UniversalPageDao.class); SphericalDistanceMetric spherical = new SphericalDistanceMetric(spatialDao); spherical.enableCache(true); GraphDistanceMetric graph = new GraphDistanceMetric(spatialDao, spherical); graph.enableCache(true); Point p = WikiBrainSpatialUtils.getPoint(44.916140, -93.266512); System.err.println("matches for " + p); for (SpatialDistanceMetric.Neighbor n : graph.getNeighbors(p, 100)) { UniversalPage page = conceptDao.getById(n.conceptId); Title title = page.getBestEnglishTitle(pageDao, true); System.err.println("neighbor " + title + " has distance " + n.distance); } } }