DEIM Forum 2017 C4-1

読書傾向分析に基づく書籍検索と推薦
藤本政宏†

加藤誠†

田中克己†

† 京都大学情報学研究科 〒 606–8501 京都府京都市左京区吉田本町
E-mail: †{fujimoto,kato,tanaka}@dl.kuis.kyoto-u.ac.jp
あらまし

本研究では，ある特定の読書傾向を示す読者に基づいて書籍の検索を行う方法を提案する．既存の書籍検索システムでは「人気があること」以外の側面で書籍のランキングを取り扱うことが難しい．本研究では，Web 上に蓄積された読書記録の集合である読書傾向を集合知的な手がかりとして，特定の読者層によって検索結果の出力を変更する．提案手法では，検索結果の各書籍に対して特定の読者層に基づいたスコアを計算する．任意の本に対して，特定の読者層に基づく特徴を推定することによって，ユーザの読者層に基づいた検索を可能にする．
キーワード 情報検索，情報推薦，データマイニング

1. は じ め に本によって読者層を指定する方式について検討を行う．この方式においてユーザは，ある読者層が主に読んでいるような種類数多く出版されている本の中から，自身が読みたいと思う本の本を検索結果として含むようなクエリを入力することで，読を探し出すためには，検索システムや推薦システムの支援が者層を指定する．例えば，「プログラマ」という読者層を指定不可欠である．ある特定の要求を持っている場合には検索キーするために，「プログラミング」に関する書籍が検索結果に含ワードを入力することで本を検索し，漠然とした要求を持つ場

まれると期待されるような「プログラミング」や「Ruby」とい合には推薦システムによって推薦を受ける．しかしながら，どうクエリをユーザは入力する．提案手法は読者層を指定するク

ちらの場合においても，自分があまり読んだことのないようなエリによって得られた検索結果から，それらをよく読むような分野の本の中から，どの本を実際に読むか詳細に検討することユーザを読者層として特定する．その後に，通常の検索クエリは難しい．これは，その分野に関して多くの知識を持たないがによって得られていた検索結果を，指定された読者層が主に読ために，本の紹介文や本のレビューなどを正確に理解できないんでいる順に並べ替えることで読者層による検索を実現する．

可能性があるためである．また，Web などを通して本を購入す

読者層による検索の有効性を検証するために，我々は読書る場合には，書店に比べて書籍の中身を閲覧することが難しく，SNS から収集したデータを用いて実験を行った．本論文におけオンラインでの書籍購入が一般化するにつれて，本の比較検討

る実験では，あらかじめ用意したシナリオに応じてクエリおよがより難しくなってきている．

び読者層を入力し，得られた結果が意図したとおりに並び替え

そこで本論文では，通常の検索クエリに加えて読者層を入力られたかを nDCG@10 によるランキングの比較で検証した．

し，その読者層が主に読むような書籍を検索する方式を提案す

本論文の構成は以下の通りである．2 節では，推薦システムる．たとえば，「機械学習」という検索クエリに加えて，「プロや書籍検索の関連研究について述べる．3 節では，提案手法にグラマ」という読者層を入力することで，プログラマが主に読ついて述べる．4 節では，データセットと予備実験について述

むような機械学習の本（例えば，機械学習手法の実践に重点をべる．5 節では，まとめについて述べる．

置いたような本）を検索することができる．この方式の利点として，（ 1 ） ユーザ自身を包含するような読者層を入力することで自身の関心・知識に適した本を検索できること（ 2 ） 検索キーワードでは表現できないような，本の内容に関わる性質，例えば，専門性や実用性，新規性を暗に指定することができること（ 3 ） 書籍情報には含まれない，本の読者層という新たな側面から検索を行うことができること

2. 関 連 研 究
本節では，本研究と関連する研究について言及し，本研究の位置づけについて述べる．

2. 1 パーソナライゼーションと推薦システム
本研究は読書について集合知的な行動データを利用するが，こうした行動データをパーソナライゼーション（Personalization）に用いる研究は多く行われている．
パーソナライゼーションを Web 検索に適用するパーソナライ
ズド検索（Personalized Search）に関して，Jaime ら [1] は，検が挙げられる．この方式によって，書籍に付随する紹介文やレ索タスクやクエリ選択，位置情報，性別や年齢，職業などの個ビューといった理解に専門性を必要とする情報を用いずに，読人に関する情報について，それの類似性に基いてユーザをグ者層を介して本の比較検討を支援することが本研究の目的でループに分類し，グループの情報を Web ランキングに利用すある．

る可能性について検討した．また Jaime ら [1] は，検索者の属

本論文では，特に，ある検索クエリの結果に含まれるようなするグループの情報を利用して Web ランキングを向上させる

パーソナライズド検索の手法を提案し，あるグループに基づくパーソナライゼーションが，そのグループに関連するクエリについて検索を改善させることを確認した．
乏しいクエリや曖昧な情報要求からでも身近な情報が得られるため，パーソナライゼーションはユーザの満足度を高める．
その一方で，そのユーザの過去の行動やそのユーザの持つ社会図 1 提案システム概要的属性によって表示される情報が最適化されるということは，ユーザ過去の行動や状況に受け取る情報が影響を受けるという

2. 3 情 報 推 薦ことを意味している．E. Pariser はそうした状況をフィルターバ

大量の情報が発信されるようになったことを背景として，どブル (Filter Bubble) [2] と呼び，パーソナライゼーションには多れに価値があるのかを特定するのを助ける道具として，情報推様な視点や多様なコンテンツからユーザを遠ざける側面がある

薦に関する研究が数多く行われてきた．

ことを指摘した．ACM RecSys2011 でこのフィルターバブルに

情報推薦の方法は内容ベースフィルタリングと協調フィルタついて，推薦システムに対する影響に関してパネルディスカッリングに大別される．内容ベースフィルタリングは，検索対象

ション [3] が行われた．のアイテムの内容を考慮して推薦を行う．一方協調フィルタリ

本研究は，ユーザが自分の状況に制限を受けずに検索結果をングでは，アイテムの内容を考慮することはせず，多くのユー受け取るように，パーソナライゼーションではない方法で読書

ザの行動履歴を集めた利用者データベースを用いて，行動履歴における行動データを利用する．特定のユーザ集合（グループ）の類似性を用いて推薦を行う．に基いてランキングを向上させるという点で，本研究は Jaime

協調フィルタリングの代表的な方法としては Resnick ら Grou-らの方法と似ているが，本研究がランキングに使用するグルー

pLens の方法が挙げられる [7]．GroupLens の方法では，アイテプは検索者の属するグループとは限らない．ユーザはランキンムを推薦する際，行動履歴がユーザと似ているデータベースグに用いるグループを自由に指定することができる．のユーザ情報により大きな重みを与える．ここでは，すべての2. 2 書 籍 検 索

ユーザの好みは一貫しており，以前好きだったものは今後も好SNS の情報を用いた複雑な書籍検索タスクに関して，CLEF [4]きである，という仮定が置かれている．のソーシャル書籍検索 (SBS, Social Book Search) ラボの取り組

この仮定は前述のフィルターバブルの問題に関連する．そのみが挙げられる．ソーシャル書籍検索ラボは，複雑な書籍検索ためユーザが知らないアイテムを推薦することで，ユーザにタスクにおいてユーザを支援する技術を研究・開発することをとっての Novelty を向上させる協調フィルタリングに関する研目的としている．ソーシャル書籍検索ラボは，書籍検索の複雑究が清水ら [10] によって行われている．

な性質に焦点を当てるため，伝統的で単純な検索シナリオとは異なるタスクを提案している．提案トラックでは，コンテキス

3. 提 案 手 法ト，ユーザのプロフィール，その他の関係性にもとづき，豊富

本節ではまず，本研究の入力として扱う，読者層クエリにつな検索要求に対して書籍を提案するためのタスクを提供していいて説明する．その後，手法の概要を説明し，手法の各ステッる．マイニングトラックでは，書籍からタイトルや著者をメタプの詳細について述べる．

データにエンティティ・リンキングするなど，ユーザをサポートするための自然言語処理に関するタスクを提供している．イ

我々は，知らない分野の書籍検索を支援するために，読者層によって検索結果の本を並び替えることを提案する．

ンタラクティブトラックでは，全く新しい情報検索のインター

しかし，読者層を直接提示することは，それを入力するユーフェースを人に経験させ，その行動を調べることで，新しい検ザにとって負担が大きく現実的ではない．そこで，我々はユー索インターフェースを提供するためのタスクを提供している．

ザが読者層を直接入力するのではなく，「読者層を指定するクエ

本研究と同様に読書 SNS を用いて書籍検索・推薦を扱う研究リ」を通じて検索を行うことを提案する．このクエリを読者層もある．南ら [9] は適合フィードバックの枠組みによって，読クエリと呼ぶ．

書 SNS に存在するレビューに対するユーザのフィードバックかユーザは，対象とする読者層が読むような本に含まれるキーら，そのユーザの観点を推定し，推定されたユーザの観点に基ワードを指定することによって，読者層クエリによる読者層のづいた書籍の推薦を行う方法を提案している．

指定を行う．たとえば「麻雀が強くなれるような理詰めな本」

南ら [9] の研究はレビューを考慮するが，我々の研究はレを探す際に，ユーザはまず「理屈っぽい人（対象とする読者ビューではなく読んだという事実そのものを考慮する．また，層）」に読まれる「麻雀」の本を探そうと考える．次にユーザ本を推薦させるユーザを選択するのに，投票ではなくクエリのは，対象とする読者層（理屈っぽい人）が読むような本として入力を用いる点が前述の研究と異なる．ユーザの選択にクエリ「統計の本」を考え，そのような本に含まれるキーワードであの入力を用いる研究としては，片岡ら [8] の Tweet 検索に関する「統計学」を，読者層クエリとする．

る研究が挙げられる．片岡らは適合フィードバックとして文脈クエリを入力して，ユーザを選択している．

提案システム概要を図 1 に示す．提案システムでは，読者層クエリ qr が与えられると，システムは読者層として読者の集合

を抽出し，その読者集合を用いて，検索結果をスコア付けする．

ここで，vote(u, b, Br ) はあるユーザが読んだ本の中で Br が占

このようにしてユーザは，読者層クエリによって，検索結果をめる割合を計算する関数であり，本 b のスコアは vote(u, b, Br )並び替えることができる．すなわち，以下のステップからなる．

が高いユーザがその本を読んでいればいるほど高くなる．

3. 3 協調フィルタリングによる本のスコアの計算（ 1 ） ユーザは通常クエリ q をシステムに入力する

各本のスコアの計算方法は上記で述べたとおりであるが，あ（ 2 ） 入力されたクエリから，システムの出力 Bq （初期ランキング）を得る

るユーザが実際にどの本を読んだかという情報を用いるだけでは，さまざまな問題が生じうる．あまり多くの読者がいないよ（ 3 ） ユーザは読者層クエリ qr をシステムに入力する

うな本に対しては，少数の読者から各本にスコアをつけるため，（ 4 ） 入力されたクエリから，システムの出力 Br を得る

外れ値による影響が大きくなってしまう．例えば，極端な場合，（ 5 ） システムは Br から，読者層 Ur を取得する

読者がいないような本はスコアを与えることができない．

（ 6 ） ∀b ∈ Bq それぞれについて，読者層 Ur に基づくスコア{rbr }b∈Bq を計算する

そのため，我々は協調フィルタリングによって，あるユーザu が読んだことのない本 b が将来的にどの程度読む可能性があ（ 7 ） スコアにもとづいて Bq をランキングするるのかを推定し，読む可能性が高いような本もスコア付けの際（ 8 ） ユーザは再ランキング結果を確認し，qr を試行錯誤しながに用いることを提案する．この方法によって，まだあまり読者ら，本を比較するがいないような本に対しても多数の潜在的読者によってスコア

読者層クエリはひとつの通常クエリ q に対して，何度でも入力することができる．読者層クエリを入力するたびに，ステップ３以降の処理を行い，システムは Bq をランキングにしたものを出力する．
読者層を，全読者集合 U の部分集合である Ur として定義する．ユーザ自身が読者集合を直接システムに入力することは負担が大きいため，本論文では，ユーザが読者層をクエリによって指定する場合を主に考える．

ルゴリズムは，あるユーザとあるアイテムに対してスコアを与える．これを「ある読者がある本を読む度合い」と解釈し，読加えて，読者層クエリ qr を入力として与える．たとえば，「面白い数学の入門書が読みたい」というユーザの場合，「数学 入門」が通常クエリ q ，「文春文庫」が読者層クエリ qr となる．

Ur は次式によって表される．
Ubrとができる．
協調フィルタリングのアルゴリズムを用いたとき，ある読者層のある本への評価値は，次式で示される．

rbr =ユーザは書籍検索システムを利用する際に，通常クエリ q に∪

ユーザに対してアイテムを推薦する協調フィルタリングのア者層のスコアの平均をとることで，本を評価するのに用いるこ

3. 1 読者層の取得

Ur =を算出することができる．

1 ∑cf(u, b)
|U | u∈U(4)r

ただし，cf(u, b) は，あるユーザ u がある本 b に対して与えるスコアである．
すべての読者，すべての書籍における読書記録をまとめた行列を X ∈ R|U |×|B| とする．行列の各要素は，要素に対応する(1)u，b について，u が b を読んでいる場合に 1，読んでいない場合に 0 をとる．以下，協調フィルタリングのアルゴリズムにつbr ∈Br

ただし，Br は qr による書籍検索システム（本論文では適当な書籍検索システムが利用可能であることを前提としている）の出力であり，Ub は b の読者集合である．
「文春文庫」が読者層クエリ qr であるとき，読者層は「文春文庫を読んでいるユーザ」である．

3. 2 読者層による本のスコアの計算
Bq のランキングを出力するために，∀b ∈ Bq それぞれについて，読者層から計算されるスコア rbr を計算する方法が必要である．ここで，スコアは次の条件を満たすべきだと考える．
（ 1 ） Br の本をたくさん読んでいるユーザが読んでいるような本（ 2 ） Ur のなかでより多くの人々に読まれているような本

3. 3. 1 メモリベースの協調フィルタリング
行列 X を直接用いる協調フィルタリングとして，Resnick らGroupLens の方法があり [7]，cf(u, b) は次式のようになる．
∑′u′ ∈U sim(u, u )|Bu ∩ {b}|∑cf(u, b) =(5)′u′ ∈U sim(u, u )読者がある本を読んでいるかどうかは 2 値の状態しかとらないため，読者同士の類似度 sim(ui , uj ) は，読んでいる本集合の Jaccard 係数により求める．

sim(ui , uj ) =|Bui ∩ Buj ||Bui ∪ Buj |(6)

3. 3. 2 行 列 分 解

具体的な計算は次式によって行われる．

行列 X を直接用いない協調フィルタリングの方法として，行1 ∑rbr =vote(u, b, Br )|Ub | u∈U(2)1 ∑isRead(u, b0 )vote(u, b, Br ) =|Bu |(3)

列分解 [5] を用いる方法がある．行列分解はこの非常に大きくかつ疎である行列 X を，より小さい行列に圧縮する方法であrb0 ∈Brいて述べる．

る．行列分解では，行列の各成分は，|U | や |B| よりもずっと小さい数の，r 個の嗜好という潜在的な変数によって生まれていると考える．したがって，次式のように X を Y ∈ R|U |×r とでいる数学の本」がくる．レイティングの理由が明快であり，Z∈R解釈しやすい一方で，”実際に”読まれていないかぎりはスコア

r×|B|を用いて，付けが行われないので，ランキング中位〜下位の微妙な差はわ

X ≃YZ

(7)

からない．と分解する．Y と読者の関係について，Y からある行を取り出協調フィルタリングによるスコアの計算では，読者層に直接すと，ある読者に対応する r 次元のベクトルになる．ベクトル加わっていないユーザでも，ユーザどうしの類似度を通じてスの各要素は，その要素に対応する読者の嗜好の強さと解釈できコアに影響を与えるため，ランキング中位〜下位の本であってる．Z と書籍の関係ついても同様である．

も，非負なスコアを与えることができる．読者層に似ている

行列分解の問題は，E の各要素が 0 に近いことを表す誤差関

ユーザがその本を読んでいると，スコアが大きくなる．読者層

数 L を最小化する Y ，Z を発見する問題として定式化される．に似ていないユーザがその本を読んでいるとスコアが小さくな

行列 E の各要素が 0 に近いほど，良い近似である．

る．これにより（読者層にも，読者層に含まれない人にも）広く読まれている本についてのスコアが小さく傾向にあると考え

E =X −YZ(8)

このような Y ，Z は解析的に得られない場合があり，その場合は何らかの誤差関数に基いて探索的に行列を求める．誤差関数としては，E のフロベニウスノルム，KL ダイバージェンスなどが挙げられる．

広く読まれている本のスコアが小さくなる可能性がある．

4. 実

験

本節では，提案手法を用いて行った実験とその評価について述べ，結果について考察を行う．本実験では，プロトタイプと3. 3. 3 非負行列分解
非負行列分解 (NMF, Non-negative Matrix Factorization) [6] は，非負行列に対して適用できる行列分解である．分解後の行列 Y ，Z について，すべての要素が非負であるという制約を加えたうえで，誤差関数を最小化する Y ，Z を求める．
行列分解は，分解後の行列の要素からもとの行列の要素を復元する際に，線形和で復元を行う．非負行列分解では，分解後の行列の要素が負を含む場合とくらべて，分解後の行列の要素が非負であるとき，分解後の行列はより疎であることが実験的にわかっている．

して，提案手法に基づいた実際のシステムを構築し，その出力について考察する．

4. 1 プロトタイピング構築したシステムは，ユーザから通常クエリおよび読者層クエリを受け付ける．通常クエリによって，システムは検索結果を表示する．ここで，表示される結果は，Amazon.co.jp の検索結果とする．読者層クエリによって，(1)(2)(3) 式に基いてスコアを評価し，並び替えを行う．

4. 2 データセット
読書系 SNS のひとつであるブクログ（注 1）から集めたデータを

3. 3. 4 行列分解を用いた協調フィルタリング
行列分解を用いた協調フィルタリングでは，読者と書籍それぞれの，低次元の特徴ベクトルのコサイン類似度をとる．したがって，cf(u, b) は次式のようになる．

uT bcf(u, b) =|u||b|られ，売れている本のスコアを押さえつける効果がある一方で，用いて実験を行う．読書 SNS は，ユーザが本を登録することができるソーシャル・ネットワーキング・サービスである．ブクログでは，ユーザは本を登録することで，Web 上に自分の本棚を作成することができる．ユーザと本の関係として，
「読んだ」

(9)

ただし，u は Y から u に対応する行を取り出した縦ベクトルとしたもの，b は Z から b に対応する列を取り出した縦ベクト
ルとしたものである．

「読みたい」「読んでいる」「積読」「読みたい」という 5 つの状態を登録できる「読み終わった」に対しては，レビューを書くことができる．
本実験では，ユーザと本の関係として「読み終わった」「読んでいる」「積読」「登録」の 4 状態を分析対象とし，レビュー

3. 4 スコアに基づく検索結果のランキングは考慮しないこととする．収集されたデータは，本 492132 冊，前小節で述べたスコア計算の方法により，∀b ∈ B について

読者 438503 人，登録数 14324418 件である．また，本 1 冊あた

実数値のスコアが計算できる．Bq をスコアの昇順に並び替え

り読者数の中央値は 28.0 人，読者 1 人あたりの登録冊数の中ることで，ランキングを出力することができる．

央値は 6.0 冊である．なお，データセットはブクログの一部でランキングは，読者層クエリによって生成された読者層を反あることに留意する必要がある．

映したものになっている．たとえば，「面白い数学の入門書が読4. 3 実 験 内 容みたい」というユーザが通常クエリ「数学 AND 入門」，読者ある検索タスクに対して各システムによって得られた検索結層クエリ「文春文庫」を入力した場合では，ランキングの上位果を nDCG@10 で評価することにより，各システムの精度を評であるほど「文春文庫を読んでいるユーザが読んだ，あるいは価した．本実験では，それぞれ 1 つの検索意図をもつ検索タス読みそうな数学の本」を表している．

クを 25 個用意し，各検索タスクについて評価を行った．被験読者層に基づくスコアでは，検索結果の各アイテムと読者層者は「〜に役立つ本を探したい」「〜であるような小説を探しの．直接の読者の共通によってスコアの計算が行われる．ランキング上位には「文春文庫を”実際に”読んでいるユーザが読ん（注 1）：http://booklog.jp/

表1 実験結果
ベースライン

提案手法

nDCG@10

通常クエリ

通常クエリ

読者層クエリ

SFSF

脚本

ベースライン 提案手法

0.16010.2746

IT 最新

IT 最新

採用担当

0.34090.3409

運動

運動

整形外科学

0.23740.1444

健康食品

健康食品

薬剤学

0.46270.6717

がん

がん

基礎医学

0.389

0.697

インターネット 事件

インターネット 事件

判例

0.16820.0851

会社 制度

会社 制度

社労士

00

アイデア 特許

アイデア 特許

弁理士

0.474

0.3145

麻雀

麻雀

解析学

0.32190.435

問題 解き方問題 解き方解析学

0.33330.3333

プログラミング 入門 web

プログラミング 入門 webruby on rails

0.54790.2628プログラミング 入門 ゲーム

プログラミング 入門 ゲーム

swift

0.37650.5506

料理 基本

料理 基本

一人暮らし

1.000

0.8744

曲 小説

曲 小説

ピアノ 教本0.02120数学 小説

数学 小説

解析学

0.832

0.87010.6521サイバー 小説

サイバー 小説

オライリー

0.8522

戦争 小説

戦争 小説

軍事

0.8268

0.88

キリスト教

キリスト教

toeic

0.67280.6761

excel

excel

オライリー

0.2406

0.5978アナログゲーム

アナログゲーム

ボードゲーム0.52440.2884電子回路 入門

電子回路 入門

Arduino0.40670.7938

ボランティア 入門

ボランティア 入門

npo

0.4323

0.235

教える

教える

教育学

0.65370.3488

映画

映画

映画学

0.12970.1691モノ デザインモノ デザイン工芸

0.3566

0.4318Mean

0.43040.4371たい」といった検索意図に基づき，各システムについてクエリ路のキホンのキホン (秀和システム, ISBN-10: 4798039411,を生成した．さらに，本実験の評価では，提案システムと既存

15 位 から 5 位)システムで性能に大きな違いが現れた検索タスクについて，定性的な議論を行った．

4. 4 実験結果と考察
実験結果を表 1 に示す．表 1 より，提案手法について定量的な精度改善は確認できなかった．本実験では，各手法の性能が検索意図によって大きく異なっている．
検索意図「Arduino に役立つ電子回路の知識が学べる本」や検索意図「マニアックな Excel の使い方が載っている本」では，ベースラインに比べて提案手法の性能が大きく向上した．
「電子回路 入門」と検索した場合（ベースライン）と，さらに「Arduino」によって再ランキングを行った場合（提案手法）では，トップ 6 冊のうち 4 冊が変化していた．
（ 1 ） 作る・できる/基礎入門 電子工作の素 (技術評論社, ISBN-10:4774130788, 12 位 から 1 位)
（ 2 ） 電子工作入門以前 (技術評論社, ISBN-10: 4774172847, 27位 から 3 位)
（ 3 ） Raspberry Pi で学ぶ電子工作 超小型コンピュータで電子回路を制御する (講談社, ISBN-10: 4062578913, 13 位 から 4位)（ 4 ） 回路シミュレータでストンとわかる!最新アナログ電子回（1）および（2）はレビューの評価が高く，検索の意図にも適合しており，役に立つことが期待できる．
（3）はレビューの評価は高いものの，検索の意図には適合していない．
（4）はレビューの評価が賛否両論だが，検索の意図には適合している．

Amazon.co.jp から得られた各書籍の概要は次の通りである．
（ 1 ） 電子工作にあたり，実際に使うための『道具』としての書物（ 2 ） 電気・電子の基礎理論や電子回路・部品の知識、マイコンの基本、プログラミングの基本（ 3 ） Raspberry Pi で電子工作を学ぶ（ 4 ） いろんなアナログ電子回路の作りと動きがよくわかる
一方で，検索意図「Web アプリ開発のためのプログラミング入門本」では提案手法はベースラインに比べ性能が悪化していた．この検索意図においては，指定した読者層の傾向が、本のトピックにまで大きな影響を与えてしまい，入門者向きではない書籍が上位に来ていた．
このような検索意図において，精度の低下の主な原因としては，提案システムによる再ランキングが，既存システムが不適合だと計算した結果を上位に出力することが挙げられる．提案
システムにおいても初期ランキングは既存システムによるもの

であり，初期ランキングはユーザが手に取るような本（すなわち，既存システムがユーザに対して適合を期待する本）を上位に，適合でない本を下位に置いている．そして，読者層クエリによって引き上げられた初期ランキングの下位にある書籍は，既存システムがユーザに対して適合を期待する本ではない．したがって，適合度の評価としては低下したものと考えられる．

5. ま と め
本稿では，読者層クエリによって書籍を並び替えるシステムを提案し，読者層による検索を可能にした．提案手法では，ユーザが理解しやすいような特徴にもとづいてスコア付けを行うことで，システムを利用するユーザが出力結果について理解しながら検索を行えるようにした．
また本稿では，読書 SNS ブクログから収集したユーザの読書傾向を用いて，提案手法の出力であるランキングについて評価実験を行った．評価実験の結果，提案手法による精度向上は確認できず，インタラクションを考慮した実験による再評価の必要性が確認された．
提案手法の課題としては，グラフデータのスパースネスへの対処が挙げられる．提案システムにおいては，あるアイテム集合を評価するユーザ集合は任意に選ばれる可能性がある．したがって，任意のアイテムについて任意のユーザが適切な評価値を与えられる方法の検討が必要であると考えられる．
提案システムの拡張としては，また，例えば複数の読者層クエリに基いてランキングを出力するといった，より複雑なクエリを入力するような拡張が考えられる．一方でこうした複雑な入力はユーザの利便性を損なうため，効果的なクエリの作成方法を検討する必要がある．
また現在は，単純なグラフデータを対象にしているが，他のソーシャルメディアの情報や，書籍のメタデータ，レビューテキストなどを含めてスコアを計算することが考えられる．
今後は，対象とする読書傾向データの拡充，実験デザインの再考，ベクトル空間法のような具体的なベースラインに基づく評価を行うことを予定している．
謝辞

本研究の一部は，文科省科研費基盤 (A)「多元的検索要求に対応できるオンラインデータマイニング検索方式の研究」（15H01718，研究代表者：田中克己），文科省科研費若手(A)「潜在的情報を引き出すための情報誘出技術に関する研究」（26700009，研究代表者：加藤誠）によるものです．ここに記して謝意を表します．
文

献[1] J. Teevan, M. R. Morris, and S. Bush. “Discovering and Using
Groups to Improve Personalized Search. In Proceedings of the Second ACM International Conference on Web Search and Data Mining,” WSDM 09, pages 1524, USA, 2009. ACM.
[2] E. Pariser. “The Filter Bubble: What The Internet Is Hiding From
You. ” Viking, 2011.
[3] Panel on The Filter Bubble. https://acmrecsys.wordpress.
com/2011/10/25/panel-on-the-filter-bubble/[4] Social Book Search Lab, http://social-book-search.
humanities.uva.nl/[5] Y.Koren, R.M. Bell and C.Volinsky, “Matrix Faxctrization Techniques for Recommender Systems,” Computer, 42(8):30-37, 2009.

[6] D.D. Lee and H.S. Seung, “Algorithms for Non-negative Matrix Factorization” Proc. NIPS 2000, pp. 556562, 2000.
[7] P. Resnick, N. Iacovou, M. Suchak, P. Bergstrom, J. Riedl. GroupLens, “An open architecture for collaborative filtering of Netnews,”
In Proc. of the Conf. on Computer Supported Cooperative Work, pp.
175186, 1994.
[8] 片岡大祐，加藤誠，山本岳洋，大島裕明，田中克己．SNS グラ
フデータにおける文脈を考慮した適合フィードバック検索，電子情報通信学会 第 9 回データ工学と情報マネジメントに関するフォーラム (DEIM2017) 論文集, 2017[9] 南大智，牛尼剛聡．書評 SNS におけるレビュワーの観点の違いを考慮したフィードバック型協調フィルタリング，電子情報通信学会 第 8 回データ工学と情報マネジメントに関するフォーラム(DEIM2016) 論文集, 2016[10] 清水 拓也, 土方 嘉徳, 西田 正吾, 発見性を考慮した協調フィルタ
リングアルゴリズムに関する複数方式の検討”, 人工知能学会論文誌, Vol.23, No.5, 330-343, (2008).