# 面白いアナグラムとはどんなアナグラムか

土井 遥 ${ }^{\dagger}$ 山本 優衣奈 $2 \dagger$ 佐藤 理史 ${ }^{3}$
1 名古屋市立向陽高等学校
2 三重県立桑名高等学校
3 名古屋大学大学院工学研究科
ssato@nuee.nagoya-u.ac.jp

## 概要

アナグラムとは、「言葉の綴りの順番を変えて別の語や文を作る遊び」である。本稿では、表記と読みの組からなる入力に対して、アナグラム候補を順位付きで出力するシステムを示す。さらに、システムで生成した大量のアナグラム候補の中から「面白い」と思えるアナグラムを収集・分類し、「面白いアナグラムとはどんなアナグラムか」という問いに対して、ひとつの仮説を提示する。

## 1 はじめに

アナグラムとは、「言葉の綴りの順番を変えて別の語や文を作る遊び [1]」である。日本語のアナグラムは、読み (ひらがな文字列) の順番を変えて作るのが一般的であり、たとえば、「時計 / とけい」から 「毛糸/けいと」を作ることが、これに相当する。

ひらがな文字列の並べ替えは、機械的に可能であり、容易である。たとえば、 7 文字のひらがな文字列の並べ替えは、 $7 !=5040$ 個存在する。しかしながら、その中で日本語として意味をなすものは限られており、「面白い」ものとなると、さらに限られている。それゆえ、面白いアナグラムを作ることは知的なパズルであり、ある種の創作とみなすことができる。

鈴木ら [2] は、あらかじめ用意した文節集合に含まれる文節をつなげて、アナグラムを生成する方法を提案・実装した。しかし、この生成法には意味的適格性の判定が陽に含まれておらず、意味の通るアナグラムは出力のほんの一部に限られた。後続研究 [3] では、係り受けペアの一般化による意味的適格性判定が試みられ、一定の効果が見られたが、根本的な解決には至らなかった。本研究では、「面白いアナグラムを作る」ことを

$\dagger$ Equal contribution

図 1 アナグラム生成システム

研究目標として掲げ、有望な候補を順位付きで出力するシステムの実現を試みる。さらに、システムで生成した大量のアナグラム候補の中から「面白い」 と思えるアナグラムを収集・分類し、「面白いアナグラムとはどんなアナグラムか」という問いに対して、ひとつの仮説を提示する。

## 2 アナグラム生成システム

図 1 に、今回実装したアナグラム生成システムの概要を示す。生成手順は、おおきく、(1) 候補リスト作成と、(2) ランキングの 2 つのステップから構成される。

## 2.1 候補リスト生成

候補リスト生成では、与えられた入力から、アナグラムの候補リストを作成する。入力は、表記 (日本語文字列) とその読み (ひらがな文字列1) ${ }^{11}$ ) の組である。なお、入力それ自身は、生成する候補リストにかならず含める。

1) 本研究における「ひらがな」は、JISコード (ISO-2022-JP) の 0x2421 から 0x2473 までの 83 文字のうち、小書の「わ」と 「み・总」の 3 文字を除いた 80 文字である。

## 2.1.1読みの並び替え

候補リスト作成の最初のステップは、読み(ひらがな列) の並べ替えを求めるステップである。たとえば、入力「名古屋大学/なごやだいがく」は、読みの長さが 7 で、すべての文字が異なるので、 $7 !=5,040$ 個の並べ替えが得られる。

このステップでは、ひらがな列として適切なもののみ生成する。具体的には、以下の制約を課す。

1. 拗音「ゃ・ゅ・よ」は、ア行を除くイ段の文字「き・し・ち・に・ひ・み・り・ぎ・じ・ぢ・び・ ぴ」の直後の文字としてのみ採用する。

2. 撥音「ん」、促音「っ」、小書き文字「あ・い・う・ え・お」は、並べ替え文字列の先頭の文字として採用しない。

このため、「東京大学/とうきょうだいがく」の読みは 9 文字であるが、「う」が 2 回現れ、「ゃ」は「き」 の直後にしか配置できないため、生成される並べ替えは 9 ! ではなく、 $8 ! / 2=20,160$ 個となる。

## 2.1.2 かな漢字変換

次のステップでは、かな漢字変換システムを利用して、得られたそれぞれのひらがな列を日本語文字列 (かな漢字文字列) に変換する。かな漢字変換システムには、MeCab[4] と MeCab-skkserv[5] のかな漢字変換辞書を利用した。

一般に、かな漢字変換では、複数の変換候補が考えられるが、ここでは、それぞれのひらがな列に対して、変換結果をひとつだけ生成する。

## 2.1.3 フィルタリング

候補生成の最後のステップでは、以下に示す $2 \supset$ のフィルタを順に適用し、候補を絞り込む。

読みの不一致フィルタかな漢字変換によって得られた日本語文字列の標準的な読みが、変換前のひらがな文字列と一致しない場合、読みアナグラムとしての完全性に欠ける。そこで、日本語文字列の読みを形態素解析システム $\mathrm{MeCab}$ (IPA 辞書) を用いて取得し、かな漢字変換前のひらがな列と一致しない場合は、その候補を削除する。このフィルタにより、大力「名古屋大学/なごやだいがく」に対する候補は 5,040 個から 4,184 個に絞られる。

文字 n-gram フィルタ文字 n-gram に基づいて、日本語文字列としての可能性が著しく低いものを候補から削除する。具体的には、国立国語研究所が公開している日本語の文字 n-gram データ [6] から、文字 2-gram は頻度が 101 回以上の 1,384,419 種類、文字 3-gram は頻度が 11 回以上の 39,670,672 種類を採用し、このリストに存在しない文字 2-gram および文字 3-gram を含む候補をリストから削除する。このフィルタによって、「名古屋大学 / なごやだいがく」では、4,184 個の候補が 387 個に絞られる。

## 2.2 ランキング

ランキングでは、候補リスト生成で得られたそれぞれの候補にスコアを付与し、スコア順にソートした候補リストを出力する。

## 2.2.1 スコアの定義

入力 $I$ に対する候補 $C$ のスコアを、以下の式で定義する。

$
\operatorname{score}(C, I)=\operatorname{GPT}-2(C . h)-\operatorname{penalty}(C, I)
$

ここで、 $I$ と $C$ は、いずれも表記 (日本語文字列) と読み (ひらがな文字列) の組であり、GPT-2(C.h) は、候補の表記 C.hに対する GPT-2 [7] の龙度を表す。 penalty $(C, I)$ は、候補と入力の類似性に基づくぺナルティを表す。

## 2.2.2 尤度計算

候補表記の、日本語として妥当性 (文法的適格性と意味的整合性) を GPT-2 の尤度によって見積もる。 GPT-2 の実装としては、公開されている日本語用の実装 [8] の medium モデルを利用した。

## 2.2.3候補と入力の類似性ペナルティ

尤度のみでランキングすると、ほとんどの場合、入力自身が最上位の候補となる。さらに、「名古屋大学」に対して「大学名古屋」や「名古屋大工が」 のように入力の一部を色濃く残した候補が上位に来ることが多い。これらの候補の順位を下げるため、入力との類似性に基づくペナルティを導入した。

ペナルティの計算は、次のように行う。ペナルティの値は、候補 $C$ と入力 $I$ の表記の類似度 $\operatorname{sim}_{h}$ と読みの類似度 $\operatorname{sim}_{y}$ の和に 10 を掛けた値と定義する。

$
\operatorname{penalty}(C, I)=10 *\left(\operatorname{sim}_{h}(C, I)+\operatorname{sim}_{y}(C, I)\right)
$

表記の類似度は見た目の類似度、読みの類似度は音の類似度に相当し、見た目と音の両方を考慮することを意図している。
表 1 「名古屋大学/なごやだいがく」に対する上位 10 件

2 つの文字列 $X$ と $Y$ の類似度は、両者に共通する文字 n-gram の割合として計算する。

$
\operatorname{sim}(n, X, Y)=\frac{\operatorname{dup}(\mathrm{n}-\operatorname{gram}(X), \mathrm{n}-\operatorname{gram}(Y))}{\min (|\mathrm{n}-\operatorname{gram}(X)|,|\mathrm{n}-\operatorname{gram}(Y)|)}
$

ここで、 $\mathrm{n}-\operatorname{gram}(X)$ は文字列 $X$ に含まれる文字 n-gram のリストを、|・はリストの要素数を表す。関数 $\operatorname{dup}(A, B)$ は、 2 つのリスト $A, B$ に共通して現れる要素の個数を表す。ただし、 $A$ または $B$ に同一要素が複数存在し、かつ、それらが $A$ と $B$ に共通して現れる場合、共通して現れる個数としては、少ない方の個数を採用する。たとえば、 $A$ に「なご」が 2 回現れ、 $B$ に 1 回現れる場合は、「なご」が共通して現れる個数としては 1 を採用する。このような計算により、上記の $\operatorname{sim}$ の値域は $[0,1]$ となる。

表記の類似度は、文字 3-gram と文字 2-gram の類似度の平均値とする。

$
\operatorname{sim}_{h}(C, I)=\frac{1}{2}(\operatorname{sim}(3, C . h, I . h)+\operatorname{sim}(2, C . h, I . h))
$

一方、読みの類似度は、文字 4-gram と文字 3-gram の類似度の平均値とする。

$
\left.\operatorname{sim}_{y}(C, I)\right)=\frac{1}{2}(\operatorname{sim}(4, C . y, I . y)+\operatorname{sim}(3, C . y, I . y))
$

ここで、 $h$ は表記文字列を、 $y$ は読み文字列を表す。 このように、表記と読みで $n$ の值を変更するのは、一般に、読み文字列の方が長くなるからである。 なお、式 (2) の定数 10、式 (4) の定数 3 と 2、式 (5) の定数 4 と 3 は、実際のデータを観察して定めた。

## 3 出力例

入力「名古屋大学/なごやだいがく」に対する出力の上位 10 件を、表 1 に示す。なお、表記と読みに含まれる区切りは、かな漢字変換の際に得られる単語区切りである。出力された候補の中では、「嫌だな語学/いやだなごがく」(4 位)、「嫌な語学だ/ いやなごがくだ」(6位)、「語学嫌だな/ごがくいやだな」 (8 位)が面白い。

## 4 面白いアナグラムとは

機械的に生成したアナグラム候補は、おおきく次のように分類できる。

1. アナグラムとは認められないもの (日本語として不自然なもの)

2. アナグラムと認められるもの (日本語として自然なもの)

(a) 特に面白くないアナグラム

(b) 面白いアナグラム

今回採用したアナグラム生成アルゴリズムでは、日本語文字列としての可能性が著しく低いものを文字 n-gram フィルターで排除するが、日本語文字列らしさは、GPT-2 の尤度としてスコア化しているだけである。そのため、ランキングの下位には、日本語として不自然なものが多数含まれる。

日本語として自然な語・句・文は、アナグラムとして認定できる。しかしながら、その中で「面白い」 と思えるアナグラムは限られている。

面白いアナグラムとはどのようなアナグラムか。 これを調査するために、普通名詞 6,750 語に対して、網羅的にアナグラム候補を生成した。入力として採用した語は、 $\mathrm{MeCab}$ 用の IPA 辞書に収録されている、読みの長さが 6 文字から 9 文字の普通名詞全てである。こうして得られた出力を調査 (目視)して、著者らが面白いと思うアナグラムを収集し、それらの分類を試みた。以下では、その分類を示し、付録にその実例を示す。なお、これらの分類は排他的分類ではない。複数の分類に属するアナグラムも存在し、それらは面白さの度合いが高い。

## 4.1 単独で面白いアナグラム

単独で面白いアナグラムとは、アナグラム自身に面白さを感じるものである。言い換えるならば、元となった語 (入力) が何だったかに依存しない面白さである。

文形式となるアナグラム完結した文 [付録 (1)] あるいは、それに準ずる形式のアナグラムは、面白いと感じることが多い。文は、ある事態を表す形式であり、読み手は、その事態を想起することが容易である。端的に言えば、具体的なイメージが湧きやすい。そのイメージに我々は反応し、面白いと感じるのではないだろうか。
意外性がある複合語となるアナグラム意外性がある複合語となる場合 [ 付録 (2)] も面白い。これらの複合語は実際には存在しないが、あってもおかしくないという意味で、我々の好奇心を刺激するのであろう。

ナンセンス系アナグラム単体で面白いアナグラムの分類のひとつとして、「ナンセンス系」と名付けたアナグラムがある [付録 (3)]。このタイプのアナグラムでは、思いもよらなかった意外な組み合わせに、想像力が刺激されるのだろう。

オノマトペを含むアナグラムオノマトペを含むアナグラム [付録 (4)] が生成されることは比較的少ない。つまり、希少性がある。オノマトペには臨場感があり、イメージを想起させる効果がある。そのような効果も、面白さに寄与しているのだろう。

評価や感情を表す形容詞を含むアナグラム評価や感情を表す形容詞を含むアナグラム [付録 (5)] は、面白いと感じることが多い。これは、面白さの評価が、感覚・感情に基づく評価であることが関係しているのかもしれない。

## 4.2 入力との関連で面白いアナグラム

入力との関連で面白いアナグラムとは、「この入力からこんなアナグラムが作れるのか」という驚き、あるいは、巧みさに面白さを感じるアナグラムである。

入力と関連するアナグラムアナグラムが入力と何らかの意味で関連する場合 [付録 (6)]、面白いと感じることが多い。人間がアナグラムを作る場合、入力と関連するアナグラムを作ることは、かなり難しい。そのため、制作者のスキルの高さ (巧みさ)を評価するのだろう。

入カとアナグラムがひと続きの文となるその特殊な場合として、入力とアナグラムで、ひと続きの文を構成できる場合 [付録 (7)] がある。

ダジャレ系アナグラムダジャレ系アナグラム [付録 (8)] とは、元の語と音は似ているのに、意味的にはまったく関係ないアナグラムである。そのギャップに面白さを感じる。

入力とギャップがあるアナグラム入力との意味的ギャップが面白いアナグラムもある [付録 (9)]。何だかよくわからないところが、逆に面白いのだろう。

## 4.3 面白さを感じる要因

以上、我々が面白いと感じるアナグラムを見てきた。これらを整理すると、我々が面白いと感じるアナグラムは、おおよそ次のように総括できよう。

1. 具体的なイメージを想起しやすいアナグラム

2. 驚きや意外性があるアナグラム、想像力や好奇心を喚起するアナグラム

3. 入力と強く関連するアナグラム、入力との落差がはげしいアナグラム

この総括からわかるように、面白さの要因はひとつではない。いくつかの要因が組み合わさると、面白さが際立ってくる。つまり、面白さを捉えるためには、複数の軸を考える必要がある。

今回得られたアナグラムの中で、最も面白いと判断したもののひとつは、次のアナグラムである。

他力本願 /たりきほんがん

$\rightarrow$ 本気が足りん/ほんきがたりん

【他力本願、本気が足りん】

このアナグラムは、アナグラムが文形式となり、入力とアナグラムがひと続きの意味の通る文となる。さらに、「足りん」と話し言葉的になって臨場感を醸し出し、面白さを際立たせている。

## 5 おわりに

本稿では、入力に対するアナグラムの候補を順位付きで出力するシステムを示すとともに、システムが生成した候補から「面白いアナグラム」を収集・分類し、面白さを醸し出す要因を分析した。

本研究により「面白いアナグラムを作る」という目標は、かなり達成できたと考える。生成した面白いアナグラムの一部を付録に示したが、これ以外にも数百個の面白いアナグラムが得られている。次の目標は、「面白いアナグラムを選ぶ」能力の実現であるが、本稿で示した「面白いアナグラム」の整理と分類は、その足掛かりになろう。

## 謝辞

本稿の内容は、名大 MIRAI GSC（http://www. iar.nagoya-u.ac.jp/miraigsc/) の第 2 ステージで行った研究が元となっている。

## 参考文献

[1] 新村出（編）. 広辞苑第七版. 岩波書店, 2018.

[2] 鈴木啓輔, 佐藤理史, 駒谷和範. 文節データベー スを用いた日本語アナグラムの自動生成. 第 10 回情報科学技術フォーラム (FIT-2011), RF-009,第 2 分冊, pp. 97-102, 2011.

[3] 鈴木啓輔, 佐藤理史, 駒谷和範. アナグラム生成における文節列の意味的適格性の判定法の検討. 言語処理学会第 18 回年次大会発表論文集, pp. 1308-1311, 2012.

[4] MeCab: Yet Another Part-of-Speech and Morphological Analyzer,（2021-12 閲覧）. https:// taku910.github.io/mecab/.

[5] mecab-skkserv,（2021-12 閲覧）. http://chasen. org/\%7Etaku/software/mecab-skkserv/.

[6] GSK2020-C「国語研日本語ウェブコーパス」n-gram データ・頻度表，（2021-12 閲覧）。 https://www.gsk.or.jp/catalog/gsk2020-c/.

[7] openai/gpt-2,（2021-12 閲覧）.https://github. com/openai/gpt-2.

[8] gpt2-japanese, (2021-12閲覧).https://github. com/tanreinama/gpt2-japanese.

## 付録 面白いアナグラムの具体例

## 文形式となるアナグラム

(1) a. 頭でっかち/あたまでっかち

$\rightarrow$ ちまたで悪化/ちまたであっか

b. 功労賞 /こうろうしょう

$\rightarrow$ 売ろうコショウ/うろうこしょう

c. 生殺与奪 / せいさつよだつ

$\rightarrow$ いつ左折だよ/いつさせつだよ

d. 連尺商い/れんじゃくあきない

$\rightarrow$ あれ禁句じゃない/あれきんくじゃない

e. セラミックエンジン/せらみっくえんじん

$\rightarrow$ えっ自民落選/えっじみんらくせん

意外性がある複合語となるアナグラム

(2) a. サウンドトラック/さうんどとらっく

$\rightarrow$ 皿うどん特区/さらうどんとっく

b. 緞帳役者/どんちょうやくしゃ

$\rightarrow$ やんちゃ食堂/やんちゃしょくどう

c. 相対性理論 / そうたいせいりろん

$\rightarrow$ 総理生態論/そうりせいたいろん

ナンセンス系アナグラム

(3) a. 一日千秋/いちじつせんしゅう

$\rightarrow$ セイウチ出陣/せいうちしゅつじん

b. 般若心経 / はんにゃしんぎょう

$\rightarrow$ 社運は人魚/しゃうんはにんぎょ

c. 蜀江の錦 / しょっこうのにしき

$\rightarrow$ キノコに失笑/きのこにしっしょう

d. 蝸牛角上 / かぎゅうかくじょう

$\rightarrow$ 食うか授業か/くうかじゅぎょうか

e. 反対称律 / はんたいしょうりつ

$\rightarrow$ 両親はタイツ/りょうしんはたいつ

## オノマトペを含むアナグラム

(4) a. 一宿一飯/いっしゅくいっぱん

$\rightarrow$ 行く一瞬パッ/いくいっしゅんぱっ

b. 一昨昨週 / いっさくさくしゅう

$\rightarrow$ サクサク一周 /さくさくいっしゅう

c. 胸突き八丁/むなつきはっちょう

$\rightarrow$ 千夏は今日ムッ/ちなつはきょうむつ

d. ニッポンチャレンジ/にっぽんちゃれんじ

$\rightarrow$ レンジにちゃっぽん/れんじにちゃっぽん

e. 似た者夫婦 / にたものふうふ

$\rightarrow$ うふふのモニタ/うふふのもにた

評価や感情を表す形容詞を含むアナグラム

(5) a. 第一人称/だいいちにんしょう

$\rightarrow$ 超いい男子に/ちょういいだんしに

b. 骨粗鬆症 /こつそしょうしょう

$\rightarrow$ 少々そこつ/しょうしょうそこつ

c. ジャイアントパンダ/じゃいあんとぱんだ

$\rightarrow$ ジャパンだと安易/じゃぱんだとあんい

d. 風林火山/ふうりんかざん

$\rightarrow$ うんざり花粉/うんざりかふん

e. 乾坤一擲 / けんこんいってき

$\rightarrow$ インコって危険 /いんこってきけん

## 入力と関連するアナグラム

(6) a. 総合大学/そうごうだいがく $\rightarrow$ そういう語学だ/そういうごがくだ

(「大学」と「語学」)

b. 知識工学 / ちしきこうがく

$\rightarrow$ 講師が鬼畜/こうしがきちく

(「知識工学」と「講師」)

c. 最年少 /さいねんしょう

$\rightarrow$ うん最初ね/うんさいしょね

(「最年少」と「最初」)

d. 名題役者 / なだいやくしゃ

$\rightarrow$ 医者役だな/いしゃやくだな

(「役者」と「医者役」)

e. 方角違い/ほうがくちがい

$\rightarrow$ 北緯が違う/ほくいがちがう

(「方角」と「北緯」)

入力とアナグラムがひと続きの文となる

(7) a.一日中/いちにちじゅう

$\rightarrow$ 知事に注意/ちじにちゅうい

【一日中、知事に注意】

b. 百科事典 / ひゃっかじてん

$\rightarrow$ 光ってんじゃ/ひかってんじゃ

【百科事典、光ってんじゃ】

c. 相思相愛/そうしそうあい

$\rightarrow$ 試合早々/しあいそうそう

【試合早及、相思相愛】

d. 健康上 / けんこうじょう

$\rightarrow$ 好条件 /こうじょうけん

【健康上、好条件】

e. 器械体操 / きかいたいそう

$\rightarrow$ 競う大会 /きそうたいかい

【器械体操、競う大会】

ダジャレ系アナグラム

(8) a. 香典返し/こうでんがえし

$\rightarrow$ 公園で餓死/こうえんでがし

b. 亜成層圏 / あせいそうけん $\rightarrow$ 麻生政権 / あそうせいけん

c. 山河襟帯/さんかきんたい

$\rightarrow$ サンタ解禁/さんたかいきん

d. 猿の腰掛/さるのこしかけ

$\rightarrow$ 酒のコルシカ/さけのこるしか

e. 交感神経/こうかんしんけい

$\rightarrow$ 更新関係/こうしんかんけい

入力とギャップがあるアナグラム

(9) a. 天地神明 / てんちしんめい

$\rightarrow$ メンチ進呈 /めんちしんてい

b. 全知全能 / ぜんちぜんのう

$\rightarrow$ 膳所の運賃 /ぜぜのうんちん

c. 栄枯盛衰 / えいこせいすい

$\rightarrow$ せこい水泳/せこいすいえい

d. 猿の腰掛/さるのこしかけ

$\rightarrow$ 今朝のコルシカ / けさのこるしか

e. 酒池肉林/しゅちにくりん

$\rightarrow$ チリに君主/ちりにくんしゅ