[アプリ]mediLinkの「検索力」を強くする(2)
編集部のKです。こんにちは。
mediLinkアプリの検索についての連載、2回目はサジェスト機能のことをお話します。
■検索エンジン導入3:サジェスト機能
同義語辞書とともに検索エンジン導入で実現したのが、検索ワードのサジェスト機能です。
Google検索などでよくみられる、最初の何文字かを入力すると、検索ワードの候補を表示してくれる、あの機能ですね。
mediLinkアプリでは、2019年9月時点で11800件超のサジェスト語句を登録しています。
サジェスト機能なしで外国語の疾患名を正確に入力するのは難しいですよね。
「Guillan-Barreなんてつづり、知らないよ…」ってなります。
サジェスト機能で提案される検索ワードの候補から選ぶことで、つづりを間違って検索結果が表示されない、ということもなくなります。
さらに今回の改修の特徴は、略語を入力するだけでも、正式名称がサジェストされるようになったことです。
「GBS」と入力すると…
「Guillain-Barre症候群(GBS)」と「B群β溶血性レンサ球菌(GBS)」を候補に上げてくれます。
また、変換辞書にもある程度対応しているので、
ひらがなで「ぎらん」と入力しても…
ローマ字で「giran」と入力しても…
どちらも「ギラン・バレー症候群」が候補に表示されました。
《今後の課題》
サジェスト機能で表示される語句は11800件を超えており、疾患名を中心に、コンテンツ内の目次に含まれる語句を優先して登録しています。
しかし、これが多いのか少ないのか。
人によっては、マイナーな語句でもサジェストしてほしいと感じるでしょうし、逆に多すぎて選ぶのが面倒に感じる人もいると思います。
このあたりは、どのような検索ワードが入力されることが多いかを解析して、その傾向を見ながらサジェスト機能に追加していきたいと考えています。
■検索エンジン導入4:未購入・未DLコンテンツも含めて検索結果に表示
続いてはあまり大きな変化ではありませんが、アプリがオンラインのときに検索すると、自分が購入していないコンテンツや、購入したがまだダウンロードしていないコンテンツも、検索結果に表示されるようになりました。
これによって「実はこの疾患、『病気がみえる』のこの巻にも載っているんだ…」という気づいてもらうことができます。
この「未購入コンテンツを含める」機能は、7月の最初のリリース当初は購入済コンテンツと未購入コンテンツとが混在して表示されていましたが、8月にアップデートを行い、「購入済が先、未購入が後」に表示されるようにしました。
未購入コンテンツまで見る必要はないよ、という方もいると思いますので、そのときは検索の設定画面(フィルタアイコン)から「未購入コンテンツを含める」をOFFにしてください。次からは表示されなくなります。
■検索エンジンが対応していないコンテンツ
ここまで検索エンジンの導入によって変わった点を紹介してきましたが、実は2019年の時点で対応しているのは「イヤーノート」「レビューブック」「病気がみえる」などのダウンロードコンテンツに限られていて、次のようなオンラインのコンテンツは対応していません。
<検索エンジン未対応>
・QBオンライン(国試版・CBT版)
・mediLink動画
・QuickCheck
・医ンプット
QBオンラインにはもともと検索機能があり、全文検索と疾患検索(真にその疾患・テーマを問われた問題のみを検索する)が使えます。
検索エンジンに対応していないというのは、「全文検索がゆらぎ検索に対応していない」ということです。そのため、QBオンラインの全文検索は、入力した語句に完全一致しないと問題・解説がヒットしません。
また、mediLink動画にも検索機能はあり、動画タイトルを検索することは可能です。
これらオンラインのコンテンツも、将来的には検索エンジンに対応させたいと考えています。
実現すると、ゆらぎ検索に対応するだけでなく、mediLinkアプリで何かを検索したとき、「イヤーノート」や「病気がみえる」と一緒に、動画タイトルやQBの検索結果も表示することが可能になります。
他の改修案件との兼ね合いもあって、すぐには実現というわけにいかないのですが、ダウンロードコンテンツもオンラインのコンテンツも区別なく検索機能が向上するよう検討を進めていきますので、いましばらくお待ちください。
■検索履歴の可視化によって同義語辞書の改善を推進
今回導入したのは「Elasticsearch」という検索エンジンをベースとした「ENdoSnipe」というシステムなのですが、この「ENdoSnipe」の優れたところは、どのような語句がどのくらい頻回に検索されているのかを可視化して分析することができる点です。
ある1日の間に検索された語句とその検索回数を見てみましょう。
また、「検索に1件もヒットしなかった語句」が何だったかもリストにしてくれます。
こちらは「未購入コンテンツを含まない」状態で0件ヒットだった場合(実際には未購入コンテンツにキーワードが含まれる場合)もリストに入ってくるので、実際にはその分を差し引いて分析する必要があります。
しかし本当にヒットしない語句だった場合、コンテンツの中に存在しない語句なら仕方ありませんが、同じ意味で違う表記(例えば日本語ではなくローマ字表記だった)で存在する場合、同義語辞書にその語句を適切に登録することで、次回からはコンテンツに存在する語句を検索結果に表示させることができるようになります。
また、先に紹介したサジェスト機能、これもすべての語句が登録されているわけではないので、みなさんが検索した履歴を見ながら、サジェスト表示する語句を追加していくことで、よく検索される語句により早くたどり着けられるようにしていきたいと思います。
—–
2回に分けて連載してきた検索機能についてのお話は、ここでいったん終わりです。お読みいただきありがとうございました。
また改修が進みましたら続きを書きたいと思います。これからもよろしくお願いします。
mediLinkアプリについてのご要望は下記問合せフォームからお寄せください。
https://accounts.medilink-study.com/front/contact/
(編集部 K)