読者です 読者をやめる 読者になる 読者になる

RMeCabを使う (3)

前回に引き続き、RMeCabパッケージの使い方を紹介します。これまでは単一のファイルのみを解析してきましたが、今回は複数ファイルの解析を扱います。 まずは、カイ2乗値を用いて、テクスト間の頻度差が大きい語を特定してみましょう。 # パッケージの読み込…

RMeCabを使う (2)

前回に引き続き、RMeCabパッケージの使い方を紹介します。Ngram関数を使うと、以下のように、文字n-gram、単語n-gram、品詞n-gramを簡単に集計することができます。*1 # パッケージの読み込み library(RMeCab) # 文字3-gram Ngram.1.result <- Ngram("C:/PM/…

RMeCabを使う (1)

今回は、RMeCabパッケージを使った日本語テキストの分析を扱います。分析データは、石田・小林 (2013) のサポートサイトで公開されているデータの一部を使います。こちらのページの一番下にあるzipファイルのいずれか*1をダウンロードし、「PM」というフォル…

Exploring error patterns in L2 spoken English with data mining techniques

8月17〜19日に早稲田大学で開催されたPan-Pacific Association of Applied Linguistics (PAAL) 2014において、"Exploring error patterns in L2 spoken English with data mining techniques"という発表をしてきました。 学習者の誤りを理解することは、言語…

ワードクラウドを作る

今回は、wordcloudパッケージを使って、ワードクラウドを描いてみましょう。 まずは、英語のワードクラウドを作る方法を説明します。ここでの分析データは、バラク・オバマ大統領の演説 (Obama.txt) とします。 # パッケージの読み込み library(wordcloud) #…

Latent Dirichlet allocationを行う

今回は、Latent Dirichlet allocation (LDA) を使ったテクスト解析に挑戦してみたいと思います。以下では、ldaパッケージを使っています。*1 今回の分析データは、X-MEN、X-MEN2、X-Men: The Last StandについてのWikipedia記事です。各記事のPlotのセクショ…

日本語を対象とした語彙比較

以前、語彙の豊富さや文章の難しさを測る (3) という記事で、languageRパッケージを使った語彙分析を行いました。今回は、上記の記事で紹介したcompare.richness.fnc関数を使って、日本語の分析をする方法について書きたいと思います。 分析データは、東京大…

n-gramを集計する

今回は、n-gramの集計を行ってみたいと思います。分析データは、James JoyceのA Portrait of the Artist as a Young Manとします。 まず、Project Guterbergで公開されているデータを直接読み込みます。*1 # 分析データの読み込み # 読み込む際に、全ての文…

共起語を集計する

今回は、共起語(コロケーション)の集計をしてみたいと思います。*1 共起語の集計は、ワードリストの作成やKWIC形式の用例表示と並んで、コーパス言語学における基本的な技術とされています。 今回の分析データは、Jonathan SwiftのA Modest Proposalとしま…

KWIC形式で用例を表示する

言語研究においては、単語の頻度を数えるだけでなく、それらの単語がどのような文脈で用いられているかを精査することが重要です。そのような場合、コーパス言語学では、KWIC (KeyWord In Context) という形式で用例の一覧を表示することがあります。*1 今回…

How do L1 and proficiency level influence L2 written production?

7月20〜23日にイギリスのランカスター大学で開催されたTeaching and Language Corpora (TaLC) 2014において、"How do L1 and proficiency level influence L2 written production?"という発表をしてきました。*1 近年、習熟度に関する様々な指標が提案されて…

語彙成長率を調べる

今回は、前回の記事で登場した語彙成長率 (GrowthRate) について、もう少し紹介したいと思います。今回の分析データは、Herman MelvilleのMoby-Dickとします。 # パッケージの読み込み library(languageR) library(zipfR) # 分析データの読み込み data(moby)…

語彙の豊富さや文章の難しさを測る (3)

前々回の記事と前回の記事ではkoRpusパッケージを使いましたが、languageRパッケージにも語彙の豊富さを測る関数があります。今回の分析データは、Lewis CarrollのAlice's Adventures in WonderlandとL. Frank BaumのThe Wonderful Wizard of Ozとします。 #…

語彙の豊富さや文章の難しさを測る (2)

前回の記事に引き続き、koRpusパッケージの紹介をします。このパッケージには、語彙の豊富さや文章の難しさを測るための関数が非常に多く実装されています。そして、複数の指標をまとめて計算する関数も用意されています。 今回の分析データは、WikipediaのC…

語彙の豊富さや文章の難しさを測る (1)

RのkoRpusパッケージを使うと、語彙の豊富さや文章の難しさを測ることができます。このパッケージには非常に多くの機能が実装されていますが、今回はその一部を紹介したいと思います。*1 分析データとしては、Project Gutenbergで公開されているCharles Dick…

A machine learning approach to the effects of writing task prompts

5月31日〜6月1日に神戸大学で開催されたLearner Corpus Studies in Asia and the World (LCSAW) 2014において、"A machine learning approach to the effects of writing task prompts"という発表をしてきました。 近年、世界中で様々な学習者コーパスが構築…

ワードリストを作る

今回は、Rを使ったワードリストの作成方法について書きます。以下の例では、languageRパッケージのalice(『不思議の国のアリス』)を使っています。 # 分析データ library(languageR) data(alice) # 全ての文字を小文字に変換 alice.lower <- tolower(alice…

コーパス間で頻度差の大きい単語を特定する

複数のコーパスにおける単語の出現頻度を比較する場合、比較対象となる語は、分析者によってあらかじめ決められていることが多いでしょう。そのような比較は、分析者の仮説を統計的に検証するアプローチと言えます。しかし、実際の分析では、どの単語に注目…

検索語の生起位置の視覚化

ある検索語に関して、その頻度を知るだけでなく、生起位置を知りたいことがあるでしょう。例えば、アカデミック・ライティングの研究で、introductionでよく使う表現、discussionでよく使う表現、conclusionでよく使う表現などのリストを作るかも知れません…

Profiling developmental patterns of learner language

3月17〜21日にオーストラリアのパースで開催されたDigital Humanities Australasia 2014において、"Profiling developmental patterns of learner language"という発表 (short paper) をしてきました。そして、その発表スライドが大会のウェブサイトで公開さ…

機械学習と自然言語処理の技術を用いた習熟度推定―現状と課題

『外国語教育メディア学会 (LET) 関西支部メソドロジー研究部会報告論集』第4号に、「機械学習と自然言語処理の技術を用いた習熟度推定―現状と課題」という文章を書かせて頂きました。この論文では、習熟度推定の技術に関する現状と課題、そして、私たちがこ…

情報量基準に基づく習熟度尺度の再検討

3月29日(土)、統計数理研究所で開催された言語研究と統計2014で、「情報量基準に基づく習熟度尺度の再検討」という発表をしてきました。 私は、言語処理や機械学習の技術を使って、英語学習者の書き言葉や話し言葉を自動評価する研究を行っています。自動…