Taka-Coma's Blog

http://taka-coma.pro/

SIGMOD2018 調査

2018/6/11~15にアメリカヒューストンで開催されたSIGMOD2018に参加してきた. この記事はその時のメモ写真.

データベースのトップ会議.

参加者数728名

f:id:taka-coma:20180621083301j:plain

そうそうたるスポンサー

f:id:taka-coma:20180621083339j:plain

投稿件数・採択率

f:id:taka-coma:20180621083513j:plain

レビューの長さ

f:id:taka-coma:20180621083527j:plain

論文採択:エンティティ検索のための解釈可能表現の学習

概要

  • LOD上のエンティティ検索(キーワード検索)タスク
  • 初の単著論文
  • キーワード検索のためのエンティティの表現学習
  • ランダムウォークをベースに周辺のエンティティの表現から中心のエンティティの表現を学習
  • ランダムウォークにはRWR (Random Walk with Restart) を適用
  • 色々な観点で評価・考察

成果

  1. Takahiro Komamizu, "Learning Interpretable Entity Representation in Linked Data", in Proc. the 29th International Conference on Database and Expert Systems Applications (DEXA 2018) , pp.-, Regensburg, Germany, September 3-6, 2018 (to appear)

Student Volunteers in 2018 conferences

学生ボランティアを募集している会議を調査しました. 2017年版は過去記事で.

taka-coma.hateblo.jp

いくつかはまだ学生ボランティア募集を開始してないところもあって, ちゃんと調査しきれてません.

Student Volunteers in 2017 conferences

国際会議の学生ボランティアに参加するといろんないいことがあります. 下記記事にいろいろ書いてあるので,見てください.

junkato.jp

以下では,2017年に開催された国際会議で学生ボランティアを募っていた会議を紹介します. 2018年は追って調査します. よく募集するところは今年もきっと募集してると思うので,参考までに.

雑談:-6kg & -6%減

一人暮らしを初めて早3ヶ月. 食事や運動を自分で細かく調整して動ける体を作るために絞り気味に変えてきました.

結果として, 体重:95kg -> 89kg(-6kg) 体脂肪率:21% -> 15%(-6%) を達成しました. これは非常に良いペースだと思います.

f:id:taka-coma:20180502225218p:plain

まだ,内臓脂肪が高めなので有酸素運動を増やすなど工夫は必要ですが,BMI以外は標準値に収まりました. BMI値はもう無理と諦めているので,体脂肪率や体重で目標値に達成できればよいかと.

おそらく,これから下がりにくい期間が訪れると思うので,そこでモチベーションを下げないように気をつけないといけません.

科研費の申請書を公開しました

先日,ありがたいことに,「科研費 若手研究」に採択になりました.

taka-coma.hateblo.jp taka-coma.hateblo.jp

私のホームページに,獲得した予算の情報を載せています. そこに,今回の科研費の申請書を添付しました. もしここを見て参考にする人がいたら幸いです.

Taka-Coma: Homepage of Takahiro Komamizu

Lucene のインストールと簡単な使い方

環境

インストール

とりあえず使ってみる

import org.apache.lucene.analysis.standard.StandardAnalyzer;

import java.nio.file.Paths;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.RAMDirectory;
import org.apache.lucene.store.FSDirectory;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.index.IndexWriterConfig;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.Field;
import org.apache.lucene.document.TextField;

import org.apache.lucene.index.DirectoryReader;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.search.Query;
import org.apache.lucene.search.ScoreDoc;
import org.apache.lucene.queryparser.classic.QueryParser;

public class Test{
  public static void main( String[] args ){
    StandardAnalyzer analyzer = new StandardAnalyzer();

    try{
      // インデックスの構築
      // インメモリインデックス
      //dir = new RAMDirectory();
      // ファイルインデックス
      dir = FSDirectory.open(Paths.get("./index"));
      IndexWriterConfig conf = new IndexWriterConfig(analyzer);
      IndexWriter w = new IndexWriter(dir, conf);

      // 文書の追加(3個)
      Document doc = new Document();
      doc.add(new Field("title", "This is the title of an article.", TextField.TYPE_STORED));
      w.addDocument(doc);

      doc = new Document();
      doc.add(new Field("title", "That is the title of an article.", TextField.TYPE_STORED));
      w.addDocument(doc);

      doc = new Document();
      doc.add(new Field("title", "That is the test of an article.", TextField.TYPE_STORED));
      w.addDocument(doc);

      // インデックスの保存
      w.close();

      // インデックスを使って検索
      DirectoryReader reader = DirectoryReader.open(dir);
      IndexSearcher searcher = new IndexSearcher(reader);

      // クエリ処理
      QueryParser parser = new QueryParser("title", analyzer);
      Query q = parser.parse("test");

      // 上位1000件検索
      ScoreDoc[] results = searcher.search(q, 1000).scoreDocs;
      for(ScoreDoc res: results){
        Document doc = searcher.doc(res.doc);
        System.out.println(doc);
      }   

      reader.close();
      dir.close();
    }catch(Exception e){ 
      e.printStackTrace();
    }   

  }
}
  • 結果
$ java Test
Document<stored,indexed,tokenized<title:That is the test of an article.>>
  • test が含まれているのはこいつだけなので,検索成功