自然言語処理100本ノックまとめ
自然言語処理100本ノックで得られた知見のメモ。
準備(1章)
n-gram
文字列を"n"個の文字(や単語)に分割すること。
文字で分割 N=2 bigram
'今日', '日は', 'はい', 'いい', 'い天', '天気', '気で', 'です', 'すね', 'ね。'
文字で分割 N=3 trigram
'今日は', '日はい', 'はいい', 'いい天', 'い天気', '天気で', '気です', 'ですね', 'すね。'
自然言語処理の前処理に使用したり、機械翻訳の評価指数であるBLEUスコアにも使われる。日本語では、文章を単語毎に分ける形態素解析と比べて未知語にも対応できる利点がある。辞書を作る手間が省けて、共起表現を含んだ分割ができるので、地味に今でもよく使われているみたいです。(ただしノイズも多い)
UNIXコマンド(2章)
簡単なファイル操作はpython使うより手軽でとても便利。
wc -l {file} # 行数を出す。word count(wc) lは多分line。
# 1100 など
sed 's/\t/ /g' {file} # ファイル書き換え。 Stream EDitor(sed).
# fileのタブを空白に置き換わる