狠狠撸

狠狠撸Share a Scribd company logo
@kmotohas
本郷言語処理勉強会 #2
第6章 テキストデータのための素性
自己紹介
!3
- 本橋 和貴 (@kmotohas)
? 東工大 基礎物理学専攻 PhD (2017)
? ソフトバンク株式会社 (2017-2019)
? DEEPCORE Inc. (2018-)
? スカイマインド株式会社 (2019-)
? 深層学習モデルの開発?運用プラットフォーム作ってる会社
- Java/Scaraでできる deeplearning4j の開発
- Keras 2nd (&6th) contributors がいたりする
? 僕はプリセールスエンジニア
目次
!4
- 第2編?自然言語データの扱い
? 第6章?テキストデータのための素性
? 6.1 自然言語処理における分類問題のタイプ分け
? 6.2 自然言語処理問題のための素性
- 6.2.1 直接観察できる素性
- 6.2.2 推測される言語的特徴
- 6.2.3 核となる素性と組み合わせ素性
- 6.2.4 n-グラム素性
- 6.2.6 分布論的素性
第6章で扱う内容
!5
- DNNは素性エンジニアリングのすべてを担ってはくれない
- タスクごとに核となる素性の集合を適切に決定する
テキストデータ 実数値ベクトル
素性*関数
? 素性抽出 (feature extraction)
? 素性表現 (feature representation)
* この本では feature を「特徴量」ではなく「素性」と訳す模様
6.1 自然言語処理における分類問題のタイプ分け
!6
- 単語
? 生き物?、どの言語?、一般的?、似た単語は?、タイポ?
- テキスト(文書分類: document classi?cation)
? スパム?、政治/スポーツ?、皮肉?、肯定的?、誰の著作?、好まれる?
- テキスト対
? 同義語?、適切な翻訳?、同じ著者?、要約?
- 文脈に埋め込まれた単語
? book: 名詞/動詞/形容詞?、apple: 企業/果物?、固有表現?
- 二つの単語の関係
? 単語Aは動詞Bの主語?、目的語?
コラム:単語とは何か
!7
- 単語 := 空白で区切られた文字の系列?
? dog, / dog? / dog. / dog
- 単語 := 空白あるいは句読点で区切られた文字の系列 (token)?
? I.B.M / Mr. / don t / ヘブライ語、アラビア語、中国語、日本語、…
? cat / Cat / New York / ice-cream / ice cream / kick the bucket
- 単語 (word) と トークン (token) は区別される
? トークン := トークン化処理の出力
? 単語 := 意味を運ぶ単位
6.2 自然言語処理問題のための素性
!8
- 単語や文字は離散的 ? 指標 / 計数 をよく用いる
? 指標素性 (indicator feature)
? ある条件を満たしたら1、さもなければ0
- 例)単語 dog が文書中に一度以上現れたら1、なければ0
? 計数 (count)
? ある出来事が生じた回数
- 例)テキスト中に単語 dog が現れた回数
- 6.2.1 直接観察できる素性
- 6.2.2 推測される言語的特徴
- 6.2.3 核となる素性と組み合わせ素性
- 6.2.4 n-グラム素性
- 6.2.6 分布論的素性
6.2.1 直接観察できる素性
!9
- 一つの単語の素性
- テキストの素性
- 文脈中の単語の素性
- 単語関係の素性
一つの単語の素性
!10
- レンマ化 (lemmatizing)
? レンマ (lemma): 辞書見出し語
? booking, booked, books -> book
- ステミング (stemming)
? レンマ化よりも粗い処理
? picture, pictures, pictured -> pictur
原文 A stemmer maps sequences of words to shorter sequences
WordNet Lemmatizer A stemmer map sequence of word to shorter sequence
Porter A stemmer map sequenc of word to shorter sequenc
Lancaster a stem map sequ of word to short sequ
* Stemming and Lemmatization with Python NLTK
一つの単語の素性
!11
- 語彙資源 (lexical resources)
? WordNet [Fellbaum, 1998]
? 単語についての概念的意味的知識を獲得することを目的
? 単語を複数の synset (同義語集合) に属する
? 人手で企画構築
http://wordnetweb.princeton.edu/perl/webwn
IBM Watson は WordNet (+DBPedia, etc) などから知識体系を獲得
-> クイズ番組 Jeopardy! で人間のチャンピョンを破った (2011)
http://www.math.ryukoku.ac.jp/ www-qma/lab/IPSJ-MGN520717.pdf
一つの単語の素性
!12
- 語彙資源 (lexical resources)
? FrameNet [Fillmore et al., 2004]
? VerbNet [Kipper et al., 2000]
? 動詞の周りに焦点を当てて関連する項を列挙
- 核となる項
? 提供者 (DONER)
? 受領者 (RECIPIENT)
? 対象 (THEME)
- 核でない項
? 時 (TIME)
? 目的 (PERPOSE)
? 場所 (PLACE)
? 様態 (MANNER)
? 人手で企画構築
https://framenet2.icsi.berkeley.edu/fnReports/data/frameIndex.xml
一つの単語の素性
!13
- 語彙資源 (lexical resources)
? The Paraphrase Database (PPDB)
[Ganitkevitch et al., 2013; Pavlick et al., 2015]
? 自動構築された言い換えのデータセット
- 分布論的素性 (distributional feature)
? 後述 (6.2.5)
http://paraphrase.org/#/
語彙資源を効率的に利用する方法はタスクに依存
-> エンジニアリング的尽力?創意工夫が必要
-> NNモデルでは頻繁に活用されていない
(状況は変化するかもしれない)
参考)UniDic by 国立国語研究所
!14
https://unidic.ninjal.ac.jp/about_unidic
形態素解析器MeCab用の解析用辞書
6.2.1 直接観察できる素性
!15
- 一つの単語の素性
- テキストの素性
- 文脈中の単語の素性
- 単語関係の素性
テキストの素性
!16
- 単語バッグ (Bag of Words: BOW)
? テキスト中の単語の出現数のヒストグラム
- TF-IDF の重み付け [Manning et al., 2008]
? Term Frequency-Inverse Document Frequency
? 特定の文書で多数回出現している単語を重要視
? a / for などは多数回現れるが特徴的ではない https://www.pytry3g.com/entry/2018/03/21/181514
#d(w)
P
w02d #d(w0)<latexit sha1_base64="eq9A2AGwHGKX4XAIKzdU/Yx30FY=">AAACl3ichVHLLgRBFD3aa4zXYENsJiaEzaQaCbEhJGJpMEg0ne6eGir6le6emdCZH/ADJFYkIuIfbCz4AQufIJYkNhbu9HQiCG6nq06de8+tU1W6awo/YOyxQWpsam5pTbQl2zs6u7pTPb3rvlPyDJ43HNPxNnXN56aweT4Qgck3XY9rlm7yDX1/oZbfKHPPF469Fhy4fNvSdm1RFIYWEKWmxpWipxmhklELo5Wxaqj4JUsNKzuK6wmLK8JOF6r1ZEyNVdVUhmVZFOmfQI5BBnEsO6lLKCjAgYESLHDYCAib0ODTtwUZDC5x2wiJ8wiJKM9RRZK0JariVKERu0/jLq22Ytamda2nH6kN2sWk3yNlGsPsgV2xF3bPrtkTe/+1Vxj1qHk5oFmva7mrdh/1r779q7JoDrD3qfrTc4AipiOvgry7EVM7hVHXlw+PX1ZnVobDEXbOnsn/GXtkt3QCu/xqXOT4yimS9ADy9+v+CdbHs/JEVs5NZubm46dIYBBDGKX7nsIclrCMPO17ghvc4V4akGalRWmpXio1xJo+fAkp9wEvRp1/</latexit>
|{d 2 D : w 2 d}|
|D|<latexit sha1_base64="mbLSZYgS7PJ8YfNe2KQ734QEkeg=">AAAChHichVHLSsNAFD3Gd31V3QguLBbFhZSJD5QuRNSFS19VwUhJ0mkdTJOQpJWadunGH3DhSkFE3OoXuPEHXPgJ4lLBjQtv0oCoqDdk7pkz99w5M6PZhnA9xh4bpMam5pbWtvZYR2dXd0+8t2/TtUqOzjO6ZVjOtqa63BAmz3jCM/i27XC1qBl8S9tfDNa3ytxxhWVueBWb7xbVginyQlc9orLxISXvqLpfVfycIszEUvogSDmlVq351aVqLRtPshQLI/ETyBFIIooVK34JBTlY0FFCERwmPMIGVLj07UAGg03cLnziHEIiXOeoIUbaElVxqlCJ3aexQLOdiDVpHvR0Q7VOuxj0O6RMYIQ9sCv2wu7ZNXti77/28sMegZcKZa2u5Xa253hg/e1fVZGyh71P1Z+ePeQxG3oV5N0OmeAUel1fPjx5WU+vjfij7Jw9k/8z9sju6ARm+VW/WOVrp4jRA8jfr/sn2JxIyZMpeXUqOb8QPUUbBjGMMbrvGcxjGSvI0L5HuMYNbqUWaVyalKbrpVJDpOnHl5DmPgDhU5YQ</latexit>
#d(w)
P
w02d #d(w0)
? log
|D|
|{d 2 D : w 2 d}|<latexit sha1_base64="j4TbcpsK1GId4xrumkAPx+Vug3E=">AAACwHichVHLThRBFD20CDgojLIxYTNhgoHNpBpNNKwIsnDJwwGSKex099QMFfpFd81MoKd/gB9gwUoSQoxfYdzwAy74AmLcQCBx48Lbj8QAUW+l6p46955bt6qswJGRYux8QHsw+HBoeORRafTxk7Hx8tNn65HfCW1Rt33HDzctMxKO9ERdSeWIzSAUpms5YsPaeZvGN7oijKTvvVd7gdhyzbYnW9I2FVFGucFboWnHvGo0Z3qzScyjjmvEvQ88CKUruPQqzSQPFtRswhW5iDt+O9f2l/pJ3OdxM81emu9lIp70E6NcZTWWWeU+0AtQRWHLfvkUHE34sNGBCwEPirADExGNBnQwBMRtISYuJCSzuECCEmk7lCUowyR2h9Y27RoF69E+rRllaptOcWiGpKxgmn1jn9g1O2Of2Xf266+14qxG2sseeSvXisAYP3i+9vO/Kpe8wvYf1T97VmjhTdarpN6DjElvYef67v7h9dr86nT8gh2zH9T/R3bOvtINvO6NfbIiVo9Qog/Q7z73fbA+V9Nf1vSVV9WFxeIrRjCJKczQe7/GAt5hGXU69wsucIkrbVHb1nxtN0/VBgrNBG6Ztv8bMP+vZA==</latexit>
単語頻度 (TF)
文書頻度 (DF)
TF-IDF
文書 d 中の全単語出現数で正規化した単語 w の出現数
単語 w が出現する文書 d の数のコーパスサイズ ?D? に対する割合
6.2.1 直接観察できる素性
!17
- 一つの単語の素性
- テキストの素性
- 文脈中の単語の素性
- 単語関係の素性
文脈中の単語の素性
!18
- 窓 (window)
? ある単語の直近の文脈に焦点
? 対象の単語の周りに単語Xが現れた ことが素性
- 対象の近くにある単語は遠く離れた単語よりも対象の情報を多く持っていることが多い
the brown fox jumped over the lazy boy
window size: k = 2 (典型的には 2, 5, 10)
{ word=brown, word=fox, word=over, word=the }
{ word-2=brown, word-1=fox, word+1=over, word+2=the }
位置付き窓:相対的位置素性 (relative-positional features}
6.2.1 直接観察できる素性
!19
- 一つの単語の素性
- テキストの素性
- 文脈中の単語の素性
- 単語関係の素性
? 文脈中の二つの単語の間の距離 (distance)
? 間に現れる単語そのもの (identity)
6.2.2 推測される言語学的特徴
!20
- 統語 (syntax)
? 自然言語における文の構造を支配する規則
the boy with the black shirt opened the door with a key
NP PP NP VP NP PP NP
S
NP
DT NN NPPP PPVBD
VP
NP PP NP VP NP PP NP
S
NP VP
NP PP NP VP NP PP NP
S
NP
DT
the boy openedIN INNNNP NPDT
DTwith withthe
the black shirt a key
doorJJ NN NNDT
NN NPPP PPVBD
VP
the boy with the black shirt opened the door with a key
det prep
prep
amod
det
pobj
nsubj
root
dobj pobj
det det
品詞 (Part of Speech; POS)
統語的チャンク
(syntactic chunk)
構成要素木
(constituency tree)
句構造木
(phrase-structure tree)
依存構造木
(dependency tree)
6.2.2 推測される言語学的特徴
!21
the boy with the black shirt opened the door with a key
det prep
prep
amod
det
pobj
nsubj
root
dobj pobj
det det
依存構造木
(dependency tree)
the boy with the black shirt opened the door with a smile
the boy with the black shirt opened the door with a key
Agent
Instrument
Patient
Manner
Patient
Agent
意味役割ラベル付け
(semantic role labeling)
6.2.2 推測される言語学的特徴
!22
- 品詞 (Part of Speech tag; POS)
? 名詞、動詞、形容詞、限定詞
- 統語的役割 (syntactic role)
? 動詞の主語、目的語、主動詞、副詞的修飾語
- 意味役割 (semantic role)
? the key (道具) open the door / the boy (動作主) opens the door
- 統語的依存構造木 (syntactic dependency tree)
? 多くの単語で隔てられる二つの単語が統語構造においては隣接してることも
- 談話関係 (discourse relations)
? 文と文との関係。詳細化 (moreover)、反論 (however)、因果 (because) など(接続詞ない場合も)
- 照応 (anaphora)
? the boy opened the door with a key. It1 wasn t locked and he1 entered the room. He2 saw a man. He3 was smiling.
言語学的概念は必要か
!23
- 言語学的特徴は必要なく、NNは中間表現を自分で学習する
(深層学者支持者の一部)
- 十分な量のデータと正しい方向付けがあれば可能(筆者)
? 十分なデータがない場合は明示的に一般的な概念をNNに提供するのは
有益
? 言語学的特徴を入力素性に利用しない場合でも、マルチタスク学習に
おける追加的な教師として用いることができる
Deep Learning: A Critical Appraisal [Gary Marcus; 2018]
6.2.3 核となる素性と組み合わせ素性
!24
- 核となる素性 (core features)
- 組み合わせ素性 (combination features)
? 情報量があり、かつ無駄が比較的少ないような素性を作るのは難しい
? 線形モデルでは、組み合わせ(X Y)も X, Y それぞれの合計以上のスコアにならない
? ニューラルネットワークのような非線形モデルでこの問題を回避
? 核素性の集合だけ定義し、重要な組み合わせ素性はネットワークの訓練で獲得
{window-2=not, window-1=X, window+1=Y, window+2=Z}
{window-2=X , window-1=like, window+1=Y , window+2=Z }
{window-2=not, window-1=like, window+1=X , window+2=Y }
Paris ? 旅行カテゴリ
Hilton ? 旅行カテゴリ
Paris Hilton ? 有名人 or ゴシップカテゴリ
6.2.4 n-グラム素性
!25
- n-グラム (n-gram)
? New York / not good / Paris Hilton のような構造を獲得できる
? of the / on a / the boy などのバイグラムは一般的
- モデルの調整で小さい重みを割り当てる
? MLP は X Y という組み合わせは学習できるが XY (bigram) は認識できない
? 畳み込みネットワークは n-gram feature を見つけ出すように設計されている
? bidirectional RNN は可変長 n-gramや、間にギャップを含む n-gram を感知
6.2.5 分布論的素性
!26
- 言語の分布仮説 (distributional hypothesis) [Firth 1957, Harris 1954]
? Firth: You shall know a word by the company it keeps!
? 単語の意味はそれが用いられる文脈から推論できる (by Wittgenstein?)
Firth, J.R. (1957). A synopsis of linguistic theory 1930-1955
?pizza
chair? ?burger
?pizza
chair?
?burger
原文めちゃくちゃ下品な例で笑う
文脈から単語の一般化を学習
!27
- クラスタリングに基づく手法 (clustering-based methods)
? 類似した単語を同じ単語を同じクラスタに割り当てる
? クラスタに所属する度合いによってそれぞれの単語を表現
- 埋め込みに基づく手法 (embedding-based methods)
? それぞれの単語をベクトルで表現
? 類似した単語は類似したベクトルで表現される
?pizza
chair? ?burger
?pizza
chair?
?burger
* London/Berlinは常に類似した単語として扱うべき?(航空チケット予約、文書翻訳などでは区別したい)
まとめ
!28
- テキストデータの素性として使われているものを列挙
? 分類対象は単語、テキスト、テキスト対、文章中の単語、単語の関係
? 6.2.1 直接観察できる素性
? レンマ、ステミング、語彙資源、TF-IDF、Window
? 6.2.2 推測される言語的特徴
? 文法
? 6.2.3 核となる素性と組み合わせ素性
? NNを用いて組み合わせ素性を獲得
? 6.2.4 n-グラム素性
? New York など複数の単語から構成される言葉を捉える
? 6.2.6 分布論的素性
? You shall know a word by the company it keeps!

More Related Content

Similar to 20190324 第6章 テキストテ?ータのための素性 (20)

CluBERT: A Cluster-Based Approach for Learning Sense Distributions in Multipl...
CluBERT: A Cluster-Based Approach for Learning Sense Distributions in Multipl...CluBERT: A Cluster-Based Approach for Learning Sense Distributions in Multipl...
CluBERT: A Cluster-Based Approach for Learning Sense Distributions in Multipl...
禎晃 山崎
?
自然言语処理.辫辫迟虫
自然言语処理.辫辫迟虫自然言语処理.辫辫迟虫
自然言语処理.辫辫迟虫
Sora Kubota
?
自然言语処理分野の最前线(ステアラボ人工知能シンポジウム2017)
自然言语処理分野の最前线(ステアラボ人工知能シンポジウム2017)自然言语処理分野の最前线(ステアラボ人工知能シンポジウム2017)
自然言语処理分野の最前线(ステアラボ人工知能シンポジウム2017)
STAIR Lab, Chiba Institute of Technology
?
黒い目の大きな女の子:构文から意味へ
黒い目の大きな女の子:构文から意味へ黒い目の大きな女の子:构文から意味へ
黒い目の大きな女の子:构文から意味へ
Hiroshi Nakagawa
?
第64回情報科学談話会(岡﨑 直観 准教授)
第64回情報科学談話会(岡﨑 直観 准教授) 第64回情報科学談話会(岡﨑 直観 准教授)
第64回情報科学談話会(岡﨑 直観 准教授)
gsis gsis
?
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」
Hitomi Yanaka
?
論文読み 20170525
論文読み 20170525論文読み 20170525
論文読み 20170525
Taichi Iki
?
滨苍蹿别谤.狈贰罢を使って尝顿础を実装してみた
滨苍蹿别谤.狈贰罢を使って尝顿础を実装してみた滨苍蹿别谤.狈贰罢を使って尝顿础を実装してみた
滨苍蹿别谤.狈贰罢を使って尝顿础を実装してみた
正志 坪坂
?
Word2vec alpha
Word2vec alphaWord2vec alpha
Word2vec alpha
KCS Keio Computer Society
?
All-but-the-Top: Simple and Effective Postprocessing for Word Representations
All-but-the-Top: Simple and Effective Postprocessing for Word RepresentationsAll-but-the-Top: Simple and Effective Postprocessing for Word Representations
All-but-the-Top: Simple and Effective Postprocessing for Word Representations
Makoto Takenaka
?
第叁回さくさくテキストマイニング勉强会 入门セッション
第叁回さくさくテキストマイニング勉强会 入门セッション第叁回さくさくテキストマイニング勉强会 入门セッション
第叁回さくさくテキストマイニング勉强会 入门セッション
antibayesian 俺がS式だ
?
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」(一部文字が欠けてます)
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」(一部文字が欠けてます)東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」(一部文字が欠けてます)
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」(一部文字が欠けてます)
Hitomi Yanaka
?
Interop2017
Interop2017Interop2017
Interop2017
tak9029
?
Acl yomikai, 1016, 20110903
Acl yomikai, 1016,  20110903Acl yomikai, 1016,  20110903
Acl yomikai, 1016, 20110903
Yo Ehara
?
ニューラル日英翻訳における出力文の态制御
ニューラル日英翻訳における出力文の态制御ニューラル日英翻訳における出力文の态制御
ニューラル日英翻訳における出力文の态制御
Hayahide Yamagishi
?
Chainer with natural language processing hands on
Chainer with natural language processing hands onChainer with natural language processing hands on
Chainer with natural language processing hands on
Ogushi Masaya
?
機械学習技術の現在+TensolFlow White Paper
機械学習技術の現在+TensolFlow White Paper機械学習技術の現在+TensolFlow White Paper
機械学習技術の現在+TensolFlow White Paper
maruyama097
?
Kuroda & Hasebe NLP15 slides on Pattern Lattice Model
Kuroda & Hasebe NLP15 slides on Pattern Lattice ModelKuroda & Hasebe NLP15 slides on Pattern Lattice Model
Kuroda & Hasebe NLP15 slides on Pattern Lattice Model
Kow Kuroda
?
言语と知识の深层学习蔼认知科学会サマースクール
言语と知识の深层学习蔼认知科学会サマースクール言语と知识の深层学习蔼认知科学会サマースクール
言语と知识の深层学习蔼认知科学会サマースクール
Yuya Unno
?
Python nlp handson_20220225_v5
Python nlp handson_20220225_v5Python nlp handson_20220225_v5
Python nlp handson_20220225_v5
博三 太田
?
CluBERT: A Cluster-Based Approach for Learning Sense Distributions in Multipl...
CluBERT: A Cluster-Based Approach for Learning Sense Distributions in Multipl...CluBERT: A Cluster-Based Approach for Learning Sense Distributions in Multipl...
CluBERT: A Cluster-Based Approach for Learning Sense Distributions in Multipl...
禎晃 山崎
?
自然言语処理.辫辫迟虫
自然言语処理.辫辫迟虫自然言语処理.辫辫迟虫
自然言语処理.辫辫迟虫
Sora Kubota
?
自然言语処理分野の最前线(ステアラボ人工知能シンポジウム2017)
自然言语処理分野の最前线(ステアラボ人工知能シンポジウム2017)自然言语処理分野の最前线(ステアラボ人工知能シンポジウム2017)
自然言语処理分野の最前线(ステアラボ人工知能シンポジウム2017)
STAIR Lab, Chiba Institute of Technology
?
黒い目の大きな女の子:构文から意味へ
黒い目の大きな女の子:构文から意味へ黒い目の大きな女の子:构文から意味へ
黒い目の大きな女の子:构文から意味へ
Hiroshi Nakagawa
?
第64回情報科学談話会(岡﨑 直観 准教授)
第64回情報科学談話会(岡﨑 直観 准教授) 第64回情報科学談話会(岡﨑 直観 准教授)
第64回情報科学談話会(岡﨑 直観 准教授)
gsis gsis
?
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」
Hitomi Yanaka
?
論文読み 20170525
論文読み 20170525論文読み 20170525
論文読み 20170525
Taichi Iki
?
滨苍蹿别谤.狈贰罢を使って尝顿础を実装してみた
滨苍蹿别谤.狈贰罢を使って尝顿础を実装してみた滨苍蹿别谤.狈贰罢を使って尝顿础を実装してみた
滨苍蹿别谤.狈贰罢を使って尝顿础を実装してみた
正志 坪坂
?
All-but-the-Top: Simple and Effective Postprocessing for Word Representations
All-but-the-Top: Simple and Effective Postprocessing for Word RepresentationsAll-but-the-Top: Simple and Effective Postprocessing for Word Representations
All-but-the-Top: Simple and Effective Postprocessing for Word Representations
Makoto Takenaka
?
第叁回さくさくテキストマイニング勉强会 入门セッション
第叁回さくさくテキストマイニング勉强会 入门セッション第叁回さくさくテキストマイニング勉强会 入门セッション
第叁回さくさくテキストマイニング勉强会 入门セッション
antibayesian 俺がS式だ
?
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」(一部文字が欠けてます)
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」(一部文字が欠けてます)東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」(一部文字が欠けてます)
東京大学2020年度深層学習(Deep learning基礎講座) 第9回「深層学習と自然言語処理」(一部文字が欠けてます)
Hitomi Yanaka
?
Interop2017
Interop2017Interop2017
Interop2017
tak9029
?
Acl yomikai, 1016, 20110903
Acl yomikai, 1016,  20110903Acl yomikai, 1016,  20110903
Acl yomikai, 1016, 20110903
Yo Ehara
?
ニューラル日英翻訳における出力文の态制御
ニューラル日英翻訳における出力文の态制御ニューラル日英翻訳における出力文の态制御
ニューラル日英翻訳における出力文の态制御
Hayahide Yamagishi
?
Chainer with natural language processing hands on
Chainer with natural language processing hands onChainer with natural language processing hands on
Chainer with natural language processing hands on
Ogushi Masaya
?
機械学習技術の現在+TensolFlow White Paper
機械学習技術の現在+TensolFlow White Paper機械学習技術の現在+TensolFlow White Paper
機械学習技術の現在+TensolFlow White Paper
maruyama097
?
Kuroda & Hasebe NLP15 slides on Pattern Lattice Model
Kuroda & Hasebe NLP15 slides on Pattern Lattice ModelKuroda & Hasebe NLP15 slides on Pattern Lattice Model
Kuroda & Hasebe NLP15 slides on Pattern Lattice Model
Kow Kuroda
?
言语と知识の深层学习蔼认知科学会サマースクール
言语と知识の深层学习蔼认知科学会サマースクール言语と知识の深层学习蔼认知科学会サマースクール
言语と知识の深层学习蔼认知科学会サマースクール
Yuya Unno
?
Python nlp handson_20220225_v5
Python nlp handson_20220225_v5Python nlp handson_20220225_v5
Python nlp handson_20220225_v5
博三 太田
?

Recently uploaded (6)

20250611_話題のDevin、エンプラ開発で〇人分の仕事はできるのか !?
20250611_話題のDevin、エンプラ開発で〇人分の仕事はできるのか !?20250611_話題のDevin、エンプラ開発で〇人分の仕事はできるのか !?
20250611_話題のDevin、エンプラ開発で〇人分の仕事はできるのか !?
Masaki Yamakawa
?
イミュータブルデータモデルの導入実験と結果(JJUG CCC 2025 Spring)
イミュータブルデータモデルの導入実験と結果(JJUG CCC 2025 Spring)イミュータブルデータモデルの導入実験と結果(JJUG CCC 2025 Spring)
イミュータブルデータモデルの導入実験と結果(JJUG CCC 2025 Spring)
kiyokawa0702yuuma
?
Azure OpenAI と LangChain4j を使用した LLM Java エンタープライズ?アプリケーションの 構築方法の紹介
Azure OpenAI と LangChain4j を使用したLLM Java エンタープライズ?アプリケーションの構築方法の紹介Azure OpenAI と LangChain4j を使用したLLM Java エンタープライズ?アプリケーションの構築方法の紹介
Azure OpenAI と LangChain4j を使用した LLM Java エンタープライズ?アプリケーションの 構築方法の紹介
Yoshio Terada
?
AIVIDEO MAG JUNE2025 FIRST TEST---------
AIVIDEO MAG JUNE2025 FIRST TEST---------AIVIDEO MAG JUNE2025 FIRST TEST---------
AIVIDEO MAG JUNE2025 FIRST TEST---------
1pcity Studios, Inc
?
PR業務に 地味に効く! AI活用実践集 ――毎日使ってわかった20の使いどころ
PR業務に 地味に効く! AI活用実践集 ――毎日使ってわかった20の使いどころPR業務に 地味に効く! AI活用実践集 ――毎日使ってわかった20の使いどころ
PR業務に 地味に効く! AI活用実践集 ――毎日使ってわかった20の使いどころ
maeri111b
?
厂补测补办补贬补测补蝉丑颈冲既存データセットの活用事例に基づく新规データセットの活用方法推荐に関する検讨冲诲别颈尘2025
厂补测补办补贬补测补蝉丑颈冲既存データセットの活用事例に基づく新规データセットの活用方法推荐に関する検讨冲诲别颈尘2025厂补测补办补贬补测补蝉丑颈冲既存データセットの活用事例に基づく新规データセットの活用方法推荐に関する検讨冲诲别颈尘2025
厂补测补办补贬补测补蝉丑颈冲既存データセットの活用事例に基づく新规データセットの活用方法推荐に関する検讨冲诲别颈尘2025
Matsushita Laboratory
?
20250611_話題のDevin、エンプラ開発で〇人分の仕事はできるのか !?
20250611_話題のDevin、エンプラ開発で〇人分の仕事はできるのか !?20250611_話題のDevin、エンプラ開発で〇人分の仕事はできるのか !?
20250611_話題のDevin、エンプラ開発で〇人分の仕事はできるのか !?
Masaki Yamakawa
?
イミュータブルデータモデルの導入実験と結果(JJUG CCC 2025 Spring)
イミュータブルデータモデルの導入実験と結果(JJUG CCC 2025 Spring)イミュータブルデータモデルの導入実験と結果(JJUG CCC 2025 Spring)
イミュータブルデータモデルの導入実験と結果(JJUG CCC 2025 Spring)
kiyokawa0702yuuma
?
Azure OpenAI と LangChain4j を使用した LLM Java エンタープライズ?アプリケーションの 構築方法の紹介
Azure OpenAI と LangChain4j を使用したLLM Java エンタープライズ?アプリケーションの構築方法の紹介Azure OpenAI と LangChain4j を使用したLLM Java エンタープライズ?アプリケーションの構築方法の紹介
Azure OpenAI と LangChain4j を使用した LLM Java エンタープライズ?アプリケーションの 構築方法の紹介
Yoshio Terada
?
AIVIDEO MAG JUNE2025 FIRST TEST---------
AIVIDEO MAG JUNE2025 FIRST TEST---------AIVIDEO MAG JUNE2025 FIRST TEST---------
AIVIDEO MAG JUNE2025 FIRST TEST---------
1pcity Studios, Inc
?
PR業務に 地味に効く! AI活用実践集 ――毎日使ってわかった20の使いどころ
PR業務に 地味に効く! AI活用実践集 ――毎日使ってわかった20の使いどころPR業務に 地味に効く! AI活用実践集 ――毎日使ってわかった20の使いどころ
PR業務に 地味に効く! AI活用実践集 ――毎日使ってわかった20の使いどころ
maeri111b
?
厂补测补办补贬补测补蝉丑颈冲既存データセットの活用事例に基づく新规データセットの活用方法推荐に関する検讨冲诲别颈尘2025
厂补测补办补贬补测补蝉丑颈冲既存データセットの活用事例に基づく新规データセットの活用方法推荐に関する検讨冲诲别颈尘2025厂补测补办补贬补测补蝉丑颈冲既存データセットの活用事例に基づく新规データセットの活用方法推荐に関する検讨冲诲别颈尘2025
厂补测补办补贬补测补蝉丑颈冲既存データセットの活用事例に基づく新规データセットの活用方法推荐に関する検讨冲诲别颈尘2025
Matsushita Laboratory
?
Ad

20190324 第6章 テキストテ?ータのための素性

  • 2. 自己紹介 !3 - 本橋 和貴 (@kmotohas) ? 東工大 基礎物理学専攻 PhD (2017) ? ソフトバンク株式会社 (2017-2019) ? DEEPCORE Inc. (2018-) ? スカイマインド株式会社 (2019-) ? 深層学習モデルの開発?運用プラットフォーム作ってる会社 - Java/Scaraでできる deeplearning4j の開発 - Keras 2nd (&6th) contributors がいたりする ? 僕はプリセールスエンジニア
  • 3. 目次 !4 - 第2編?自然言語データの扱い ? 第6章?テキストデータのための素性 ? 6.1 自然言語処理における分類問題のタイプ分け ? 6.2 自然言語処理問題のための素性 - 6.2.1 直接観察できる素性 - 6.2.2 推測される言語的特徴 - 6.2.3 核となる素性と組み合わせ素性 - 6.2.4 n-グラム素性 - 6.2.6 分布論的素性
  • 4. 第6章で扱う内容 !5 - DNNは素性エンジニアリングのすべてを担ってはくれない - タスクごとに核となる素性の集合を適切に決定する テキストデータ 実数値ベクトル 素性*関数 ? 素性抽出 (feature extraction) ? 素性表現 (feature representation) * この本では feature を「特徴量」ではなく「素性」と訳す模様
  • 5. 6.1 自然言語処理における分類問題のタイプ分け !6 - 単語 ? 生き物?、どの言語?、一般的?、似た単語は?、タイポ? - テキスト(文書分類: document classi?cation) ? スパム?、政治/スポーツ?、皮肉?、肯定的?、誰の著作?、好まれる? - テキスト対 ? 同義語?、適切な翻訳?、同じ著者?、要約? - 文脈に埋め込まれた単語 ? book: 名詞/動詞/形容詞?、apple: 企業/果物?、固有表現? - 二つの単語の関係 ? 単語Aは動詞Bの主語?、目的語?
  • 6. コラム:単語とは何か !7 - 単語 := 空白で区切られた文字の系列? ? dog, / dog? / dog. / dog - 単語 := 空白あるいは句読点で区切られた文字の系列 (token)? ? I.B.M / Mr. / don t / ヘブライ語、アラビア語、中国語、日本語、… ? cat / Cat / New York / ice-cream / ice cream / kick the bucket - 単語 (word) と トークン (token) は区別される ? トークン := トークン化処理の出力 ? 単語 := 意味を運ぶ単位
  • 7. 6.2 自然言語処理問題のための素性 !8 - 単語や文字は離散的 ? 指標 / 計数 をよく用いる ? 指標素性 (indicator feature) ? ある条件を満たしたら1、さもなければ0 - 例)単語 dog が文書中に一度以上現れたら1、なければ0 ? 計数 (count) ? ある出来事が生じた回数 - 例)テキスト中に単語 dog が現れた回数 - 6.2.1 直接観察できる素性 - 6.2.2 推測される言語的特徴 - 6.2.3 核となる素性と組み合わせ素性 - 6.2.4 n-グラム素性 - 6.2.6 分布論的素性
  • 8. 6.2.1 直接観察できる素性 !9 - 一つの単語の素性 - テキストの素性 - 文脈中の単語の素性 - 単語関係の素性
  • 9. 一つの単語の素性 !10 - レンマ化 (lemmatizing) ? レンマ (lemma): 辞書見出し語 ? booking, booked, books -> book - ステミング (stemming) ? レンマ化よりも粗い処理 ? picture, pictures, pictured -> pictur 原文 A stemmer maps sequences of words to shorter sequences WordNet Lemmatizer A stemmer map sequence of word to shorter sequence Porter A stemmer map sequenc of word to shorter sequenc Lancaster a stem map sequ of word to short sequ * Stemming and Lemmatization with Python NLTK
  • 10. 一つの単語の素性 !11 - 語彙資源 (lexical resources) ? WordNet [Fellbaum, 1998] ? 単語についての概念的意味的知識を獲得することを目的 ? 単語を複数の synset (同義語集合) に属する ? 人手で企画構築 http://wordnetweb.princeton.edu/perl/webwn IBM Watson は WordNet (+DBPedia, etc) などから知識体系を獲得 -> クイズ番組 Jeopardy! で人間のチャンピョンを破った (2011) http://www.math.ryukoku.ac.jp/ www-qma/lab/IPSJ-MGN520717.pdf
  • 11. 一つの単語の素性 !12 - 語彙資源 (lexical resources) ? FrameNet [Fillmore et al., 2004] ? VerbNet [Kipper et al., 2000] ? 動詞の周りに焦点を当てて関連する項を列挙 - 核となる項 ? 提供者 (DONER) ? 受領者 (RECIPIENT) ? 対象 (THEME) - 核でない項 ? 時 (TIME) ? 目的 (PERPOSE) ? 場所 (PLACE) ? 様態 (MANNER) ? 人手で企画構築 https://framenet2.icsi.berkeley.edu/fnReports/data/frameIndex.xml
  • 12. 一つの単語の素性 !13 - 語彙資源 (lexical resources) ? The Paraphrase Database (PPDB) [Ganitkevitch et al., 2013; Pavlick et al., 2015] ? 自動構築された言い換えのデータセット - 分布論的素性 (distributional feature) ? 後述 (6.2.5) http://paraphrase.org/#/ 語彙資源を効率的に利用する方法はタスクに依存 -> エンジニアリング的尽力?創意工夫が必要 -> NNモデルでは頻繁に活用されていない (状況は変化するかもしれない)
  • 14. 6.2.1 直接観察できる素性 !15 - 一つの単語の素性 - テキストの素性 - 文脈中の単語の素性 - 単語関係の素性
  • 15. テキストの素性 !16 - 単語バッグ (Bag of Words: BOW) ? テキスト中の単語の出現数のヒストグラム - TF-IDF の重み付け [Manning et al., 2008] ? Term Frequency-Inverse Document Frequency ? 特定の文書で多数回出現している単語を重要視 ? a / for などは多数回現れるが特徴的ではない https://www.pytry3g.com/entry/2018/03/21/181514 #d(w) P w02d #d(w0)<latexit sha1_base64="eq9A2AGwHGKX4XAIKzdU/Yx30FY=">AAACl3ichVHLLgRBFD3aa4zXYENsJiaEzaQaCbEhJGJpMEg0ne6eGir6le6emdCZH/ADJFYkIuIfbCz4AQufIJYkNhbu9HQiCG6nq06de8+tU1W6awo/YOyxQWpsam5pTbQl2zs6u7pTPb3rvlPyDJ43HNPxNnXN56aweT4Qgck3XY9rlm7yDX1/oZbfKHPPF469Fhy4fNvSdm1RFIYWEKWmxpWipxmhklELo5Wxaqj4JUsNKzuK6wmLK8JOF6r1ZEyNVdVUhmVZFOmfQI5BBnEsO6lLKCjAgYESLHDYCAib0ODTtwUZDC5x2wiJ8wiJKM9RRZK0JariVKERu0/jLq22Ytamda2nH6kN2sWk3yNlGsPsgV2xF3bPrtkTe/+1Vxj1qHk5oFmva7mrdh/1r779q7JoDrD3qfrTc4AipiOvgry7EVM7hVHXlw+PX1ZnVobDEXbOnsn/GXtkt3QCu/xqXOT4yimS9ADy9+v+CdbHs/JEVs5NZubm46dIYBBDGKX7nsIclrCMPO17ghvc4V4akGalRWmpXio1xJo+fAkp9wEvRp1/</latexit> |{d 2 D : w 2 d}| |D|<latexit sha1_base64="mbLSZYgS7PJ8YfNe2KQ734QEkeg=">AAAChHichVHLSsNAFD3Gd31V3QguLBbFhZSJD5QuRNSFS19VwUhJ0mkdTJOQpJWadunGH3DhSkFE3OoXuPEHXPgJ4lLBjQtv0oCoqDdk7pkz99w5M6PZhnA9xh4bpMam5pbWtvZYR2dXd0+8t2/TtUqOzjO6ZVjOtqa63BAmz3jCM/i27XC1qBl8S9tfDNa3ytxxhWVueBWb7xbVginyQlc9orLxISXvqLpfVfycIszEUvogSDmlVq351aVqLRtPshQLI/ETyBFIIooVK34JBTlY0FFCERwmPMIGVLj07UAGg03cLnziHEIiXOeoIUbaElVxqlCJ3aexQLOdiDVpHvR0Q7VOuxj0O6RMYIQ9sCv2wu7ZNXti77/28sMegZcKZa2u5Xa253hg/e1fVZGyh71P1Z+ePeQxG3oV5N0OmeAUel1fPjx5WU+vjfij7Jw9k/8z9sju6ARm+VW/WOVrp4jRA8jfr/sn2JxIyZMpeXUqOb8QPUUbBjGMMbrvGcxjGSvI0L5HuMYNbqUWaVyalKbrpVJDpOnHl5DmPgDhU5YQ</latexit> #d(w) P w02d #d(w0) ? log |D| |{d 2 D : w 2 d}|<latexit sha1_base64="j4TbcpsK1GId4xrumkAPx+Vug3E=">AAACwHichVHLThRBFD20CDgojLIxYTNhgoHNpBpNNKwIsnDJwwGSKex099QMFfpFd81MoKd/gB9gwUoSQoxfYdzwAy74AmLcQCBx48Lbj8QAUW+l6p46955bt6qswJGRYux8QHsw+HBoeORRafTxk7Hx8tNn65HfCW1Rt33HDzctMxKO9ERdSeWIzSAUpms5YsPaeZvGN7oijKTvvVd7gdhyzbYnW9I2FVFGucFboWnHvGo0Z3qzScyjjmvEvQ88CKUruPQqzSQPFtRswhW5iDt+O9f2l/pJ3OdxM81emu9lIp70E6NcZTWWWeU+0AtQRWHLfvkUHE34sNGBCwEPirADExGNBnQwBMRtISYuJCSzuECCEmk7lCUowyR2h9Y27RoF69E+rRllaptOcWiGpKxgmn1jn9g1O2Of2Xf266+14qxG2sseeSvXisAYP3i+9vO/Kpe8wvYf1T97VmjhTdarpN6DjElvYef67v7h9dr86nT8gh2zH9T/R3bOvtINvO6NfbIiVo9Qog/Q7z73fbA+V9Nf1vSVV9WFxeIrRjCJKczQe7/GAt5hGXU69wsucIkrbVHb1nxtN0/VBgrNBG6Ztv8bMP+vZA==</latexit> 単語頻度 (TF) 文書頻度 (DF) TF-IDF 文書 d 中の全単語出現数で正規化した単語 w の出現数 単語 w が出現する文書 d の数のコーパスサイズ ?D? に対する割合
  • 16. 6.2.1 直接観察できる素性 !17 - 一つの単語の素性 - テキストの素性 - 文脈中の単語の素性 - 単語関係の素性
  • 17. 文脈中の単語の素性 !18 - 窓 (window) ? ある単語の直近の文脈に焦点 ? 対象の単語の周りに単語Xが現れた ことが素性 - 対象の近くにある単語は遠く離れた単語よりも対象の情報を多く持っていることが多い the brown fox jumped over the lazy boy window size: k = 2 (典型的には 2, 5, 10) { word=brown, word=fox, word=over, word=the } { word-2=brown, word-1=fox, word+1=over, word+2=the } 位置付き窓:相対的位置素性 (relative-positional features}
  • 18. 6.2.1 直接観察できる素性 !19 - 一つの単語の素性 - テキストの素性 - 文脈中の単語の素性 - 単語関係の素性 ? 文脈中の二つの単語の間の距離 (distance) ? 間に現れる単語そのもの (identity)
  • 19. 6.2.2 推測される言語学的特徴 !20 - 統語 (syntax) ? 自然言語における文の構造を支配する規則 the boy with the black shirt opened the door with a key NP PP NP VP NP PP NP S NP DT NN NPPP PPVBD VP NP PP NP VP NP PP NP S NP VP NP PP NP VP NP PP NP S NP DT the boy openedIN INNNNP NPDT DTwith withthe the black shirt a key doorJJ NN NNDT NN NPPP PPVBD VP the boy with the black shirt opened the door with a key det prep prep amod det pobj nsubj root dobj pobj det det 品詞 (Part of Speech; POS) 統語的チャンク (syntactic chunk) 構成要素木 (constituency tree) 句構造木 (phrase-structure tree) 依存構造木 (dependency tree)
  • 20. 6.2.2 推測される言語学的特徴 !21 the boy with the black shirt opened the door with a key det prep prep amod det pobj nsubj root dobj pobj det det 依存構造木 (dependency tree) the boy with the black shirt opened the door with a smile the boy with the black shirt opened the door with a key Agent Instrument Patient Manner Patient Agent 意味役割ラベル付け (semantic role labeling)
  • 21. 6.2.2 推測される言語学的特徴 !22 - 品詞 (Part of Speech tag; POS) ? 名詞、動詞、形容詞、限定詞 - 統語的役割 (syntactic role) ? 動詞の主語、目的語、主動詞、副詞的修飾語 - 意味役割 (semantic role) ? the key (道具) open the door / the boy (動作主) opens the door - 統語的依存構造木 (syntactic dependency tree) ? 多くの単語で隔てられる二つの単語が統語構造においては隣接してることも - 談話関係 (discourse relations) ? 文と文との関係。詳細化 (moreover)、反論 (however)、因果 (because) など(接続詞ない場合も) - 照応 (anaphora) ? the boy opened the door with a key. It1 wasn t locked and he1 entered the room. He2 saw a man. He3 was smiling.
  • 22. 言語学的概念は必要か !23 - 言語学的特徴は必要なく、NNは中間表現を自分で学習する (深層学者支持者の一部) - 十分な量のデータと正しい方向付けがあれば可能(筆者) ? 十分なデータがない場合は明示的に一般的な概念をNNに提供するのは 有益 ? 言語学的特徴を入力素性に利用しない場合でも、マルチタスク学習に おける追加的な教師として用いることができる Deep Learning: A Critical Appraisal [Gary Marcus; 2018]
  • 23. 6.2.3 核となる素性と組み合わせ素性 !24 - 核となる素性 (core features) - 組み合わせ素性 (combination features) ? 情報量があり、かつ無駄が比較的少ないような素性を作るのは難しい ? 線形モデルでは、組み合わせ(X Y)も X, Y それぞれの合計以上のスコアにならない ? ニューラルネットワークのような非線形モデルでこの問題を回避 ? 核素性の集合だけ定義し、重要な組み合わせ素性はネットワークの訓練で獲得 {window-2=not, window-1=X, window+1=Y, window+2=Z} {window-2=X , window-1=like, window+1=Y , window+2=Z } {window-2=not, window-1=like, window+1=X , window+2=Y } Paris ? 旅行カテゴリ Hilton ? 旅行カテゴリ Paris Hilton ? 有名人 or ゴシップカテゴリ
  • 24. 6.2.4 n-グラム素性 !25 - n-グラム (n-gram) ? New York / not good / Paris Hilton のような構造を獲得できる ? of the / on a / the boy などのバイグラムは一般的 - モデルの調整で小さい重みを割り当てる ? MLP は X Y という組み合わせは学習できるが XY (bigram) は認識できない ? 畳み込みネットワークは n-gram feature を見つけ出すように設計されている ? bidirectional RNN は可変長 n-gramや、間にギャップを含む n-gram を感知
  • 25. 6.2.5 分布論的素性 !26 - 言語の分布仮説 (distributional hypothesis) [Firth 1957, Harris 1954] ? Firth: You shall know a word by the company it keeps! ? 単語の意味はそれが用いられる文脈から推論できる (by Wittgenstein?) Firth, J.R. (1957). A synopsis of linguistic theory 1930-1955 ?pizza chair? ?burger ?pizza chair? ?burger 原文めちゃくちゃ下品な例で笑う
  • 26. 文脈から単語の一般化を学習 !27 - クラスタリングに基づく手法 (clustering-based methods) ? 類似した単語を同じ単語を同じクラスタに割り当てる ? クラスタに所属する度合いによってそれぞれの単語を表現 - 埋め込みに基づく手法 (embedding-based methods) ? それぞれの単語をベクトルで表現 ? 類似した単語は類似したベクトルで表現される ?pizza chair? ?burger ?pizza chair? ?burger * London/Berlinは常に類似した単語として扱うべき?(航空チケット予約、文書翻訳などでは区別したい)
  • 27. まとめ !28 - テキストデータの素性として使われているものを列挙 ? 分類対象は単語、テキスト、テキスト対、文章中の単語、単語の関係 ? 6.2.1 直接観察できる素性 ? レンマ、ステミング、語彙資源、TF-IDF、Window ? 6.2.2 推測される言語的特徴 ? 文法 ? 6.2.3 核となる素性と組み合わせ素性 ? NNを用いて組み合わせ素性を獲得 ? 6.2.4 n-グラム素性 ? New York など複数の単語から構成される言葉を捉える ? 6.2.6 分布論的素性 ? You shall know a word by the company it keeps!