JP6447680B2 - Information processing apparatus, information processing method, and program - Google Patents
Information processing apparatus, information processing method, and program Download PDFInfo
- Publication number
- JP6447680B2 JP6447680B2 JP2017154336A JP2017154336A JP6447680B2 JP 6447680 B2 JP6447680 B2 JP 6447680B2 JP 2017154336 A JP2017154336 A JP 2017154336A JP 2017154336 A JP2017154336 A JP 2017154336A JP 6447680 B2 JP6447680 B2 JP 6447680B2
- Authority
- JP
- Japan
- Prior art keywords
- category
- poster
- information processing
- processing apparatus
- rule
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
本発明は、文章を投稿した投稿者を分類する技術に関する。 The present invention relates to a technique for classifying a contributor who has posted a sentence.
近年、ソーシャルメディアの発達に伴い、大衆からの情報発信が増大している。代表的なソーシャルメディアとして、マイクロブログと呼ばれる、短文でかつ匿名性が高いという特徴を持つものがある。これらの特性からマイクロブログのユーザは、よりリアルタイムに本音を発言しやすいと考えられるため、マイクロブログへの投稿内容は、マーケティングや風評把握等に活用されている。 In recent years, with the development of social media, information transmission from the public has been increasing. A typical social media is called microblogging, which has a short text and high anonymity. Because of these characteristics, it is considered that microblog users are more likely to speak their real intentions in real time, so the content posted on microblogs is used for marketing and reputation assessment.
マイクロブログを分析しマーケティングなどに活用する場合、分析精度を高めることが重要となる。そのためには、発言内容や投稿者の立場の違いなどにより分類した上で分析をすることが必要になる。 When analyzing microblogs and utilizing them for marketing, etc., it is important to improve the accuracy of analysis. For that purpose, it is necessary to analyze after classifying according to the content of the remarks and the position of the contributor.
例えば、ある製品に関するマイクロブログ上での発言を分析したい場合、一つ一つの発言がメディアからによる広告目的の発信なのか、その製品のユーザからによる使用感の共有目的の発信なのかを分類した上で分析する必要がある。 For example, if you want to analyze microblogging comments about a product, categorize whether each comment is for advertising purposes from the media or for sharing the feeling of use by users of the product. It is necessary to analyze above.
分類の例として、特許文献1には投稿者の特性に基づき、投稿者を分類するシステムが開示されている。
As an example of classification,
上述の通り、投稿者を分類する精度を高める必要があるが、投稿者は不特定多数存在し、投稿者を正確に分類することは容易ではない。特許文献1により開示された技術では、投稿者の分類のために投稿者の特性のみを使用しており、投稿文の内容までは考慮していないため、分類の精度を高めるには不十分である。
As described above, it is necessary to improve the accuracy of classifying posters, but there are many unspecified posters, and it is not easy to classify posters accurately. The technique disclosed in
また、特許文献1は特定のカテゴリに分けられるルールを事前に設定しているが、このルールは固定であり、ユーザが持っている有用な知識や知見を設定する事はできない。
Moreover, although
そこで、本発明は上記の課題を解決するためになされたものであり、マイクロブログ等に記事を投稿した投稿者を適切に分類することが可能な仕組みを提供することを目的とする。 Accordingly, the present invention has been made to solve the above-described problems, and an object of the present invention is to provide a mechanism capable of appropriately classifying a poster who has posted an article on a microblog or the like.
本発明は、ユーザの指示により各カテゴリに分類された投稿者による投稿内容に基づき、辞書データを作成する辞書データ作成手段と、投稿者を分類するためのルールの設定を受け付けるルール設定手段と、前記辞書データ作成手段により作成された辞書データと、分類済みの投稿者数の総和に対する各カテゴリに分類された投稿者の比率と、前記ルール設定手段により設定されたルールとに基づき、未分類の投稿者を各カテゴリに分類する分類手段と、を備えることを特徴とする情報処理装置である。 The present invention includes dictionary data creation means for creating dictionary data based on the content posted by a poster classified into each category according to a user instruction, rule setting means for accepting setting of a rule for classifying a poster, Based on the dictionary data created by the dictionary data creation means, the ratio of the posters classified into each category with respect to the sum of the number of classified posters, and the rules set by the rule setting means, unclassified An information processing apparatus comprising classification means for classifying a poster into each category.
また、本発明は、情報処理装置の辞書データ作成手段が、ユーザの指示により各カテゴリに分類された投稿者による投稿内容に基づき、辞書データを作成する辞書データ作成工程と、前記情報処理装置のルール設定手段が、投稿者を分類するためのルールの設定を受け付けるルール設定工程と、前記情報処理装置の分類手段が、前記辞書データ作成工程により作成された辞書データと、分類済みの投稿者数の総和に対する各カテゴリに分類された投稿者の比率と、前記ルール設定工程により設定されたルールとに基づき、未分類の投稿者を各カテゴリに分類する分類工程と、を備えることを特徴とする情報処理方法である。 Further, the present invention provides a dictionary data creation step in which dictionary data creation means of an information processing device creates dictionary data based on the content posted by a poster classified into each category according to a user's instruction; A rule setting step in which the rule setting means accepts the setting of a rule for classifying a poster; the dictionary means created by the dictionary data creation step in the classification means of the information processing device; and the number of classified posters A classification step of classifying uncategorized contributors into each category based on the ratio of the posters classified into each category with respect to the sum of the total and the rules set in the rule setting step Information processing method.
また、本発明は、情報処理装置において実行されるプログラムであって、前記情報処理装置を、ユーザの指示により各カテゴリに分類された投稿者による投稿内容に基づき、辞書データを作成する辞書データ作成手段と、投稿者を分類するためのルールの設定を受け付けるルール設定手段と、前記辞書データ作成手段により作成された辞書データと、分類済みの投稿者数の総和に対する各カテゴリに分類された投稿者の比率と、前記ルール設定手段により設定されたルールとに基づき、未分類の投稿者を各カテゴリに分類する分類手段として機能させることを特徴とする。 In addition, the present invention is a program executed in an information processing device, the dictionary data creation for creating the dictionary data based on the content posted by a contributor classified into each category according to a user instruction Means, rule setting means for accepting setting of a rule for classifying a poster, dictionary data created by the dictionary data creating means, and a poster classified into each category with respect to the total number of classified posters Based on the ratio and the rule set by the rule setting means, it is made to function as a classification means for classifying unclassified contributors into each category.
本発明によれば、マイクロブログ等に投稿した投稿者を高い精度で分類することが可能な仕組みを提供することが可能となる。 ADVANTAGE OF THE INVENTION According to this invention, it becomes possible to provide the structure which can classify the poster who contributed to the microblog etc. with high precision.
図1は、本発明の実施形態における投稿者分類システムの構成を示す図である。投稿者分類システムは、ユーザルール設定部、教師データ登録部、辞書作成部、ルール重み設定部、投稿文分解部、カテゴリ分類確率計算部、判定部を備えている。 FIG. 1 is a diagram showing a configuration of a contributor classification system according to an embodiment of the present invention. The poster classification system includes a user rule setting unit, a teacher data registration unit, a dictionary creation unit, a rule weight setting unit, a posted sentence decomposition unit, a category classification probability calculation unit, and a determination unit.
また、ルール登録データテーブル、カテゴリマスタテーブル、投稿者データテーブル、投稿文データテーブル、辞書テーブルを備えている。 Further, a rule registration data table, a category master table, a contributor data table, a posted sentence data table, and a dictionary table are provided.
ユーザルール設定部は、ユーザにより設定されたルールを登録する機能を備える。ユーザは、図2に一例を示すルール設定画面を介して、ルールの設定をする。 The user rule setting unit has a function of registering a rule set by the user. The user sets a rule via the rule setting screen shown as an example in FIG.
図2は、ルール設定画面の一例を示した図である。本実施例では、投稿者を3つのカテゴリ(「BOT」、「ニュース」、「一般ユーザ」)に分類する場合について説明する。ここで「BOT」とは、特定のサイトに誘導することを目的とし、自動的に投稿するようにプログラムされたものを指す。また、「ニュース」とは、ニュースサイトなどのメディアを指す。また、「一般ユーザ」とは、BOTやニュース以外の投稿者を指す。本実施例では、投稿者をこれら3つのカテゴリに分類する場合について説明する。そのため、図9に示すカテゴリマスタテーブルには、3つのタプルが登録されていることとなる。 FIG. 2 is a diagram illustrating an example of the rule setting screen. In this embodiment, a case will be described in which a poster is classified into three categories (“BOT”, “news”, and “general user”). Here, “BOT” refers to a program programmed to automatically post for the purpose of guiding to a specific site. “News” refers to media such as news sites. The “general user” refers to a contributor other than BOT and news. In this embodiment, a case will be described in which a poster is classified into these three categories. Therefore, three tuples are registered in the category master table shown in FIG.
図2においてユーザからの設定を受け付けるのは、「ルール201」と「設定206」の項目である。
In FIG. 2, items “
ルール201はプルダウンになっており、ユーザからプルダウンで表示されるルールのいずれかの選択を受け付ける。プルダウンに表示されるルールは、図4に示すテーブルに登録されたものである。これらのルールは、不図示のルール登録画面などを介してユーザにより登録されるものである。また、ルールは論理積を用いることも可能であるとする。
The
ここでルールとは、図4に示すように投稿文(投稿内容)とは関係のない情報に関する条件である。例えば自己紹介文や、投稿件数や、リンク者に関する情報などである。このように、投稿内容とは関係のない情報によりルールを作成することで、投稿文以外の情報をカテゴリ分類の指標とすることが可能となる。このように、投稿文以外の情報も用いてカテゴリ分類をすることで、単に投稿内容だけを用いた場合や、投稿者情報だけを用いた場合に比べ、より適切なカテゴリ分類を実現することができる。 Here, the rule is a condition relating to information not related to the posted text (posted content) as shown in FIG. For example, a self-introduction sentence, the number of posts, and information on a link person. In this way, by creating a rule based on information unrelated to the posted content, information other than the posted text can be used as an index for category classification. In this way, categorization using information other than posted text can achieve more appropriate categorization than when using only posted content or using only poster information. it can.
該当数202には、ルール201が選択されると、教師データフラグが1である投稿者のうち、当該選択されたルールに該当する投稿者の数が算出され、表示される。また、BOT203、ニュース204、一般ユーザ205には、教師データフラグが1であり、かつ選択されたルールに該当する投稿者のうち、それぞれのカテゴリに分類された投稿者の数と比率(割合)とが算出され、表示される。
When the
このように、投稿者の数や比率を表示することで、ユーザは、これらの数値を参考にしながらルールを設定することが可能となるため、適切なルールを設定することが可能となる。 Thus, by displaying the number and ratio of contributors, the user can set rules while referring to these numerical values, so that it is possible to set appropriate rules.
また、ここで算出された比率は、「重み」として図8に示すルール登録データテーブルに登録される。例えば、ルール1が図2に示すような比率(90%、10%、0%)を持つ場合、重みとして、各カテゴリにそれぞれ整数値90、10、0が登録される。
Further, the ratio calculated here is registered as a “weight” in the rule registration data table shown in FIG. For example, when
ここで、例えば算出された比率(重み)が30、30、40といった値となった場合、当該ルールは、投稿者をどのカテゴリに分類すべきかを決定するためのルールとしては不適切であると言える。すなわち、このようなルールは、各カテゴリに属する投稿者の特徴を表したルールではないといえるため、このようなルールを用いても適切な分類は出来ない。そこで、このような場合には、適切なルールではない旨をユーザに対して警告する。 Here, for example, when the calculated ratio (weight) is a value such as 30, 30, 40, the rule is inappropriate as a rule for determining which category the poster should be classified into. I can say that. That is, since such a rule is not a rule representing the characteristics of the posters belonging to each category, appropriate classification cannot be performed using such a rule. Therefore, in such a case, the user is warned that the rule is not appropriate.
適切なルールではない旨を警告する画面の一例を図19に示す。 An example of a screen for warning that the rule is not appropriate is shown in FIG.
適切なルールか否かの判断においては、例えば予め比率(重み)が80を超えるカテゴリがあるか否か(ある場合は適切、ない場合は不適切)といった基準を登録しておき、その基準により判定することが可能である。 In determining whether or not the rule is appropriate, for example, a criterion such as whether or not there is a category having a ratio (weight) exceeding 80 (appropriate if there is, or inappropriate if not) is registered in advance. It is possible to determine.
設定206は、ユーザからラジオボタンにより「自動」または「確定」のいずれかの選択を受け付ける。「自動」とは、判定部においてカテゴリ分類確率計算部で計算された確率を用いて判定することを意味する(自動が設定されたルールを、「自動ルール」とする)。また、「確定」は、判定部において当該ルールだけを用いて判定することを意味する(確定が設定されたルールを、「確定ルール」とする)。 The setting 206 accepts a selection of “automatic” or “confirmed” by a radio button from the user. “Automatic” means that the determination unit uses the probability calculated by the category classification probability calculation unit to make a determination (a rule for which automatic is set is referred to as an “automatic rule”). Further, “determined” means that the determination unit makes a determination using only the rule (a rule for which determination is set is referred to as a “determined rule”).
重みが100となるカテゴリが存在しないルールにおいて、「確定」が選択された場合には、誤分類が含まれることになる旨をユーザに警告する。すなわち確定ルールの場合には、当該ルールに該当する投稿者については、必ず図3に示す画面で設定されたカテゴリに分類されることになる。そのため、他のカテゴリに属する確率(可能性)があるにもかかわらず、それを考慮せずに設定されたカテゴリに属すると判断されるため、誤分類の可能性が残る旨の警告を出すことで、ユーザに注意を与えることが必要となる。 In a rule where there is no category with a weight of 100, if “determined” is selected, the user is warned that misclassification will be included. That is, in the case of the final rule, the posters corresponding to the rule are always classified into the categories set on the screen shown in FIG. Therefore, even though there is a probability (possibility) of belonging to another category, it is judged that it belongs to the set category without considering it, so a warning that the possibility of misclassification remains is issued. Therefore, it is necessary to give attention to the user.
「確定」が選択されると、図3に示す確定ルール登録画面が表示され、当該ルールに該当する投稿者をどのカテゴリに所属させるかの設定を受け付ける。図3の例では、ルール3に該当する投稿者は、カテゴリ「一般ユーザ」に属すると決定される。また、ユーザにより設定されたカテゴリが、重みの最も高いカテゴリではない場合に警告を出しても良い。例えば重みが「BOT」10、「ニュース」10、「一般ユーザ」80であるにもかかわらず、図3の画面で「BOT」が選択された場合に警告を出してもよい。このような警告により、ルールの誤設定を防止することが可能となる。誤分類の可能性がある旨の警告画面の一例を図20に示す。
When “Confirm” is selected, a confirmation rule registration screen shown in FIG. 3 is displayed, and a setting as to which category a contributor corresponding to the rule belongs is accepted. In the example of FIG. 3, a poster who falls under
ユーザにより設定されたカテゴリが、重みの最も高いカテゴリではない場合の警告画面の一例を図21に示す。 FIG. 21 shows an example of a warning screen when the category set by the user is not the category with the highest weight.
なお、教師フラグが1の投稿者とは、図11に示すフローチャートの処理により、ユーザによりカテゴリ分類された投稿者である。すなわちユーザの目視による確認によってカテゴリが判定された投稿者である。 A contributor with a teacher flag of 1 is a contributor who has been categorized by the user by the processing of the flowchart shown in FIG. That is, it is the contributor whose category is determined by the user's visual confirmation.
教師データ登録部は、教師データを登録する機能を備える。教師データを登録する際に用いられる画面の一例を図5に示す。 The teacher data registration unit has a function of registering teacher data. An example of a screen used when registering teacher data is shown in FIG.
図5には、投稿者データテーブルから無作為に抽出された投稿者ID(501)と、その投稿者により投稿された投稿文(502)が表示される。ユーザはこの投稿文を確認し、投稿者がいずれのカテゴリに属するかを判断し登録する。 In FIG. 5, a contributor ID (501) randomly extracted from the contributor data table and a posted sentence (502) posted by the contributor are displayed. The user confirms the posted text, determines which category the poster belongs to, and registers.
カテゴリ欄(503)には、カテゴリマスタテーブル(図9)に登録されたカテゴリ名が表示され、ラジオボタンにより選択を受け付ける。 In the category column (503), the category name registered in the category master table (FIG. 9) is displayed, and selection is accepted by a radio button.
また、投稿者IDをクリックすることで、その投稿者の投稿者データテーブルに登録されているデータを表示することが可能である。また、投稿文をクリックすることで、その投稿者の過去の投稿文を新たに収集し表示することが可能である。また、過去の投稿文が取得できない場合には、投稿文データテーブルからその投稿者の他の投稿文を表示する。 In addition, by clicking the poster ID, it is possible to display data registered in the poster data table of the poster. Also, by clicking on the posted text, it is possible to newly collect and display the past posted text of the poster. In addition, when a past posted sentence cannot be acquired, another posted sentence of the poster is displayed from the posted sentence data table.
ユーザにより登録ボタン(504)が押下されることで、投稿者のカテゴリが登録される。登録されると、当該投稿者IDの投稿者データテーブル(図7)の属性「カテゴリID」に選択されたカテゴリIDが登録される。また、属性「教師データフラグ」には「1」が登録され、教師データとして用いられる。 When the user presses the registration button (504), the poster category is registered. When registered, the selected category ID is registered in the attribute “category ID” of the poster data table (FIG. 7) of the poster ID. Also, “1” is registered in the attribute “teacher data flag” and used as teacher data.
一括登録ボタン(505)を押下することで、図5に示す画面に表示された投稿者のカテゴリを一括で登録することも可能である。 By pressing the batch registration button (505), it is possible to register the category of the poster displayed on the screen shown in FIG.
辞書データ作成部は、教師データをもとに辞書テーブル(図10)を作成する機能を備える。辞書データ作成部は、投稿者データテーブル(図7)の属性「教師データフラグ」が「1」である投稿者IDの投稿文を投稿文データテーブル(図6)から取得する。そして、取得した投稿文データを形態素解析し、辞書テーブル(図10)の属性「単語」に形態素解析で得られた単語を登録する。また、属性「単語出現数」に当該単語が当該カテゴリの投稿文に出現する個数を登録する。また、属性「カテゴリID」に当該単語が含まれていた投稿者のカテゴリIDを登録する。また、属性「カテゴリ別投稿者数」にカテゴリ別の投稿者数の合計を登録する。 The dictionary data creation unit has a function of creating a dictionary table (FIG. 10) based on teacher data. The dictionary data creation unit obtains a posted sentence with a poster ID whose attribute “teacher data flag” in the poster data table (FIG. 7) is “1” from the posted text data table (FIG. 6). Then, the acquired posted sentence data is subjected to morphological analysis, and the word obtained by the morphological analysis is registered in the attribute “word” of the dictionary table (FIG. 10). In addition, the number of occurrences of the word in the posted text of the category is registered in the attribute “number of occurrences of word”. Also, the category ID of the poster who included the word in the attribute “category ID” is registered. Also, the total number of posters by category is registered in the attribute “number of posters by category”.
ここで、投稿文にURL(Uniform Resource Locator)が含まれている場合は、そのホスト名を単語として登録する。また、URLが短縮URLである場合には、実際にその短縮URLが示すサイトにアクセスし、実際のURLを取得する。そして、当該取得したURLのホスト名を単語として登録する。 Here, when a URL (Uniform Resource Locator) is included in the posted text, the host name is registered as a word. If the URL is a shortened URL, the user actually accesses the site indicated by the shortened URL and acquires the actual URL. Then, the host name of the acquired URL is registered as a word.
短縮URLとは、実際のURLを、より少ない文字数で表したURLである。各種のサービスが実際のURLを短縮URLに変換するサービスを行っており、実際のURLが同じであっても変換するサービスによって異なる文字列に変換されることがある。そのため、実際にサイトにアクセスして実際のURLを取得する必要がある。すなわち、実際には全く同じ内容(同じサイト)を示しているにもかかわらず、異なる単語として登録されてしまうのを防ぐために、実際のサイトにアクセスして実際のURLを取得する必要がある。 The shortened URL is a URL that represents an actual URL with a smaller number of characters. Various services provide services that convert actual URLs into shortened URLs, and even if the actual URLs are the same, they may be converted into different character strings depending on the services to be converted. Therefore, it is necessary to actually access the site and obtain an actual URL. That is, it is necessary to access an actual site and acquire an actual URL in order to prevent registration as a different word even though the same content (same site) is actually shown.
また、実際のURLのすべての文字列を単語として登録するのではなく、ホスト名を登録するのは、URLが示すコンテンツではなく、URLが示すサイトを登録するためである。 In addition, the host name is registered instead of registering all character strings of actual URLs as words because the site indicated by the URL is registered, not the content indicated by the URL.
すなわち、URLのすべての文字列を登録した場合、それは一過性のもの(各サイトのコンテンツ)を登録することになるが、ホスト名を登録することで、恒常的なもの(サイト)を登録することができる。 That is, when all the character strings of the URL are registered, it will register the temporary one (content of each site), but register the permanent one (site) by registering the host name. can do.
例えば、「ニュース」のカテゴリに分類すべき投稿者は、「ABC新聞の2013年6月1日の記事について投稿した投稿者」ではなく、「ABC新聞の記事について投稿した投稿者」である。このように、一過性のものについて投稿したか否かではなく、恒常的なものについて投稿したか否かで判断することが適切であると言えるため、ホスト名を辞書に登録する。 For example, a contributor who should be classified into the “news” category is not “a contributor who posted an article on June 1, 2013 of an ABC newspaper” but a “poster who posted an article of an ABC newspaper”. As described above, since it can be said that it is appropriate to judge whether or not the posting is made for the permanent one, not the one for the temporary one, the host name is registered in the dictionary.
さらに、URLのすべての文字列を単語として辞書に登録した場合、当該登録された単語は、今後の分類には使われなくなる単語になる可能性が高い。 Further, when all character strings of URLs are registered in the dictionary as words, the registered words are likely to become words that will not be used for future classification.
すなわち、例えば辞書に「商品A」を示すURLを登録した場合、この商品Aが終売してしまうと、今後、商品Aについて投稿する者はいなくなっていく可能性が高いといえる。そのため、辞書に登録したURLは、今後は使われなくなっていくと言える。同様にニュースについても、過去の記事について投稿する者は少なくなっていくと考えられる。 That is, for example, when a URL indicating “product A” is registered in the dictionary, if the product A is sold out, it is highly likely that no one will post about the product A in the future. Therefore, it can be said that the URL registered in the dictionary will no longer be used. Similarly, with regard to news, it seems that fewer people will post about past articles.
以上の観点から、本実施形態では、URLについては、そのホスト名を辞書に登録する。 From the above viewpoint, in the present embodiment, the host name of the URL is registered in the dictionary.
ルール重み計算部は、図8に示すルール登録データテーブルに登録されているルールに当てはまる投稿者を、図7の投稿者データテーブルから抽出し、各カテゴリ別に重みを算出して、投稿者データテーブルに算出した重みを登録する機能を備える。 The rule weight calculation unit extracts a poster who applies to the rule registered in the rule registration data table shown in FIG. 8 from the poster data table in FIG. 7, calculates a weight for each category, and creates a poster data table. The function of registering the calculated weight is provided.
ここで登録する重みは当てはまるルール全ての重みを合計したものである。 The weight registered here is the sum of the weights of all the applicable rules.
投稿文分析部は、投稿文データテーブル(図6)から投稿文を抽出し、形態素解析をして単語に分解する機能を備える。なお、形態素解析については、公知の技術により実現可能であるため、ここでは詳細の説明を省略する。 The posted sentence analysis unit has a function of extracting a posted sentence from the posted sentence data table (FIG. 6), performing morphological analysis, and decomposing it into words. Note that the morphological analysis can be realized by a known technique, and thus detailed description thereof is omitted here.
カテゴリ分類確率計算部は、ルール重み計算部で計算された重みと、投稿文分析部で得られた単語と、図10に示す辞書テーブルとを用いて、特定の投稿者が分類されるカテゴリのそれぞれの確率を計算する機能を備える。具体的な処理については、後述する。 The category classification probability calculation unit uses the weights calculated by the rule weight calculation unit, the words obtained by the posted sentence analysis unit, and the dictionary table shown in FIG. It has a function to calculate each probability. Specific processing will be described later.
判定部は、カテゴリ分類確率計算部で算出された確率を比較して、確率が最も高いカテゴリに投稿者を分類する機能を備える。そして、図7の投稿者データテーブルを更新する。 The determination unit has a function of comparing the probabilities calculated by the category classification probability calculation unit and classifying a poster into a category having the highest probability. Then, the contributor data table of FIG. 7 is updated.
図6に示す投稿文データテーブルは、マイクロブログ等から収集した投稿文のデータが登録されたテーブルである。投稿文データテーブルには、投稿文を一意に識別するための投稿文ID、当該投稿文を投稿した投稿者を識別するための投稿者ID、投稿文、投稿日時、投稿された場所を示す位置情報などが登録されている。 The posted text data table shown in FIG. 6 is a table in which posted text data collected from a microblog or the like is registered. In the posted text data table, a posted text ID for uniquely identifying a posted text, a poster ID for identifying a poster who posted the posted text, a posted text, a posting date and time, and a position indicating a posted location Information is registered.
図7に示す投稿者データテーブルは、マイクロブログ等から収集した投稿者のデータが登録されたテーブルである。 The contributor data table shown in FIG. 7 is a table in which contributor data collected from a microblog or the like is registered.
投稿者データテーブルには、投稿者を識別するための投稿者ID、投稿者の登録名、判定部により判定されたカテゴリを識別するカテゴリID、教師データフラグ、ルール重み計算部により計算された各カテゴリの重みの合計、データ登録日時、投稿者の自己紹介文などが登録されている。 In the contributor data table, the contributor ID for identifying the contributor, the registered name of the contributor, the category ID for identifying the category determined by the determination unit, the teacher data flag, and each calculated by the rule weight calculation unit The total category weight, date and time of data registration, and the self-introduction sentence of the poster are registered.
図8に示すルール登録データテーブルは、ユーザにより図2に示す画面を介して設定されたルールが登録されたテーブルである。 The rule registration data table shown in FIG. 8 is a table in which rules set by the user via the screen shown in FIG. 2 are registered.
なお、削除フラグには「0」が登録され、ユーザにより図2の画面を介して削除指示がなされた場合に、「1」が登録される。 It should be noted that “0” is registered in the deletion flag, and “1” is registered when a deletion instruction is given by the user via the screen of FIG.
図9に示すカテゴリマスタテーブルは、投稿者を分類するカテゴリを管理するテーブルである。カテゴリマスタテーブルには、カテゴリIDとカテゴリ名とが対応付けて登録されている。 The category master table shown in FIG. 9 is a table for managing categories for classifying posters. In the category master table, category IDs and category names are registered in association with each other.
図10に示す辞書テーブルは、カテゴリ分類確率計算部で使用される辞書データが登録されたテーブルである。上述の通り、辞書テーブルに登録されるデータは、辞書データ作成部により作成され登録される。 The dictionary table shown in FIG. 10 is a table in which dictionary data used in the category classification probability calculation unit is registered. As described above, the data registered in the dictionary table is created and registered by the dictionary data creation unit.
次に、図11を用いて、教師データ登録部と辞書データ作成部による辞書データ作成処理を説明する。 Next, dictionary data creation processing by the teacher data registration unit and the dictionary data creation unit will be described with reference to FIG.
図11に示す処理は、情報処理装置101のCPU1801が所定の制御プログラムを読み出して実行する処理である。
The process illustrated in FIG. 11 is a process in which the
ステップS101では、情報処理装置101のCPU1801が、マイクロブログ等の分析対象とする投稿文と当該投稿文を投稿した投稿者に関する情報とをインターネット等から取得する。
In step S <b> 101, the
取得した情報については、投稿文データテーブル(図6)や、投稿者データテーブル(図7)に格納する。 The acquired information is stored in a posted text data table (FIG. 6) or a poster data table (FIG. 7).
ステップS102では、情報処理装置101のCPU1801は、図5に示す教師データ作成画面を表示し、ステップS101で取得したデータを表示する。そして、ユーザから各投稿者に対するカテゴリ分類を受け付ける。ユーザにより登録ボタン(504、505)が押下されると、受け付けたカテゴリを示すカテゴリIDを含むデータを、投稿者データテーブル(図7)に登録し、教師データフラグを「1」として登録する。
In step S102, the
ステップS103では、情報処理装置101のCPU1801は、カテゴリ別の投稿文を取得する。具体的には、ステップS102で登録されたカテゴリIDが同一の投稿者による投稿文を投稿文データテーブルから取得する。
In step S103, the
ステップS104では、情報処理装置101のCPU1801は、ステップS103で取得した投稿文を形態素解析により単語に分解する。
In step S104, the
ステップS105では、情報処理装置101のCPU1801は、ステップS104の処理により得られた単語毎に、カテゴリ毎の当該単語の出現数、当該単語を使用した投稿者数を辞書テーブルに登録する。そして、本フローチャートの処理を終了する。
In step S105, the
以上の処理により、ユーザの判断により投稿者がカテゴリ分類され、カテゴリ分類の結果から辞書データを作成することが可能となる。ここで作成された辞書データを基準として、図12におけるカテゴリ分類処理が実行される。 By the above processing, the poster is classified by the user's judgment, and dictionary data can be created from the result of the category classification. Based on the dictionary data created here, the category classification processing in FIG. 12 is executed.
次に図12を用いて、カテゴリ判定を行っていない投稿者について、図11の処理により作成された辞書データを用いてカテゴリ分類をする処理について説明する。 Next, with reference to FIG. 12, a process for classifying a poster who has not performed category determination using the dictionary data created by the process of FIG.
図12に示す処理は、情報処理装置101のCPU1801が所定の制御プログラムを読み出して実行する処理である。
The process illustrated in FIG. 12 is a process in which the
ステップS201では、情報処理装置101のCPU1801は、判定対象(カテゴリ分類する対象)となる投稿者の投稿文を投稿文データテーブルから取得する。
In step S <b> 201, the
投稿文データテーブルから取得する投稿文は、図11のステップS101で格納された投稿文のうち、カテゴリ分類されていない投稿者による投稿文である。 The posted text acquired from the posted text data table is a posted text by a contributor who is not categorized among the posted text stored in step S101 in FIG.
ステップS202では、情報処理装置101のCPU1801は、判定対象の投稿者の投稿者情報(自己紹介文)を投稿者データテーブル(図7)から取得する。
In step S202, the
ステップS203では、情報処理装置101のCPU1801は、辞書テーブルに登録されたデータを用いて、事前確率をカテゴリ別に算出する。
事前確率は、以下の計算式により算出される。
事前確率=カテゴリ別投稿者数/カテゴリ別投稿者数の総和
In step S203, the
The prior probability is calculated by the following formula.
Prior probability = total number of contributors by category / total number of contributors by category
ステップS204では、情報処理装置101のCPU1801は、ルール登録データテーブル(図8)から、ユーザにより登録されたルールを取得する。
In step S204, the
ステップS205では、情報処理装置101のCPU1801は、ステップS204で取得したルールのうち、確定ルールに判定対象の投稿者が合致するか否かを判定する。
In step S205, the
判定対象の投稿者が該当する確定ルールがある場合(ステップS205:YES)は、処理をステップS211に移行する。 If there is a confirmed rule to which the determination subject poster is applicable (step S205: YES), the process proceeds to step S211.
ステップS211では、情報処理装置101のCPU1801は、判定対象の投稿者を、確定ルールに対応するカテゴリに分類して処理を終了する。ここで、複数のカテゴリに分類される場合(複数の確定ルールに該当する場合)は、事前確率が最も高いカテゴリに分類する。
In step S <b> 211, the
判定対象の投稿者が該当する確定ルールがない場合(ステップS205:NO)は、処理をステップS206に移行する。 If there is no confirmed rule to which the determination subject poster is applicable (step S205: NO), the process proceeds to step S206.
ステップS206では、情報処理装置101のCPU1801は、判定対象の投稿者が該当する自動ルールの重みの合計をカテゴリ別に算出し、算出したカテゴリ別の重みの合計を投稿者データテーブルに登録する。
In step S <b> 206, the
ステップS207では、情報処理装置101のCPU1801は、ステップS206で算出したカテゴリ別の重みの合計値が最も高いカテゴリについて、その尤度を高めるために、事前確率を更新する。
事前確率の更新について処理の一例を以下説明する。
In step S207, the
An example of processing for updating the prior probability will be described below.
例えば、カテゴリが3つ(BOT、ニュース、一般ユーザ)あり、事前確率がそれぞれA、B、Cであるとする。このうちAが最も高い値であるとする。他方で、重みの合計値については、ニュースのカテゴリが最も大きいとする。この場合、重みが最も高いニュースのカテゴリの尤度を高くしたいので、ニュースのカテゴリの事前確率をBからAに更新する。これにより、ニュースの事前確率を高めることが可能となる。 For example, assume that there are three categories (BOT, news, general user), and the prior probabilities are A, B, and C, respectively. Of these, A is the highest value. On the other hand, it is assumed that the news category has the largest weight total value. In this case, since it is desired to increase the likelihood of the news category having the highest weight, the prior probability of the news category is updated from B to A. This makes it possible to increase the prior probability of news.
このように、ルールに基づき算出された重みを考慮して、事前確率を更新することで、投稿内容だけでなく、投稿者の情報を考慮したカテゴリ分類が可能となる。また、事前確率を最大のカテゴリと合わせることで、事前確率を考慮に入れず、投稿内容によるカテゴリ分類をすることが可能となる。 In this way, by updating the prior probabilities in consideration of the weights calculated based on the rules, it is possible to perform category classification that considers not only the posted content but also the poster information. Further, by combining the prior probability with the maximum category, it is possible to perform category classification based on the posted content without taking the prior probability into consideration.
この方法以外にも、例えばカテゴリ別の重みの比をそれぞれの事前確率に乗算する方法なども考えられる。本発明においては、事前確率の更新処理の具体的方法はいずれの方法であってもよい。 In addition to this method, for example, a method of multiplying each prior probability by a weight ratio for each category is also conceivable. In the present invention, the specific method of the prior probability update process may be any method.
ステップS208では、情報処理装置101のCPU1801は、判定対象の投稿者の投稿文を形態素解析により単語に分解する。ここでの形態素解析の条件(解析に用いる辞書や求める品詞など)は、辞書テーブルを作成した際に用いた条件と同じものとする。
In step S <b> 208, the
ここで、投稿文にURL(Uniform Resource Locator)が含まれている場合は、そのホスト名を単語として登録する。また、URLが短縮URLである場合には、実際にその短縮URLが示すサイトにアクセスし、実際にURLを取得する。そして、当該取得したURLのホスト名を単語として登録する。 Here, when a URL (Uniform Resource Locator) is included in the posted text, the host name is registered as a word. If the URL is a shortened URL, the site actually indicated by the shortened URL is accessed and the URL is actually acquired. Then, the host name of the acquired URL is registered as a word.
短縮URLとは、実際のURLを、より少ない文字数で表したURLである。各種のサービスが実際のURLを短縮URLに変換するサービスを行っており、同じURLであっても変換するサービスによって異なる文字列に変換される。そのため、実際にサイトにアクセスして実際のURLを取得する必要がある。すなわち、実際には全く同じ内容を示しているにもかかわらず、異なる単語として登録されてしまうのを防ぐために、実際のサイトにアクセスしてURLを取得する必要がある。 The shortened URL is a URL that represents an actual URL with a smaller number of characters. Various services provide services for converting actual URLs into shortened URLs, and even the same URL is converted into a different character string depending on the service to be converted. Therefore, it is necessary to actually access the site and obtain an actual URL. That is, it is necessary to access an actual site and acquire a URL in order to prevent registration as a different word even though the same content is actually shown.
ステップS209では、情報処理装置101のCPU1801は、ステップS208の形態素解析により得られた単語と辞書テーブルとを用いて、尤度をカテゴリ別に単語ごとに求める。ここで単語別の尤度は以下の計算式により求められる。
In step S209, the
単語別尤度=辞書テーブルに登録されている単語の数/カテゴリ別の辞書テーブルに含まれている単語の総数 Likelihood by word = number of words registered in dictionary table / total number of words contained in dictionary table by category
ステップS210では、情報処理装置101のCPU1801は、ステップS207で求めた事前確率と、ステップS209で求めた単語別の尤度とを用いて、カテゴリ別に事後確率を求める。
In step S210, the
ステップS211では、情報処理装置101のCPU1801は、ステップS210で求めた事後確率が最大となるカテゴリを、判定対象の投稿者のカテゴリと判定し、投稿者データテーブルに当該カテゴリを登録する。
In step S211, the
なお、本実施例のようにナイーブベイズ分類を用いた場合、辞書テーブルに登録されていない単語が出現すると、事後確率が0になってしまうゼロ頻度問題が生じる。この問題に対しては、ラプラススムージング等の手法を用いることで対処することが可能である。 When naive Bayes classification is used as in this embodiment, a zero frequency problem that the posterior probability becomes zero occurs when a word not registered in the dictionary table appears. This problem can be dealt with by using a technique such as Laplace smoothing.
次に、図13を用いて、ルール登録データテーブルに新たなルールが追加された場合、および既存のルールが削除された場合に発生する処理について説明する。 Next, processing that occurs when a new rule is added to the rule registration data table and when an existing rule is deleted will be described with reference to FIG.
図13に示す処理は、情報処理装置101のCPU1801が所定の制御プログラムを読み出して実行する処理である。
The process illustrated in FIG. 13 is a process in which the
ステップS301では、情報処理装置101のCPU1801は、新たに追加登録されたルール、削除されたルールを抽出する。これは、図2に示すルール設定画面により、登録ボタンが押下された場合または削除ボタンが押下された場合に実行される。
In step S301, the
ステップS302では、情報処理装置101のCPU1801は、新たに追加または削除されたルールに該当する投稿者の投稿文と、投稿者データとをそれぞれ投稿文データテーブル、投稿者データテーブルから取得する。
In step S <b> 302, the
ステップS303では、情報処理装置101のCPU1801は、事前確率を算出する。ここでの算出処理は、ステップS203における処理と同様である。
In step S303, the
そして、ステップS302で取得した全投稿者に対して、ステップS305〜S313の処理を実行する(ステップS304)。 And the process of step S305-S313 is performed with respect to all the contributors acquired at step S302 (step S304).
ステップS305では、情報処理装置101のCPU1801は、ルール登録データテーブルに登録されたルールのうち確定ルールに、判定対象の投稿者が合致するか否かを判定する。
In step S <b> 305, the
判定対象の投稿者が該当する確定ルールがある場合(ステップS305:YES)は、処理をステップS313に移行する。 If there is a confirmation rule to which the determination subject poster is applicable (step S305: YES), the process proceeds to step S313.
ステップS313では、情報処理装置101のCPU1801は、判定対象の投稿者を、確定ルールに対応するカテゴリと判定し、投稿者データテーブルに当該カテゴリを登録する。ここで、複数のカテゴリに分類される場合(複数の確定ルールに該当する場合)は、事前確率が最も高いカテゴリに分類する。
In step S313, the
判定対象の投稿者が該当する確定ルールがない場合(ステップS305:NO)は、処理をステップS306に移行する。 If there is no confirmed rule to which the determination subject poster is applicable (step S305: NO), the process proceeds to step S306.
ステップS306では、情報処理装置101のCPU1801は、投稿者データテーブルからカテゴリ別の重みを取得する。
In step S306, the
ステップS307では、情報処理装置101のCPU1801は、ルールが新たに追加された場合は、当該ルールの重みをカテゴリ毎に加算する。他方、ルールが削除された場合は、当該ルールの重みをカテゴリごとに減算する。そして、加算・減算した重みにより、投稿者データテーブルを更新する。
In step S307, when a rule is newly added, the
ステップS308では、情報処理装置101のCPU1801は、ステップS307の処理により、最も大きい重みを持つカテゴリが変更されたか否かを判定する。
In step S308, the
最も重みの大きいカテゴリが変更された場合(ステップS308:YES)は、処理をステップS309に移行する。 If the category with the largest weight has been changed (step S308: YES), the process proceeds to step S309.
最も重みの大きいカテゴリが変更されていない場合(ステップS308:NO)は、次の投稿者に対する処理に移行し、次の投稿者に対してステップS305〜S313の処理を実行する。 When the category having the largest weight has not been changed (step S308: NO), the process proceeds to the process for the next poster, and the processes of steps S305 to S313 are executed for the next poster.
ステップS309では、情報処理装置101のCPU1801は、最も重みの高いカテゴリの事前確率を更新する。ステップS309の処理は、図12のステップS207の処理と同様である。
In step S309, the
また、ステップS310〜S313の処理については、それぞれ図12のステップS208〜S211の処理と同一であるため、ここでの説明は省略する。 Further, the processes in steps S310 to S313 are the same as the processes in steps S208 to S211 in FIG. 12, respectively, and thus description thereof is omitted here.
次に図17を用いて、投稿者データに変更があった場合に実行される処理について説明する。 Next, processing executed when there is a change in the poster data will be described with reference to FIG.
図17に示す処理は、情報処理装置101のCPU1801が所定の制御プログラムを読み出すことで実行される処理である。
The process illustrated in FIG. 17 is a process executed when the
ステップS401では、情報処理装置101のCPU1801は、投稿者データテーブルと同じ属性値を持つダミーテーブルを作成する。そして、投稿者データテーブルに登録され、教師データフラグが「0」である投稿者のすべてに対して、ステップS403〜S419の処理を実行する(ステップS402)。
In step S401, the
ステップS403では、情報処理装置101のCPU1801は、最新の投稿者データを取得し、ステップS401で作成したダミーテーブルに登録する。このとき、カテゴリIDとカテゴリNの重みは、投稿者データテーブルに登録されている属性値を登録する。教師データフラグについては、「0」を登録する。
In step S403, the
ステップS404では、情報処理装置101のCPU1801は、カテゴリIDとカテゴリNの重みを除いた投稿者データテーブルの属性値と、ダミーテーブルに登録された属性値とを比較し、差異があるかを比較する。
In step S404, the
差異がある場合(ステップS405:YES)は、処理をステップS406に移行する。 If there is a difference (step S405: YES), the process proceeds to step S406.
差異がない場合(ステップS405:NO)は、次の投稿者に対する処理に移行する。 If there is no difference (step S405: NO), the process proceeds to the process for the next poster.
差異がある場合は、全ルールについて、ダミーテーブルに登録されたデータの判定処理を行う(ステップS406)。 If there is a difference, the data registered in the dummy table is determined for all rules (step S406).
ステップS407では、情報処理装置101のCPU1801は、ルール登録データテーブルに登録されたルールのうち確定ルールに、ダミーテーブルに登録された投稿者が合致するか否かを判定する。
In step S407, the
合致する確定ルールがある場合(ステップS407:YES)は、処理をステップS418に移行する。 When there is a matching rule that matches (step S407: YES), the process proceeds to step S418.
ステップS418では、情報処理装置101のCPU1801は、ステップS407で合致すると判定された確定ルールに設定されたカテゴリをダミーテーブルに登録する。
In step S418, the
合致する確定ルールがない場合(ステップS407:NO)は、処理をステップS408に移行する。 If there is no matching confirmation rule (step S407: NO), the process proceeds to step S408.
ステップS408では、情報処理装置101のCPU1801は、投稿者データテーブルからカテゴリ別の重みを取得する。
In step S408, the
ステップS409では、情報処理装置101のCPU1801は、ステップS408で取得した重みをダミーテーブルに登録する。
In step S409, the
以上のステップS407〜S409の処理を、全ルールについて行う(ステップS410)。 The above steps S407 to S409 are performed for all the rules (step S410).
ステップS411では、情報処理装置101のCPU1801は、重みが最高のカテゴリが変わったか否かを判定する。
In step S411, the
重みが最高のカテゴリが変わった場合(ステップS411:YES)は、処理をステップS412に移行する。 If the category having the highest weight has changed (step S411: YES), the process proceeds to step S412.
重みが最高のカテゴリが変わっていない場合(ステップS411:NO)は、処理をステップS419に移行する。 If the category with the highest weight has not changed (step S411: NO), the process proceeds to step S419.
ステップS412では、情報処理装置101のCPU1801は、事前確率を計算する。
In step S412, the
ステップS413では、情報処理装置101のCPU1801は、ステップS412で計算された事前確率により、更新する。
In step S413, the
ステップS414では、情報処理装置101のCPU1801は、判定対象者の投稿文を取得する。
In step S414, the
ステップS415では、情報処理装置101のCPU1801は、ステップS414で取得した投稿文を形態素解析により単語に分解する。
In step S415, the
ステップS416では、情報処理装置101のCPU1801は、ステップS415で得られた単語と辞書テーブルとを用いて、尤度をカテゴリ別に単語ごとに求める。
In step S416, the
ステップS417では、情報処理装置101のCPU1801は、事前確率と、単語別の尤度とを用いて、カテゴリ別に事後確率を求める。
In step S417, the
ステップS418では、情報処理装置101のCPU1801は、事後確率が最大となるカテゴリを特定し、ダミーテーブルに当該カテゴリを登録する。
In step S418, the
ステップS419では、情報処理装置101のCPU1801は、ダミーテーブルに登録された値を、投稿者データテーブルに上書きする。
In step S419, the
以上の処理により、投稿者情報が変更された場合に、投稿者を再度分類することが可能となる。 Through the above processing, when the poster information is changed, the poster can be classified again.
次に、カテゴリ判定が行われていない投稿者を分類する処理について、具体例を用いて説明する。 Next, a process for classifying a poster who has not been subjected to category determination will be described using a specific example.
ここでは、図14〜図16に示すテーブルがあらかじめ用意されていることを前提として、未判定の投稿者(ここでは「A_news」として説明する)を実際に分類する具体的な処理を、図12のフローチャートに沿って説明する。 Here, on the assumption that the tables shown in FIGS. 14 to 16 are prepared in advance, a specific process for actually classifying an undetermined poster (explained here as “A_news”) is shown in FIG. This will be described with reference to the flowchart.
なお、辞書テーブル作成時の条件として、形態素解析時に抽出する品詞は、名詞と形容詞とする。 Note that the part-of-speech extracted at the time of morpheme analysis is a noun and an adjective as a condition for creating a dictionary table.
まず、判定対象の投稿者の投稿文を取得する。ここで判定対象の投稿者の投稿文が「[速報]セールが始まりました!」の1つだけであったとする。 First, the posted text of the poster subject to determination is acquired. Here, it is assumed that there is only one post sentence of the judgment subject contributor, “[Breaking News] Sale has started!”.
次に、投稿者の投稿情報を取得する。ここで判定対象の投稿者の自己紹介文が「Aニュースサイトからの投稿です。」であったとする。 Next, the posting information of the poster is acquired. Here, it is assumed that the self-introduction sentence of the poster subject to determination is “A post from A news site”.
次に、事前確率を計算する。図15の辞書テーブルより、BOT、ニュース、一般ユーザのそれぞれの事前確率は、BOT:70/100、ニュース:20/100、一般ユーザ:10/100となる。具体的には、辞書テーブルに登録された投稿者数は100であり、そのうちカテゴリがBOTである投稿者数は70、ニュースは20、一般ユーザは10である。 Next, the prior probability is calculated. From the dictionary table of FIG. 15, the prior probabilities of BOT, news, and general user are BOT: 70/100, news: 20/100, and general user: 10/100. Specifically, the number of contributors registered in the dictionary table is 100, of which the number of contributors whose category is BOT is 70, news is 20, and general users are 10.
次に、該当するルールを確認する。ここでA_newsは、ルール2(ルール2は「自己紹介文に“ニュース”という単語が含まれる」というルールであるとする)に該当する。そのため、ルール2のそれぞれの重みを投稿者データテーブルに登録する。
Next, check the applicable rules. Here, A_news corresponds to rule 2 (
そして、事前確率を更新する。上記の処理で得られたそれぞれのカテゴリの重みを比較すると、カテゴリB(ニュース)の重みが最大であることが分かる(図16)。そこで、カテゴリBの事前確率を20/100から70/100に更新する。ここでは、上述した重みが最大であるカテゴリの事前確率を、事前確率が最大のものに合わせることによって更新する。 Then, the prior probability is updated. Comparing the weights of the respective categories obtained by the above processing, it can be seen that the weight of the category B (news) is the largest (FIG. 16). Therefore, the prior probability of category B is updated from 20/100 to 70/100. Here, the prior probability of the category having the largest weight is updated by matching the prior probability with the largest prior probability.
次に、投稿文を形態素解析し、単語に分解する。A_newsの投稿文「[速報]セールが始まりました!」から名詞と形容詞を抜き出すと、「速報」、「セール」が得られる。 Next, morphological analysis is performed on the posted text and it is broken down into words. By extracting the nouns and adjectives from the A_news post, “[Breaking News] Sale!”, You get “Breaking News” and “Sale”.
次にカテゴリ別に尤度を計算する。まずBOTの尤度を求める。図15の辞書テーブルを見ると、BOT(カテゴリID:A)の単語に「速報」は存在しないが、「セール」は存在している。よって、BOTの「速報」の尤度は1/60となり、「セール」の尤度は10/60となる。なお、尤度の計算は、当該カテゴリにおける当該単語の出現数/当該カテゴリの単語出現数の総数となる。また、「速報」の尤度が0/60としないのは、上述したラプラススムージングという手法を用いたためである。 Next, the likelihood is calculated for each category. First, the likelihood of BOT is obtained. Looking at the dictionary table in FIG. 15, “breaking news” does not exist in the word of BOT (category ID: A), but “sale” exists. Therefore, the likelihood of BOT “breaking news” is 1/60, and the likelihood of “sale” is 10/60. The likelihood calculation is the number of occurrences of the word in the category / the total number of word appearances of the category. The reason why the likelihood of “breaking news” is not 0/60 is that the above-described technique called Laplace smoothing is used.
以下同様に、ニュースの「速報」と「セール」の尤度は、それぞれ20/60、1/60となる。一般ユーザの「速報」と「セール」の尤度は、それぞれ1/40、1/40となる。 Similarly, the likelihood of “breaking news” and “sale” of news is 20/60 and 1/60, respectively. The likelihoods of general users' “breaking news” and “sale” are 1/40 and 1/40, respectively.
次に、事後確率を計算する。まず、BOTの事後確率を求める。BOTの事前確率は70/100であり、単語(「速報」「セール」)の尤度はそれぞれ1/60、10/60である。そのため、事後確率は、(70/100×1/60)×(70/100×10/60)=0.00136(小数第6位四捨五入)となる。 Next, the posterior probability is calculated. First, the posterior probability of BOT is obtained. The prior probability of BOT is 70/100, and the likelihood of words (“breaking news” and “sale”) is 1/60 and 10/60, respectively. Therefore, the posterior probability is (70/100 × 1/60) × (70/100 × 10/60) = 0.00136 (rounded to the sixth decimal place).
以下同様に、ニュースの事後確率は更新された事前確率を用いて(70/100×20/60)×(70/100×1/60)=0.00272となる。また一般ユーザの事後確率は、(10/100×1/40)×(10/100×1/40)=0.00001となる。 Similarly, the posterior probability of news is (70/100 × 20/60) × (70/100 × 1/60) = 0.00272 using the updated prior probability. Further, the posterior probability of the general user is (10/100 × 1/40) × (10/100 × 1/40) = 0.00001.
次に算出した事後確率を比較し、カテゴリに分類する。上記の計算で得られた事後確率を比較すると、ニュースの事後確率が最も高い。そのため、投稿者「A_news」はニュースのカテゴリに分類される。 Next, the calculated posterior probabilities are compared and classified into categories. Comparing the posterior probabilities obtained by the above calculations, the posterior probability of news is the highest. Therefore, the poster “A_news” is classified into the news category.
最後に、投稿者データテーブルの属性“投稿者ID”がA_newsであるテーブルの属性“カテゴリID”にニュースのカテゴリIDである“B”が登録される。 Finally, the news category ID “B” is registered in the attribute “category ID” of the table in which the attribute “poster ID” of the poster data table is A_news.
図18は、情報処理装置101のハードウエア構成を示す図である。 FIG. 18 is a diagram illustrating a hardware configuration of the information processing apparatus 101.
図18において、1801はCPUで、システムバス1804に接続される各デバイスやコントローラを統括的に制御する。また、ROM1803あるいは外部メモリ1811には、CPU1801の制御プログラムであるBIOS(Basic Input / Output System)やオペレーティングシステムプログラム(以下、OS)や、各サーバ或いは各PCの実行する機能を実現するために必要な各種プログラム等が記憶されている。
In FIG. 18,
1802はRAMで、CPU1801の主メモリ、ワークエリア等として機能する。CPU1801は、処理の実行に際して必要なプログラム等をROM1803あるいは外部メモリ1811からRAM1802にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
また、1805は入力コントローラで、入力装置1809等からの入力を制御する。1806はビデオコントローラで、液晶ディスプレイ等のディスプレイ装置1810への表示を制御する。なお、ディスプレイ装置は、液晶ディスプレイに限られず、CRTディスプレイなどであっても良い。これらは必要に応じてクライアントが使用するものである。
An
1807はメモリコントローラで、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク(HD)や、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等の外部メモリ1811へのアクセスを制御する。
1808は通信I/Fコントローラで、ネットワークを介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信等が可能である。
なお、CPU1801は、例えばRAM1802内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ装置1810上での表示を可能としている。また、CPU1801は、ディスプレイ装置1810上の不図示のマウスカーソル等でのユーザ指示を可能とする。
Note that the
ハードウエア上で動作する各種プログラムは、外部メモリ1811に記録されており、必要に応じてRAM1802にロードされることによりCPU1801によって実行されるものである。
Various programs operating on the hardware are recorded in the
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。 It should be noted that the configuration and contents of the various data described above are not limited to this, and it goes without saying that the various data and configurations are configured according to the application and purpose.
また、本発明におけるプログラムは、図11〜図13、図17の処理をコンピュータに実行させるプログラムである。なお、本発明におけるプログラムは、図11〜図13、図17の各処理ごとのプログラムであってもよい。 Moreover, the program in this invention is a program which makes a computer perform the process of FIGS. 11-13, and FIG. The program in the present invention may be a program for each process in FIGS. 11 to 13 and FIG.
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。 As described above, a recording medium that records a program that implements the functions of the above-described embodiments is supplied to a system or apparatus, and a computer (or CPU or MPU) of the system or apparatus stores the program stored in the recording medium. It goes without saying that the object of the present invention can also be achieved by reading and executing.
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。 In this case, the program itself read from the recording medium realizes the novel function of the present invention, and the recording medium recording the program constitutes the present invention.
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。 As a recording medium for supplying the program, for example, a flexible disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, DVD-ROM, magnetic tape, nonvolatile memory card, ROM, EEPROM, silicon A disk or the like can be used.
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Further, by executing the program read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) operating on the computer based on an instruction of the program is actually It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the processing and the processing is included.
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Furthermore, after the program read from the recording medium is written to the memory provided in the function expansion board inserted into the computer or the function expansion unit connected to the computer, the function expansion board is based on the instructions of the program code. It goes without saying that the case where the CPU or the like provided in the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。 The present invention may be applied to a system constituted by a plurality of devices or an apparatus constituted by a single device. Needless to say, the present invention can be applied to a case where the present invention is achieved by supplying a program to a system or apparatus. In this case, by reading a recording medium storing a program for achieving the present invention into the system or apparatus, the system or apparatus can enjoy the effects of the present invention.
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。 Furthermore, by downloading and reading a program for achieving the present invention from a server, database, etc. on a network using a communication program, the system or apparatus can enjoy the effects of the present invention. In addition, all the structures which combined each embodiment mentioned above and its modification are also included in this invention.
101 情報処理装置
101 Information processing apparatus
Claims (7)
投稿者を各カテゴリに分類するための条件の設定を受け付ける受付手段と、
前記教師データとして記憶された投稿者のうち、前記受付手段により受け付けた条件を満たす投稿者のカテゴリの内訳に基づき、未分類の投稿者を各カテゴリに分類する分類手段と、
を備えることを特徴とする情報処理装置。 An information processing apparatus for storing teacher data in which a poster is associated with a category of the poster,
The author and receiving means for receiving a set of criteria to classify in each category,
Classification means for classifying uncategorized contributors into each category based on the breakdown of the categories of contributors that satisfy the conditions accepted by the accepting means among the contributors stored as the teacher data ;
An information processing apparatus comprising:
前記分類手段は、前記条件を満たす投稿者のカテゴリの内訳を、当該条件を満たす投稿者のカテゴリの確率とし、前記複数の条件における確率に基づき、未分類の投稿者を各カテゴリに分類することを特徴とする請求項1に記載の情報処理装置。 The accepting means accepts a plurality of conditions for classifying a poster into each category,
The classifying means sets the breakdown of the category of the poster that satisfies the condition as the probability of the category of the poster that satisfies the condition, and classifies the unclassified poster into each category based on the probability in the plurality of conditions. The information processing apparatus according to claim 1.
をさらに備え、 Further comprising
前記分類手段は、前記確定条件設定受付手段により設定を受け付けた条件を満たす投稿者について、当該条件に設定されたカテゴリに分類することを特徴とする請求項1または2に記載の情報処理装置。 3. The information processing apparatus according to claim 1, wherein the classifying unit classifies a poster who satisfies a condition whose setting is received by the confirmation condition setting receiving unit, into a category set in the condition.
前記情報処理装置の受付手段が、投稿者を各カテゴリに分類するための条件の設定を受け付ける受付工程と、
前記情報処理装置の分類手段が、前記教師データとして記憶された投稿者のうち、前記受付工程により受け付けた条件を満たす投稿者のカテゴリの内訳に基づき、未分類の投稿者を各カテゴリに分類する分類工程と、
を備えることを特徴とする情報処理方法。 An information processing method in an information processing apparatus for storing teacher data in which a poster is associated with a category of the poster,
An accepting step in which the accepting means of the information processing apparatus accepts the setting of conditions for classifying the poster into each category ;
The classification means of the information processing apparatus classifies uncategorized contributors into each category based on the breakdown of the categories of contributors that satisfy the conditions accepted by the accepting process among the contributors stored as the teacher data. A classification process;
An information processing method comprising:
前記情報処理装置を、
投稿者を各カテゴリに分類するための条件の設定を受け付ける受付手段と、
前記教師データとして記憶された投稿者のうち、前記受付手段により受け付けた条件を満たす投稿者のカテゴリの内訳に基づき、未分類の投稿者を各カテゴリに分類する分類手段として機能させるためのプログラム。 A program executable in an information processing apparatus for storing teacher data in which a poster and a category of the poster are associated with each other,
The information processing apparatus;
The author and receiving means for receiving a set of criteria to classify in each category,
The program for functioning as a classification | category means to classify | categorize an uncategorized contributor into each category based on the breakdown of the category of the contributor who satisfy | fills the conditions received by the said reception means among the contributors memorize | stored as the said teacher data .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017154336A JP6447680B2 (en) | 2017-08-09 | 2017-08-09 | Information processing apparatus, information processing method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017154336A JP6447680B2 (en) | 2017-08-09 | 2017-08-09 | Information processing apparatus, information processing method, and program |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013133215A Division JP6191277B2 (en) | 2013-06-25 | 2013-06-25 | Information processing apparatus, information processing method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017224334A JP2017224334A (en) | 2017-12-21 |
JP6447680B2 true JP6447680B2 (en) | 2019-01-09 |
Family
ID=60688017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017154336A Active JP6447680B2 (en) | 2017-08-09 | 2017-08-09 | Information processing apparatus, information processing method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6447680B2 (en) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10127522B2 (en) * | 2011-07-14 | 2018-11-13 | Excalibur Ip, Llc | Automatic profiling of social media users |
-
2017
- 2017-08-09 JP JP2017154336A patent/JP6447680B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017224334A (en) | 2017-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5647508B2 (en) | System and method for identifying short text communication topics | |
US8095547B2 (en) | Method and apparatus for detecting spam user created content | |
EP2187334A1 (en) | Information providing support device and information providing support method | |
JP5048852B2 (en) | Search device, search method, search program, and computer-readable recording medium storing the program | |
JP6898542B2 (en) | Information processing device, its control method, and program | |
US20210263960A1 (en) | Information processing device, information processing system, and non-transitory recording medium | |
JP2014010758A (en) | File management device, file management method, and program | |
US20090144222A1 (en) | Chart generator for searching research data | |
JP6191277B2 (en) | Information processing apparatus, information processing method, and program | |
JP5661449B2 (en) | File name creation device | |
US20090144241A1 (en) | Search term parser for searching research data | |
TWI447662B (en) | An ad management apparatus, an advertisement selecting apparatus, an advertisement management method, an advertisement management program, and a recording medium on which an advertisement management program is recorded | |
JP6447680B2 (en) | Information processing apparatus, information processing method, and program | |
JP2020129239A (en) | Post Analysis System, Post Analysis Device, and Post Analysis Method | |
US20090144242A1 (en) | Indexer for searching research data | |
JP2019185620A (en) | Message processor and program | |
JP5228529B2 (en) | Data search program, data search device, and data search method | |
KR20080028031A (en) | System extracting and displaying keyword and contents related with the keyword and method using the system | |
JP2009093581A (en) | Control system for synonym search | |
US20090144243A1 (en) | User interface for searching research data | |
US20090144317A1 (en) | Data search markup language for searching research data | |
JP2011086156A (en) | System and program for tracking of leaked information | |
JP2021149600A (en) | Information processing device and program | |
JP2016095862A (en) | Information processing device, information processing system, control method, and program | |
KR20160056340A (en) | System and method for recommending open source software |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20180703 |
|
TRDD | Decision of grant or rejection written | ||
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20181031 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20181106 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181119 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6447680 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |