WO2020230278A1 - 情報処理装置、抽出方法および抽出プログラム - Google Patents

情報処理装置、抽出方法および抽出プログラム Download PDF

Info

Publication number
WO2020230278A1
WO2020230278A1 PCT/JP2019/019191 JP2019019191W WO2020230278A1 WO 2020230278 A1 WO2020230278 A1 WO 2020230278A1 JP 2019019191 W JP2019019191 W JP 2019019191W WO 2020230278 A1 WO2020230278 A1 WO 2020230278A1
Authority
WO
WIPO (PCT)
Prior art keywords
records
unit
extraction
feature
information processing
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.)
Ceased
Application number
PCT/JP2019/019191
Other languages
English (en)
French (fr)
Inventor
裕敏 長
健 山室
内山 寛之
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to PCT/JP2019/019191 priority Critical patent/WO2020230278A1/ja
Publication of WO2020230278A1 publication Critical patent/WO2020230278A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/215Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Definitions

  • the present invention relates to an information processing device, an extraction method, and an extraction program.
  • a method that partially omits the table join process by regarding the foreign key of the fact table as a representative of all the feature quantities in the dimension table referenced by the foreign key ().
  • the applicability of the method is determined by using the ratio of the number of records n S of the fact table called Tuple Ratio (TR) and the total number of records pointed to by the foreign key, that is, the number of records n R of the dimension table as an index value.
  • TR Tuple Ratio
  • n S is sufficiently larger than n R (for example, n S / n R > 20), it is extremely unlikely that the accuracy of the machine learning model will be reduced even if the table join is omitted, so the foreign key is a dimension table.
  • n R for example, n S / n R > 20
  • the conventional method has a problem that the time required for feature selection may not be reduced.
  • the conventional method in order to omit the joining process while maintaining the accuracy of the machine learning model, it is necessary to satisfy the condition of n S / n R > 20, so there are cases where the method cannot be applied.
  • the information processing apparatus of the present invention has the number of records in a table in which records having duplicate or similar feature quantities other than the primary key are aggregated for each record in the dimension table.
  • the ratio of the number of records in the fact table to the number of records counted by the aggregate unit exceeds a predetermined threshold, the foreign key of the aggregated table is used as a representative of the feature group of the dimension table. It is characterized by having an extraction unit for extracting analysis data included as a value.
  • FIG. 1 is a block diagram showing a configuration example of the information processing apparatus according to the first embodiment.
  • FIG. 2 is a diagram showing an example of a movie evaluation prediction data set.
  • FIG. 3 is a diagram illustrating a processing example for calculating the number of records in the aggregated table.
  • FIG. 4 is a diagram illustrating a processing example for calculating the number of records in the aggregated table.
  • FIG. 5 is a diagram illustrating a processing example for extracting an analysis data set.
  • FIG. 6 is a flowchart showing an example of a processing flow in the information processing apparatus according to the first embodiment.
  • FIG. 7 is a diagram showing a computer that executes the extraction program.
  • the information processing apparatus, extraction method, and embodiment of the extraction program according to the present application will be described in detail below with reference to the drawings.
  • the information processing apparatus, extraction method, and extraction program according to the present application are not limited to this embodiment.
  • the information processing apparatus extracts the data for analysis by entering the SQL query as in the following table 1 in the database ..
  • the information processing apparatus the obtained analysis data T (Y, X S, X R1, ⁇ , X Rk) with respect to, a strong connection with Y from among X S and X R performs feature selection Prediction accuracy is improved by extracting a combination of certain features.
  • the wrapper method the filter method.
  • the wrapper method is to actually create the model using a subset of X S, X R, is a method of selecting a subset of the feature groups to minimize the generalization error obtained by the cross-validation or the like.
  • the filter method is a method of selecting a subset based on the goodness of the feature amount such as the information gain of Y and each of the X S and X R.
  • the wrapper method with high prediction accuracy is often used, but if the number of features is large, a combinatorial explosion of subsets occurs, so the calculation cost is high and it becomes a bottleneck in the prediction model construction workflow.
  • Non-Patent Document 1 the risk of deterioration of model accuracy caused by using FK i as a representative value of X Ri is quantified.
  • the feature amount is reduced by omitting the joining process which has little influence on the accuracy, and the calculation cost of the feature combination in the feature selection is reduced, so that the workflow can be speeded up.
  • the information processing apparatus the method using a TR i, aggregates duplicate or similar record for X Ri, while retaining the semantic information R i holds, n R To reduce.
  • Dimension table the R'i was reduction of records by aggregated key X Ri against R i, the n'Ri R'i number of records, each group of R'i aggregated to FK' i Use as a foreign key to refer to.
  • the information processing apparatus performing feature converts FK' i if a condition of feature transformation determined as the representative value of X Ri.
  • n S is sufficiently larger than n'Ri (e.g., n S / n'Ri> 20 ) case, be omitted binding table the accuracy of machine learning models low as possible is likely to decrease, an external
  • reducing the feature amount by using the key as a representative value of the feature group of the dimension table it is expected to reduce the feature selection processing time, which is particularly time-consuming in the preprocessing of machine learning.
  • FIG. 1 is a block diagram showing a configuration example of the information processing apparatus according to the first embodiment.
  • the configuration shown in FIG. 1 is only an example, and the specific configuration is not particularly limited.
  • the information processing apparatus 10 includes a query input unit 11, an aggregation unit 12, a database 13, an extraction unit 14, a database 15, a feature selection unit 16, and a model learning unit 17.
  • the query input unit 11, the aggregation unit 12, the extraction unit 14, the feature selection unit 16, and the model learning unit 17 function as various processing units by operating various programs.
  • the query input unit 11, the aggregation unit 12, the extraction unit 14, the feature selection unit 16, and the model learning unit 17 are electronic circuits such as a CPU (Central Processing Unit) and an MPU (Micro Processing Unit), and an ASIC (Application Specific Integrated). It is an integrated circuit such as Circuit) and FPGA (Field Programmable Gate Array).
  • the databases 13 and 15 are storage devices such as HDD (Hard Disk Drive), SSD (Solid State Drive), and optical disk.
  • the databases 13 and 15 may be semiconductor memories in which data such as RAM (Random Access Memory), flash memory, and NVSRAM (Non Volatile Static Random Access Memory) can be rewritten.
  • the query input unit 11 receives the input of the query for acquiring the analysis data, and outputs the received query to the aggregation unit 12 and the extraction unit 14 as it is.
  • the query input unit 11 receives input of a query as illustrated in Table 1 described above as a query for acquiring analysis data, and outputs the query input to the aggregation unit 12 and the extraction unit 14.
  • the aggregation unit 12 counts the number of records in the table that aggregates the records having overlapping or similar features other than the primary key for each record in the dimension table. Specifically, when the query input unit 11 receives the input of the query for acquiring the analysis data, the aggregation unit 12 removes the records having the same feature quantity other than the primary key or similar records. Count the number of records in the table.
  • the aggregating unit 12 outputs, to extracting section 14 calculates the number of records n'Ri of the aggregate table R'i.
  • Table 2 of SQL2 showing the n'Ri calculated query when removing the duplicate records R i by using Distinct.
  • the SQL3 Table 3 below shows the n'Ri calculated query upon removal similar records R i using the Similarity Group By (following references reference). References: M.
  • the extraction unit 14 When the ratio of the number of records in the fact table to the number of records counted by the aggregation unit 12 exceeds a predetermined threshold, the extraction unit 14 includes the foreign key of the aggregated table as a representative value of the feature group of the dimension table. Extract the data set for. Further, when the ratio of the number of records in the fact table to the number of records counted by the aggregation unit 12 does not exceed a predetermined threshold, the extraction unit 14 uses the query received by the query input unit 11 as it is and uses a plurality of tables. And extract the data set for analysis.
  • the extraction unit 14 first acquires the record number n S fact table from the database 13.
  • Database 13 stores the record number n S of the fact table.
  • a feature conversion determination is performed to determine whether or not the value is exceeded.
  • Extraction unit 14 if any of the Tr 'i also does not satisfy the condition, the query for the analysis data acquisition query input unit 11 has received directly entered into a database 15, extracts the data for analysis.
  • Database 15 stores fact tables and dimension tables.
  • the extraction unit 14 reduces the feature amount to be extracted by converting the X Ri Tr 'i which satisfies the condition if there even one contained in a query entered in the query input unit 11 to FK' i Output the query.
  • the feature selection unit 16 selects a subset of the feature group from the analysis data extracted by the extraction unit 14 by using a predetermined feature selection method. For example, the feature selection unit 16 acquires analysis data, selects features using a wrapper method or a filter method on the analysis data, and minimizes generalization error from the feature groups. Is selected and output to the model learning unit 17.
  • the model learning unit 17 generates a machine learning model using the data of the subset of the feature group selected by the feature selection unit 16. For example, the model learning unit 17 generates and outputs a machine learning model such as logistic regression or SVM (Support Vector Machine) using the data of the subset of the best feature group.
  • a machine learning model such as logistic regression or SVM (Support Vector Machine) using the data of the subset of the best feature group.
  • FIG. 2 is a diagram showing an example of a movie evaluation prediction data set.
  • a model for predicting the rating of a movie from the feature group of R 1 and R 2 is created from the data set.
  • the query input unit 11 obtains the query SQL6 (see Table 6 below) for acquiring the feature amount Y to be predicted by combining the data sets of FIG. 2 and the feature group X used for the prediction in order to acquire the data for analysis. It is accepted as input and output to the aggregation unit 12 and the extraction unit 14 as it is.
  • the aggregation unit 12 aggregates duplicate records for R 1 and similar records for R 2 to reduce duplicates and similar records.
  • Distinct in SQL7 in Table 7 below illustrate the n'R1 calculation query when removing the duplicate records R 1.
  • 3 and 4 are diagrams for explaining a processing example for calculating the number of records in the aggregated table.
  • Table 9 shows an example of the converted query.
  • FIG. 5 is a diagram illustrating a processing example for extracting an analysis data set.
  • FIG. 6 is a flowchart showing an example of a processing flow in the information processing apparatus according to the first embodiment.
  • the extraction unit 14 extracts the analysis data including the foreign key of the aggregated dimension table as a representative value of the feature group of the dimension table (step S104 affirmative). (Step S105). If the extraction unit 14 determines that the ratio does not exceed 20 (denial in step S104), the extraction unit 14 joins a plurality of tables and extracts analysis data (step S106). That is, the extraction unit 14 directly inputs the query for acquiring the analysis data received by the query input unit 11 into the database 15, and extracts the analysis data.
  • the feature selection unit 16 selects features for the analysis data and selects a subset of the feature group (step S107). For example, the feature selection unit 16 acquires analysis data, selects features using a wrapper method or a filter method on the analysis data, and minimizes generalization error from the feature groups. Select a subset of.
  • the model learning unit 17 After that, the model learning unit 17 generates a machine learning model using the data of the subset of the feature group (step S108). For example, the model learning unit 17 generates a machine learning model such as logistic regression or SVM (Support Vector Machine) using the data of the subset of the best feature group.
  • a machine learning model such as logistic regression or SVM (Support Vector Machine) using the data of the subset of the best feature group.
  • the information processing apparatus 10 is an aggregation unit that counts the number of records in a table that aggregates records having overlapping or similar feature amounts other than the primary key for each record in the dimension table.
  • the ratio of the number of records in the fact table to the number of records counted by the aggregation unit 12 exceeds a predetermined threshold, the analysis data including the foreign key of the aggregated table as a representative value of the feature group of the dimension table. It has an extraction unit 14 for extracting the above. Therefore, in the information processing apparatus 10 according to the first embodiment, it is possible to reduce the time required for feature selection for more cases.
  • the information processing apparatus 10 counts the number of records n'Ri of the aggregate table R'i. is a n'Ri ⁇ n Ri. Therefore, in the information processing apparatus 10, the applicable range of the method using TR is increased, and the time required for feature selection can be reduced while ensuring the accuracy for more cases. Further, in the information processing apparatus 10 according to the first embodiment, since the feature amount can be reduced, the processing time of the feature selection process can be reduced.
  • each component of each of the illustrated devices is a functional concept, and does not necessarily have to be physically configured as shown in the figure. That is, the specific form of distribution / integration of each device is not limited to the one shown in the figure, and all or part of the device is functionally or physically distributed / physically in arbitrary units according to various loads and usage conditions. It can be integrated and configured. Further, each processing function performed by each device may be realized by a CPU and a program analyzed and executed by the CPU, or may be realized as hardware by wired logic.
  • program It is also possible to create a program in which the processing executed by the information processing apparatus described in the above embodiment is described in a language that can be executed by a computer.
  • an extraction program in which the processing executed by the information processing apparatus 10 according to the embodiment is described in a language that can be executed by a computer.
  • the same effect as that of the above embodiment can be obtained by executing the extraction program by the computer.
  • the same processing as that of the above embodiment may be realized by recording the extraction program on a computer-readable recording medium, reading the extraction program recorded on the recording medium into the computer, and executing the extraction program.
  • FIG. 7 is a diagram showing a computer that executes the extraction program.
  • the computer 1000 has, for example, a memory 1010, a CPU 1020, a hard disk drive interface 1030, a disk drive interface 1040, a serial port interface 1050, a video adapter 1060, and a network interface 1070. However, each of these parts is connected by a bus 1080.
  • the memory 1010 includes a ROM (Read Only Memory) 1011 and a RAM 1012, as illustrated in FIG.
  • the ROM 1011 stores, for example, a boot program such as a BIOS (Basic Input Output System).
  • BIOS Basic Input Output System
  • the hard disk drive interface 1030 is connected to the hard disk drive 1090, as illustrated in FIG.
  • the disk drive interface 1040 is connected to the disk drive 1100, as illustrated in FIG.
  • a removable storage medium such as a magnetic disk or an optical disk is inserted into the disk drive 1100.
  • the serial port interface 1050 is connected to, for example, a mouse 1110 and a keyboard 1120, as illustrated in FIG.
  • the video adapter 1060 is connected, for example, to a display 1130, as illustrated in FIG.
  • the hard disk drive 1090 stores, for example, OS1091, application program 1092, program module 1093, and program data 1094. That is, the above-mentioned extraction program is stored in, for example, the hard disk drive 1090 as a program module in which instructions executed by the computer 1000 are described.
  • the various data described in the above embodiment are stored as program data in, for example, a memory 1010 or a hard disk drive 1090. Then, the CPU 1020 reads the program module 1093 and the program data 1094 stored in the memory 1010 and the hard disk drive 1090 into the RAM 1012 as needed, and executes various processing procedures.
  • the program module 1093 and program data 1094 related to the extraction program are not limited to the case where they are stored in the hard disk drive 1090, and may be stored in, for example, a removable storage medium and read by the CPU 1020 via a disk drive or the like. Good.
  • the program module 1093 and the program data 1094 related to the extraction program are stored in another computer connected via a network (LAN (Local Area Network), WAN (Wide Area Network), etc.), and are stored via the network interface 1070. It may be read by the CPU 1020.
  • LAN Local Area Network
  • WAN Wide Area Network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

情報処理装置(10)は、ディメンションテーブルにおける各レコードについて、主キー以外の特徴量が重複または類似しているレコードを集約したテーブルのレコード数をカウントする集約部(12)と、集約部(12)によってカウントされたレコード数に対するファクトテーブルのレコード数の比率が所定の閾値を超える場合には、集約したテーブルの外部キーをディメンションテーブルの特徴群の代表値として含む分析用データを抽出する抽出部(14)とを有する。

Description

情報処理装置、抽出方法および抽出プログラム
 本発明は、情報処理装置、抽出方法および抽出プログラムに関する。
 従来、機械学習では分析用データを抽出するための前処理として、データベースに格納された複数テーブルを主キーと外部キーを用いて結合処理を行い単一テーブルに変換する。また、機械学習モデルの予測精度向上のために抽出した全特徴量から予測したい特徴量に強い関連がある特徴量の組み合わせを選択する特徴選択を行う。これらの処理によって生じる遅延は、データサイズとともに増大し、大規模データを用いたデータ分析においては無視できないものとなっている。
 スタースキーマのデータ構造を持つデータベースにおいて,ファクトテーブルが持つ外部キーを,その外部キーが参照するディメンションテーブル内の全特徴量の代表とみなすことでテーブルの結合処理を一部省略する手法がある(例えば、非特許文献1、2参照)。手法が適用可能かの判定は、Tuple Ratio(TR)というファクトテーブルのレコード数nと外部キーが指すレコードの総数、すなわちディメンションテーブルのレコード数nの比を指標値として行う。nがnより十分大きい(例えば、n/n>20)場合、テーブルの結合を省略しても機械学習モデルの精度が低下する可能性は限りなく低いため、外部キーをディメンションテーブルの特徴群の代表値として特徴量を削減することで、機械学習の前処理で特に時間がかかる特徴選択処理時間の削減が望める。
A. Kumar, J. Naughton, J. M. Patel, and X. Zhu. "To Join or Not to Join? Thinking Twice about Joins before Feature Selection" In SIGMOD, 2016. pp. 19-34. V. Shah, A. Kumar, and X. Zhu. "Are Key-Foreign Key Joins Safe to Avoid when Learning High-Capacity Classifiers?" PVLDB, vol.11, no.3, pp.366-379, 2017.
 しかしながら、従来の手法では、特徴選択にかかる時間を削減することができない場合があるという課題があった。例えば、従来の手法では、機械学習モデルの精度を保ちつつ、結合処理を省略するためには、n/n>20の条件を満たす必要があるため、手法が適用できないケースが存在する。
 上述した課題を解決し、目的を達成するために、本発明の情報処理装置は、ディメンションテーブルにおける各レコードについて、主キー以外の特徴量が重複または類似しているレコードを集約したテーブルのレコード数をカウントする集約部と、前記集約部によってカウントされたレコード数に対するファクトテーブルのレコード数の比率が所定の閾値を超える場合には、前記集約したテーブルの外部キーを前記ディメンションテーブルの特徴群の代表値として含む分析用データを抽出する抽出部とを有することを特徴とする。
 本発明によれば、より多くのケースに対して特徴選択にかかる時間を削減することができるという効果を奏する。
図1は、第1の実施形態に係る情報処理装置の構成例を示すブロック図である。 図2は、映画の評価予測データセットの一例を示す図である。 図3は、集約したテーブルのレコード数を算出する処理例を説明する図である。 図4は、集約したテーブルのレコード数を算出する処理例を説明する図である。 図5は、分析用データセットを抽出する処理例を説明する図である。 図6は、第1の実施形態に係る情報処理装置における処理の流れの一例を示すフローチャートである。 図7は、抽出プログラムを実行するコンピュータを示す図である。
 以下に、本願に係る情報処理装置、抽出方法および抽出プログラムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態により本願に係る情報処理装置、抽出方法および抽出プログラムが限定されるものではない。
[分析用データ抽出処理]
 ここでは、まず、分析用データを抽出する処理についての前提となる技術を説明する。一般に予測モデル構築のワークフローでは、分析用データを抽出するためにデータベース上に格納された複数のテーブルに分散して保存されているデータを結合して単一のテーブルにまとめるデータ抽出処理を行う。Sをファクトテーブル、Yを予測したい特徴量、XをSの特徴群、kをSが持つ外部キーの総数、FKをi(1≦i≦k)番目の外部キー、Rをi番目のディメンションテーブル、RIDをRの主キー、XRiをRの特徴群とすると、情報処理装置は、下記表1のようなSQLクエリをデータベースに入力して分析用データを抽出する。
Figure JPOXMLDOC01-appb-T000001
 その後、情報処理装置は、取得した分析用データT(Y,X,XR1,・・・,XRk)に対して、特徴選択を行いXとXの内からYに強い関連がある特徴量の組み合わせを抽出することで予測精度を高める。特徴選択の実現手法の例としてラッパー法とフィルター法の二つがあげられる。
 ラッパー法は、X、Xの部分集合を使って実際にモデルを作り、交差確認等で求めた汎化誤差を最小にする特徴群の部分集合を選択する手法である。また、フィルター法は、Yと各X,Xとの情報ゲインといった特徴量の良さの基準で部分集合を選択する手法である。一般に予測精度が高いラッパー法を用いることが多いが、特徴量の数が多いと部分集合の組み合わせ爆発が起こるため計算コストが大きく予測モデル構築ワークフローの中でも特にボトルネックになる。
 なお、上記した非特許文献1の手法では、FKをXRiの代表値として使用することで生じるモデル精度低下リスクを定量化している。これにより、精度への影響がすくない結合処理を省略することで特徴量を削減し、特徴選択における特徴組み合わせの計算コストを削減することでワークフローの高速化を可能にしている。SとRにおけるXRiをFKに変換した時のモデル精度低下のリスク指標値Tuple ratio(TR)は、nをSのレコード数、nRiをRのレコード数とした時、TR=n/nRiで表される(導出詳細は非特許文献1参照)。
 この手法を用いることで、下記(1)式の時、XRiをFKに変換することで高速化が可能だが、nがnRiより十分大きくないと適用することができず、手法が適用できないケースが多く存在する。
Figure JPOXMLDOC01-appb-M000002
 以下で説明する本実施形態では、情報処理装置が、TRを用いた手法において、XRiに対して重複あるいは類似したレコードを集約し、Rが保持する意味情報を保持しつつ、nを削減する。R´をRに対してXRiをキーに集約してレコードの削減を行ったディメンションテーブル、n´RiをR´のレコード数、FK´を集約されたR´の各グループを参照する外部キーとする。ここでTR´=n/n´Riとした時、特徴変換判定を下記(2)式のように定義する。
Figure JPOXMLDOC01-appb-M000003
 情報処理装置が、特徴変換判定の条件を満たした時にFK´をXRiの代表値として特徴変換を行う。ここで、n´Ri≦nRiなのでTRの適用範囲が増え、より多くのケースに対して精度を担保したまま特徴選択にかかる時間を削減することができる。つまり、nがn´Riより十分大きい(例えば、n/n´Ri>20)場合、テーブルの結合を省略しても機械学習モデルの精度が低下する可能性は限りなく低いため、外部キーをディメンションテーブルの特徴群の代表値として特徴量を削減することで、機械学習の前処理で特に時間がかかる特徴選択処理時間の削減が望める。
[第1の実施形態]
 以下の実施の形態では、第1の実施形態に係る情報処理装置10の構成、情報処理装置10の処理の流れを順に説明し、最後に第1の実施形態による効果を説明する。
[情報処理装置の構成]
 まず、図1を用いて、本実施形態の情報処理装置10を含むシステムの構成例を説明する。図1は、第1の実施形態に係る情報処理装置の構成例を示すブロック図である。なお、図1に示す構成は一例にすぎず、具体的な構成は特に限定されない。
 図1に例示するように、情報処理装置10は、クエリ入力部11、集約部12、データベース13、抽出部14、データベース15、特徴選択部16およびモデル学習部17を有する。
 クエリ入力部11、集約部12、抽出部14、特徴選択部16およびモデル学習部17は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、クエリ入力部11、集約部12、抽出部14、特徴選択部16およびモデル学習部17は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等の電子回路や、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の集積回路である。
 また、データベース13、15は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置である。データベース13、15は、RAM(Random Access Memory)、フラッシュメモリ、NVSRAM(Non Volatile Static Random Access Memory)等のデータを書き換え可能な半導体メモリであってもよい。
 クエリ入力部11は、分析用データ取得のためのクエリの入力を受け付け、受け付けたクエリをそのまま集約部12および抽出部14に出力する。例えば、クエリ入力部11は、分析用データ取得のためのクエリとして、前述の表1に例示するようなクエリの入力を受け付け、集約部12および抽出部14に出力する。
 集約部12は、ディメンションテーブルにおける各レコードについて、主キー以外の特徴量が重複または類似しているレコードを集約したテーブルのレコード数をカウントする。具体的には、集約部12は、クエリ入力部11によって分析用データを取得するためのクエリの入力が受け付けられた場合に、主キー以外の特徴量が同一のレコードまたは類似のレコードを除去したテーブルのレコード数をカウントする。
 例えば、集約部12は、クエリ入力部11に入力されたクエリ中でSとRに対する結合処理、すなわちWhere句にS.FK=R.RIDが含まれる場合、各Rに対してSELECT句に含まれていたXRiを集約キーとして重複または、類似レコードの集約を行う。そして、集約部12は、集約したテーブルR´のレコード数n´Riを算出して抽出部14に出力する。下記表2のSQL2に、Distinctを利用してRの重複レコードを除去した時のn´Ri算出クエリを示す。また、下記表3のSQL3に、Similarity Group by(下記の参考文献参考)を利用してRの類似レコードを除去した時のn´Ri算出クエリを示す。
参考文献:M. Tang, R. Y. Tahboub, W. G. Aref, M. J. Atallah, Q. M. Malluhi, M. Ouzzani, and Y. N. Silva. “Similarity group-by operators for multi-dimensional relational data.” IEEE TKDE, pp.510-523, 2016.
Figure JPOXMLDOC01-appb-T000004
Figure JPOXMLDOC01-appb-T000005
 抽出部14は、集約部12によってカウントされたレコード数に対するファクトテーブルのレコード数の比率が所定の閾値を超える場合には、集約したテーブルの外部キーをディメンションテーブルの特徴群の代表値として含む分析用データセットを抽出する。また、抽出部14は、集約部12によってカウントされたレコード数に対するファクトテーブルのレコード数の比率が所定の閾値を超えない場合には、クエリ入力部11が受け付けたクエリをそのまま用いて、複数テーブルを結合し、分析用データセットを抽出する。
 例えば、抽出部14は、まず、データベース13からファクトテーブルのレコード数nを取得する。データベース13は、ファクトテーブルのレコード数nを記憶する。そして、抽出部14は、集約したテーブルR´のレコード数n´Riとファクトテーブルのレコード数nからTR´=n/n´Riを算出し、算出したTR´が20を超えているか否かを判定する特徴変換判定を行う。
 抽出部14は、いずれのTR´も条件を満たさない場合は、クエリ入力部11が受け付けた分析用データ取得のためのクエリをそのままデータベース15に入力し、分析用データを抽出する。データベース15は、ファクトテーブルおよびディメンションテーブルを記憶する。また、抽出部14は、条件を満たしたTR´が一つでもある場合はクエリ入力部11で入力されたクエリ中に含まれるXRiをFK´に変換して抽出する特徴量を削減したクエリを出力する。
 下記の表4のSQL4に、重複レコードを除去し、1,・・・,kの全Rについて条件を満たした時にSQL1の各XRiをFK´に変換したクエリ例を示す。また、表5のSQL5に、類似レコードを除去し、1,・・・,kの全Rについて条件を満たした時にSQL1の各XRiをFK´に変換したクエリ例を示す。
Figure JPOXMLDOC01-appb-T000006
Figure JPOXMLDOC01-appb-T000007
 特徴選択部16は、抽出部14によって抽出された分析用データに対して所定の特徴選択手法を用いて、特徴群の部分集合を選択する。例えば、特徴選択部16は、分析用データを取得し、分析用データに対してラッパー法やフィルター法を用いて特徴選択を行い、特徴群の中から汎化誤差を最小にするような特徴群の部分集合を選択してモデル学習部17に出力する。
 モデル学習部17は、特徴選択部16によって選択された特徴群の部分集合のデータを用いて、機械学習モデルを生成する。例えば、モデル学習部17は、最良の特徴群の部分集合のデータを用いて、ロジスティック回帰やSVM(Support Vector Machine)といった機械学習モデルを生成して出力する。
[分析用データの抽出処理例]
 ここで、図2のデータセットに対して情報処理装置10を適用した時の分析用データを抽出するまでの一連の処理について説明する。図2は、映画の評価予測データセットの一例を示す図である。ここでは、データセットから映画の評価(Raiting)をRとRの特徴群から予測するモデルを作成する場合の例を説明する。
 まず、クエリ入力部11は、分析用データ取得のために、図2のデータセットを結合して予測したい特徴量Yと予測に用いる特徴群Xを取得するクエリSQL6(下記の表6参照)を入力として受け付けそのまま集約部12および抽出部14に出力する。SQL6の各変数をSQL1の変数で言い換えるとそれぞれk=2、Y={Rating}、X={φ}、XR1={Year,Genre}、XR2={Sex,Age,Income}、RID={MovieID}、 RID={UserID}となる。
Figure JPOXMLDOC01-appb-T000008
 ここでは、集約部12が、Rに対しては重複レコード,Rに対しては類似レコードの集約処理を行い重複、類似レコードの削減を行う場合の例について説明する。下記の表7におけるSQL7にDistinctを利用してRの重複レコードを除去した時のn´R1算出クエリを例示する。図3に例示するように、集約部12は、このn´R1算出クエリを用いて、n´R1=6を算出する。
Figure JPOXMLDOC01-appb-T000009
 また、下記の表8におけるSQL8にSimilarity Group byを利用してRの類似レコードを除去した時のn´R2算出クエリを例示する。図4に例示するように、集約部12は、このn´R2算出クエリを用いて、n´R2=4を算出する。図3および図4は、集約したテーブルのレコード数を算出する処理例を説明する図である。
Figure JPOXMLDOC01-appb-T000010
 そして、抽出部14は、例えば、データベース13からn=150を取得し、TR´'、TR´ともに特徴変換判定の条件を満たすか判定する。上記の例では、抽出部14は、TR´を算出するために、「TR´=n/n´R1」の式に従い、150/6=25を算出する。そして、抽出部14は、TR´=25であるため、所定の閾値である20を超えており、特徴変換判定の条件を満たしていると判定する。また、抽出部14は、TR´を算出するために、「TR´=n/n´R1」の式に従い、150/4=37.5を算出する。そして、抽出部14は、TR´=37.5であるため、所定の閾値である20を超えており、特徴変換判定の条件を満たしていると判定する。
 このため、抽出部14は、XR1={Year,Genre}、XR2={Sex,Age,Income}をFK´={MovieID´}、FK´={UserID´}にそれぞれ変換して、抽出する特徴量を削減したクエリをデータベース15に出力する。下記の表9に変換後のクエリ例を示す。
Figure JPOXMLDOC01-appb-T000011
 そして、抽出部14は、データベース15から図5のように{Rating,UserID,MovieID}の特徴群を持つ分析用データセットを抽出して特徴選択部16に出力する。これは従来取得するはずであった特徴群である{Rating,Year,Genre,Sex,Age,Income}より特徴量を削減できているため、後段の特徴選択処理の処理時間を大きく削減することができる。図5は、分析用データセットを抽出する処理例を説明する図である。
[情報処理装置の処理手順]
 次に、図6を用いて、第1の実施形態に係る情報処理装置10による処理手順の例を説明する。図6は、第1の実施形態に係る情報処理装置における処理の流れの一例を示すフローチャートである。
 まず、図6を用いて、クエリ入力部11が分析用データ取得のためのクエリの入力を受け付けると(ステップS101肯定)、集約部12は、ディメンションテーブルにおける各レコードについて、主キー以外の特徴量が重複または類似しているレコードを集約したテーブルのレコード数をカウントする(ステップS102)。例えば、集約部12は、クエリ入力部11に入力されたクエリ中でSとRに対する結合処理、すなわちWhere句にS.FK=R.RIDが含まれる場合、各Rに対してSELECT句に含まれていたXRiを集約キーとして重複または、類似レコードの集約を行い、集約したテーブルR´のレコード数n´Riをカウントする。
 そして、抽出部14は、集約部12によって集約されたテーブルのレコード数に対するファクトテーブルのレコード数の比率を算出し(ステップS103)、比率が20を超えているかを判定する(ステップS104)。つまり、抽出部14は、集約したテーブルR´のレコード数n´Riとファクトテーブルのレコード数nからTR´=n/n´Riを算出し、算出したTR´が20を超えているか否かを判定する特徴変換判定を行う。
 この結果、抽出部14は、比率が20を超えていると判定した場合には(ステップS104肯定)、集約したディメンションテーブルの外部キーをディメンションテーブルの特徴群の代表値として含む分析用データを抽出する(ステップS105)。また、抽出部14は、比率が20を超えていないと判定した場合には(ステップS104否定)、複数テーブルを結合し、分析用データを抽出する(ステップS106)。つまり、抽出部14は、クエリ入力部11が受け付けた分析用データ取得のためのクエリをそのままデータベース15に入力し、分析用データを抽出する。
 そして、特徴選択部16は、分析用データに対して特徴選択を行い、特徴群の部分集合を選択する(ステップS107)。例えば、特徴選択部16は、分析用データを取得し、分析用データに対してラッパー法やフィルター法を用いて特徴選択を行い、特徴群の中から汎化誤差を最小にするような特徴群の部分集合を選択する。
 その後、モデル学習部17は、特徴群の部分集合のデータを用いて、機械学習モデルを生成する(ステップS108)。例えば、モデル学習部17は、最良の特徴群の部分集合のデータを用いて、ロジスティック回帰やSVM(Support Vector Machine)といった機械学習モデルを生成する。
[第1の実施形態の効果]
 このように、第1の実施形態に係る情報処理装置10は、ディメンションテーブルにおける各レコードについて、主キー以外の特徴量が重複または類似しているレコードを集約したテーブルのレコード数をカウントする集約部12と、集約部12によってカウントされたレコード数に対するファクトテーブルのレコード数の比率が所定の閾値を超える場合には、集約したテーブルの外部キーをディメンションテーブルの特徴群の代表値として含む分析用データを抽出する抽出部14とを有する。このため、第1の実施形態に係る情報処理装置10では、より多くのケースに対して特徴選択にかかる時間を削減することが可能である。
 つまり、情報処理装置10は、集約したテーブルR´のレコード数n´Riをカウントしている。n´Ri≦nRiである。このため、情報処理装置10では、TRを用いた手法の適用範囲が増え、より多くのケースに対して精度を担保したまま特徴選択にかかる時間を削減することができる。また、第1の実施形態に係る情報処理装置10では、特徴量を削減できるため、特徴選択処理の処理時間を削減することが可能である。
(システム構成等)
 また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
 また、本実施の形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
(プログラム)
 また、上記実施形態において説明した情報処理装置が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。例えば、実施形態に係る情報処理装置10が実行する処理をコンピュータが実行可能な言語で記述した抽出プログラムを作成することもできる。この場合、コンピュータが抽出プログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかる抽出プログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録された抽出プログラムをコンピュータに読み込ませて実行することにより上記実施形態と同様の処理を実現してもよい。
 図7は、抽出プログラムを実行するコンピュータを示す図である。図7に例示するように、コンピュータ1000は、例えば、メモリ1010と、CPU1020と、ハードディスクドライブインタフェース1030と、ディスクドライブインタフェース1040と、シリアルポートインタフェース1050と、ビデオアダプタ1060と、ネットワークインタフェース1070とを有し、これらの各部はバス1080によって接続される。
 メモリ1010は、図7に例示するように、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、図7に例示するように、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、図7に例示するように、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、図7に例示するように、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、図7に例示するように、例えばディスプレイ1130に接続される。
 ここで、図7に例示するように、ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、上記の、抽出プログラムは、コンピュータ1000によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ1090に記憶される。
 また、上記実施形態で説明した各種データは、プログラムデータとして、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020が、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出し、各種処理手順を実行する。
 なお、抽出プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してCPU1020によって読み出されてもよい。あるいは、抽出プログラムに係るプログラムモジュール1093やプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
 10 情報処理装置
 11 クエリ入力部
 12 集約部
 13、15 データベース
 14 抽出部
 16 特徴選択部
 17 モデル学習部

Claims (5)

  1.  ディメンションテーブルにおける各レコードについて、主キー以外の特徴量が重複または類似しているレコードを集約したテーブルのレコード数をカウントする集約部と、
     前記集約部によってカウントされたレコード数に対するファクトテーブルのレコード数の比率が所定の閾値を超える場合には、前記集約したテーブルの外部キーを前記ディメンションテーブルの特徴群の代表値として含む分析用データを抽出する抽出部と
     を有することを特徴とする情報処理装置。
  2.  前記集約部は、前記分析用データを取得するためのクエリの入力が受け付けられた場合に、主キー以外の特徴量が同一のレコードまたは類似のレコードを除去したテーブルのレコード数をカウントし、
     前記抽出部は、前記集約部によってカウントされたレコード数に対するファクトテーブルのレコード数の比率が所定の閾値を超えない場合には、前記クエリを用いて、前記分析用データを抽出することを特徴とする請求項1に記載の情報処理装置。
  3.  前記抽出部によって抽出された分析用データに対して所定の特徴選択手法を用いて、特徴群の部分集合を選択する特徴選択部と、
     前記特徴選択部によって選択された特徴群の部分集合のデータを用いて、学習モデルを生成するモデル学習部と
     をさらに有することを特徴とする請求項1に記載の情報処理装置。
  4.  情報処理装置によって実行される抽出方法であって、
     ディメンションテーブルにおける各レコードについて、主キー以外の特徴量が重複または類似しているレコードを集約したテーブルのレコード数をカウントする集約工程と、
     前記集約工程によってカウントされたレコード数に対するファクトテーブルのレコード数の比率が所定の閾値を超える場合には、前記集約したテーブルの外部キーを前記ディメンションテーブルの特徴群の代表値として含む分析用データを抽出する抽出工程と
     を含むことを特徴とする抽出方法。
  5.  ディメンションテーブルにおける各レコードについて、主キー以外の特徴量が重複または類似しているレコードを集約したテーブルのレコード数をカウントする集約ステップと、
     前記集約ステップによってカウントされたレコード数に対するファクトテーブルのレコード数の比率が所定の閾値を超える場合には、前記集約したテーブルの外部キーを前記ディメンションテーブルの特徴群の代表値として含む分析用データを抽出する抽出ステップと
     をコンピュータに実行させることを特徴とする抽出プログラム。
PCT/JP2019/019191 2019-05-14 2019-05-14 情報処理装置、抽出方法および抽出プログラム Ceased WO2020230278A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/019191 WO2020230278A1 (ja) 2019-05-14 2019-05-14 情報処理装置、抽出方法および抽出プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/019191 WO2020230278A1 (ja) 2019-05-14 2019-05-14 情報処理装置、抽出方法および抽出プログラム

Publications (1)

Publication Number Publication Date
WO2020230278A1 true WO2020230278A1 (ja) 2020-11-19

Family

ID=73289135

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/019191 Ceased WO2020230278A1 (ja) 2019-05-14 2019-05-14 情報処理装置、抽出方法および抽出プログラム

Country Status (1)

Country Link
WO (1) WO2020230278A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160308898A1 (en) * 2015-04-20 2016-10-20 Phirelight Security Solutions Inc. Systems and methods for tracking, analyzing and mitigating security threats in networks via a network traffic analysis platform
JP2018106563A (ja) * 2016-12-27 2018-07-05 パナソニックIpマネジメント株式会社 情報分類方法、情報分類システム、及び情報分類プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160308898A1 (en) * 2015-04-20 2016-10-20 Phirelight Security Solutions Inc. Systems and methods for tracking, analyzing and mitigating security threats in networks via a network traffic analysis platform
JP2018106563A (ja) * 2016-12-27 2018-07-05 パナソニックIpマネジメント株式会社 情報分類方法、情報分類システム、及び情報分類プログラム

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BALDI, P. ET AL., A WEB DATA ANALYSIS USING STOCHASTIC MODELS FROM DATA MINING TECHNIQUES TO E-COMMERCE, FIRST EDITION, FIRST PRINTING, 31 May 2007 (2007-05-31), Tokyo, pages 112 - 114, ISBN: 978-4-627-09531-1 *
RASCHKA, S. ET AL., THEORY AND PRACTICE BY PYTHON MACHINE LEARNING PROGRAMMING EXPERT DATA SCIENTIST, FIRST EDITION, 6TH PRINTING, 11 April 2017 (2017-04-11), Tokyo, pages 107 - 119, ISBN: 978-4-8443-8060-3 *
SHIMURA, MINORU ET AL.: "A learning method from database considering the structure of RDB", PROCEEDINGS OF THE 80TH (2018) NATIONAL CONVENTION OF IPSJ (1), 13 March 2018 (2018-03-13), pages 1 - 457 *

Similar Documents

Publication Publication Date Title
WO2022142027A1 (zh) 基于知识图谱的模糊匹配方法、装置、计算机设备和存储介质
US10878000B2 (en) Extracting graph topology from distributed databases
US12406006B2 (en) Graph data query
US10810197B2 (en) Method and database computer system for performing a database query using a bitmap index
US9477729B2 (en) Domain based keyword search
US20130254171A1 (en) Query-based searching using a virtual table
US11720563B1 (en) Data storage and retrieval system for a cloud-based, multi-tenant application
US20140149433A1 (en) Estimating Unique Entry Counts Using a Counting Bloom Filter
US11288266B2 (en) Candidate projection enumeration based query response generation
US20090012977A1 (en) System for estimating cardinality in a database system
CN114238389A (zh) 数据库查询优化方法、装置、电子设备、介质和程序产品
CN118689992A (zh) 一种基于大语言模型的表格内容rag客服问答方法
CN116245580A (zh) 数据资产价值获取方法、装置、设备、介质和程序产品
CN111198847A (zh) 一种适用于大数据集的数据并行处理方法、装置及系统
CN115794833A (zh) 数据处理方法、服务器和计算机存储介质
CN115617978A (zh) 指标名称检索方法、装置、电子设备及存储介质
WO2012102860A1 (en) Creating benchmark graph data
Traina et al. Querying on large and complex databases by content: Challenges on variety and veracity regarding real applications
US20180341709A1 (en) Unstructured search query generation from a set of structured data terms
CN111611786A (zh) 文本相似度的计算方法及装置
US9830355B2 (en) Computer-implemented method of performing a search using signatures
US20220043592A1 (en) Information processing device and non-transitory computer-readable storage medium
Shaabani et al. Incremental discovery of inclusion dependencies
WO2020230278A1 (ja) 情報処理装置、抽出方法および抽出プログラム
CN113505172A (zh) 数据处理方法、装置、电子设备及可读存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19928462

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19928462

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP