totowa(トトワ)で定義文を検索
  
uroboeで英語表記を検索
  

2015-07-03 Fri

Word2Vec の Web API を作れる word-vector-web-api を公開しました

Word2Vec や GloVe などで構築済みな単語ベクトルのモデルを使った Web API を作ることができる word-vector-web-api を公開しました。🎉🍣🍻🍰🍖



これがあると docker コマンドと1.5 GByte 程度のメモリが使える環境なら、以下の 5 つのコマンドを実行することで(厳密にはもう少し手順がありますが)、以下のサンプルの様な結果(日本語 Wikipedia のダンプデータから word2vec コマンドで作ったモデルを使った Word2Vec の distance アプリケーションと同等の結果)を得られると思います。

$ git clone --depth 1 https://github.com/overlast/word-vector-web-api.git
(略)
$ cd word-vector-web-api
$ ./libexec/download-sample-jawiki-model.sh
(略)
$ ./libexec/create-docker-image-sample-word-vector-web-api-s1.sh
(略)
$ ./libexec/run-docker-container-of-sample-word-vector-web-api-s1.sh
(略)
$ curl "http://0.0.0.0:22670/distance?a1=タモリ"
{"format": "json", "items": [
{"term": "明石家さんま", "score": 0.81528389453887939}, {"term": "さんま", "score": 0.80035871267318726},
{"term": "ビートたけし", "score": 0.79251360893249512}, {"term": "所ジョージ", "score": 0.76938104629516602},
{"term": "とんねるず", "score": 0.7473946213722229}, {"term": "爆笑問題", "score": 0.73406845331192017},
{"term": "司会", "score": 0.72929728031158447}, {"term": "森田一義", "score": 0.72818166017532349},
{"term": "島田紳助", "score": 0.72627973556518555}, {"term": "中居正広", "score": 0.72301918268203735},
{"term": "山田邦子", "score": 0.71929085254669189}, {"term": "笑福亭鶴瓶", "score": 0.71266698837280273},
{"term": "ボキャブラ天国", "score": 0.70373982191085815}, {"term": "笑っていいとも!", "score": 0.70154005289077759},
{"term": "関根勤", "score": 0.70032232999801636}, {"term": "明石家マンション物語", "score": 0.70010024309158325},
{"term": "冠番組", "score": 0.69675129652023315}, {"term": "いいとも", "score": 0.69370967149734497},
{"term": "石橋貴明", "score": 0.68870562314987183}, {"term": "オレたちひょうきん族", "score": 0.68832921981811523},
{"term": "ものまね", "score": 0.68563121557235718}, {"term": "松村邦洋", "score": 0.68541419506072998},
{"term": "ボキャ天", "score": 0.68538647890090942}, {"term": "ウッチャンナンチャン", "score": 0.68278044462203979},
{"term": "テレフォンショッキング", "score": 0.68264764547348022}, {"term": "コーナー司会", "score": 0.68219667673110962},
{"term": "浅草キッド", "score": 0.68129265308380127}, {"term": "今夜は最高!", "score": 0.67805778980255127},
{"term": "今田耕司", "score": 0.67686200141906738}, {"term": "萩本欽一", "score": 0.67244911193847656},
{"term": "みのもんた", "score": 0.67096501588821411}, {"term": "北野ファンクラブ", "score": 0.66866558790206909},
{"term": "中居", "score": 0.66742992401123047}, {"term": "鶴瓶", "score": 0.66699719429016113},
{"term": "志村けん", "score": 0.66617244482040405}, {"term": "大橋巨泉", "score": 0.66485863924026489},
{"term": "上岡龍太郎", "score": 0.66450983285903931}, {"term": "ナインティナイン", "score": 0.66341793537139893},
{"term": "松本人志", "score": 0.66267943382263184}, {"term": "和田アキ子", "score": 0.66127783060073853}
], "query": "タモリ", "method": "distance", "sort": "cosine similarity", "status": "OK", "total_count": 40}


実はかなり前から GitHub 上には公開していたのですが、決して使いやすい状態とはいえませんでした。
なので、かなりシンプルにサンプル出力を試せる状態にしました。

どこがポイントなのか


今回、word-vector-web-api をまとめるに当たってのポイントは以下の3点でした。

- 構築済みの日本語 Wikipedia モデルを配布
- Dockerfile を配布
- インストール手順書を記述

簡単に説明してみます。

構築済みの日本語 Wikipedia モデルを配布

Word2Vec はすぐに試せる構築済みな日本語のモデルがあまり積極的に配布されていなかったので、使っていなかった人も多かったのでは無いでしょうか。

今回は、いろいろ試した結果、Google Drive さんを利用させて頂いてモデルを配布しています。

モデルをダウンロードして解凍するためのダウンローダーを作ってみて、意外と便利だったので今後も再利用していこうと思います。

配布しているモデルは限られた時間の中で複数の前処理を一応試してみて、構築後のモデルを使ってみた結果が一番良さそうなものをアップロードしました。

パラメタの探索とか、定期的なアップデートとか、いろいろな課題がありますがこれはmecab-ipadic-NEologdと同じで、ぼちぼち更新していこうと思います。

今後は日本語 Wikipedia 以外のコーパスを使ったモデルの構築や、Word2Vec より顕著に良い性能がでる手法が出てきたらそれを使っての構築を考えていますので、自前のモデルを構築しない派の方はご期待ください。

Dockerfile を配布

環境構築は Ansible の Playbook とか用意しとけば済むかなと思いましたけど、@chezou さんと @sowawa さんから「Dockerfile 書きましょう」と同日に言われたので、今の時代は Dockerfile が無いと駄目な時代なのだなと勉強になりました。ありがとうございました。

結果として docker build できる環境と 1.5GByte 程度のメモリがあれば、環境に依存するトラブルは少なくなったので良かったです。

実際に製品として使う場合は、Docker のままだと厳しいでしょうし、研究寄りのエンジニアさんは OS に直にインストールしたword2vec-msgpack-rpc-server に直にリクエストした方が無駄が無くてより良いでしょう。



そもそも word-vector-web-api を作ったのは、word2vec-msgpack-rpc-server と nginx-msgpack-rpc-module が個人的に便利なのでオススメしたいけど単体だと試すのが面倒で試してもらえ無さそうだから妥当なパッケージングをしてモデルも付けて配布してより便利な世の中にしよう、という考えがあってのことです。



word2vec-msgpack-rpc-server と nginx-msgpack-rpc-module を使って自分の実装を世に広めたり、または word-vector-web-api をカスタマイズして便利な機能を製品に組み込んで見たり、いろいろ試してみてください😊。

インストール手順書を記述

とても詳細な手順書を書きましたので、慎重に読み、コピペすることでつまづく確率が激減すると思います。

Docker 自体や Unix コマンドに関する知識は自分で調べなきゃいけませんけど、それは許してくださいね😓💦。

終わりに


word-vector-web-api は、僕が社内でコンテンツ管理ツール向けなどで作った Web API の OSS 版です。

割と簡単な作りですが、このくらいでもメモリを増やしてサーバプロセスを増やせばレスポンスに関する問題は減ります。

精度に関しては、距離関数よりはモデルの構築手法と検索クエリの作成手法に強く依存するので、word-vector-web-api の外側で解決すべき問題が山積みになっている状態だと思います。

モデルの構築の際には mecab-ipadic-NEologd を使うことで多くの問題が解決できると思います。



リリース済みのものの改善、サンプルモデルの種類の追加、演算に必要なメソッドの追加は予定があるので、今後のアップデートを生暖かく見守りつつ、たま〜に Update してみて下さい。🍻

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

2015-06-23 Tue

mecab-ipadic-NEologd v0.0.2 をリリースした

今日、6/23の朝 [2015-06-23] に、mecab-ipadic-NEologd の v0.0.2 をリリースしました🎉。

https://github.com/neologd/mecab-ipadic-neologd/releases/tag/v0.0.2

前回の v0.0.1 からの大きな差分は以下の5点です。

- 3ヶ月分の新語
- Unicode 6.0以前の絵文字に読みと品詞情報を付与
- IPA辞書に未再録で区切り間違う or 読みを付与できない副詞
- unk.defを変更して記号を記号,一般に
- IPA辞書の一部のエントリの読み仮名誤りを修正

3ヶ月分の新語


v0.0.1以降に新しく再録したエントリは、diff以下で記録しています。

https://github.com/neologd/mecab-ipadic-neologd/tree/master/diff

v0.0.2以降の新語についても diff以下に出力しますのでご参照ください。

Unicode 6.0 以前の絵文字に読みと品詞情報を付与



Unicode 6.0 以前の絵文字への読み付与を行いました。
Unicode絵文字の文中での使われ方によって、品詞情報や付与されると期待される読み仮名が変わることから、一つの絵文字に複数の品詞情報と読み仮名を付与する必要がありました。

このようなタスクに利用できる既存のリソースにmozcの絵文字に関するエントリが挙げられます。

- mozc/emoji_data.tsv at master · google/mozc
-- https://github.com/google/mozc/blob/master/src/data/emoji/emoji_data.tsv

日本語入力用の辞書は複数のキーワードから一つの絵文字にたどり着く用途のエントリになっています。それに対して、形態素解析用の辞書は一つの絵文字にマッチするエントリ群を、その絵文字が出現した文脈にふさわしい順に並べ替えるのが目的になっています。

例えば、日本語入力が⚾️や🏀に「ボール」という文字列で見つかれば良いのに対して、形態素解析ではこれらの絵文字をボールとして扱ったり、競技名として扱ったりする必要があります。

そのため、mozcのリソースを参考にしながら結局全部自分で手打ちする必要がありました。

その結果、意外と面白い仕上がりになっています。



今後は Unicode 7.0 以降の絵文字に対応したり、文脈ごとによりふさわしい品詞情報が選ばれるようにコストを調整したり、より妥当な読み仮名を付与したりします。

IPA辞書に未再録で区切り間違う or 読みを付与できない副詞



IPA辞書とその他のオープンソースな形態素解析辞書の一番大きな違いは、実は用言系のエントリにあると僕は個人的に感じています。

今回は用言の中でもあまり空間が大きくない副詞エントリを充実することに着手しました。

行ったことは以下の二つです。

- IPA辞書に再録されていない副詞を集めて、副詞のシードとする
- 笹野さんの論文で述べられている未知語処理のルールの一部を参考にして、副詞のシードを展開する
-- 参考文献 : 「笹野遼平, 黒橋禎夫, 奥村学: 日本語形態素解析における未知語処理の一手法 -既知語から派生した表記と未知オノマトペの処理-, 自然言語処理, Vol.21, No.6, pp.1183-1205 」
-- https://www.jstage.jst.go.jp/article/jnlp/21/6/21_1183/_article/-char/ja/

このくらいやると、以下のようになります。



「じゅわっ」とか「じゅわっと」が副詞なの?っていうことも議論できると思いますが、副詞的な機能をもつトークンの過分割を抑制することを主目的としており、まずはアウトプットしようということで、このまま出しています。

品詞情報の調整とか、Web固有の曖昧な表記の回収をしてエントリを取捨選択する必要は大いにありますし、原型をどこにマッピングするのかも悩みどころです。

もう少し詳しく書きますね。

IPA辞書に再録されていない副詞を集めて、副詞のシードとする


この作業のために各種形態素解析辞書と Web上をクロールしたエントリからテーブルを作り、そのテーブルから副詞として再録するのが妥当なエントリを高精度なルールと、人手によるチェックで選びました。

今のところ既存の形態素解析辞書が対応できている副詞が再録されていないことが多々あります。

そのようなエントリは「副詞なのか形容詞なのか名詞なのか、、」と迷っているものだったりします。

笹野さんの論文で述べられている未知語処理のルールの一部を参考にして、副詞のシードを展開する


展開する際には色々試したのですが、生成されたエントリ全体を見て、辞書エントリ化しても大きな影響がなさそうに感じた生成ルールだけ足しています。

先行研究は文脈が与えられたうえで行う推定なので、あらかじめエントリ化する場合との違いを感じながらトライ&エラーしていました。

展開する際のルールの一部を挙げておきます。

- 文字 ngram の繰り返し検知と、繰り返し回数の追加
- 「HHっと」などの副詞シードに対して「HHッと」「KKっと」「KKッと」を生成
- 「HHっと」などの副詞シードに対して、長音記号と小書き文字を挿入
- 「HHっ」な副詞シードに対して「HHッ」「HHっと」「HHッと」を生成
- など

unk.defを変更して記号を記号,一般に



今まで、mecab-ipadic-NEologdではunk.defに手を加えていませんでした。

ただ、記号は記号になって欲しいなという気持ちがあったので、SYMBOLだけいじりました。

https://github.com/neologd/mecab-ipadic-neologd/blob/master/misc/dic/unk.def

IPA辞書の一部のエントリの読み仮名誤りを修正


これはWeb上でMeCabの読み付与に関するtweetを見ていて気がついたのですが、確かに読み仮名がかなり明らかに最適ではないエントリがありました。

ただ、誤りがある位置のヒントがあって誤りを探すのと、全体を漠然と探すのとでは難易度が大きく違います。

https://github.com/neologd/mecab-ipadic-neologd/tree/master/misc/patch

前者は今後も個人的に続ければ良くて、後者はハッカソンとかで複数の辞書エントリ作成タスクの適合者な方と一緒に、目標を定めながら(例 : 今回は動詞!とか)行うのが良いのかなと思っています。




おわりに


3ヶ月分の成果の一部をまとめて v0.0.2 をリリースしました。

次の v0.0.3 は形容詞対応が終わったら出そうと思います。

定期的なアップデートは次の3ヶ月も継続します。まずは一年続けてみます。

3ヶ月経ってみたら、GitHub の unique cloners が1000を超えていて(ありがとうございます)、いろいろな人が形態素解析を利用しているのだなという雰囲気は感じました。でも、どこでご利用頂いてるのかは教えて頂けた分以外は全くわかりません。

mecab-ipadic-NEologd をご利用頂いている方は事例をネット上で呟いたり、イベントでご発表いただいたり、 @overlast まで DM などでコッソリ教えて頂けますと、とてもやる気が出ますので、是非教えてくださいね。

今後もよろしくお願いいまします。

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

関連エントリ

[2015-06-23-1] mecab-ipadic-NEologd v0.0.2 をリリースした
[-] 1

2015-05-29 Fri

UniDic に固有表現やUnicode 絵文字などを足す mecab-unidic-NEologd を公開しました

今年3月中旬 [2015-03-13] に mecab-ipadic-NEologd をリリースして以来、mecab-ipadic-NEologd はとても順調に普及しています。

さて、今回は UniDic に新語や固有表現、Unicode 絵文字などを足すことができる mecab-unidic-NEologd を公開しました。
mecab-ipadic-NEologd を生成する手法を使っています。

https://github.com/neologd/mecab-unidic-neologd/blob/master/README.ja.md

シードデータの性質上、構築されるシステム辞書には国語研短単位の条件を満たさないエントリも入りますので、あらかじめご了承ください。

これを MeCab と一緒に使うと要するにこういうことができます。

$ mecab -d /usr/local/lib/mecab/dic/mecab-unidic-neologd
アップルは Apple Watchを4月24日に国内発売しました。⌚
アップル	アップル	アップル	アップル-apple	名詞-普通名詞-一般
は	ワ	ハ	は	助詞-係助詞
Apple Watch	アップルウォッチ	アップルウォッチ	Apple Watch	名詞-固有名詞-一般
を	オ	ヲ	を	助詞-格助詞
4月24日	シガツニジュウヨッカ	シガツニジュウヨッカ	4月24日	名詞-固有名詞-一般
に	ニ	ニ	に	助詞-格助詞
国内	コクナイ	コクナイ	国内	名詞-普通名詞-一般
発売	ハツバイ	ハツバイ	発売	名詞-普通名詞-サ変可能
し	シ	スル	為る	動詞-非自立可能	サ行変格	連用形-一般
まし	マシ	マス	ます	助動詞	助動詞-マス	連用形-一般
た	タ	タ	た	助動詞	助動詞-タ	終止形-一般
。		。	補助記号-句点
⌚	トケイ	トケイ	時計	記号-一般
EOS


かなり便利そうですよね?!!!!!!!!!!

個人的に UniDic を使用してテキストデータから特徴ベクトルを生成する際や、UniDic を使用してテキストマイニングをする際には、 UniDic と mecab-unidic-NEologd を併用するのがオススメです。

unidic-mecab 2.1.2 との処理結果の差にもご注目ください。

unidic-mecab 2.1.2	     |	mecab-unidic-NEologd
今 いく よ 	     |	今いくよ
絢爛 舞踏 	     |	絢爛舞踏
るみ るみ 	     |	るみるみ
レー カン 	     |	レーカン
この 前 バイト で 化粧 品 選ん で� |	この 前 バイト で 化粧品 選ん でる
今 いくよ くるよ 	     |	今いくよくるよ
ワ カコ 酒 	     |	ワカコ酒
中村 蒼 	     |	中村蒼
俺 ガイ ル 	     |	俺ガイル
で ん ぱ 組 . i n c 	     |	でんぱ組.inc
ボトル の お ぱんつ 	     |	ボトル の おぱんつ
いろは す 		     |	いろはす
北越 紀州 製紙 	     |	北越紀州製紙
メガネ びいき 	     |	メガネびいき
パンチ ライン 	     |	パンチライン


チャンキングなしに上記のように固有表現が得られた方が嬉しい場合もあります。
両方の辞書の出力結果をマージして使った方が良い場合もあります。

mecab-unidic-NEologd は辞書の性能を BCCWJ を使用して、ある程度定量的に評価しようと考えて生成しました。
でも、手元にあるだけでは勿体無いので公開することになりました。

mecab-unidic-NEologd も mecab-ipadic-NEologd と同様に Apache License 2.0 ですし、シードデータは月に最低2回(初旬と中旬)の更新を予定しています。

何かご意見やアドバイスがございましたら、函館で開催される JSAI2015 に行きますのでお声がけ下さい。

参考リンク


- mecab-ipadic-NEologd
-- https://github.com/neologd/mecab-ipadic-neologd/blob/master/README.ja.md

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

2015-05-01 Fri

mecab-ipadic-neologd の seed データの 2015 年 5 月上旬分の更新が完了 #neologd

mecab-ipadic-neologd の seed データの 2015 年 5 月上旬分の更新作業をしました。

前回の定期的な更新扱いの更新は[2015-04-16]でした。
4/18、19、 24と28にも更新していたのですが告知してる場合ではなかったです。

- Periodic data update on 2015-05-01 - neologd/mecab-ipadic-neologd
-- https://github.com/neologd/mecab-ipadic-neologd/commit/10b6deb8c5e03c64ae4eea0f856a76059cfb60c2

前回の定期アップデートからのおもな変更は以下の 4 点です。

- 読み仮名が欠損しているエントリを以前より検出、改善可能にした
- 既知の「自動詞 + 助動詞」が固有表現になっていたので除去した
- 最新のtag(今だと v0.0.1)からの追加・改善があったエントリの一覧を、定期更新時に up することにした
- mecab-ipadic のソースコードを @taku910 さんが GitHUb 上で指定している google drive の URL を使ってダウンロードするように変更した

開発は現状はエントリをひたすら追加するフェイズなので当面は地味です。技術より根性が必要です。次のコストを調整するフェイズにたどり着くと若干技術的になりますし、最初の評価フェイズまでたどり着くと若干研究っぽさが漂ってくるのではないかと思います。いろいろ考えることはありますが、自分が便利に使えるものである状態を維持しながら、どんどん大きく一般的にしていきたいと思います。当面は世界一便利で OSS な日本語形態素解析ユーザ辞書を目指して頑張っておきます。

前回のアップデート以降に、いくつかの企業の製品に mecab-ipadic-neologd が組み込まれていることを教えていただいたり、導入の効果を調査していただいたりしていることをご報告頂きました。励みになります。ありがとうございます。

今後も何か自社の製品に組み込んだり、遊びで使ってみたり、研究に使ったりした方がいらっしゃいましたら、@overlast までTwitter の DMを送っていただくか (誰からでも受け付けております)、Line@ で overlast を追加してお声がけ下さい。

メッセージを頂いたら返信しますので、気軽に話しかけて頂けますと嬉しいです。

次回は少なくとも5月中旬に辞書を更新します。

LINE@ で @overlast をフォローする



友だち追加

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

2015-04-16 Thu

mecab-ipadic-neologd の seed データの4月中旬分の更新が完了 #neologd

mecab-ipadic-neologd の seed データの4月中旬分の更新作業をしました。

前回の定期的な更新扱いの更新は[2015-04-01]でした。
4/8と4/13にも更新していたのですが、、今後はそういうのも告知します。

- Periodic data update on 2015-04-16 - neologd/mecab-ipadic-neologd
-- https://github.com/neologd/mecab-ipadic-neologd/commit/546c4b5e0e2ff335ee0286d55f114da45a7b67bc

今回はエントリの更新と同時に、辞書エントリに真に不要な重複エントリがあったのでそれを削除しつつ、追加する価値があるエントリを追加できないでいた場合はそれを足す処理を増やしました。

辞書の開発で一番大変なのは、実は新機能を内部で追加した時のバグの検知やその修正です。しかも最終的にビルドしてインストールできるか毎回チェックする必要があります。一回の修正がどんな影響を及ぼすかチェックするまでに終盤は毎回大分かかります。今回は気軽に日が変わってすぐに作業し始めて大分後悔しました。

きちんと更新処理の並列化などで工夫して、より速く変更と確認ができるようにしないと、時間が無駄になるなと実感してるところです。

おかげさまで mecab-ipadic-neologd は今のところ 10 uniq cloners / day 程度の速度で新たに利用されており、確実に何処かで利用されているのだなという実感は得ています。
どうもありがとうございます。

他方、どこで利用されているかを僕から検知することは大分困難(Twitter は1日1回チェックしています)です。社会的な意義を数値に換算したり、自身のやる気を維持したりという意味で、使用者の方からどうやって教えていただくか、は今後の課題です。

次回は少なくとも5月上旬に辞書を更新します。

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

関連エントリ

[2015-05-01-1] mecab-ipadic-neologd の seed データの 2015 年 5 月上旬分の更新が完了 #neologd
[-] 1

2015-04-02 Thu

2015年04月02日 必要なら結論を訂正することの必要性

昨日は帰宅中に風邪が治った感じを感じながら帰宅したのだけど、
実際にはまだ喉が痛く、朝方は咳が酷い。
治るまであと2日くらいか。体内時計のズレはあっさり治った

やっぱり日記を書かないと蓄積されない。
頭の中を整頓する効果もあるので、テンパってる時以外は書くようにしたい。
何もない日は自分の Tweet を拾ってエントリにしていく様にしよう。

昨日からやってたデータから無駄なフィールドを消す処理の実装は夕方に突然終わった。
あいかわらず工数の見積もりを間違うけど、今回は良い間違えだった。
削減の結果、無圧縮の状態でデータ長を元の1/3にする処理ができた。
今後はこれを使えば良いだろう。
xzで圧縮すると言っても、時間が有限なので元データは小さい方が嬉しい。

木曜なのでアルゴリズムイントロダクションの輪読。
なんと細々と続いて2冊目に突入した。めでたい。
15章の内容は動的計画法。平和な内容で素晴らしい。
帰納法をサボらないで使わないと駄目、という教訓を得た。

夕方はとあるプログラムを書いていた。
このプログラムはイメージ的には、殺虫剤を食らって10秒後に起き上がるゴキブリに対して、薬剤節約のため9秒ごとに殺虫剤をかける、みたいな処理が必要。

以前書いたことがあって、ふんわりイメージしながら書いたら普通にロックした。
こういう時に助けてくれるロックフリー王子がいたら良いのだけど弊社に王子は来ない。
まもなく解決方法を思い出して安心したけど、今日頑張ると日が変わるなと思ってやめた。

夜遅いけど K さんの新卒入社祝いのためいつも空席がある北海道へ。
隣に座ってみてなかなか奇跡的だと感じた。そしてめでたい。

人生の分岐点に立ったときに10歩だけ楽じゃ無さそうな方向に進んで様子をみたり、
ちゃぶ台返しする前にひっくり返したらやばそうなものを避けてみたり、
そういうことを考えてみることは大切で、人生が大きく変わるのだなと改めて思った。

あと、@Yappo さんが温泉ソムリエっぽくなってて、次から次にオススメ温泉を教えてくれた。
「ほったらかし温泉ってすごい名前だな〜neologdで拾えてるのかな拾えてた行ったみたいな」などと考えてた。

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

LINE DEVELOPER DAY_2015 Tokyo が 2015 年 4 月 28 日に開催

2015 年 4 月 28 日に、LINE DEVELOPER DAY_2015 Tokyo というイベントが開催される。

- LINE DEVELOPER DAY_2015 Tokyo 開催のお知らせ
-- http://developers.linecorp.com/blog/ja/?p=3479

開催日時: 4月28日(火) 10時開場
場所: 渋谷ヒカリエ 9F ヒカリエホール
参加費: 無料


タイムテーブルを見てみたら、僕も見てみたい発表がいくつかあった。
あとで録画を YouTube とかで見られる様になったら嬉しいと感じた。

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

Treasure Data が凄そう

朝起きたら @myui さんと @kamipo さんが Treasure Data に入社してた。
おめでとうございます ^^。


Treasure Dataには、@tagomorisさんが3月入社で、@kamipoさんと私@myuiが4月入社と、事業拡大に向けてエンジニアの採用強化中です。


新しい概念を考案・構築して実現する能力を持っている方々が輝くのは自分にとって目標になるし、おまけに友人知人なので嬉しい。

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

2015-04-01 Wed

2015年04月01日 年度初め効果なのかふと我に返る

今年度はアウトプットの年なので、3日坊主でも何でも、多少どこかに自分の考えたことを書いておかないと、アウトプットしたものが無意味な存在になった時に何も残らなくなるなと思った。

年度末の日報を眺めると辞書の公開が決まったあたりから日常生活に割く時間が足りなくなっていたようだ。
今日になって突然、何となく回ってなかった部分に気が回る様になってきた。

午前は辞書の更新作業とその後始末。これは今後数年粛々とやりたい。

ランチにかけて歴史的経緯のあるデータから無駄なフィールドを見つけて削る処理を書く。
以前にも書いたことがあるけど、その時よりも無駄なフィールドが増えていて、何となくクーロン城の映像が頭に浮かぶ。

夕方前はデンソーアイティーラボラトリさんで @uchumik さんと雑用。
多人数でやると消化が速いが、一人でやると悩みそうな作業。
この作業を来年一人でやって悩む可能性があるのかと思うと悪寒で鳥肌が立つ。
他方、どうせやるなら効果的にやらないとなという真面目な思いで頭が満たされている。
今年は何もトラブルが起きずに最後までいくと良いですね。

帰り際に DSIRNLP 07 を4/29にやることにする。
会場はデンソーアイティーラボラトリさんなので、とてもありがたいし安心感がある。

夕方はまた戻ってデータの削減作業。
これは、地味にあと数日かかる気がしてきた。

水曜日なので夕方は Python によるデータ分析入門の輪読。
読み進むにつれて、その便利っぽさが本当に便利なのか怪しくなってくる。
裏側でどう処理しているかが分かるし、高速って言っても裏はC/C++だろうし。
ループ処理が書いてあると見通しが悪い、と感じる人と、処理が隠蔽されているとキモいしAPIがキモイ、って感じる人と、いいろなんだろうなと思う。
とはいえ、大変に普及しているライブラリなのだから、その使い心地から感じるものがあるまでは使わないとなと思う。

ここしばらくの寝る前の体調を思い浮かべると、体のリズムが理想より5時間ずれている気がする。
風邪もほぼ治ったので今日から戻していく。しばらくランチ後に眠いだろう。

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

文字情報基盤の文字をJIS範囲の文字への変換するMJ縮退マップ

約6万字の文字情報基盤の文字を約1万字のJIS範囲の文字に変換するためのMJ縮退マップというデータが試験的に公開されている。そのうち正式版が出るようだ。

こういうデータは計算機上で扱う文字の種類数を減らしたい人間からするととてもありがたい。

MJ縮退マップとは

MJ文字情報一覧表で整備されている戸籍統一文字と住民基本台帳ネットワークシステム統一文字を合わせて整理した、約6万文字の文字情報基盤の文字(MJ文字集合)と、約1万文字のJIS X 0213(JIS第1水準~第4水準)の文字との対応関係を、辞書や人名に係る各種告示等を根拠として整理した物です。


以下を組み合わせてフィルターを作ることになるようだ。

- MJ縮退マップVer.0.1(検証版)の公開
http://mojikiban.ipa.go.jp/4141.html

- MJ文字情報一覧表Ver.004.02
-- http://mojikiban.ipa.go.jp/1311.html

それにしても、実際にUTF-8なコードで雑に使える map 構造するまでにちょっと面倒だなという印象。

ほぼ文字と文字の組だけで示してくれれば良いのに、キーとなるMJ******な文字を
別のテーブルから持ってこないといけない。ダルい。でも、活用するしか無い。

多分そのうち活用させていただきます。

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

mecab-ipadic-neologd の seed データの4月上旬分の更新が完了

日が変わってすぐに、mecab-ipadic-neologd の seed データの4月上旬分の更新作業をしました。



前回の定期更新扱いの更新が3/17なので、いまのところ順調だと思います。

辞書の更新は淡々とやりつつ、他のこともやりながら、mecab-ipadic-neologd の見えている課題を順に解決して、確実に tag を作っていくのが当面の課題だなと思います。

次回からきちんとブログの記事にして告知しようと思いました。

投稿者:としのり  日時:23:59:59 | コメント | トラックバック |

関連エントリ

[2015-04-16-1] mecab-ipadic-neologd の seed データの4月中旬分の更新が完了 #neologd
[-] 1