動物を用いた小説の面白さの評価
はじめに
ある小説が存在するとき、我々はその文章の中のどんな要素によって、その小説を「面白い」と評価するのだろうか?
例えばここで、以下のような文があったとする。
私は家を出た。外は晴れていた。公園に向かって歩いていくと、犬が猫を連れて散歩していた。
この文章の中で最も面白い文は、明らかに『公園に向かって歩いていくと、犬が猫を連れて散歩していた。』である。無論この原因は、この文がひとつ以上の動物を含んでいることによる。これは日本語による創作に限らず、世界的に著名な作家が採用している原理である(Cormac McCarthy、García Márquez、Kimuchi Yokoyama等は明らかにこの原理を意識して創作している)。そこで本解析では、文章中に動物が出てきた数をカウントすることにより、小説の面白さを動的に評価していくこととする。
面白さの評価における動物窓の利用
ここで注意しなくてはいけないのは、『我々が小説を面白いと感じる文章上の単位はなんなのか?』という点である。この問題については脳科学上、ほとんど知見が得られていない。我々は小説を読んで、「この小説が面白い」「この文はセンスが光っている」「この単語の選び方は抜群だ」等と評価することがあるが、その評価機構は知られていないのだ。
本解析においては便宜的に、固定幅の単位となる動物窓(animal window)を用いることにより、以上の問題を回避することとする。
幅10の動物窓を仮定した場合、
[私は家を出た。外は晴]れていた。公園に向かって歩いていくと、犬が猫を連れて散歩していた。
から、
私は家を出た。外は晴れていた。公園に向かって歩いていくと、犬が猫を[連れて散歩していた。]
まで、動物窓を連続的に移動させることができる。こうして移動させている間の最大の動物価(animal value)は2となる(例えば、[<犬>が<猫>を連れて散歩し])。以下ではこの技法を用いて実際に文章の動物価を計算していく。
pythonを用いた動物価の計算
本解析ではpython3を用いて動物価の計算を行っていく。
まず初めに、以下のように変数を初期化する。
string = "私は家を出た。外は晴れていた。公園に向かって歩いていくと、犬が猫を連れて散歩していた。" aw = 10 #animal window
次に、以下のように関数を定義しておく。
def evalAnimalValue(string, window): #add buf to string --------(1) st = (window - 1) * "." + string + (window - 1) * "." #make animal list --------(2) animalList = [st[i:i+window] for i in range(len(st))] #evaluate animal value --------(3) animalValue = [countAnimal(x) for x in animalList] return animalValue def countAnimal(string): #define animal set animal = {"犬", "猫", "鼠"} av = 0 #animal value for v in [string.count(x) for x in animal]: av += v return av def printList(list): for x in list: print("*" + "***" * x )
順番に見ていこう。
まず、evalAnimalValue()関数の(1)では、文章を操作しやすいように整形している。この例では"*"という文字を付加している。この文字は、動物でさえなければどんな文字でも良い。(2)では、動物窓を一文字ずつ動かし、そのリストを入手している。そして最後に(3)ではcountAnimal()関数を用いて動物窓の中の動物の数をカウントしている。丁度、ポケモンスタジアムのミニゲームで画面に映っているポケモンの数をカウントしているかんじだ。
最後に、この関数を実行してみよう。
avl = evalAnimalValue(string, window) printList(avl)
以下のような出力が得られたろうか?
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * **** **** ******* ******* ******* ******* ******* ******* ******* ******* **** **** * * * * * * * * * * * * * * * * * * * *
これが私たちの得た動物の流れ、つまりは、小説の面白さの時間発展である。