コンピューター中国語処理

課題

  • “旅游”と”旅行”の違いは?
  • 「コロナウイルス」の中国語は?
  • “三点一刻”、”三点三刻”のような言い方はいまでも使えるのか?
  • “差三分三点”のような言い方はするのか?
  • “你好”はどんな場面で使われる?
  • ドラマの中で使われる成語の数は?
  • ドラマで一番使われる中国語の単語は?
  • 次の中国語(日中同形異義語)をGoogleを使って検索して日本と中国での使い分けを確認するにいは?光彩、首席、人工、人道、点滴、慢性、一口、基本、開放・・・
  • 中国・日本・台湾の「ポスト」の画像を検索するには?
  • 中国の政府系サイトから「ピンイン政策」「簡体字」「日本の国字」に関する文書を検索するには?
  • 台湾の繁体字サイトと大陸の簡体字サイトで「福原愛」についてどう書かれているか比べるには?

インターネット中国語検索

Google検索

Google検索演算子

TLDの一覧

課題

Google Trend

Google Trendsはある単語がGoogleでどれだけ検索されているかというトレンドをグラフで見ることができるツール。

課題

  1. 新型コロナウイルス感染症の症状を比較検討?地域差や時期は?
  2. 中国で人気のあるスポーツは?地域差はあるのか?

コーパス(言語データベース)の利用

インターネットで公開されているコーパスを利用する
市販のプログラムを利用する
自力でデータを集めて利用する

テキストデータの収集

  • フォルダ=1作品としてテキストデータを整理して蓄積
    新聞、小説などウェブから収集できるデータを整形してフォルダに格納する
    小説からセリフだけを抜き出す(テキスト整形)
    YouTubeから字幕データを取り出す
    ウェイボ―やTwitterのつぶやきを収集することはできるか?
  • Grep検索(全体から (Global)正規表現 (Regular Expression) に一致する行を表示(Print)する)の確認

フォルダを作成、カテゴリーなどに分けてページを保存、保存形式はtxt形式で文字コードutf-8で保存

ルールを決めて保存/コーパスとして使うなら句読点で改行されているデータが使いやすい。

参考データ

正規表現

Atomを使って実際のデータを処理していきます。
※Atomで正規表現を使う場合は、「.*」というボタンをおしてください。

テキストの整形の際に便利な正規表現を覚える

正規表現意味使用例
\n改行[置換前]\n
[置換後]\n\n
[意味]空白行をつめる
^\n空白行[置換前]^\n
[置換後]
[意味]空白行を削除
\tタブ[置換前]\t
[置換後]\x20
[意味]タブスペースを半角スペースに置換
\x20半角スペース
\sスペースすべて
\S文字すべて
\d半角数字すべて\d{4}[/\.年]\d{1,2}[/\.月]\d{1,2}日?
郵便番号は?
\D半角数字以外のすべて

タブ \t

空白文字

代入

1行ごとに空白を挿入するには?

検索の際に便利な正規表現で使われる記号の意味を覚える

Macでバックシュラッシュを入力する場合は「optionキーを押しながら、¥キーを押す」

^(カラット)
^は、文字列の先頭、行の先頭にマッチする。
^ABCは、行頭にある ABCにマッチ

^这是

$ (ドル記号)
$は、文字列の終わり、行の終わりにマッチする。
ABC$は、行末にある ABCにマッチ

回来。$

.(ピリオド)
.は、改行コード (¥n) 以外の任意の 1文字にマッチする。…なら任意の 3文字にマッチするこ
とになる。
a.cは、 abc、ace、adc…などにマッチ

这.是
结.婚
生..气
一.二.

* (アスタリスク)
*は、直前の 1文字(または正規表現)の 0回以上の繰り返しにマッチする (0回も含む)。
ab*cは、 ac、abc、abbc、abbbc、…のいずれかにマッチ
.*は、空文字列を含む任意の文字列にマッチ

結.*婚

ただし「.*」は、‘‘結”と“婚”の間に挟まれている任意文字列が適合の条件になっているので、“…結果,婚礼没能按吋挙行。”のような例にもマッチしてしまう。

+(プラス)
+は、直前の 1文字(または正規表現)の 1回以上の繰り返しにマッチする (0回は含まない)。
ab+cは、 abc、abbc、abbbc、…のいずれかにマッチ (acにはマッチしない)
.+は、任意の文字列にマッチ

回.+来

”回来”にはマッチしない。

? (疑問符)
?は、直前の 1文字(もしくは正規表現)の 0回か 1回の出現を表す。?は、繰り返しのメタ文
字といわれるが、実際は 2回以上の繰り返しはしない。
ab?cは、 ac、abcのいずれかにマッチ

“看ー?看”

| (選択)
|は文字列の選択を表す。
“あるいは |或いは”は、「あるいは」と「或いは」のどちらにもマッチ
※R化文字の検索

[](ブラケット)
[]は、文字クラスと言い、[]内の任意の 1文字にマッチする。範囲指定を使うこともできる。
集合の指定方法は 2つある。 1つは集合の要素を並べて記述する方法である。
[abcdef] は、 “a—f”のいずれか 1文字にマッチ
[あいうえお]は、「あ~お」のいずれか 1文字にマッチ
走[らりるれろっ]は、「走る」のすべての活用形にマッチ
もう 1つは、ハイフン(マイナスとも言う) ” -“による範囲指定である。”-“は文字クラス内では特殊な意味を持ち、[a-z]のように範囲指定することができる。

[あ-ん] ひらがな 1文字にマッチ
[0-9] 数字 l文字にマッチ
[A-Za-z] 英字 1文字にマッチ

^は[]ないの先頭で用いた場合、文字クラスの否定を表す

[^0-9] は、数字以外の 1文字にマッチ
[^A-Z] は、英字大文字以外の 1文字にマッチ

()(パーレン)
()には 2つの意味がある。 1つは正規表現をグループ化するものである。

李(先生|同志|师傅)
(高兴)+

もう 1つの使い方は、後方参照 (backreference) とよばれるものである。 \1~¥9で引用する部 分を指定する。数字は、 n番目の( )に対応することを示す。

(.)¥1 は、 AA、BB、看看、 多多…にマッチ
(.+)¥1 は、看看、说明说明…にマッチ

つまり、 上の正規表現の意味は、任意の 1文字をもう一度引用するということで、 2字の畳語にマッチし、 下の正規表現は、 1文字以上の文字列をもう一度引用することで、 AA、ABAB、 ABCABCのような文字列にマッチする。

{} (繰り返し)
{}は、ある一定回数以上の繰り返しを指定するためのメタキャラクタである。 {n} は、直前
の 1文字(または正規表現)の n回の繰り返しにマッチする。 {1,3} と記述する場合、直前の 1文
字(または正規表現)の 1回から 3回までの繰り返しにマッチする。

[0-9]{5}は、 5桁の数字にマッチ
a{1,3] は、 a、aa、aaaにマッチ

{min, max} は、直前の 1文字(または正規表現)のmin回-max回の繰り返しにマッチする。
minの省略は 0回、 maxの省略は∞回(無限大)の指定と解釈される。
*、+、?、 {min,max} は、繰り返しパターンとして最大回数の繰り返しマッチを試みること
になっているが、直後に?を追加することで最小回数の繰り返しでうち切ることができる。
*? 直前の正規表現の 0回以上の繰り返し(最小回数、つまり 0回を優先的に)にマッチ
+? 直前の正規表現の 1回以上の繰り返し(最小回数、つまり 1回を優先的に)にマッチ
?? 直前の正規表現の 0回あるいは 1回の繰り返し(最小回数、つまり 0回を優先的に)に
マッチ
{min,max}? 直前の正規表現のmin回? max回の繰り返し(最小回数)にマッチ

中国語検索のテクニック

1字語の検索:特徴を掴んで絞ろう

条件を付けて検索の範囲を狭める

課題

  • 量詞の”道”を抜き出すには?
  • 形容詞の”大”を抜き出すには?
  • 動詞の”看”を抜き出すには?

2字語の検索:漏れなく探す

重ね型や離合詞ももれなく探すように正規表現を考える

正規表現例正規表現の意味マッチするもの
结.婚任意の 1文字が入る结了婚,结过婚,结完婚…
结.?婚0文字か任意の1文字が入る结婚,结了婚,结完婚…
结..婚任意の 2文字が入る结不起婚,结不了婚…
结…婚任意の 3文字が入る结了两次婚…
结.*婚0文字~任意の文字列结婚,结过婚,结了一次根草率的婚…
结.+婚1文字~任意の文字列结了婚,结过三,四次婚…
ただし、正規表現でも“婚已经结完了,但是,…”のような倒置のケースに対しては無力で、“婚.*结”の形で検索する必要がある。

課題

  • 次の離合詞の使用頻度を調べてみよう
    生气 请客 洗澡 上当 睡觉 撒谎 吃亏 帮忙 毕业 离婚

不連続成分の検索

不連続成分には、 2種類あると考えられる。 1つは、“因为…所以”‘”虽然…但是”‘”虽然…可是”‘”虽然…不过”のように、それぞれ単独でも使えるが、前後呼応して使用される場合もある。検索法としては、それぞれ個別に検索することができるが、共起情況を調べるのに“因为.+所以”というように正規表現を用いる。

もう 1つは、“是…的…”‘”ー…就…”のように呼応(搭配)してはじめて所定の形式的な意味を表すものである。この種類のものは正規表現を使って検索することが必須になっている。以下、“是…的…”を例にして少し詳しく見てみよう。
“是…的…”構文は、“田中是在北京大学学的中文。”のように完了した動作について、動作に関わる時間、場所、道具、相手などの副次的成分を強調して説明する文型で、使用頻度が非常に高い。しかし検索による用例の収集は、意外に難しい。たとえば“是.+的”という正規表現で検索したら、忽ち10,000例を超えてしまい、しかも次例のような“是…的…”構文ではないものまでピックアップされてしまう。
 下身可只是件很旧很薄的夹裤。 《四世同堂》

そこで考えられる解決策は、検索の対象となるデータ量を減らすことと、もう少し条件を付けて検索することだ。たとえば“是.{5,8}的(。|,)”のように検索条件を指定すれば、“是”と“的”の間の文字数を 5~8に、“的”の直後に句読点が来るものに限定されることになる。ヒット数がある程度絞られるだろう。また”是.{4,8}的.+[,。?]”のように指定すれば、

●他是昨天去的北京。
●我说,‘‘前天不是我伯一起打的电报?”

など、目的語が“的”の後に置かれている用例も検出することができる。このように不連続成分の検索は、試行錯誤と工夫が必要である。不連続成分には、いわゆる“连词”(接続詞)や接続性のある副詞が多く、個々の意味用法をきちんと記述し、文型として整理していくのが、中国語に関する研究の基本作業と言えよう。検索法の復習を兼ねて、下記のパターンの用例を集めてみよう。

課題

  • 既…又…
  • 又…又…
  • ー… 就…
  • オ…就…
  • 越…越…
  • 连…都(也)…
  • 既然…那么(就)…
  • 无论…(还是)…都(也)
  • 无论…(还是)…都(也)
  • 不管…(都)也…
  • 只有…オ…
  • 只要…就…
  • 即使…也…
  • 尽管…可是…

重ね型やパターンの検索

課題

次のパターンはどうやったら言検索できるか正規表現を考えてみよう

AA看看
ABB白胖胖
ABAB介绍介绍
AABB说说 说明说明
A(B)A(B)
A一A看一看
A(一)A看看,看一看
A了A
A(了)A
AB了AB
A不A是不是,来不来
AAB

公開コーパスの利用

ある目的によって集められたテキストデータをデータベース化したもの

課題

それぞれのデータベースの特徴や調べ方について確認する

形態素解析

文法的な情報の注記の無い自然言語のテキストデータを解析し分割する

インターネットで利用できる形態素解析ツール

  1. 汉语分词和词性自动标注(语料库在线)
  2. 字词频率统计(语料库在线)
  3. NLPIR汉语分词系统
  4. THULAC
  5. CTA
  6. HanLP
  7. CKIP Corporeal
  8. 中文斷詞系統
  9. 線上中文斷詞工具:Jieba-JS
  10. Index Converter
  11. 台湾 CKIP Lab

MeCab

MeCab: Yet Another Part-of-Speech and Morphological Analyzer

テキストマイニグ

文章を分解してその文章の特徴を調べる

 日本語・ワードクラウド・共起ネットワーク・無料ユーザー登録で20万字まで

短編小説を分析してみよう

 日本語だけではなく中国語にも対応・Macは有償サポート、Windowsは無償でフル機能が使える

様々な要素をぶら下げる

過去の気象情報

タイトルとURLをコピーしました