IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ライン プラス コーポレーションの特許一覧

特開2024-155778チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム
<>
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図1
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図2
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図3
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図4
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図5
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図6
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図7
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図8
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図9
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図10
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図11
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図12
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図13
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図14
  • 特開-チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024155778
(43)【公開日】2024-10-31
(54)【発明の名称】チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラム
(51)【国際特許分類】
   G06F 16/38 20190101AFI20241024BHJP
【FI】
G06F16/38
【審査請求】未請求
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024064654
(22)【出願日】2024-04-12
(31)【優先権主張番号】10-2023-0051884
(32)【優先日】2023-04-20
(33)【優先権主張国・地域又は機関】KR
(71)【出願人】
【識別番号】516014409
【氏名又は名称】ライン プラス コーポレーション
【氏名又は名称原語表記】LINE Plus Corporation
(74)【代理人】
【識別番号】110003199
【氏名又は名称】弁理士法人高田・高橋国際特許事務所
(72)【発明者】
【氏名】ジャン ヒョンジェ
(72)【発明者】
【氏名】キム ユンジェ
(72)【発明者】
【氏名】ジョ ヒョンジ
(72)【発明者】
【氏名】イ ヒョンドク
(72)【発明者】
【氏名】スン ドンギュ
(72)【発明者】
【氏名】イ ジョンウン
【テーマコード(参考)】
5B175
【Fターム(参考)】
5B175DA01
5B175EA01
5B175FB03
5B175GB03
(57)【要約】
【課題】チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法、コンピュータ装置、およびコンピュータプログラムを提供する。
【解決手段】コンテンツ推薦方法は、チャットルームごとに、前記チャットルームに含まれる会話内容を利用して前記チャットルームを表現するチャットルーム特徴ベクトル(feature vector)を生成するステップ、前記チャットルームに参加中のユーザごとに、前記チャットルーム内での前記ユーザの会話内容を利用して前記ユーザを表現するユーザ特徴ベクトルを生成するステップ、および前記チャットルーム内で、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルを利用してコンテンツを推薦するステップを含んでよい。
【選択図】図3
【特許請求の範囲】
【請求項1】
コンピュータ装置で実行されるコンテンツ推薦方法であって、
前記コンピュータ装置は、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、
前記コンテンツ推薦方法は、
前記少なくとも1つのプロセッサにより、チャットルームごとに、前記チャットルームに含まれる会話内容を利用して前記チャットルームを表現するチャットルーム特徴ベクトルを生成するステップ、
前記少なくとも1つのプロセッサにより、前記チャットルームに参加中のユーザごとに、前記チャットルーム内での前記ユーザの会話内容を利用して前記ユーザを表現するユーザ特徴ベクトルを生成するステップ、および
前記少なくとも1つのプロセッサにより、前記チャットルーム内で、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルを利用してコンテンツを推薦するステップ
を含む、コンテンツ推薦方法。
【請求項2】
前記コンテンツ推薦方法は、
前記少なくとも1つのプロセッサにより、前記チャットルームに含まれる会話内容を機械学習モデルに入力可能な形態に前処理するステップ
をさらに含む、請求項1に記載のコンテンツ推薦方法。
【請求項3】
前記前処理するステップは、
会話メッセージを連結するために、会話メッセージごとに、単位文章を区分する特殊トークンまたは符号を追加するステップ
を含む、請求項2に記載のコンテンツ推薦方法。
【請求項4】
前記前処理するステップは、
会話メッセージを連結するために、会話メッセージ間の時間間隔または内容ベースのトピックに基づいて段落を区分する特殊トークンまたは記号を追加するステップ
含む、請求項2に記載のコンテンツ推薦方法。
【請求項5】
前記前処理するステップは、
絵文字やスタンプ、写真、動画、または音声のうちの少なくとも1つの非テキスト形態の会話メッセージをテキストに変換するステップ
を含む、請求項2に記載のコンテンツ推薦方法。
【請求項6】
前記前処理するステップは、
各会話メッセージに、会話の主体を示す話者名、ID、または電話番号のうちの少なくとも1つの話者識別情報を追加するステップ
を含む、請求項2に記載のコンテンツ推薦方法。
【請求項7】
前記チャットルーム特徴ベクトルを生成するステップおよび前記ユーザ特徴ベクトルを生成するステップは、
文書埋め込みモデル、シーケンスモデル、または言語モデルのうちの少なくとも1つの機械学習モデルを利用して、会話内容から1つの特徴ベクトルを取得するステップ
を含む、請求項1に記載のコンテンツ推薦方法。
【請求項8】
前記推薦するステップは、
前記チャットルームで前記ユーザによって特定された会話メッセージに対して、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルに基づいて推薦コンテンツを提供するステップ
を含む、請求項1に記載のコンテンツ推薦方法。
【請求項9】
前記推薦するステップは、
前記チャットルームで前記ユーザによって選択された会話メッセージに対して、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルに基づくリアクションアイコンまたは返信メッセージのうちの少なくとも1つを推薦するステップ
を含む、請求項1に記載のコンテンツ推薦方法。
【請求項10】
前記推薦するステップは、
前記チャットルームで前記ユーザによって入力された会話メッセージに対して、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルに基づく絵文字またはスタンプのうちの少なくとも1つを推薦するステップ
を含む、請求項1に記載のコンテンツ推薦方法。
【請求項11】
前記提供するステップは、
前記会話メッセージと関連する相手の前記チャットルーム内での特徴ベクトルを利用して、前記推薦コンテンツを選定するステップ
を含む、請求項8に記載のコンテンツ推薦方法。
【請求項12】
前記提供するステップは、
前記会話メッセージと関連する相手の前記チャットルーム内での特徴ベクトルを利用して、前記推薦コンテンツに対する前記相手の予想反応情報を提供するステップ
を含む、請求項8に記載のコンテンツ推薦方法。
【請求項13】
前記提供するステップは、
前記チャットルームと特徴ベクトルが類似する他のチャットルームで使用されたコンテンツを利用して、前記推薦コンテンツを選定するステップ
を含む、請求項8に記載のコンテンツ推薦方法。
【請求項14】
請求項1から13のいずれか一項に記載のコンテンツ推薦方法を前記コンピュータ装置に実行させるために非一時的なコンピュータ読み取り可能な記録媒体に記録される、コンピュータプログラム。
【請求項15】
コンピュータ装置であって、
メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサ
を含み、
前記少なくとも1つのプロセッサは、
チャットルームごとに、前記チャットルームに含まれる会話内容を利用して前記チャットルームを表現するチャットルーム特徴ベクトルを生成するプロセス、
前記チャットルームに参加中のユーザごとに、前記チャットルーム内での前記ユーザの会話内容を利用して前記ユーザを表現するユーザ特徴ベクトルを生成するプロセス、および
前記チャットルーム内で、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルを利用してコンテンツを推薦するプロセス
を処理する、コンピュータ装置。
【請求項16】
前記少なくとも1つのプロセッサは、
前記チャットルームに含まれる会話内容を機械学習モデルに入力可能な形態に前処理するものであって、
会話メッセージを連結するために、会話メッセージごとに、単位文章を区分する特殊トークンまたは符号を追加すること
を特徴とする、請求項15に記載のコンピュータ装置。
【請求項17】
前記少なくとも1つのプロセッサは、
前記チャットルームに含まれる会話内容を機械学習モデルに入力可能な形態に前処理するものであって、
絵文字やスタンプ、写真、動画、または音声のうちの少なくとも1つの非テキスト形態の会話メッセージをテキストに変換し、
各会話メッセージに、会話の主体を示す話者名、ID、または電話番号のうち少なくとも1つの話者識別情報を追加すること
を特徴とする、請求項15に記載のコンピュータ装置。
【請求項18】
前記少なくとも1つのプロセッサは、
文書埋め込みモデル、シーケンスモデル、または言語モデルのうちの少なくとも1つの機械学習モデルを利用して、会話内容から前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルを取得すること
を特徴とする、請求項15に記載のコンピュータ装置。
【請求項19】
前記少なくとも1つのプロセッサは、
前記チャットルームで前記ユーザによって特定された会話メッセージに対して、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルに基づいて推薦コンテンツを提供すること
を特徴とする、請求項15に記載のコンピュータ装置。
【請求項20】
前記少なくとも1つのプロセッサは、
前記会話メッセージと関連する相手の前記チャットルーム内での特徴ベクトルまたは前記チャットルームと特徴ベクトルが類似する他のチャットルームで使用されたコンテンツを利用して、前記推薦コンテンツを選定すること
を特徴とする、請求項19に記載のコンピュータ装置。
【発明の詳細な説明】
【技術分野】
【0001】
以下の説明は、ソーシャルプラットフォーム(social platform)内でコンテンツを推薦する技術に関する。
【背景技術】
【0002】
一般的なコミュニケーションツールであるインスタントメッセンジャー(instant messenger)は、メッセージやデータをリアルタイムで送受信するためのソフトウェアであって、ユーザがメッセンジャー上にトークの相手を登録し、トークリストに登録された相手とリアルタイムでメッセージをやり取りすることができる。
【0003】
このようなメッセンジャー機能の使用は、PCはもちろん、移動通信端末のモバイル環境でも普遍化している。
【0004】
例えば、特許文献1(公開日2002年9月30日)には、携帯端末機にインストールされたモバイルメッセンジャー間にメッセンジャーサービスを提供することができるようにした、無線通信網を利用した携帯端末機のモバイルメッセンジャーサービスシステムおよび方法が開示されている。
【0005】
インスタントメッセンジャー利用の大衆化により、インスタントメッセンジャーで提供する機能がどんどん多様化しており、メッセンジャー内で絵文字やスタンプ、リアクションアイコン、返信メッセージなどの多様なコンテンツを推薦する機能がサービスされている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】韓国公開特許第10-2002-0074304号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
チャットルームの特徴(feature)とこのチャットルーム内でのユーザの特徴を利用して、メッセンジャー内のコンテンツを推薦することができる。
【0008】
チャットルームごとにこのチャットルームで示されるユーザのスタイルを考慮して、各チャットルームにパーソナライズしたコンテンツを推薦することができる。
【課題を解決するための手段】
【0009】
コンピュータ装置で実行されるコンテンツ推薦方法であって、前記コンピュータ装置は、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記コンテンツ推薦方法は、前記少なくとも1つのプロセッサにより、チャットルームごとに、前記チャットルームに含まれる会話内容を利用して前記チャットルームを表現するチャットルーム特徴ベクトル(feature vector)を生成するステップ、前記少なくとも1つのプロセッサにより、前記チャットルームに参加中のユーザごとに、前記チャットルーム内での前記ユーザの会話内容を利用して前記ユーザを表現するユーザ特徴ベクトルを生成するステップ、および前記少なくとも1つのプロセッサにより、前記チャットルーム内で、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルを利用してコンテンツを推薦するステップを含む、コンテンツ推薦方法を提供する。
【0010】
一側によると、前記コンテンツ推薦方法は、前記少なくとも1つのプロセッサにより、前記チャットルームに含まれる会話内容を機械学習モデルに入力可能な形態に前処理するステップをさらに含んでよい。
【0011】
他の側面によると、前記前処理するステップは、会話メッセージを連結するために、各会話メッセージに単位文章を区別する特殊トークンまたは符号を追加するステップを含んでよい。
【0012】
また他の側面によると、前記前処理するステップは、会話メッセージを連結するために、会話メッセージ間の時間間隔または内容ベースのトピックに基づいて段落を区分する特殊トークンまたは符号を追加するステップを含んでよい。
【0013】
また他の側面によると、前記前処理するステップは、絵文字やスタンプ、写真、動画、または音声のうちの少なくとも1つの非テキスト(non-text)形態の会話メッセージをテキストに変換するステップを含んでよい。
【0014】
また他の側面によると、前記前処理するステップは、各会話メッセージに、会話の主体を示す話者名、ID、または電話番号のうちの少なくとも1つの話者識別情報を追加するステップを含んでよい。
【0015】
また他の側面によると、前記チャットルーム特徴ベクトルを生成するステップおよび前記ユーザ特徴ベクトルを生成するステップは、文書埋め込みモデル(embedding model)、シーケンスモデル(sequence model)、または言語モデル(language model)のうちの少なくとも1つの機械学習(machine learning)モデルを利用して、会話内容から1つの特徴ベクトルを取得するステップを含んでよい。
【0016】
また他の側面によると、前記推薦するステップは、前記チャットルームで前記ユーザによって特定された会話メッセージに対して、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルに基づいて推薦コンテンツを提供するステップを含んでよい。
【0017】
また他の側面によると、前記推薦するステップは、前記チャットルームで前記ユーザによって選択された会話メッセージに対して、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルに基づいたリアクションアイコンまたは返信メッセージのうちの少なくとも1つを推薦するステップを含んでよい。
【0018】
また他の側面によると、前記推薦するステップは、前記チャットルームで前記ユーザによって入力された会話メッセージに対して、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルに基づいた絵文字またはスタンプのうちの少なくとも1つを推薦するステップを含んでよい。
【0019】
また他の側面によると、前記提供するステップは、前記会話メッセージと関連する相手の前記チャットルーム内での特徴ベクトルを利用して、前記推薦コンテンツを選定するステップを含んでよい。
【0020】
また他の側面によると、前記提供するステップは、前記会話メッセージと関連する相手の前記チャットルーム内での特徴ベクトルを利用して、前記推薦コンテンツに対する前記相手の予想反応情報を提供するステップを含んでよい。
【0021】
さらに他の側面によると、前記提供するステップは、前記チャットルームと特徴ベクトルが類似する他のチャットルームで使用されたコンテンツを利用して、前記推薦コンテンツを選定するステップを含んでよい。
【0022】
前記コンテンツ推薦方法を前記コンピュータ装置に実行させるために非一時的なコンピュータ読み取り可能な記録媒体に記録されるコンピュータプログラムを提供する。
【0023】
コンピュータ装置であって、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記少なくとも1つのプロセッサは、チャットルームごとに、前記チャットルームに含まれる会話内容を利用して前記チャットルームを表現するチャットルーム特徴ベクトルを生成するプロセス、前記チャットルームに参加中のユーザごとに、前記チャットルーム内の前記ユーザの会話内容を利用して前記ユーザを表現するユーザ特徴ベクトルを生成するプロセス、および前記チャットルーム内で、前記チャットルーム特徴ベクトルと前記ユーザ特徴ベクトルを利用してコンテンツを推薦するプロセスを処理するコンピュータ装置を提供する。
【図面の簡単な説明】
【0024】
図1】本発明の一実施形態における、ネットワーク環境の例を示した図である。
図2】本発明の一実施形態における、コンピュータ装置の例を示したブロック図である。
図3】本発明の一実施形態における、コンピュータ装置が実行することができる方法の一例を示したフローチャートである。
図4】本発明の一実施形態における、会話内容を前処理するプロセスの一例を示した図である。
図5】本発明の一実施形態における、チャットルーム特徴ベクトルとユーザ特徴ベクトルを生成する方法の例を示した図である。
図6】本発明の一実施形態における、チャットルーム特徴ベクトルとユーザ特徴ベクトルを生成する方法の例を示した図である。
図7】本発明の一実施形態における、チャットルーム特徴ベクトルとユーザ特徴ベクトルを生成する方法の例を示した図である。
図8】本発明の一実施形態における、チャットルーム特徴ベクトルとユーザ特徴ベクトルを生成する方法の例を示した図である。
図9】本発明の一実施形態における、チャットルーム特徴ベクトルとユーザ特徴ベクトルを生成する方法の例を示した図である。
図10】本発明の一実施形態における、チャットルーム特徴ベクトルとユーザ特徴ベクトルを生成する方法の例を示した図である。
図11】本発明の一実施形態における、チャットルーム特徴ベクトルとユーザ特徴ベクトルを利用して推薦コンテンツを提供するプロセスの一例を示した図である。
図12】本発明の一実施形態における、推薦コンテンツの例を示した図である。
図13】本発明の一実施形態における、推薦コンテンツの例を示した図である。
図14】本発明の一実施形態における、推薦コンテンツの例を示した図である。
図15】本発明の一実施形態における、推薦コンテンツの例を示した図である。
【発明を実施するための形態】
【0025】
以下、本発明の実施形態について、添付の図面を参照しながら詳しく説明する。
【0026】
本発明の実施形態は、ソーシャルプラットフォーム内でコンテンツを推薦する技術に関する。
【0027】
本明細書に具体的に開示される事項を含む実施形態は、ユーザにパーソナライズされたコンテンツとして、チャットルームの会話スタイルや雰囲気などはもちろん、チャットルーム内でのユーザの会話スタイルや雰囲気などに合わせて、チャットルームとユーザごとに異なるコンテンツを推薦することができる。
【0028】
本発明の実施形態に係るコンテンツ推薦システムは、少なくとも1つのコンピュータ装置によって実現されてよく、本発明の実施形態に係るコンテンツ推薦方法は、コンテンツ推薦システムに含まれる少なくとも1つのコンピュータ装置によって実行されてよい。このとき、コンピュータ装置においては、本発明の一実施形態に係るコンピュータプログラムがインストールされて実行されてよく、コンピュータ装置は、実行されたコンピュータプログラムの制御にしたがって本発明の実施形態に係るコンテンツ推薦方法を実行してよい。上述したコンピュータプログラムは、コンピュータ装置と結合してコンテンツ推薦方法をコンピュータに実行させるためにコンピュータ読み取り可能な記録媒体に記録されてよい。
【0029】
図1は、本発明の一実施形態における、ネットワーク環境の例を示した図である。図1のネットワーク環境は、複数の電子機器110、120、130、140、複数のサーバ150、160、およびネットワーク170を含む例を示している。このような図1は、発明の説明のための一例に過ぎず、電子機器の数やサーバの数が図1のように限定されることはない。また、図1のネットワーク環境は、本実施形態に適用可能な環境のうちの一例を説明したものに過ぎず、本実施形態に適用可能な環境が図1のネットワーク環境に限定されることはない。
【0030】
複数の電子機器110、120、130、140は、コンピュータ装置によって実現される固定端末や移動端末であってよい。複数の電子機器110、120、130、140の例としては、スマートフォン、携帯電話、ナビゲーション、PC(Personal Computer)、ノート型PC、デジタル放送用端末、PDA(Personal Digital Assistant)、PMP(Portable Multimedia Player)、タブレットなどがある。一例として、図1では、電子機器110の例としてスマートフォンを示しているが、本発明の実施形態において、電子機器110は、実質的に無線または有線通信方式を利用し、ネットワーク170を介して他の電子機器120、130、140および/またはサーバ150、160と通信することのできる多様な物理的なコンピュータ装置のうちの1つを意味してよい。
【0031】
通信方式が限定されることはなく、ネットワーク170が含むことのできる通信網(一例として、移動通信網、有線インターネット、無線インターネット、放送網)を利用する通信方式だけではなく、機器間の近距離無線通信が含まれてもよい。例えば、ネットワーク170は、PAN(Personal Area Network)、LAN(Local Area Network)、CAN(Campus Area Network)、MAN(Metropolitan Area Network)、WAN(Wide Area Network)、BBN(Broadband Network)、インターネットなどのネットワークのうちの1つ以上の任意のネットワークを含んでよい。さらに、ネットワーク170は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター-バスネットワーク、ツリーまたは階層的ネットワークなどを含むネットワークトポロジのうちの任意の1つ以上を含んでもよいが、これらに限定されることはない。
【0032】
サーバ150、160それぞれは、複数の電子機器110、120、130、140とネットワーク170を介して通信して命令、コード、ファイル、コンテンツ、サービスなどを提供する1つ以上のコンピュータ装置によって実現されてよい。例えば、サーバ150は、ネットワーク170を介して接続した複数の電子機器110、120、130、140にサービス(一例として、メッセンジャーサービスなど)を提供するシステムであってよい。
【0033】
図2は、本発明の一実施形態における、コンピュータ装置の例を示したブロック図である。上述した複数の電子機器110、120、130、140それぞれやサーバ150、160それぞれは、図2に示したコンピュータ装置200によって実現されてよい。
【0034】
このようなコンピュータ装置200は、図2に示すように、メモリ210、プロセッサ220、通信インタフェース230、および入力/出力インタフェース240を含んでよい。メモリ210は、コンピュータ読み取り可能な記録媒体であって、RAM(Random Access Memory)、ROM(Read Only Memory)、およびディスクドライブのような永続的大容量記録装置を含んでよい。ここで、ROMやディスクドライブのような永続的大容量記録装置は、メモリ210とは区別される別の永続的記録装置としてコンピュータ装置200に含まれてもよい。また、メモリ210には、オペレーティングシステムと、少なくとも1つのプログラムコードが記録されてよい。このようなソフトウェアコンポーネントは、メモリ210とは別のコンピュータ読み取り可能な記録媒体からメモリ210にロードされてよい。このような別のコンピュータ読み取り可能な記録媒体は、フロッピードライブ、ディスク、テープ、DVD/CD-ROMドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェアコンポーネントは、コンピュータ読み取り可能な記録媒体ではない通信インタフェース230を通じてメモリ210にロードされてもよい。例えば、ソフトウェアコンポーネントは、ネットワーク170を介して受信されるファイルによってインストールされるコンピュータプログラムに基づいてコンピュータ装置200のメモリ210にロードされてよい。
【0035】
プロセッサ220は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ210または通信インタフェース230によって、プロセッサ220に提供されてよい。例えば、プロセッサ220は、メモリ210のような記録装置に記録されたプログラムコードにしたがって受信される命令を実行するように構成されてよい。
【0036】
通信インタフェース230は、ネットワーク170を介してコンピュータ装置200が他の装置(一例として、上述した記録装置)と互いに通信するための機能を提供してよい。一例として、コンピュータ装置200のプロセッサ220がメモリ210のような記録装置に記録されたプログラムコードにしたがって生成した要求や命令、データ、ファイルなどが、通信インタフェース230の制御にしたがってネットワーク170を介して他の装置に伝達されてよい。これとは逆に、他の装置からの信号や命令、データ、ファイルなどが、ネットワーク170を経てコンピュータ装置200の通信インタフェース230を通じてコンピュータ装置200に受信されてよい。通信インタフェース230を通じて受信された信号や命令、データなどは、プロセッサ220やメモリ210に伝達されてよく、ファイルなどは、コンピュータ装置200がさらに含むことのできる記録媒体(上述した永続的記録装置)に記録されてよい。
【0037】
入力/出力インタフェース240は、入力/出力装置250とのインタフェースのための手段であってよい。例えば、入力装置は、マイク、キーボード、またはマウスなどの装置を、出力装置は、ディスプレイ、スピーカのような装置を含んでよい。他の例として、入力/出力インタフェース240は、タッチスクリーンのように入力と出力のための機能が1つに統合された装置とのインタフェースのための手段であってもよい。入力/出力装置250は、コンピュータ装置200と1つの装置で構成されてもよい。
【0038】
また、他の実施形態において、コンピュータ装置200は、図2の構成要素よりも少ないか多くの構成要素を含んでもよい。しかし、大部分の従来技術の構成要素を明確に図に示す必要はない。例えば、コンピュータ装置200は、上述した入力/出力装置250のうちの少なくとも一部を含むように実現されてもよいし、トランシーバ、データベースなどのような他の構成要素をさらに含んでもよい。
【0039】
以下では、チャットルームの特徴とチャットルーム内でのユーザの特徴に基づいてコンテンツを推薦する方法および装置の具体的な実施形態について説明する。
【0040】
本明細書において、ソーシャルプラットフォームは、メッセンジャーや各種コミュニティなどのソーシャルネットワークサービスはもちろん、ソーシャルネットワークサービス内のユーザのプロフィール情報、友達関係などのリソースを活用する各種サービスを提供するサービスプラットフォームを意味するものとする。
【0041】
以下では、ソーシャルプラットフォームの具体的な実施形態としてメッセンジャーを例に挙げて説明するが、これに限定されてはならず、ユーザのアカウントや電話番号などを利用して多様なコンテンツを共有することができるコミュニケーションプラットフォームであれば、すべて適用可能である。
【0042】
近年、メッセンジャーでは、チャットルーム内の会話を分析して多様な機能を提供しているが、例えば、自然言語処理技術を利用して、コンテンツ推薦、会話要約、感情推論などのような多様なサービスを提供している。
【0043】
ユーザは複数のチャットルームで多様な人たちと会話をかわすようになるが、チャットルームの雰囲気はそれぞれ異なる。例えば、同一人物が、家族のチャットルーム、高校同期のチャットルーム、会社のチャットルームなど、各チャットルームのニーズに合わせてそれぞれ違った姿を見せるようになる。
【0044】
本実施形態では、メッセンジャーのチャットルームにおいて、チャットルーム内のユーザを対象に、絵文字やスタンプ(ユーザの感情や意思を表現するために利用可能なすべての画像型表現手段を含む)、リアクションアイコン、返信メッセージなどのコンテンツを推薦するときに、チャットルームの特徴とこのチャットルーム内でのユーザの特徴に合わせてコンテンツを推薦することができる。
【0045】
実施形態に係るコンピュータ装置200は、クライアント(client)を対象に、クライアント上にインストールされた専用アプリケーションやコンピュータ装置200と関連するウェブ/モバイルサイトへの接続によってメッセンジャーサービスを提供してよい。コンピュータ装置200には、コンピュータで実現されたコンテンツ推薦システムが構成されてよい。一例として、コンテンツ推薦システムは、独立的に動作するプログラム形態で実現されてもよいし、特定のアプリケーションのイン-アプリ(in-app)形態で構成されて前記特定のアプリケーション上で動作が可能となるように実現されてもよい。
【0046】
コンピュータ装置200のプロセッサ220は、以下のコンテンツ推薦方法を実行するための構成要素で実現されてよい。実施形態によって、プロセッサ220の構成要素は、選択的にプロセッサ220に含まれても除外されてもよい。また、実施形態によって、プロセッサ220の構成要素は、プロセッサ220の機能の表現のために分離されても併合されてもよい。
【0047】
このようなプロセッサ220およびプロセッサ220の構成要素は、以下のコンテンツ推薦方法に含まれるステップを実行するようにコンピュータ装置200を制御してよい。例えば、プロセッサ220およびプロセッサ220の構成要素は、メモリ210が含むオペレーティングシステムのコードと、少なくとも1つのプログラムのコードとによる命令(instruction)を実行するように実現されてよい。
【0048】
ここで、プロセッサ220の構成要素は、コンピュータ装置200に記録されたプログラムコードが提供する命令にしたがってプロセッサ220によって実行される、互いに異なる機能(different functions)の表現であってよい。
【0049】
プロセッサ220は、コンピュータ装置200の制御に関する命令がロードされたメモリ210から必要な命令を読み取ってよい。この場合、前記読み取られた命令は、プロセッサ220が以下で説明するステップを実行するように制御するための命令を含んでよい。
【0050】
以下で説明するメッセージ移動方法に含まれるステップは、図に示したものとは異なる順序で実行されてもよいし、ステップのうちの一部が省略されたり追加のプロセスがさらに含まれたりしてもよい。
【0051】
コンテンツ推薦方法に含まれるステップは、サーバ150で実行されてよいが、実施形態によっては、ステップのうちの少なくとも一部がクライアントで実行されることも可能である。
【0052】
図3は、本発明の一実施形態における、コンピュータ装置が実行することができる方法の一例を示したフローチャートである。
【0053】
図3を参照すると、ステップ310で、プロセッサ220は、チャットルームごとに、チャットルームに含まれる会話内容を利用して、このチャットルームを表現する埋め込みベクトル(embedding)であるチャットルーム特徴ベクトル(feature vector)を生成してよい。プロセッサ220は、チャットルームごとに、チャットルーム内の全体の会話内容あるいは予め定められた一定期間(例えば、ここ最近6ヶ月間)の会話内容を分析して、このチャットルームの会話スタイルや雰囲気などを代表する特徴ベクトルを生成してよい。チャットルーム特徴ベクトルを生成するためには、チャットルームに会話の参加者として参加中の全てのユーザがやり取りした会話内容を活用してよい。このとき、プロセッサ220は、文書分類のための埋め込みモデル(embedding model)、シーケンスモデル(sequence model)、言語モデル(language model)などのような公知の機械学習(machine learning)モデルを利用して、会話内容からチャットルームを表現する特徴ベクトルを抽出してよい。
【0054】
ステップ320で、プロセッサ220は、各チャットルームに対して、チャットルームに会話の参加者として参加中のユーザごとに、ユーザがやり取りした会話内容を利用して、このユーザを表現する埋め込みベクトルであるユーザ特徴ベクトルを生成してよい。プロセッサ220は、チャットルームに含まれる会話内容のうちでユーザの会話内容を分析して、このチャットルーム内でのユーザの会話スタイルや雰囲気などを代表する特徴ベクトルを生成してよい。ユーザ特徴ベクトルを生成するためには、チャットルーム内でのユーザの全体の会話内容あるいは予め定められた一定期間(例えば、ここ最近6ヶ月間)の会話内容を活用してよい。チャットルーム特徴ベクトルと同様に、文書埋め込みモデル、シーケンスモデル、言語モデルなどの機械学習モデルを利用して、チャットルーム内でのユーザの会話内容からこのチャットルーム内のユーザを表現する特徴ベクトルを抽出してよい。ユーザは1つ以上のチャットルームに参加可能であり、参加中のチャットルームごとにユーザの会話内容は異なるため、チャットルームごとに異なるユーザ特徴ベクトルを有するようになる。プロセッサ220は、ユーザに対して、チャットルームごとにユーザ特徴ベクトルを生成し、チャットルームと関連付けてユーザ特徴ベクトルを管理してよい。
【0055】
ステップ330で、プロセッサ220は、ターゲットチャットルームでターゲットユーザによって与えられた会話文に対して推薦コンテンツを提供するにあたり、ターゲットチャットルームに該当するチャットルーム特徴ベクトル(すなわち、ターゲットチャットルーム特徴ベクトル)とターゲットチャットルームでのターゲットユーザに該当するユーザ特徴ベクトル(すなわち、ターゲットユーザ特徴ベクトル)に基づいて会話文に対応する推薦コンテンツを提供してよい。機械学習モデルベースの推薦エンジンは、ターゲットチャットルーム内でターゲットユーザによって特定のメッセージが与えられた場合、これを入力として、このメッセージに適合するコンテンツを推薦することができる。特に、プロセッサ220は、ユーザによって特定されたメッセージとともに、ターゲットチャットルーム特徴ベクトルとターゲットユーザ特徴ベクトルを推薦エンジンに追加入力して、ターゲットチャットルームの特徴とターゲットユーザの特徴に適合したコンテンツを推薦することができる。例えば、プロセッサ220は、ターゲットチャットルーム内でターゲットユーザが選択した他のユーザの会話メッセージに対してリアクションアイコンや返信メッセージなどを推薦することができ、ターゲットチャットルーム内でターゲットユーザが送信のために入力したメッセージに対してスタンプなどを推薦することができる。このとき、プロセッサ220は、ターゲットチャットルーム内でターゲットユーザが特定した会話文に対して、ターゲットチャットルームの全体的な特徴とターゲットチャットルームでのターゲットユーザの特徴に適合したコンテンツを推薦することができる。
【0056】
図4は、本発明の一実施形態における、会話内容を前処理するプロセスの一例を示した図である。
【0057】
本実施形態では、チャットルーム特徴ベクトルとユーザ特徴ベクトルを生成するためにチャットルーム内の会話内容を活用するにあたり、会話内容を機械学習モデルの入力形態、すなわち、自然言語処理が可能な形態に前処理するプロセスが必要となる。
【0058】
図4を参照すると、ステップ401で、プロセッサ220は、会話メッセージのうちで非テキスト(non-text)形態の会話メッセージをテキストに変換してよい。例えば、メッセンジャーのチャットルームには、テキスト形態でやり取りする会話メッセージの他に、スタンプ、写真、動画、音声などのような非テキストタイプの会話メッセージが存在する。このとき、スタンプの場合は、事前に定義されたタグ(tag)情報を活用して、チャットルームでやり取りしたスタンプをこのスタンプのタグ情報に変換してよい。写真の場合は、画像分析ベースの画像分類技術(image classification)を利用して、この写真に対応するテキストを取得してよい。動画の場合は、画像分析ベースの画像分類技術または映像要約技術(video summarization)を利用して、この動画に対応するテキストを取得してよい。音声の場合は、音声認識技術(speech to text)を利用して、この音声に対応するテキストを取得してよい。
【0059】
ステップ402で、プロセッサ220は、会話メッセージに、この会話の主体を示す話者識別情報を追加で表記してよい。話者識別情報としては、話者名(例えば、話者が設定した自身のプロフィール名、ユーザが話者に対して設定したニックネームなど)、メッセンジャーID、電話番号などが活用されてよい。例えば、メッセンジャーIDが12584である話者「キム部長」が送信した会話メッセージ「みなさん出勤しましたか?」に対して、話者名を追加する場合は<[nickname:キム部長]みなさん出勤しましたか?>のように処理し、IDを追加する場合は<[ID:12584]みなさん出勤しましたか?>のように処理してよい。話者名を追加する場合は、話者名から起因される追加的な意味を特徴ベクトルに追加で反映してよい。一方、話者情報として固有のIDや電話番号を追加する場合は、同一人物の特徴を持続的にトラッキングして反映してよい。
【0060】
ステップ403で、プロセッサ220は、特徴ベクトルの生成のために活用される会話内容に含まれる各会話メッセージを単位文章として区別して連結してよい。会話内容を機械学習モデルの入力として使用するためには、会話メッセージを時間順に連結する必要がある。例えば、プロセッサ220は、各会話メッセージに単位文章を意味する特殊トークン(例えば、[sep]など)または文章符号(例えば、ピリオド(.)など)を付けた後、会話メッセージを時間順に連結してよい。言い換えれば、プロセッサ220は、事前に定義された文章トークンや文章符号を利用して、1つの吹き出しの会話メッセージを1つの文章として区別して連結してよい。さらに、プロセッサ220は、会話メッセージを連結するときに、段落を区別することも可能である。例えば、プロセッサ220は、会話メッセージ間の時間間隔が一定時間以上となる場合、前のメッセージグループと次のメッセージグループを互いに異なる段落として区別して連結してよい。他の例として、プロセッサ220は、内容分析によって会話のトピックを把握し、会話のトピックが変わったときに、前のメッセージグループと次のメッセージグループを異なる段落として区別して連結してよい。同じように、会話メッセージを連結するときには、段落を区別するためのトークンや符号を付けて段落を区別してよい。
【0061】
プロセッサ220は、多様な機械学習モデルを利用して、上述したプロセス401~403で前処理された会話内容から特徴ベクトル(チャットルーム特徴ベクトルとユーザ特徴ベクトル)を取得してよい。
【0062】
一方法として、文書埋め込みアルゴリズムを利用して、チャットルーム特徴ベクトルとユーザ特徴ベクトルを計算してよい。
【0063】
一例として、図5を参照すると、プロセッサ220は、チャットルーム特徴ベクトルの生成のために活用される会話全体の各単語をワード埋め込みベクトル(word embedding vector)に置換した後、置換されたすべてのベクトルを集計(aggregation)することによってチャットルーム特徴ベクトルを取得してよい。このとき、ワード埋め込みベクトルの集計は、ベクトル空間での合計(sum)、平均値(avg)、最大値(max)、最小値(min)、中央値(median)などの関数を利用してよい。
【0064】
他の例として、図6を参照すると、プロセッサ220は、チャットルーム特徴ベクトルの生成のために活用される会話全体の各単語をワード埋め込みベクトルに置換した後、トピックモデリングを利用して、事前に定義されたトピックベクトル(topic vector)と加重(weight)に基づいて、各ワード埋め込みベクトルに対応するトピックベクトルの加重合計(weighted sum)形態でチャットルーム特徴ベクトルを生成してよい。このとき、LSA(Latent Semantic Analysis)のようなトピックモデリングアルゴリズムを利用して文書分類のためのトピックを定義してよく、行列(matrix)演算によって、文書表現を単なる単語のベクトルではなく単語の潜在的な意味に基づいて文書を示すアイゲンベクトル(eigen vector)を作成してトピックベクトルとして活用してよい。
【0065】
また他の例として、図7を参照すると、プロセッサ220は、チャットルーム特徴ベクトルの生成のために活用される会話全体に対して、先ずは単語のクラスタリングを実行した後、各クラスタの中心単語を単語埋め込みベクトルに置換し、この単語の単語トピックベクトル(word topic vector)を集計することによってチャットルーム特徴ベクトルを取得してよい。このとき、プロセッサ220は、SCDV(Sparse Composite Document Vectors)法を活用して、チャットルーム内の会話内容からチャットルーム特徴ベクトルを計算してよい。すなわち、プロセッサ220は、会話全体の各単語をベクトルとして生成してSCDVによって単語ベクトルをクラスタリングした後、クラスタ中心点を算出し、これを累積(accumulate)することによって、この結果をチャットルーム特徴ベクトルとして活用してよい。SCDV法の核心アイディアは、文書を部分的にクラスタリングすることにある。一般的な文書埋め込み方法は、単語をベクトルに変換した後、文書のすべての単語ベクトルを平均または合計して文書ベクトルを生成するのに対し、SCDVは、文書を単語のクラスタに分割した後、各クラスタの中心点を計算して文書ベクトルを生成する。これにより、SCDV法は、文書内の単語の重要度を反映することができる。
【0066】
文書埋め込みアルゴリズムを利用してユーザ特徴ベクトルを生成するプロセスも、チャットルームの特徴ベクトルを生成する、上述したプロセスと同じである。
【0067】
他の方法として、シーケンスモデルを利用して、チャットルーム特徴ベクトルとユーザ特徴ベクトルを生成してもよい。
【0068】
一例として、図8を参照すると、プロセッサ220は、シーケンスモデルの1つであるLSTM(Long Short-Term Memory)モデルに、チャットルーム特徴ベクトルの生成のために活用される会話全体を貼り付けて入力して1つのベクトルであるLSTM表現(LSTM representation)を生成して、チャットルーム特徴ベクトルとして活用してよい。
【0069】
他の例として、図9を参照すると、プロセッサ220は、チャットルーム特徴ベクトルの生成のために活用される会話全体を対象に、LSTMに単位文に該当する各会話メッセージを入力して文章ベクトル(sentence vector)を求めてから文章ベクトルを再びLSTMに入力して、1つのベクトルとして最終的なチャットルーム特徴ベクトルを求めてよい。
【0070】
シーケンスモデルを利用してユーザ特徴ベクトルを生成するプロセスも、チャットルーム特徴ベクトルを生成する、上述したプロセスと同じである。
【0071】
また他の方法として、言語モデルを利用して、チャットルーム特徴ベクトルとユーザ特徴ベクトルを生成してもよい。
【0072】
一例として、図10を参照すると、プロセッサ220は、チャットルーム特徴ベクトルの生成のために活用される会話全体を大規模言語モデル(large language model)の1つであるBERT(Bidirectional Encoder Representations from Transformers)に入力して取得したベクトルを集計して、チャットルーム特徴ベクトルを求めてよい。プロセッサ220は、単位文章に該当する各会話メッセージを、[SEP]トークンに続いてBERTモデルに入力してよい。この後、プロセッサ220は、BERTの分類表現であるCLS出力を集計する方式でチャットルーム特徴ベクトルを求めてよい。実施形態によっては、BERTのCLS出力をLSTMの入力として再入力してLSTMによって1つのベクトルとして生成して、これをチャットルーム特徴ベクトルとして活用することも可能である。
【0073】
言語モデルを利用してユーザ特徴ベクトルを生成するプロセスも、チャットルーム特徴ベクトルを生成する、上述したプロセスと同じである。
【0074】
チャットルーム特徴ベクトルとユーザ特徴ベクトルは、上述した方法の他にも、文書表現のための多様な自然言語処理技術を利用して生成することが可能である。
【0075】
図11は、本発明の一実施形態における、チャットルーム特徴ベクトルとユーザ特徴ベクトルを利用して推薦コンテンツを提供するプロセスの一例を示した図である。
【0076】
図11を参照すると、プロセッサ220は、ターゲットチャットルームでターゲットユーザが他のユーザの会話メッセージを選択するか、ターゲットユーザが送信のために会話メッセージを入力する場合、この会話メッセージをターゲットユーザによって与えられた会話文1101として認識する。この後、プロセッサ220は、ターゲットチャットルームに対する特徴ベクトルであるターゲットチャットルーム特徴ベクトルとターゲットチャットルームでのターゲットユーザに対する特徴ベクトルであるターゲットユーザ特徴ベクトルからなる特徴ベクトル1102を、会話文1101とともに機械学習モデル(例えば、BERTなど)ベースの推薦エンジン1100に入力してよい。言い換えれば、推薦エンジン1100の入力パラメータは、ターゲットユーザによって与えられた会話文1101、特徴ベクトル1102であるターゲットチャットルーム特徴ベクトル、およびターゲットチャットルーム内でのターゲットユーザ特徴ベクトルとなる。プロセッサ220は、推薦エンジン1100を利用して、会話文1101に対する推薦コンテンツとして、特徴ベクトル1102に基づいた絵文字やスタンプ、リアクションアイコン、返信メッセージなどのコンテンツを提供してよい。
【0077】
図12図15は、本発明の一実施形態における、推薦コンテンツの例を示した図である。図12図14は、ユーザIの電子機器にインストールされたメッセンジャーのチャットルームA画面1200であると仮定する。
【0078】
一例として、プロセッサ220は、チャットルームでメッセージを作成する人物の、このチャットルーム内での普段の会話スタイルを推論し、これに適合する絵文字やスタンプを推薦してよい。
【0079】
図12を参照すると、プロセッサ220は、チャットルームA画面1200のメッセージ入力ウィンドウ1210にユーザIが送信しようとする会話文1201を入力した場合、会話文1201に対する推薦コンテンツの1つとしてスタンプ1220を提供してよい。このとき、スタンプ1220は、チャットルームAの特徴を示した特徴ベクトルと、チャットルームAでのユーザIの特徴を示した特徴ベクトルに基づいて選定されてよい。同じ会話文1201に対して、チャットルームやユーザごとに推薦コンテンツが異なるようにしてよい。すなわち、ユーザIが同じ会話文1201をチャットルームAで入力するときの推薦スタンプとチャットルームBで入力するときの推薦スタンプは異なってよい。例えば、ユーザIに、チャットルームAでは「ご飯行こう」というテキストが含まれたスタンプが推薦されるが、チャットルームBでは「ご飯!」というテキストが含まれたスタンプが推薦されてよい。また、同じ会話文1201を、チャットルームAに参加中のユーザのうちでユーザIが入力するときの推薦スタンプとユーザIIが入力するときの推薦スタンプが異なるようにしてよい。実施形態によっては、感情推論を利用して、ユーザIが作成した会話文1201に対して、ユーザIの感情推論に基づいてユーザIがどのような感情であるかを示すスタンプを推薦してよい。
【0080】
図に示してはいないが、他の実施形態によると、プロセッサ220は、チャットルームA画面1200のメッセージ入力ウィンドウ1210にユーザIが送信しようとする会話文1201を入力した場合、会話文1201に対する推薦コンテンツのうちでスタンプに含まれる変更可能なテキスト領域に推薦テキストを挿入してスタンプを提供してよい。例えば、ユーザIに、食事をしている同じ画像のスタンプを推薦するときに、チャットルームAでは「ご飯行こう」というテキストを挿入したスタンプを、チャットルームBでは「ご飯!」というテキストを挿入したスタンプを推薦してよい。
【0081】
他の例として、プロセッサ220は、チャットルームでメッセージを読む人物の、このチャットルーム内での普段の会話スタイルを推論し、これに適合するリアクションアイコンや返信メッセージなどを推薦してよい。
【0082】
図13を参照すると、プロセッサ220は、チャットルームA画面1200の会話文のうちからユーザIが選択した会話文1301に対して、リアクションアイコン1330を推薦してよい。このとき、プロセッサ220は、チャットルームAの特徴を示した特徴ベクトルとチャットルームAでのユーザIの特徴を示した特徴ベクトルに基づいてリアクションアイコン1330を選定して提供してよい。チャットルームAに参加中のユーザのうちで会話文1301を選択したユーザが誰であるかによって推薦コンテンツが異なってよい。チャットルームAで会話文1301をユーザIが選択したときの推薦リアクションアイコンとユーザIIが選択したときの推薦リアクションアイコンは異なってよい。
【0083】
図14を参照すると、プロセッサ220は、チャットルームA画面1200の会話文のうちからユーザIが1つの会話文1301を選択すると、メッセージ活用機能で構成されたメニューリスト(図13の1340)を提供するようになるが、このとき、メニューリストから返信機能が選択された場合、会話文1301に対する返信メッセージ1450を推薦してよい。メッセンジャーは、メッセージ活用機能として、メッセージの内容をコピーするコピー機能、メッセージをブックマークに追加するブックマーク機能、メッセージに対する返信のための返信機能、メッセージを他のユーザと共有するための共有機能、メッセージをチャットルームのお知らせに登録するためのお知らせ機能、メッセージをキャプチャするためのキャプチャ機能、メッセージを削除するための削除機能などを提供してよい。このとき、プロセッサ220は、チャットルームAの特徴を示した特徴ベクトルとチャットルームAでのユーザIの特徴を示した特徴ベクトルに基づいて、チャットルームAとチャットルームAでのユーザIに適合する返信メッセージ1450を推薦してよい。チャットルームAに参加中のユーザのうちで会話文1301を選択したユーザが誰であるかによって推薦コンテンツが異なってよい。チャットルームAで会話文1301をユーザIが選択したときの推薦返信メッセージとユーザIIが選択したときの推薦返信メッセージは異なってよい。
【0084】
また他の例では、メッセージを読む人物とこのメッセージを送った人物の普段の会話スタイルをともに考慮して推薦コンテンツを提供することも可能である。メッセンジャーサーバは、チャットルームAに参加中のユーザIとユーザIIの特徴ベクトルの両方を有している。ユーザIIが送ったメッセージに対してユーザIが返信しようとするときに、ユーザIの特徴だけでなく、ユーザIIの特徴も併せて考慮してコンテンツを推薦してよい。
【0085】
図15を参照すると、プロセッサ220は、チャットルームA画面1200の会話文のうちからユーザIIが送信した会話文1301に対してユーザIが返信機能を選択した場合、チャットルームAの特徴を示した特徴ベクトルとチャットルームAでのユーザIの特徴を示した特徴ベクトルを利用して返信メッセージ1450を推薦するようになるが、このとき、返信メッセージ1450に対するユーザIIの反応を予測して、予想反応情報1560をともに提供してよい。例えば、返信メッセージ1450の特徴ベクトルとチャットルームAでのユーザIIの特徴ベクトルの類似度に基づいて肯定反応と否定反応を把握することによって、予想反応情報1560を提供してよい。実施形態によっては、会話文1301に対してユーザIに推薦する返信メッセージ1450が複数ある場合、ユーザIIの肯定反応が高い順に少なくとも一部だけを推薦してもよい。
【0086】
他の例において、チャットルームA画面1200の会話文に対して、チャットルームAの特徴ベクトルとチャットルームAでのユーザIの特徴ベクトルを利用して絵文字やスタンプ、リアクションアイコン、返信メッセージなどのコンテンツを推薦するにあたり、他のチャットルーム特徴ベクトルを利用して推薦コンテンツを選定してよい。例えば、コサイン類似度(cosine similarity)などによって各チャットルーム特徴ベクトルを比較して、チャットルームAと類似するチャットルームで頻繁に使用されたり多く推薦されるコンテンツのうちでチャットルームAに適合するコンテンツをチャットルームAで推薦することも可能である。チャットルームAと類似するチャットルームBで多く使用されるコンテンツのうちから、チャットルームAで推薦するコンテンツを選定してよい。
【0087】
このように、本発明の実施形態によると、メッセンジャー内でコンテンツを推薦するにあたり、チャットルームの特徴とこのチャットルーム内でのユーザの特徴を利用することによって、ユーザに適したコンテンツを推薦することができる。
【0088】
上述した装置は、ハードウェアコンポーネント、ソフトウェアコンポーネント、および/またはハードウェアコンポーネントとソフトウェアコンポーネントとの組み合わせによって実現されてよい。例えば、実施形態で説明された装置およびコンポーネントは、プロセッサ、コントローラ、ALU(Arithmetic Logic Unit)、デジタル信号プロセッサ、マイクロコンピュータ、FPGA(Field Programmable Gate Array)、PLU(Programmable Logic Unit)、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、1つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム(OS)およびOS上で実行される1つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを記録、操作、処理、および生成してもよい。理解の便宜のために、1つの処理装置が使用されるとして説明される場合もあるが、当業者であれば、処理装置が複数個の処理要素および/または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは1つのプロセッサおよび1つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【0089】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの1つ以上の組み合わせを含んでもよく、所望の動作をするように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび/またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、コンピュータ記録媒体または装置に実装されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で記録されても実行されてもよい。ソフトウェアおよびデータは、1つ以上のコンピュータ読み取り可能な記録媒体に記録されてよい。
【0090】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。このとき、媒体は、コンピュータで実行可能なプログラムを継続して記録するものであっても、実行またはダウンロードのために一時的に記録するものであってもよい。また、媒体は、単一または複数のハードウェアが結合した形態の多様な記録手段または格納手段であってよく、あるコンピュータシステムに直接接続する媒体はもちろん、ネットワーク上に分散して存在するものであってもよい。媒体の例としては、ハードディスク、フロッピーディスク、および磁気テープのような磁気媒体、CD-ROM、DVDのような光媒体、フロプティカルディスク(floptical disk)のような光磁気媒体、およびROM、RAM、フラッシュメモリなどのようなプログラム命令が記録されるように構成されたものであってよい。また、他の媒体の例として、アプリケーションを流通するアプリストアや、その他の多様なソフトウェアを供給したり流通したりするサイト、サーバなどで管理する記録媒体や格納媒体も含まれる。
【0091】
以上のように、実施形態を、限定された実施形態および図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ/あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【0092】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付の特許請求の範囲に属する。
【符号の説明】
【0093】
110、120、130、140:電子機器
150、160:サーバ
170:ネットワーク
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
【外国語明細書】