ゆるふわ非構造#1に参加しました

久しぶりに勉強会に参加したのでメモ。
東京スクラッパーというコミュニティの勉強会でデータ前処理を扱います。
メモは自習用に書いているので発表資料に沿っていないものもあります。

発表資料はconnpassのページに全てあがっています。

テキスト前処理のための形態素解析入門 ゆるふわ編 (@yamano357)

テキスト前処理のための形態素解析

形態素解析は文法や辞書、コーパスから学習したスコアをもとに文を形態素という意味を持つ最小単位に分解すること。

形態素解析
  • 辞書引きしてすべてのパターンの形態素を出力する
    • 辞書検索のためのデータ構造にはトライ木を使用する
    • 出力結果はラティスという形態素をノードとしてその間をリンクでつなげたグラフで表現される
  • コスト最小法により最適解を発見する
    • 隣接コスト(連接コスト)と生起コスト(単語コスト)が最小になる解を求める
      • 隣接コストは形態素同士のつながりやすさ、生起コストは形態素の出現しやすさを数値にしたもの
    • 動的計画法の一種であるビタビ(Viterbi)アルゴリズムを使用する
  • コスト推定
日本語の形態素解析

素性抽出

素性抽出はテキストの特徴を数値にしたもの、機械学習に適用しやすいようにベクトルや行列の形式であらわす。

  • Bag of Words
    • 文書に含まれる単語の頻度で表現する
  • 言語データは単語を特徴次元とすると疎なベクトル(ほとんどの要素が0)になる
    • 全ての発生しうる単語のうち、使われる単語はごく一部
  • 疎なベクトルはHashMap(KeyとValueのペア)のようなデータ構造で表現する

CaboChaで始める係り受け解析 (@nezuq)

  • CaboChaはSupport Vector Machinesに基づいた日本語係り受け解析器
  • Ubuntu14.04 + Python3の環境でCabochaを使う
    • インストールするさいはconfigureのオプションで--with-charset=utf8を付ける
    • Python3で使用するにはPythonバインディングのソースを修正しないとエラーになる

RDF/OWLの概要とOSS実装、及び活用イメージについて~非構造データの構造化ゴールとしてのLinkedData~ (@masayuki_isobe14)

LinkedData

  • 非構造データと構造化データの中間に位置する
    • 一部をLinkedOpenDataとして公開することや社内向けにはLinkedCloseDataとしてデータを蓄積するという活用ができる

LinkedDataを支える実装技術

  • RDF(Resource Description Format)
    • リソースを記述するフォーマットで有向グラフのノードとエッジに型と名前が付いたようなもの
      • ノードとノードをエッジでつないだものはRDFトリプルと呼ばれる
      • ノードとエッジはURIとして記述する
  • 定義済みの用語
  • RDFでデータを記述すると実体とメタ情報、メタ情報のメタ情報といった情報表現が可能となる
  • RDFS
  • OWL
    • RDFSのクラスとプロパティの機能を拡張してクラスの集合演算やプロパティの値制約を記述できる
  • RDFXMLで表記できるがN-Triples, Notation3, Turtleといった簡易表記方法がある
  • SPARQL(RDFクエリ言語)
    • RDF文書からRDFトリプルを検索/挿入/書き換えするクエリ言語
  • SWRL(セマンティックWebルール言語)
    • サブルーチンのようにクエリを組み合わせる使い方ができる

RDF/OWLのOSS実装

LT

LTはPrologとfluentdの話。
内容はゆるふわな感じで理解しました。

感想

初級者向けの勉強会なので自然言語処理機械学習の専門知識がなくても参加しやすいと感じました。
勉強会の目的としては以前あったさくさくテキストマイニングに近いかもしれません。