Information processing device, information processing method, and information processing program

The information processing system addresses the lack of entity-based searches by performing arithmetic operations on entity vectors, using user-preference aligned vector embedding to enhance the relevance and accuracy of search results.

JP2026089285APending Publication Date: 2026-06-01LY CORP

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
LY CORP
Filing Date
2024-11-20
Publication Date
2026-06-01

AI Technical Summary

Technical Problem

Existing systems fail to effectively search for and return search results based on entities within a service, lacking consideration for entities that appear in services and failing to provide subjective results aligned with user preferences.

Method used

An information processing system that performs arithmetic operation searches on entity vectors, using a UI to input and display calculation formulas, and returns search results as entities, incorporating user preferences through vector embedding and learning.

Benefits of technology

Enables a system that performs searches for entities and returns relevant results based on user preferences, enhancing the accuracy and relevance of entity-based searches.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026089285000001_ABST
    Figure 2026089285000001_ABST
Patent Text Reader

Abstract

This system performs searches related to entities and returns the search results as entities. [Solution] The information processing device according to the present invention is characterized by comprising: a UI display control unit that displays a UI for arithmetic operation search; a search execution unit that performs an arithmetic operation search based on an entity's calculation formula when the entity's calculation formula is entered into the UI for arithmetic operation search; and a result display control unit that displays the entity returned as a result of the arithmetic operation search based on the entity's calculation formula on the UI for arithmetic operation search.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an information processing apparatus, an information processing method, and an information processing program.

Background Art

[0002] There is disclosed a technique in which the meaning of a word included in a sentence is embedded in a vector space by embedding, each word is represented by a vector, elements of the vectors of each word are subtracted or added to create a new vector, and a word having a vector closest (in terms of a similarity measure) to the vector is searched (see Patent Document 1).

Prior Art Documents

Non-Patent Documents

[0003]

Non-Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] However, simply searching for words included in a sentence cannot search for entities that appear in a service. In the above-mentioned conventional technology, consideration is given to searching for words included in a sentence, but no consideration is given at all to searching for entities that appear in a service, and there is room for improvement in this regard. That is, at present, there is no system that performs searches related to various entities and returns search results in terms of entities.

[0005] This application was made in view of the above, and aims to realize a system that performs a search for entities and returns the search results as entities. [Means for solving the problem]

[0006] The information processing device according to the present application is characterized by comprising: a UI display control unit that displays a UI for arithmetic operation search; a search execution unit that performs an arithmetic operation search based on an entity's calculation formula when the entity's calculation formula is input to the UI for arithmetic operation search; and a result display control unit that displays the entity returned as a result of the arithmetic operation search based on the entity's calculation formula on the UI for arithmetic operation search. [Effects of the Invention]

[0007] According to one embodiment, a system can be realized that performs a search for entities and returns the search results as entities. [Brief explanation of the drawing]

[0008] [Figure 1] Figure 1 is an explanatory diagram showing an overview of the information processing system according to the embodiment. [Figure 2] Figure 2 shows an example of addition and subtraction in arithmetic operation searches. [Figure 3] Figure 3 shows an example of multiplication and division in arithmetic operation searches. [Figure 4] Figure 4 shows examples of multiplication and division related to gags. [Figure 5] Figure 5 shows an example of the author's arithmetic operation search. [Figure 6] Figure 6 shows an example of the UI display for a user-defined formula collection. [Figure 7] Figure 7 shows an example of how the correct / incorrect check button is displayed. [Figure 8] Figure 8 shows an example of the configuration of a terminal device according to an embodiment. [Figure 9]Figure 9 shows an example of the configuration of a server device according to this embodiment. [Figure 10] Figure 10 is a flowchart showing the processing procedure for arithmetic operation search according to the embodiment. [Figure 11] Figure 11 is a flowchart showing the processing procedure for learning arithmetic formulas according to the embodiment. [Figure 12] Figure 12 is a flowchart showing the processing procedure for learning an unknown entity according to the embodiment. [Figure 13] Figure 13 is a flowchart showing the learning process for correct / incorrect feedback according to the embodiment. [Figure 14] Figure 14 shows an example of a hardware configuration. [Modes for carrying out the invention]

[0009] The following describes in detail, with reference to the drawings, embodiments for implementing the information processing device, information processing method, and information processing program according to the present application (hereinafter referred to as "embodiments"). Note that these embodiments do not limit the information processing device, information processing method, and information processing program according to the present application. Furthermore, the same parts are denoted by the same reference numerals in the following embodiments, and redundant descriptions are omitted.

[0010] [1. Overview of the Information Processing System] First, with reference to Figure 1, an overview of the information processing system according to the embodiment will be described. Figure 1 is an explanatory diagram showing an overview of the information processing system according to the embodiment. As shown in Figure 1, the information processing system 1 according to the embodiment includes a terminal device 10 and a server device 100. The terminal device 10 and the server device 100 are connected to each other via a network N, either by wired or wireless means, enabling communication between them. This allows the terminal device 10 to cooperate with the server device 100. The network N is, for example, a LAN (Local Area Network), a WAN (Wide Area Network), or the Internet.

[0011] The terminal device 10 is an information processing device used by the user U. For example, the terminal device 10 is a smart device such as a smartphone (smartphone) or a tablet terminal, a PC (Personal Computer) such as a desktop type or a notebook (laptop) type, a mobile phone such as a feature phone (galaxy phone), a PDA (Personal Digital Assistant), a game machine or an AV device equipped with a communication function, an information home appliance or a digital home appliance, a car navigation system, a wearable device (Wearable Device) such as a smart watch or a head-mounted display (HDD), a smart glass, etc. Further, the terminal device 10 may be a house or building, a vehicle, a home appliance product, an electronic device, etc. corresponding to the IOT (Internet of Things).

[0012] In this embodiment, the terminal device 10 is a smart device such as a smartphone or a tablet terminal used by the user U, and is a portable terminal device capable of communicating with an arbitrary server device via a wireless communication network such as LTE (Long Term Evolution), 4G (4th Generation), 5G (5th Generation: 5th generation mobile communication system), Bluetooth (registered trademark), or a wireless LAN. Further, the terminal device 10 has a screen such as a liquid crystal display and has a screen having a touch panel function, and receives various operations on display data such as content, such as a tap operation, a slide operation, and a scroll operation, from the user U using a finger or a stylus. Among the screens, an operation performed on the area where the content is displayed may be regarded as an operation on the content. Further, the terminal device 10 may be not only a smart device but also an information processing device such as a desktop PC or a notebook PC.

[0013] The server device 100 is, for example, a computer such as a PC or a blade server, or a mainframe or a workstation. Note that the server device 100 may be realized by cloud computing.

[0014] In this embodiment, the server device 100 is an information processing device that cooperates with the terminal devices 10 of each user U and provides API (Application Programming Interface) services and various data to the terminal devices 10 of each user U, and is realized by a computer, a cloud system, or the like.

[0015] Further, the server device 100 may be an information processing device that provides some online service to the terminal device 10 of each user U. For example, as an online service, the server device 100 may provide services such as Internet connection, search service, advertisement distribution service, chat service, dialogue service by voice, image, video, etc., SNS (Social Networking Service), electronic commerce (EC: Electronic Commerce), electronic payment, online game, online banking, online trading, accommodation and ticket reservation, video and music distribution, news, map, route search, route guidance, route information, operation information, weather forecast, etc. Actually, the server device 100 may cooperate with various servers that provide the above online services and mediate the online services, or be responsible for the processing of the online services.

[0016] Note that the server device 100 can acquire user information regarding the user U. For example, as user information, the server device 100 acquires information (attribute information) regarding the attributes of the user U, such as the gender, age, and residential area of the user U. Further, the server device 100 can acquire information regarding attributes such as the demographics (demographic attributes), psychographics (psychological attributes), geographics (geographical attributes), and behavioral (behavioral attributes) of the user U. Further, the server device 100 may acquire, as user information, the segment or persona (person image) to which the user U belongs in the field of marketing. Then, the server device 100 stores and manages the information (attribute information) regarding the attributes of the user U together with the identification information (user ID, etc.) indicating the user U.

[0017] Furthermore, the server device 100 acquires various historical information (log data) indicating user U's actions from user U's terminal device 10, or from various servers based on the user ID, etc. For example, the server device 100 acquires location history, which is the history of user U's location and date and time, from the terminal device 10. The server device 100 also acquires search history, which is the history of search queries entered by user U, from the search server (search engine). The server device 100 also acquires browsing history, which is the history of content viewed by user U, from the content server. The server device 100 also acquires purchase history (payment history), which is the history of user U's product purchases and payment processing, from the e-commerce server or payment processing server. The server device 100 may also acquire listing history and sales history, which are the history of user U's listings on the marketplace, from the e-commerce server or payment processing server. The server device 100 also acquires posting history, which is the history of user U's posts, from posting servers that provide word-of-mouth posting services or SNS servers. The various servers mentioned above may also be the server device 100 itself. In other words, the server device 100 may function as the various servers mentioned above.

[0018] Furthermore, the number of devices included in the information processing system 1 shown in Figure 1 is not limited to those illustrated. For example, in Figure 1, only one terminal device 10 is shown for the sake of illustration, but this is merely an example and not limiting; there may be two or more.

[0019] [2. Search for basic arithmetic operations] [2-1. System details for arithmetic operation search] Prior to describing this embodiment, the current technology is described in "T. Mikolov, WT Yih, G. Zweig. Linguistic Regularities in Continuous Space Word Representations. NAACL HLT 2013."<URL:https: / / aclanthology.org / N13-1090.pdf> I will explain this using the famous "King-Man + Woman = Queen" analogy.

[0020] The above technology utilizes embedding (vectorization) techniques to embed the meaning of words in a text into a vector space using machine learning, representing each word as a vector (embedded vector / vectorized data). Then, elements of each word's vector are subtracted or added (King-Man+Woman) to create a new vector, and the word with the vector closest to that vector (on a similarity scale) is searched for (=Queen).

[0021] In natural language processing, embedding refers to the process of arranging natural language information, such as words and sentences, into a vector space that represents the meaning of those words and sentences. Generally, it involves converting text data, image data, or audio data into numerical vector representations that are easily processed by computers, AI (Artificial Intelligence), machine learning, or language models.

[0022] However, while the "King-Man + Woman = Queen" formula in the above technology aims to return general and objective results, the search for entities appearing in a service aims to return subjective results based on the preferences of the users involved with that service. Furthermore, the above technology collects a language corpus for training purposes, but the system according to this embodiment differs in that it collects subjective opinions based on the user's preferences for training purposes to achieve that objective.

[0023] In this embodiment, instead of words contained in a text, a system and UI (user interface) are realized that use vectors of entities that appear in the service to return a group of entities that closely match the intent of the user-defined arithmetic operations (addition, subtraction, multiplication, and division). Specifically, in this embodiment, various entities such as works, authors, publishers, genres, years, or natural language tags describing them are converted into numerical vector representations, arithmetic operations are performed on the vectors of entities, and the results are returned as entities such as works, authors, publishers, genres, years, or natural language tags describing them.

[0024] The system and UI will combine "works" and "genres," for example, when searching for "O●EP●ECE" x "sports" in manga, it will return works that users who like both would enjoy, such as "Weak●P●L", "M●JOR", or "A●Seal●21". Note that some names will be redacted here.

[0025] The "works preferred by users who like both" can be changed depending on the embedding learning method. In other words, the meaning of the entity vector changes depending on how the embedding learning is done. Therefore, if you use a vector of "work style" instead of a vector of "user preference" as the entity vector, you will perform arithmetic searches from a style perspective.

[0026] In this embodiment, manga is used as an example, but in reality, arithmetic search can be provided for services where entities (works, authors, publishers, genres, eras, or natural language tags describing them) exist, not just manga, but also novels (including light novels), illustrations, anime, dramas, movies, games, music, stickers, etc. Theoretically, it can be provided for copyrighted works and creative works in general. Furthermore, it can be provided not only for copyrighted works and creative works, but also for individuals and groups where entities exist, such as idols, talents, actors, comedians, musicians, and athletes. In other words, the fields in which arithmetic search according to this embodiment can be provided are wide-ranging.

[0027] [2-2. UI for arithmetic operation search] User U's terminal device 10 communicates with server device 100 via network N and displays a UI for arithmetic operation searches in a browser or application. Server device 100 communicates with user U's terminal device 10 via API through the browser or application, performs an arithmetic operation search based on the content entered in the arithmetic operation search UI, and returns the search results. User U's terminal device 10 then displays the search results in the arithmetic operation search UI. In other words, the arithmetic operation search UI also functions as a search engine.

[0028] This arithmetic search UI provides a field for entering the calculation formula of an entity, a set of commands related to arithmetic operations, and a UI that displays the calculation result. In the example in Figure 1, the arithmetic search UI has a calculation formula input field F, a set of commands B, a result display area R, and SNS buttons H.

[0029] The calculation formula input field F is an input field for entering calculation formulas for entities for arithmetic operation searches, and provides input assistance such as predictive text when user U enters entities. The user U's terminal device 10 may, either on-device or in conjunction with the server device 100, perform different predictive text for each of the following: addition "+", subtraction "-", multiplication "×", and division "÷". In other words, the content of the predictive text may be changed depending on whether addition "+", subtraction "-", multiplication "×", or division "÷" is entered when a calculation formula is entered.

[0030] For example, for predictive conversion, it may be a predictive conversion pattern where when "● send" is typed, "● reel" is automatically predicted (Pattern 1). Also, after entering "● send ● reel" and then entering "+", a plurality of other titles that are often added up with "● send ● reel" are displayed in the multiple input candidate fields, and in the case of "×", a plurality of other titles that are often multiplied are displayed in the multiple input candidate fields. This may also be a predictive conversion pattern (Pattern 2). Note that "+" and "×" are just examples. The same applies to "-" and "÷". That is, optimal predictive conversion may be performed individually for each of the four arithmetic operations.

[0031] Also, in combination with the above two patterns, after entering "● send ● reel" and then entering "+", if one more character is typed, it may be a pattern where titles starting with that one character among the titles that are often added up with "● send ● reel" appear in the order of being often added up. For example, after entering "● send ● reel" and then entering "+", if "wa" is typed, titles starting with "wa" among the titles that are often added up with "● send ● reel" may appear in the order of being often added up. That is, the order of input (conversion) candidates may be determined based on the relationship with the titles previously entered.

[0032] Also, different predictive conversions may be performed according to the combination of the four arithmetic operations. For example, different titles may be displayed in the multiple input candidate fields when "+" is entered first and then "+" is entered again, and when "×" is entered first and then "+" is entered. However, the above is just an example. In reality, it is not limited to the above example.

[0033] Command group B includes a command input button. Here, command group B includes a pull-down button B1, a four arithmetic operation button B2, and a determination button B3 as command input buttons.

[0034] The pull-down button B1 is a drop-down list used to specify the type of entity to display in the results. In other words, the pull-down button B1 is used to specify the type of entity to display in the results display area R, which will be described later, prior to the arithmetic operation search. This may result in the specified entity type being entered into the calculation formula input box F, or it may result in only the results display area R being displayed with respect to the specified entity type. In the example in Figure 1, the pull-down button B1 displays "Works".

[0035] The arithmetic operation button B2 includes buttons for inputting addition ("+"), subtraction ("-"), multiplication ("×"), and division ("÷") into the formula input box F. Note that arithmetic operations can also be entered manually. That is, it is possible to directly input a formula into the formula input box F without using the command input buttons.

[0036] At this time, the user U's terminal device 10 may, either on-device or in cooperation with the server device 100, perform different predictive text in the calculation formula input box F depending on the type of button selected (pressed) by the user U from among the arithmetic operation buttons B2. That is, the content of the predictive text in the calculation formula input box F may be changed depending on whether addition "+", subtraction "-", multiplication "×", or division "÷" is selected (pressed).

[0037] The B3 button is used to perform arithmetic operations and searches. In the example in Figure 1, the B3 button is labeled "Enter." In other words, the B3 button corresponds to the Enter key. In practice, the Enter key on a keyboard or other device can be used as a substitute.

[0038] The result display area R is the area for displaying the results of arithmetic operations. Here, entities such as works and authors are displayed within the frame of the result display area R. In the example in Figure 1, nine display areas (display frames) are shown. However, in practice, the number of display areas is arbitrary.

[0039] Furthermore, the user U's terminal device 10 may display the result display area R in an operable (clickable) manner, and when the result display area R is operated (clicked), it may transition to a website or web page related to the entity (publisher's site, work page, etc.), or it may input the entity into the calculation formula input field F to make it part (or all) of a new calculation formula and perform a search.

[0040] SNS button H is a share button for sharing calculation formulas from arithmetic operations searches, as well as entities such as works and authors displayed as results of those searches, on social media.

[0041] For example, as shown in Figure 1, user U's terminal device 10 communicates with server device 100 via network N and displays a UI for arithmetic operation search in a browser or application (step S1).

[0042] User U operates the terminal device 10 to input a calculation formula into the calculation formula input box F, either by manual input or by pressing the arithmetic operation button B2 (step S2). At this time, User U's terminal device 10 may perform different predictive text inputs each time addition "+", subtraction "-", multiplication "×", or division "÷" is entered.

[0043] When user U presses the OK button B3, the terminal device 10 of user U requests the server device 100 via the network N to perform an arithmetic operation search based on the entered calculation formula (step S3). At this time, user U's terminal device 10 may also transmit information indicating the entered calculation formula to the server device 100.

[0044] The server device 100 performs an arithmetic operation search based on the input calculation formula (step S4).

[0045] Then, the server device 100 returns the result of the arithmetic operation search to the requesting user U's terminal device 10 via the network N (step S5).

[0046] The user U's terminal device 10 displays entities such as works and authors as results of the arithmetic operation search in the result display area R of the UI for the arithmetic operation search (step S6). At this time, if user U is not satisfied with the results of the arithmetic operation search, they may change the calculation formula and perform the search again. That is, user U's terminal device 10 may accept re-entry of the calculation formula in the calculation formula input frame F (return to step S2).

[0047] When user U presses the SNS button H, the terminal device 10 of user U shares the entities such as works and authors displayed as results of the arithmetic operation search on SNS (step S7).

[0048] Next, we will show the results of the arithmetic search, which was actually output using a vector embedded with user preferences learned for manga recommendation.

[0049] [2-3. Addition and Subtraction] Refer to Figure 2 to explain examples of addition and subtraction in arithmetic operation searches. Figure 2 is a diagram showing examples of addition and subtraction in arithmetic operation searches.

[0050] In arithmetic operations, addition strengthens the elements of a vector (embedded vector / vectorized data), while subtraction weakens the elements of the vector. As an example, let's explain the results for "●sou no ●riren - Sho●san●- + Weekly ●nen Jump". Because the vector used in this case has the user's preferences embedded in it, the search results will show works that people who like ●sou no ●riren (not Sho●san● works as a whole) and also like Shonen Jump works would like. In other words, as shown in Figure 2, the search results will show works where the elements of Sho●san● are removed from ●sou no ●riren and the elements of Shonen Jump are added.

[0051] [2-4. Multiplication and Division] Refer to Figure 3 to explain examples of multiplication and division in arithmetic operation searches. Figure 3 is a diagram showing examples of multiplication and division in arithmetic operation searches.

[0052] Multiplication strengthens the elements of a vector (embedded vector / vectorized data) more than addition does. However, multiplying negative values ​​strengthens the elements in the opposite direction, so general multiplication is not used. In arithmetic operations, "multiplication" is defined as first multiplying by an exponential function to eliminate negative values, performing the multiplication, and finally multiplying by a logarithmic function to return to a state where negative values ​​exist, as shown in Equation 1 below. Equation 1 is the calculation formula for multiplication of vectors. In Equation 1, negative values ​​are eliminated by multiplying by an exponential function, and after each operation, a logarithmic function is applied.

[0053]

number

[0054] Division weakens a divisor vector's elements more if those elements are large (above the first threshold) and strengthens them if they are very small (below the second threshold: first threshold >>> second threshold). Like multiplication, division becomes counterintuitive with negative values; therefore, we perform an operation to eliminate negative values, as shown in equation 2 below, and define this as "division" in arithmetic operations. Equation 2 is the calculation formula for division of vectors.

[0055]

number

[0056] Here, Figure 3 shows the results of performing the arithmetic operations on "O●EP●ECE × Sports" and "O●EP●ECE ÷ Sports". Figure 3(A) shows the result of multiplication. Figure 3(B) shows the result of division. The result of multiplication presents sports-themed manga. The result of division, since "O●EP●ECE" does not have any sports elements to begin with, presents works that readers who like "O●EP●ECE" are likely to like, without being significantly affected by the calculation.

[0057] [2-5. Multiplication and Division Related to Gags] Refer to Figure 4 to explain examples of multiplication and division related to gags. Figure 4 is a diagram showing examples of multiplication and division related to gags.

[0058] Here, Figure 4 shows the results of performing the arithmetic operations on "Bobo-bo-bo x gag" and "Bobo-bo-bo ÷ gag". Figure 4(A) shows the result of multiplication. Figure 4(B) shows the result of division. The result of multiplication strengthens the gag element, while the result of division weakens the gag element and presents a work with a stronger battle element.

[0059] [2-6. Search for the author's arithmetic operations] Refer to Figure 5 to explain an example of the author's arithmetic operation search. Figure 5 is a diagram showing an example of the author's arithmetic operation search.

[0060] Here, Figure 5 shows the results of performing arithmetic operations on "Ono Eiichiro - Weekly Jump (year unknown) + Shonen Sunday" and "Tori Akira - Weekly Jump (year unknown) + Shonen Sunday". Figure 5(A) shows the results for "Ono Eiichiro - Weekly Jump (year unknown) + Shonen Sunday". Figure 5(B) shows the results for "Tori Akira - Weekly Jump (year unknown) + Shonen Sunday". In each case, the results present authors who were active in the same era. For example, it can be seen that users tend to prefer authors who were active in the same era, such as Takahashi Yoshiko for Tori Akira.

[0061] [2-7. Others] The server device 100 may implement the above mechanism using an AI such as GPT (Generative Pre-trained Transformer). GPT is a text generation AI and a language model capable of generating text using natural language processing.

[0062] In this embodiment, user U's terminal device 10 works in cooperation with the server device 100 to perform arithmetic operations on entities. At this time, user U's terminal device 10 displays multiple content candidates that are candidates for calculation. Based on the content selected by user U from the content candidates, the input calculation content (any of the four arithmetic operations), and the input calculation target (another selected content candidate or gaze language), the server device 100 searches for other content of a similar type to the selected content and returns the search results to user U's terminal device 10. As a search result, user U's terminal device 10 displays the other content that the server device 100 has found.

[0063] At this time, user U's terminal device 10 may display the operation history of arithmetic operation searches. For example, user U's terminal device 10 may display past operation history related to arithmetic operation searches and reuse the operation history (re-execute the same operation) according to user U's selection or specification. In addition, user U's terminal device 10 may display suggestions based on the type of arithmetic operation. Furthermore, user U's terminal device 10 may display images of entity candidates.

[0064] [2-8. Input of Entity-Based Arithmetic Operations and Output of Resulting Entity Groups] In the above description, when an entity performs arithmetic operations, the server device 100 applies predictive conversion to predict input candidates for each arithmetic operation, thereby predicting input candidates. At this time, the server device 100 learns candidates from logs for addition and multiplication, and for subtraction and division, it outputs the closest entities in the entity vector space as candidates.

[0065] The server device 100 then embeds the selected entities from the candidates into a vector space and outputs a group of entities that closely match the result of the input arithmetic expression. The entities include works, authors, publishers, genres, years, and natural language tags that describe them. The vector space to which the entities are embedded is determined by learning information about the entities, such as user behavior history, images, and metadata.

[0066] However, in practice, the methods for inputting entity arithmetic operations and outputting the resulting entity set are not limited to the methods described above. For example, the following methods exist.

[0067] [2-8-1. Entity-based arithmetic operations considering unknown entities] When a user U inputs an unknown entity that does not exist in the embedded vector space of learned entities, the server device 100 calculates the vector of the unknown entity by aggregating the vectors of entities with similar linguistic meanings in an arbitrary way, and uses it for arithmetic operations.

[0068] For example, the server device 100 responds to unknown entities and to arbitrary natural language input from user U as follows.

[0069] (1) The server device 100 converts the entities in the input arithmetic expression into vectors using the embedded vector space of learned entities. If there are unknown entities, proceed to (2) below. If there are no unknown entities, proceed to (3) below.

[0070] (2) The server device 100 extracts a group of known entities that have a linguistic meaning similar to the unknown entity, using AI such as GPT or a language embedding vector space that has been previously learned from a large corpus. The server device 100 then calculates the vector of the unknown entity from the vectors in the embedding vector space of the extracted known entities using an arbitrary aggregation method such as a weighted average. After that, the process proceeds to (3).

[0071] (3) The server device 100 applies arithmetic operations to the obtained entity vectors to obtain a single vector. Then, the server device 100 extracts a group of entities from the entity embedding vector space that have vectors similar to that single vector.

[0072] [2-8-2. User-Defined Formulas] The server device 100 provides a user-defined formula collection UI in which user U can pre-set arithmetic formulas. User U's terminal device 10 communicates with the server device 100 via the network N and displays the user-defined formula collection UI in a browser or application. User U sets the arithmetic expressions of entities as formulas in the user-defined formula collection UI. The server device 100 uses the set formulas for learning. Figure 6 shows an example of the display of the user-defined formula collection UI.

[0073] For example, as shown in Figure 6, the user U's terminal device 10 communicates with the server device 100 via the network N and displays the UI of the user-defined formula collection in a browser or application. The UI of the user-defined formula collection includes a formula input field F, a result display area R, and an importance setting field D.

[0074] The formula input field F is an input field (input area) where user U enters formulas for arithmetic operations on entities for search purposes. In the user-defined formula collection UI, users can add or delete formulas of their own choosing using formula input field F to reflect their preferences in the search results. The formulas are used to train the model for entity arithmetic operations. Arithmetic formulas can be monomials, binomials, or polynomials. The formula entered in formula input field F becomes the left-hand side of the formula.

[0075] The result display area R is an area for displaying entities resulting from arithmetic operations based on the calculation formulas of the entities described above. Here, it is also possible to set any entity desired by the user U as a search result in the result display area R. The formula is defined as the combination of the calculation formula of the entity entered in the calculation formula input field F and the search result entity displayed in the result display area R. The entity displayed in the result display area R becomes the right-hand side of the formula.

[0076] The importance setting field D is an area where user U sets the importance level of the formula. The importance level of the formula set in the importance setting field D is used as the learning weight. For example, the importance setting field D may be a text box, a dropdown button, a checkbox, or a radio button. That is, the server device 100 may allow user U to directly input an importance value into a text box, select an appropriate importance level from a dropdown list, or select an appropriate importance level using a checkbox or radio button.

[0077] The configured formulas may be made public to other users. For example, user U may share the configured formulas with other users. In this case, the server device 100 may provide a share button for sharing the configured formulas in the UI of the user-defined formula collection. In this case, the server device 100 may provide a share button for sharing each configured formula.

[0078] The server device 100 performs fine-tuning using the configured formulas during training with a user-defined formula set. For example, the server device 100 fine-tunes the embedded model, which has been trained using information about entities such as user behavior history, images, and metadata, using the configured formulas. The server device 100 then trains the embedded model so that the vector calculated on the left side of the formula and the vector on the right side approach each other on an arbitrary scale.

[0079] [2-8-3. Correct / Incorrect Check Button] The server device 100 provides a correct / incorrect check button CB that allows user U to provide feedback on whether an entity in the arithmetic operation search results is correct or incorrect. User U's terminal device 10 communicates with the server device 100 via the network N and displays the correct / incorrect check button CB in a browser or application. User U uses the correct / incorrect check button CB to select correct or incorrect for an entity and provides feedback to the server device 100. The server device 100 uses the feedback log for learning. Figure 7 shows an example of how the correct / incorrect check button is displayed.

[0080] For example, as shown in Figure 7, the user U's terminal device 10 communicates with the server device 100 via the network N, and displays a true / false check button CB in each of the result display areas R that display the entities of the search results in the arithmetic operation search UI. In the example in Figure 7, the true / false check button CB is displayed in the lower right corner of each result display area R. Note that the display position of the true / false check button CB is arbitrary, as long as it is clear that it is linked to the result display area R.

[0081] At this time, the server device 100 provides a correct / incorrect check button CB, which is an intuitively easy-to-understand button, for example, "○" or "✓" for a correct answer and "×" for an incorrect answer. The user U uses the correct / incorrect check button CB to select whether an entity in the arithmetic operation search results is correct or incorrect and provides feedback of the correct / incorrect answer to the server device 100.

[0082] Server device 100 uses the feedback logs of correct / incorrect answers for the search result entities to train the entity embedding vector space. In learning through correct / incorrect checks, server device 100 uses the correct / incorrect feedback logs provided by user U to perform fine tuning and preference tuning. For example, server device 100 uses logs that only contain correct feedback "○" for fine tuning. Also, server device 100 uses logs that also contain incorrect feedback "×" for preference tuning.

[0083] In the field of large language models (LLMs), preference tuning techniques include RLHF (Reinforcement Learning from Human Feedback) and DPO (Direct Preference Optimization). These are used to tune models that predict subsequent tokens. In entity arithmetic embedding models, they are used to tune the model so that the vector calculated on the left-hand side of the formula and the vector of the entity with correct feedback converge on an arbitrary scale, while the vector of the entity with incorrect feedback diverges on an arbitrary scale.

[0084] [3. Example of terminal device configuration] Next, the configuration of the terminal device 10 will be described using Figure 8. Figure 8 is a diagram showing an example of the configuration of the terminal device 10 according to this embodiment. As shown in Figure 8, the terminal device 10 comprises a communication unit 11, a display unit 12, an input unit 13, a positioning unit 14, a sensor unit 20, a control unit 30 (controller), and a storage unit 40.

[0085] (Communications Section 11) The communication unit 11 is connected to the network N by wire or wireless connection and transmits and receives information to and from the server device 100 via the network N. For example, the communication unit 11 can be implemented using a NIC (Network Interface Card) or an antenna.

[0086] (Display section 12) The display unit 12 is a display device that displays various information such as location information. For example, the display unit 12 may be a liquid crystal display (LCD) or an organic electro-luminescent display (OLED). The display unit 12 may also be a touch panel display, but is not limited to this.

[0087] (Input section 13) The input unit 13 is an input device that receives various operations from the user U. For example, the input unit 13 has buttons for inputting characters, numbers, etc. The input unit 13 may also be an input / output port (I / O port) or a USB (Universal Serial Bus) port. If the display unit 12 is a touch panel display, a part of the display unit 12 functions as the input unit 13. The input unit 13 may also be a microphone that receives voice input from the user U. The microphone may be wireless.

[0088] (Positioning unit 14) The positioning unit 14 receives signals (radio waves) transmitted from GPS (Global Positioning System) satellites and, based on the received signals, acquires position information (e.g., latitude and longitude) indicating the current position of the terminal device 10. In other words, the positioning unit 14 determines the position of the terminal device 10. Note that GPS is just one example of a GNSS (Global Navigation Satellite System).

[0089] Furthermore, the positioning unit 14 can determine its position using various methods other than GPS. For example, the positioning unit 14 may use various communication functions of the terminal device 10 to determine its position as an auxiliary positioning means for position correction, etc., as described below.

[0090] (Wi-Fi positioning) For example, the positioning unit 14 determines the location of the terminal device 10 by utilizing the Wi-Fi® communication function of the terminal device 10 and the communication network provided by each telecommunications company. Specifically, the positioning unit 14 determines the location of the terminal device 10 by performing Wi-Fi communication, etc., and determining the distance to nearby base stations and access points.

[0091] (Beacon positioning) Furthermore, the positioning unit 14 may determine the location using the Bluetooth® function of the terminal device 10. For example, the positioning unit 14 determines the location of the terminal device 10 by connecting to a beacon transmitter connected via the Bluetooth® function.

[0092] (Geomagnetic positioning) Furthermore, the positioning unit 14 determines the position of the terminal device 10 based on the geomagnetic pattern of the structure, which has been measured in advance, and the geomagnetic sensor provided by the terminal device 10.

[0093] (RFID positioning) Furthermore, if, for example, the terminal device 10 is equipped with an RFID (Radio Frequency Identification) tag function equivalent to that of a contactless IC card used at a train station ticket gate or in a store, or if it is equipped with a function to read RFID tags, the location where it was used will be recorded along with the information on the payment or other transactions made by the terminal device 10. The positioning unit 14 may determine the location of the terminal device 10 by acquiring such information. Alternatively, the location may be determined by an optical sensor or infrared sensor equipped in the terminal device 10.

[0094] The positioning unit 14 may, if necessary, determine the position of the terminal device 10 using one or a combination of the positioning means described above.

[0095] (Sensor unit 20) The sensor unit 20 includes various sensors mounted on or connected to the terminal device 10. The connection can be wired or wireless. For example, the sensors may be detection devices other than the terminal device 10, such as wearable devices or wireless devices. In the example shown in Figure 8, the sensor unit 20 includes an acceleration sensor 21, a gyro sensor 22, a barometric pressure sensor 23, a temperature sensor 24, a sound sensor 25, a light sensor 26, a magnetic sensor 27, and an image sensor (camera) 28.

[0096] The sensors 21-28 described above are merely examples and not limiting. In other words, the sensor unit 20 may be configured to include some of the sensors 21-28, or it may include other sensors such as humidity sensors in addition to or instead of the sensors 21-28.

[0097] The acceleration sensor 21 is, for example, a 3-axis acceleration sensor and detects the physical movement of the terminal device 10, such as its direction of movement, velocity, and acceleration. The gyro sensor 22 detects the physical movement of the terminal device 10, such as its tilt in the three axes, based on its angular velocity. The barometric pressure sensor 23 detects the atmospheric pressure around the terminal device 10, for example.

[0098] Since the terminal device 10 is equipped with the acceleration sensor 21, gyroscope 22, barometric pressure sensor 23, etc., it becomes possible to determine the position of the terminal device 10 using technologies such as pedestrian dead-reckoning (PDR) that utilize these sensors 21 to 23. This makes it possible to obtain indoor location information that is difficult to obtain with positioning systems such as GPS.

[0099] For example, a pedometer using an accelerometer 21 can calculate the number of steps, walking speed, and distance walked. Additionally, a gyroscope 22 can be used to determine the user U's direction of movement, gaze direction, and body tilt. Furthermore, the barometric pressure detected by the barometric pressure sensor 23 can be used to determine the altitude and floor number of the user U's terminal device 10.

[0100] The temperature sensor 24 detects, for example, the ambient temperature around the terminal device 10. The sound sensor 25 detects, for example, the ambient sound around the terminal device 10. The light sensor 26 detects the ambient illumination around the terminal device 10. The magnetic sensor 27 detects, for example, the Earth's magnetic field around the terminal device 10. The image sensor 28 captures an image of the area around the terminal device 10.

[0101] The aforementioned pressure sensor 23, temperature sensor 24, sound sensor 25, light sensor 26, and image sensor 28 can detect the surrounding environment and conditions of the terminal device 10 by detecting atmospheric pressure, temperature, sound, and illuminance, respectively, and by capturing images of the surroundings. Furthermore, it becomes possible to improve the accuracy of the location information of the terminal device 10 based on the surrounding environment and conditions.

[0102] (Control Unit 30) The control unit 30 includes, for example, a microcomputer having a CPU (Central Processing Unit) or MPU (Micro Processing Unit), ROM (Read Only Memory), RAM (Random Access Memory), input / output ports, and various circuits. Alternatively, the control unit 30 may be composed of hardware such as an integrated circuit (ASIC) or FPGA (Field Programmable Gate Array). The control unit 30 includes a transmission unit 31, a reception unit 32, and a processing unit 33.

[0103] (Transmitter 31) The transmission unit 31 can transmit various information, such as information input by the user U using the input unit 13, various information detected by sensors 21-28 mounted on or connected to the terminal device 10, and location information of the terminal device 10 determined by the positioning unit 14, to the server device 100 via the communication unit 11.

[0104] (Receiving unit 32) The receiving unit 32 can receive various information provided by the server device 100, as well as requests for various information from the server device 100, via the communication unit 11.

[0105] (Processing 33) The processing unit 33 controls the entire terminal device 10, including the display unit 12. For example, the processing unit 33 can output and display various information transmitted by the transmission unit 31 and various information received from the server device 100 by the reception unit 32 to the display unit 12.

[0106] Furthermore, the processing unit 33 may function (operate) as a UI display control unit 33A, a conversion unit 33B, a search execution unit 33C, and a result display control unit 33D, as shown below, by launching an application or the like. In practice, the UI display control unit 33A and the result display control unit 33D may be the same display control unit. For convenience, they are described separately here as the UI display control unit 33A and the result display control unit 33D.

[0107] (UI display control unit 33A) The UI display control unit 33A displays a UI for arithmetic operation search on the display unit 12. The UI for arithmetic operation search accepts input of an entity's calculation formula from the user U via the input unit 13.

[0108] The UI for arithmetic operation search includes a formula input box F, arithmetic operation buttons B2, and a result display area R. The formula input box F is a box for entering the formula of an entity for arithmetic operation search, and provides input assistance, including predictive text, when entering an entity. The arithmetic operation buttons B2 are buttons for entering addition, subtraction, multiplication, and division in arithmetic operation search into the formula input box F. The result display area R is an area for displaying the results of arithmetic operation search.

[0109] Furthermore, the UI for arithmetic operation searches includes a pull-down button B1 for specifying the type of entity to display in the results display area R prior to the arithmetic operation search. The UI for arithmetic operation searches also includes an SNS button H for sharing the entities displayed in the results display area R on social media.

[0110] Furthermore, the UI display control unit 33A can also display a UI for a user-defined formula collection in which the user U can pre-set arithmetic formulas. In this case, the transmission unit 31 can also transmit the arithmetic formulas set in the user-defined formula collection UI to the server device 100 via the communication unit 11. In addition, the transmission unit 31 can make the arithmetic formulas set in the user-defined formula collection UI public or share them with other users in response to the user U's operation.

[0111] Furthermore, the UI display control unit 33A can also display entities predicted as input candidates by predictive text when an entity calculation formula is entered. At this time, the receiving unit 32 can also receive entities predicted as input candidates by predictive text from the server device 100 via the communication unit 11.

[0112] (Conversion unit 33B) When an entity's calculation formula is entered into the UI for arithmetic operation searches, the conversion unit 33B embeds the entity into a vector space by embedding, thereby converting the entity into a vector. In practice, the server device 100 may convert the entity into a vector. That is, the conversion unit 33B may be located on the server device 100 side. Furthermore, the server device 100 may provide the functionality of the conversion unit 33B to the user U's terminal device 10 through API integration.

[0113] (Search execution unit 33C) When an entity's calculation formula is entered into the UI for arithmetic calculations, the search execution unit 33C performs an arithmetic calculation search based on the entity's calculation formula. At this time, the search execution unit 33C sends a request to the server device 100 via the transmission unit 31 to perform an arithmetic calculation search based on the entity's calculation formula, and receives the result of the arithmetic calculation search from the server device 100 via the reception unit 32.

[0114] For example, the search execution unit 33C performs an arithmetic operation search on a vector of entities in the UI for arithmetic operation searches and returns another entity as a search result. The search execution unit 33C may also receive the calculation formula of an entity entered into the UI for arithmetic operation searches and convert the entity into a vector by embedding it into a vector space. In other words, the search execution unit 33C may have the functionality of a conversion unit 33B.

[0115] In arithmetic operations, addition strengthens the elements of a vector. Conversely, subtraction weakens the elements of a vector.

[0116] In arithmetic operations, multiplication strengthens the elements of a vector more than addition. In multiplication in arithmetic operations, an exponential function is applied first to eliminate negative values, then the multiplication is performed, and finally a logarithmic function is applied to return to a state where negative values ​​may be present.

[0117] In arithmetic operations, division weakens the elements of the divisor vector if they are large, and strengthens them if they are small. In division in arithmetic operations, an exponential function is first applied to eliminate negative values, the division is performed with no negative values, and then a logarithmic function is applied at the end to return to a state where negative values ​​are present.

[0118] (Result display control unit 33D) The result display control unit 33D displays the entities returned as a result of the arithmetic operation search based on the entity's calculation formula on the arithmetic operation search UI.

[0119] Furthermore, the result display control unit 33D can also display a correct / incorrect check button CB along with the entities returned as a result of the arithmetic operation search, allowing the user U to provide feedback on whether the answer is correct or incorrect for the entities in the arithmetic operation search results. In this case, the transmission unit 31 can also feed back the results of the user U's selection of correct or incorrect for the entities using the correct / incorrect check button CB to the server device 100 via the communication unit 11.

[0120] (Storage unit 40) The storage unit 40 is implemented by, for example, semiconductor memory elements such as RAM (Random Access Memory) and flash memory, or by storage devices such as HDD (Hard Disk Drive), SSD (Solid State Drive), and optical discs. Various programs and various data are stored in such a storage unit 40. For example, the storage unit 40 may store data related to applications and UI for arithmetic operations and searches.

[0121] [4. Example of Server Device Configuration] Next, the configuration of the server device 100 according to the embodiment will be described using Figure 9. Figure 9 is a diagram showing an example of the configuration of the server device 100 according to the embodiment. As shown in Figure 9, the server device 100 includes a communication unit 110, a storage unit 120, and a control unit 130.

[0122] (Communications Department 110) The communication unit 110 is implemented, for example, by a NIC (Network Interface Card). The communication unit 110 is connected to the network N by wire or wireless connection.

[0123] (Storage unit 120) The storage unit 120 is implemented by, for example, semiconductor memory elements such as RAM (Random Access Memory) and flash memory, or by storage devices such as HDDs, SSDs, and optical discs. The storage unit 120 may store identification information (such as a user ID) indicating user U, as well as attribute information and history information (log data) of user U.

[0124] (Control unit 130) The control unit 130 is a controller, and is realized by executing various programs (corresponding to an example of an information processing program) stored in the internal storage device of the server device 100 using a storage area such as RAM as a working area, for example, by a CPU (Central Processing Unit), MPU (Micro Processing Unit), GPU (Graphics Processing Unit), ASIC (Application Specific Integrated Circuit), or FPGA (Field Programmable Gate Array). In the example shown in Figure 9, the control unit 130 has an acquisition unit 131, a learning unit 132, an input prediction unit 133, a search processing unit 134, and a provisioning unit 135.

[0125] (Acquisition part 131) The acquisition unit 131 acquires the search query entered by the user U. For example, when the user U enters a search query into a search engine or the like and performs a keyword search, the acquisition unit 131 acquires the search query via the communication unit 110. In other words, the acquisition unit 131 acquires the keyword entered by the user U into the search box of a search engine, website, or application via the communication unit 110.

[0126] Furthermore, the acquisition unit 131 acquires user information about user U via the communication unit 110. For example, the acquisition unit 131 acquires identification information (such as user ID), location information, and attribute information of user U from user U's terminal device 10. The acquisition unit 131 may also acquire identification information and attribute information of user U when user U is registered. The acquisition unit 131 then stores the user information in the storage unit 120.

[0127] Furthermore, the acquisition unit 131 acquires various historical information (log data) indicating the user U's actions via the communication unit 110. For example, the acquisition unit 131 acquires various historical information indicating the user U's actions from the user U's terminal device 10, or from various servers based on the user ID, etc. The acquisition unit 131 then stores the various historical information in the storage unit 120.

[0128] Furthermore, the acquisition unit 131 acquires various information entered by the user U in the arithmetic operation search UI via the communication unit 110. For example, the acquisition unit 131 acquires the calculation formula of an entity entered in the calculation formula input field F, and information about the buttons pressed in the command group B and SNS buttons H.

[0129] Furthermore, the acquisition unit 131 obtains, via the communication unit 110, arithmetic formulas and the like that previously set by the user U in the UI of the user-defined formula collection. For example, the acquisition unit 131 obtains arithmetic formulas entered in the calculation formula input field F of the UI of the user-defined formula collection.

[0130] Furthermore, the acquisition unit 131 obtains feedback from the user U regarding whether the arithmetic operation search results entities are correct or incorrect (right / wrong) via the communication unit 110. For example, the acquisition unit 131 obtains the result of pressing the correct / wrong check button CB in each of the result display areas R that display the search result entities.

[0131] (Learning Section 132) The learning unit 132 performs fine-tuning using the set formulas when learning with a user-defined formula collection. For example, the learning unit 132 performs fine-tuning using the set formulas on an embedded model that has been learned using information about entities such as user behavior history, images, and metadata. The learning unit 132 then learns the embedded model so that the vector calculated on the left side of the formula and the vector on the right side approach each other on an arbitrary scale.

[0132] Furthermore, the learning unit 132 uses the feedback logs of correct and incorrect answers for the search result entities to learn the entity embedding vector space. In learning through correct / incorrect checks, the learning unit 132 uses the feedback logs of correct and incorrect answers provided by user U to perform fine tuning and preference tuning. For example, the learning unit 132 uses logs that only contain correct feedback "○" for fine tuning. Also, the learning unit 132 uses logs that also contain incorrect feedback "×" for preference tuning.

[0133] Furthermore, the learning unit 132 may learn the calculation formulas for each user's entities and construct an estimation model. In this case, the learning unit 132 may learn the calculation formulas for entities for each user and construct an individual estimation model, or it may learn the calculation formulas for entities for each user's attributes or segment, or for all users, and construct an overall estimation model.

[0134] (Input prediction unit 133) The input prediction unit 133, upon receiving entity arithmetic operation input, applies predictive conversion to predict input candidates for each arithmetic operation, thereby predicting input candidates. At this time, the input prediction unit 133 predicts addition and multiplication using a model that has learned candidates from logs, while subtraction and division present closest entities in the entity vector space as candidates.

[0135] (Search processing unit 134) The search processing unit 134 receives a request from the user U's terminal device 10 via the communication unit 110 to perform an arithmetic operation search based on the entity's calculation formula, and performs the arithmetic operation search based on the entity's calculation formula.

[0136] At this time, the search processing unit 134 embeds the entities selected from the candidate entities into a vector space and outputs a group of entities that are similar to the result of the input arithmetic expression.

[0137] Furthermore, when an unknown entity that does not exist in the embedded vector space of learned entities is input by user U, the search processing unit 134 calculates the vector of the unknown entity by aggregating the vectors of entities with similar linguistic meanings in an arbitrary manner, and uses it for arithmetic operations.

[0138] Furthermore, the search processing unit 134 may perform processes necessary for a search engine, such as crawling and indexing.

[0139] (Provider 135) When an entity performs arithmetic operations, the provisioning unit 135 provides the user U's terminal device 10 with entities predicted as input candidates by predictive text via the communication unit 110.

[0140] Furthermore, the provisioning unit 135 returns the result of an arithmetic operation search based on the entity's calculation formula to the user U's terminal device 10 via the communication unit 110.

[0141] Furthermore, the provisioning unit 135 may provide data related to the UI for arithmetic operation searches to the user U's terminal device 10 via the communication unit 110. For example, the provisioning unit 135 may provide data necessary for displaying the UI for arithmetic operation searches by linking with the user U's terminal device 10 via API.

[0142] Furthermore, when predictive conversion is performed when user U inputs an entity, the provisioning unit 135 may, via the communication unit 110, provide the estimated entity and calculation formula, using an estimation model that has learned the calculation formulas of entities, to the calculation formula input field F of the arithmetic operation search UI displayed on user U's terminal device 10.

[0143] Furthermore, the provisioning unit 135 may provide data relating to the UI of the user-defined formula collection to the user U's terminal device 10 via the communication unit 110. For example, the provisioning unit 135 may provide data relating to the UI of the user-defined formula collection to the user U's terminal device 10 in advance, so that the user U can set up arithmetic formulas beforehand.

[0144] Furthermore, the provisioning unit 135 may provide data related to the correct / incorrect check button CB to the user U's terminal device 10 via the communication unit 110. For example, the provisioning unit 135 may provide data related to the UI on which the correct / incorrect check button CB is displayed in each of the result display areas R that display the entities of the search results, so that the user U can provide feedback on whether the answer is correct or incorrect (correct / incorrect) for the entities of the arithmetic operation search results.

[0145] [5. Processing Procedure] Next, the processing procedure by the terminal device 10 and server device 100 according to this embodiment will be explained using Figures 10 to 13.

[0146] [5-1. Processing Procedure for Arithmetic Operations Search] Figure 10 is a flowchart showing the processing procedure for arithmetic operation search according to the embodiment. The processing procedure shown below is repeatedly executed by the control unit 30 of the terminal device 10 and the control unit 130 of the server device 100.

[0147] For example, as shown in Figure 10, the UI display control unit 33A of user U's terminal device 10 displays a UI for arithmetic operation search on the display unit 12 (step S101). The UI for arithmetic operation search includes a calculation formula input frame F, a pull-down button B1, an arithmetic operation button B2, a confirmation button B3, a result display area R, and an SNS button H. Prior to (or simultaneously with) the processing of step S101, the UI display control unit 33A of user U's terminal device 10 may display a UI for a user-defined formula collection in which user U can pre-set arithmetic formulas. The transmission unit 31 of user U's terminal device 10 may also transmit the arithmetic formulas set in the user-defined formula collection UI to the server device 100 via the communication unit 11. Furthermore, the transmission unit 31 of user U's terminal device 10 may, in response to user U's operation, make the arithmetic formulas set in the user-defined formula collection UI public or share them with other users.

[0148] Next, the UI display control unit 33A of user U's terminal device 10 accepts the user U's specification of the type of entity to be displayed in the result display area R by operating the pull-down button B1, and accepts input of the entity's calculation formula from user U either by manual input or by operating the arithmetic operation button B2, and displays it in the calculation formula input frame F of the arithmetic search UI (step S102). At this time, the input prediction unit 133 of the server device 100 may predict input candidates by applying an input candidate prediction logic for each arithmetic operation using predictive conversion when inputting an entity's arithmetic calculation. The provision unit 135 of the server device 100 may provide the user U's terminal device 10 with entities predicted as input candidates by predictive conversion via the communication unit 110. The UI display control unit 33A of user U's terminal device 10 may display entities predicted as input candidates by predictive conversion. In addition, the receiving unit 32 of user U's terminal device 10 may receive entities predicted as input candidates by predictive conversion from the server device 100 via the communication unit 11.

[0149] Next, when an entity's calculation formula is entered into the UI for arithmetic operation search, the conversion unit 33B of user U's terminal device 10 embeds the entity into a vector space by embedding, converting the entity into a vector (step S103). Note that the processing in step S103 may also be performed during the processing in step S104 below. That is, when executing an arithmetic operation search based on an entity's calculation formula in response to a decision operation on the input unit 13 or the operation of the decision button B3, the entity may be converted into a vector.

[0150] Next, the search execution unit 33C of the user U's terminal device 10 performs an arithmetic operation search based on the entity's calculation formula on the entity's vector, in response to the decision operation on the input unit 13 or the operation of the decision button B3 (step S104). At this time, the search execution unit 33C sends a request to the server device 100 via the transmission unit 31 to perform an arithmetic operation search based on the entity's calculation formula.

[0151] Next, the search processing unit 134 of the server device 100 receives a request from the user U's terminal device 10 via the communication unit 110 to perform an arithmetic operation search based on the entity's calculation formula, and performs the arithmetic operation search based on the entity's calculation formula (step S105). At this time, the search processing unit 134 performs the arithmetic operation search based on the entity's calculation formula on the entity vector.

[0152] Next, the provisioning unit 135 of the server device 100 returns the result of the arithmetic operation search based on the entity's calculation formula to the user U's terminal device 10 via the communication unit 110 (step S106). At this time, the provisioning unit 135 returns the entity as the result of the arithmetic operation search based on the entity's calculation formula.

[0153] Next, the result display control unit 33D of the user U's terminal device 10 displays the entities returned from the server device 100 via the receiving unit 32 as a result of the arithmetic operation search based on the entity's calculation formula on the arithmetic operation search UI (step S107). At this time, the result display control unit 33D of the user U's terminal device 10 may also display a correct / incorrect check button CB along with the entities returned as a result of the arithmetic operation search, allowing the user U to provide feedback on whether the answer is correct or incorrect (correct / incorrect) for the entities in the arithmetic operation search results. Alternatively, the transmitting unit 31 of the user U's terminal device 10 may, via the communication unit 11, provide feedback to the server device 100 on the result of the user U selecting correct or incorrect for the entities using the correct / incorrect check button CB.

[0154] Next, the transmission unit 31 of user U's terminal device 10 shares the entity displayed in the result display area R via SNS in response to the operation of the SNS button H (step S108).

[0155] [5-2. Procedure for learning arithmetic formulas] Figure 11 is a flowchart showing the processing procedure for learning arithmetic formulas according to the embodiment. The processing procedure shown below is repeatedly executed by the control unit 130 of the server device 100.

[0156] For example, as shown in Figure 11, the provision unit 135 of the server device 100 provides data related to the UI of the user-defined formula collection to the user U's terminal device 10 via the communication unit 110 (step S201). That is, the provision unit 135 causes the user U's terminal device 10 to display the UI of the user-defined formula collection.

[0157] Next, the acquisition unit 131 of the server device 100 acquires the arithmetic formulas set by the user U in the UI of the user-defined formula collection via the communication unit 110 (step S202).

[0158] Next, the learning unit 132 of the server device 100 performs fine tuning using the set formulas when learning with a user-defined formula collection (step S203). For example, the learning unit 132 performs fine tuning using the set formulas on the embedded model that has been learned using information about entities such as user behavior history, images, and metadata. The learning unit 132 then learns the embedded model so that the vector calculated on the left side of the formula and the vector on the right side approach each other on an arbitrary scale.

[0159] [5-3. Procedure for learning unknown entities] Figure 12 is a flowchart showing the processing procedure for learning an unknown entity according to the embodiment. The processing procedure shown below is repeatedly executed by the control unit 130 of the server device 100.

[0160] For example, as shown in Figure 12, the search processing unit 134 of the server device 100 converts the entities in the input arithmetic expression into vectors using the embedded vector space of learned entities (step S301). In practice, the conversion unit 33B of the user U's terminal device 10 may convert the entities into vectors.

[0161] Next, the search processing unit 134 of the server device 100 determines whether or not there are unknown entities in the arithmetic expression (step S302). For example, the search processing unit 134 determines that entities that cannot be converted into vectors using the learned entity embedding vector space are unknown entities.

[0162] Next, if there is an unknown entity (step S302: Yes), the search processing unit 134 of the server device 100 extracts a group of known entities that have a similar linguistic meaning to the unknown entity using AI such as GPT or a language embedding vector space that has been previously learned from a large corpus (step S303).

[0163] Next, the search processing unit 134 of the server device 100 calculates vectors of unknown entities from the vectors in the embedding vector space of the extracted known entities using an arbitrary aggregation method such as a weighted average (step S304).

[0164] Next, the search processing unit 134 of the server device 100, if there are no unknown entities (step S302: No), or after calculating the vector of unknown entities (after step S304), applies arithmetic operations to the obtained entity vector to calculate a single vector (step S305).

[0165] Next, the search processing unit 134 of the server device 100 extracts a group of entities that have vectors similar to the given vector in the entity embedding vector space (step S306).

[0166] [5-4. Processing Procedure for Learning Based on Correct / Incorrect Feedback] Figure 13 is a flowchart showing the processing procedure for learning correct / incorrect feedback according to the embodiment. The processing procedure shown below is repeatedly executed by the control unit 130 of the server device 100.

[0167] For example, as shown in Figure 13, the provision unit 135 of the server device 100 provides data related to the correct / incorrect check button CB to the user U's terminal device 10 via the communication unit 110 (step S401). For example, the provision unit 135 causes the user U's terminal device 10 to display a correct / incorrect check button CB in each of the result display areas R that display the entities returned as a result of the arithmetic operation search, allowing the user U to provide feedback on whether the entity in the arithmetic operation search result is correct or incorrect.

[0168] Next, the acquisition unit 131 of the server device 100 receives feedback from the user U regarding whether the arithmetic operation search results entities are correct or incorrect (correct / incorrect) via the communication unit 110 (step S402). For example, the acquisition unit 131 acquires the result of pressing the correct / incorrect check button CB in each of the result display areas R that display the search result entities.

[0169] Next, the learning unit 132 of the server device 100 uses the feedback log of correct and incorrect answers for the entities in the search results to learn the entity embedding vector space (step S403).

[0170] At this time, the learning unit 132 of the server device 100 determines whether or not there is an incorrect feedback "×" in the correct / incorrect feedback log (step S404).

[0171] The learning unit 132 of the server device 100 performs fine tuning using the log (step S405) if there is only correct feedback "○" (step S404: No).

[0172] Furthermore, if there is also incorrect feedback "×" (step S404: Yes), the learning unit 132 of the server device 100 performs preference tuning using the log (step S406).

[0173] [6. Variant Example] The terminal device 10 and server device 100 described above may be implemented in various different forms other than those of the embodiment described above. Therefore, the following describes modifications of the embodiment.

[0174] In the above embodiment, some or all of the processing performed by the server device 100 may actually be performed by the terminal device 10 (or an application running on the terminal device 10). For example, the terminal device 10 may perform all processing in a standalone manner. In this case, the terminal device 10 is assumed to have the same functions as the server device 100 in the above embodiment. Furthermore, in the above embodiment, since the terminal device 10 is in cooperation with the server device 100, from the perspective of the user U, it appears as if the processing of the server device 100 is also being performed by the terminal device 10. In other words, from another perspective, it can be said that the terminal device 10 is equipped with the server device 100.

[0175] Furthermore, in the above embodiment, the user U's terminal device 10 may color-code the frame and / or the area within the frame of the result display area R of the arithmetic operation search UI according to the type of entity. Alternatively, the shape or size of the result display area R may be changed according to the type of entity. In other words, the user U's terminal device 10 may change the display mode of the result display area R of the arithmetic operation search UI according to the type of entity. In this case, the result display area R will have different display modes depending on the type of entity.

[0176] Furthermore, in the above embodiment, the user U's terminal device 10 may display entities in the result display area R of the UI for arithmetic operation search, and may also display advertisements related to those entities. For example, the user U's terminal device 10 may display advertisements that lead to electronic comics or the like related to those entities.

[0177] Furthermore, in the above embodiment, the server device 100 may return search results to the user U's terminal device 10 and control the display of listing advertisements related to the search result entities in the arithmetic search UI. The server device 100 may also cooperate with the user U's terminal device 10 to provide an advertising display area in the arithmetic search UI.

[0178] Furthermore, for the various learning processes in the above embodiment, the user U's terminal device 10 may perform the learning on-device instead of the server device 100. Alternatively, federated learning may be used to train the global model on the server device 100 and the local model on the user U's terminal device 10.

[0179] [7. Effects] [7-1. Terminal side] As described above, the information processing device (terminal device 10) according to the present invention is characterized by comprising: a UI display control unit 33A that displays a UI for arithmetic operation search; a search execution unit 33C that performs an arithmetic operation search based on an entity's calculation formula when the entity's calculation formula is entered into the UI for arithmetic operation search; and a result display control unit 33D that displays the entity returned as a result of the arithmetic operation search based on the entity's calculation formula on the UI for arithmetic operation search.

[0180] This makes it possible to create a system that performs arithmetic operations on various entities such as works, authors, and genres, and returns the search results as entities.

[0181] Furthermore, the information processing device according to the present invention further includes a conversion unit 33B that embeds entities into a vector space and converts said entities into vectors. The search execution unit 33C performs arithmetic operations on the vectors of entities and returns another entity as a search result.

[0182] This makes it possible to create a system that treats various entities as numerical values, performs arithmetic operations on those values, and returns the search results as entities.

[0183] In arithmetic operations, addition strengthens the elements of a vector, while subtraction weakens them.

[0184] This allows you to strengthen or weaken the elements of an entity's vector during arithmetic operations.

[0185] In arithmetic operations, multiplication strengthens the elements of a vector more than addition. In multiplication in arithmetic operations, an exponential function is applied first to eliminate negative values, then the multiplication is performed, and finally a logarithmic function is applied to return to a state where negative values ​​may be present.

[0186] This allows for stronger analysis of the elements of an entity's vector than simple addition can in arithmetic operations. Furthermore, it enables multiplication without negative values.

[0187] In arithmetic operations, division weakens the elements of the divisor vector if they are large, and strengthens them if they are small. In division in arithmetic operations, an exponential function is first applied to eliminate negative values, the division is performed with no negative values, and then a logarithmic function is applied at the end to return to a state where negative values ​​are present.

[0188] This allows the entity's vector to be weakened or strengthened depending on the size of its elements. Specifically, elements that are too large can be significantly weakened, while elements that are too small can be strengthened.

[0189] The UI for arithmetic operation search includes a formula input box F, arithmetic operation buttons B2, and a result display area R. The formula input box F is a box for entering the formula of an entity for arithmetic operation search, and provides input assistance, including predictive text, when entering an entity. The arithmetic operation buttons B2 are buttons for entering addition, subtraction, multiplication, and division in arithmetic operation search into the formula input box F. The result display area R is an area for displaying the results of arithmetic operation search.

[0190] This allows for the creation of a UI that provides a field for entering the entity's calculation formula, a set of commands for arithmetic operations, and displays the calculation result.

[0191] The UI for arithmetic operation searches further includes a pull-down button B1 for specifying the type of entity to display in the results display area R prior to the arithmetic operation search.

[0192] This allows you to specify the types of entities to display as results of arithmetic operations.

[0193] The UI for arithmetic operation searches further includes SNS buttons H for sharing the entities displayed in the results display area R on social media.

[0194] This allows users to share entities displayed as results of arithmetic operations on social media.

[0195] The UI display control unit 33A displays a UI for a user-defined formula collection in which the user U can pre-set the formulas for arithmetic operations on entities.

[0196] This allows users to add or remove formulas of their own choosing to reflect their own preferences in the search results for arithmetic operations.

[0197] The result display control unit 33D displays the entities returned as a result of the arithmetic search based on the entity's calculation formula, along with a correct / incorrect check button that allows the user U to provide feedback on whether the entities in the arithmetic search results are correct or incorrect.

[0198] This allows the feedback log of correctness for the results of arithmetic operations on entities to be used to train the entity's embedding vector space.

[0199] [7-2. Server side] Another information processing device (server device 100) according to the present application is characterized by comprising: a search processing unit 134 that receives a request from a user to perform an arithmetic operation search based on an entity's calculation formula and performs an arithmetic operation search based on an entity's calculation formula; and a providing unit 135 that returns the results of the arithmetic operation search based on an entity's calculation formula to the user.

[0200] This makes it possible to create a system that treats various entities such as works, authors, publishers, genres, and eras as numerical values, performs arithmetic operations on them, and returns the results as entities such as works, authors, publishers, genres, and eras.

[0201] When an unknown entity that does not exist in the embedded vector space of learned entities is input by the user, the search processing unit 134 calculates the vector of the unknown entity from the vectors of entities with similar linguistic meanings and uses it for arithmetic operations.

[0202] This allows the system to handle unknown entities and respond to arbitrary natural language input from users.

[0203] The search processing unit 134 converts entities in arithmetic expressions entered by the user into vectors using the learned entity embedding vector space. If there are unknown entities, it extracts a group of known entities that have a similar linguistic meaning to the unknown entity using the AI ​​or a language embedding vector space previously learned from a large corpus. It then calculates the vector of the unknown entity from the vectors in the embedded vector space of the extracted known entities.

[0204] This allows us to calculate vectors of unknown entities from vectors in the entity embedding vector space of known entities using any aggregation method, such as a weighted average.

[0205] Furthermore, the search processing unit 134 applies arithmetic operations to the entity vectors to obtain a single vector, and extracts a group of entities in the entity embedding vector space that have vectors similar to that single vector.

[0206] This enables arithmetic searches of entities, taking into account not only known entities but also unknown entities.

[0207] Furthermore, another information processing device (server device 100) according to the present invention further comprises an acquisition unit 131 that acquires arithmetic formulas for entities set in advance by the user, and a learning unit 132 that performs fine tuning using arithmetic formulas set in advance by the user.

[0208] This allows users to learn using a set of arithmetic formulas defined by the user.

[0209] Furthermore, another information processing device (server device 100) according to the present invention further comprises an acquisition unit 131 that acquires correct / incorrect feedback on entities returned as a result of arithmetic operation search based on the entity's calculation formula, and a learning unit 132 that uses the correct / incorrect feedback log of the search results entities to learn the entity's embedding vector space. The learning unit 132 performs fine tuning using the feedback log if the correct / incorrect feedback log contains only correct feedback, and performs preference tuning using the feedback log if the correct / incorrect feedback log also contains incorrect feedback.

[0210] This allows for learning that involves checking the accuracy of the results of arithmetic operations performed on entities.

[0211] By any or a combination of the above-described processes, the information processing device according to the present invention can realize a system that performs a search for entities and returns the search results as entities.

[0212] [8. Hardware Configuration] Furthermore, the terminal device 10 and server device 100 according to the above-described embodiment are realized by a computer 1000 having a configuration such as that shown in Figure 14. The following explanation will use the server device 100 as an example. Figure 14 is a diagram showing an example of the hardware configuration. The computer 1000 is connected to an output device 1010 and an input device 1020, and has a configuration in which an arithmetic unit 1030, a primary storage device 1040, a secondary storage device 1050, an output interface 1060, an input interface 1070, and a network interface 1080 are connected by a bus 1090.

[0213] The arithmetic unit 1030 operates based on programs stored in the primary storage device 1040 and the secondary storage device 1050, as well as programs read from the input device 1020, and executes various processes. The arithmetic unit 1030 can be implemented using, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), a GPU (Graphics Processing Unit), an ASIC (Application Specific Integrated Circuit), or an FPGA (Field Programmable Gate Array).

[0214] The primary storage device 1040 is a memory device, such as RAM (Random Access Memory), that temporarily stores data used by the arithmetic unit 1030 for various calculations. The secondary storage device 1050 is a storage device where data used by the arithmetic unit 1030 for various calculations and various databases are registered, and can be implemented using ROM (Read Only Memory), HDD (Hard Disk Drive), SSD (Solid State Drive), flash memory, etc. The secondary storage device 1050 may be internal storage or external storage. The secondary storage device 1050 may also be a removable storage medium such as USB (Universal Serial Bus) memory or SD (Secure Digital) memory card. The secondary storage device 1050 may also be cloud storage (online storage), NAS (Network Attached Storage), file server, etc.

[0215] The output I / F 1060 is an interface for transmitting information to be output to output devices 1010, such as displays, projectors, and printers, and is implemented using connectors of standards such as USB (Universal Serial Bus), DVI (Digital Visual Interface), and HDMI (High Definition Multimedia Interface). The input I / F 1070 is an interface for receiving information from various input devices 1020, such as mice, keyboards, keypads, buttons, and scanners, and is implemented using, for example, USB.

[0216] Furthermore, the output interface 1060 and input interface 1070 may be wirelessly connected to the output device 1010 and input device 1020, respectively. In other words, the output device 1010 and input device 1020 may be wireless devices.

[0217] Furthermore, the output device 1010 and the input device 1020 may be integrated as a touch panel. In this case, the output I / F 1060 and the input I / F 1070 may also be integrated as an input / output I / F.

[0218] The input device 1020 may also be a device that reads information from, for example, an optical recording medium such as a CD (Compact Disc), DVD (Digital Versatile Disc), or PD (Phase Change Rewritable Disk), a magneto-optical recording medium such as an MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory.

[0219] The network interface 1080 receives data from other devices via network N and sends it to the computing unit 1030, and also transmits data generated by the computing unit 1030 to other devices via network N.

[0220] The arithmetic unit 1030 controls the output device 1010 and the input device 1020 via the output interface 1060 and the input interface 1070. For example, the arithmetic unit 1030 loads a program from the input device 1020 or the secondary storage device 1050 onto the primary storage device 1040 and executes the loaded program.

[0221] For example, when computer 1000 functions as a server device 100, the arithmetic unit 1030 of computer 1000 realizes the functions of the control unit 130 by executing a program loaded onto the primary storage device 1040. Alternatively, the arithmetic unit 1030 of computer 1000 may load a program obtained from another device via the network interface 1080 onto the primary storage device 1040 and execute the loaded program. Furthermore, the arithmetic unit 1030 of computer 1000 may cooperate with other devices via the network interface 1080 and call and use program functions, data, etc., from other programs on other devices.

[0222] [9. Other] Although embodiments of the present invention have been described above, the present invention is not limited by the content of these embodiments. Furthermore, the aforementioned components include those that can be easily conceived by those skilled in the art, those that are substantially the same, and those that fall within the so-called equivalent range. Moreover, the aforementioned components can be combined as appropriate. Furthermore, various omissions, substitutions, or modifications of the components can be made without departing from the gist of the embodiments described above.

[0223] Furthermore, among the processes described in the above embodiments, all or part of the processes described as being performed automatically can be performed manually, or all or part of the processes described as being performed manually can be performed automatically by known methods. In addition, the processing procedures, specific names, and information including various data and parameters shown in the above document and drawings can be arbitrarily changed unless otherwise specified. For example, the various information shown in each figure is not limited to the information shown.

[0224] Furthermore, the components of each illustrated device are functionally conceptual and do not necessarily need to be physically configured as shown. In other words, the specific forms of distribution and integration of each device are not limited to those shown, and all or part of them can be functionally or physically distributed and integrated in any unit according to various loads and usage conditions.

[0225] For example, the server device 100 described above may be implemented using multiple server computers, and the configuration can be flexibly changed, such as by calling external platforms via APIs (Application Programming Interfaces) or network computing depending on the function.

[0226] Furthermore, the embodiments and modifications described above can be combined as appropriate, provided that the processing content is not inconsistent.

[0227] Furthermore, the terms "section, module, unit" mentioned above can be replaced with "means" or "circuit," etc. For example, the acquisition unit can be replaced with acquisition means or acquisition circuit. [Explanation of Symbols]

[0228] 1. Information Processing System 10 Terminal devices 11 Communications Department 12 Display section 13 Input section 30 Control Unit 33 Processing Unit 33A UI display control section 33B Conversion Unit 33C Search Execution Unit 33D Result Display Control Unit 100 Server Devices 110 Communications Department 120 Storage section 130 Control Unit 131 Acquisition Department 132 Learning Department 133 Input prediction unit 134 Search Processing Unit 135 Provision Department

Claims

1. A UI display control unit that displays the UI for arithmetic operation search, When an entity's calculation formula is entered into the UI for the aforementioned arithmetic operation search, a search execution unit performs an arithmetic operation search based on the entity's calculation formula. A result display control unit that displays the entity returned as a result of an arithmetic operation search based on the calculation formula of the entity on the UI of the arithmetic operation search, An information processing device characterized by comprising:

2. The system further includes a transformation unit that embeds entities into a vector space and converts those entities into vectors, The search execution unit performs arithmetic operations on the entity vector and returns another entity as a search result. The information processing apparatus according to feature 1.

3. In the aforementioned arithmetic operation search, addition strengthens the elements of the vector, while subtraction weakens the elements of the vector. The information processing apparatus according to feature 2.

4. In the aforementioned arithmetic operation search, multiplication is stronger than addition in determining the elements of a vector. In the multiplication operation in the aforementioned arithmetic search, an exponential function is applied first to eliminate negative values, then the multiplication is performed, and finally a logarithmic function is applied to return to a state where negative values ​​are present. The information processing apparatus according to claim 3.

5. In the aforementioned arithmetic operation search, division weakens the elements of the divisor vector if they are large, and strengthens them if they are small. The information processing apparatus according to feature 2.

6. The UI for the aforementioned arithmetic operation search includes a formula input box, arithmetic operation buttons, and a result display area. The aforementioned calculation formula input box is a box for inputting the calculation formula of an entity for arithmetic operation search, and provides input assistance including predictive text when an entity is entered. The aforementioned arithmetic operation buttons include buttons for inputting addition, subtraction, multiplication, and division in the calculation formula input box, The aforementioned result display area is an area for displaying the results of arithmetic operation searches. The information processing apparatus according to feature 1.

7. The UI for the arithmetic operation search further includes, prior to the arithmetic operation search, a pull-down button for specifying the type of entity to display in the result display area. The information processing apparatus according to feature 6.

8. The UI for the arithmetic operation search further includes SNS buttons for sharing the entities displayed in the result display area on SNS. The information processing apparatus according to feature 6.

9. The UI display control unit displays a UI for a user-defined formula collection in which the user can pre-set arithmetic formulas for entities. The information processing apparatus according to feature 1.

10. The result display control unit displays, along with the entity returned as a result of the arithmetic search based on the entity's calculation formula, a correct / incorrect check button that allows user U to provide feedback on the correctness of the entity in the arithmetic search results. The information processing apparatus according to feature 1.

11. An information processing method performed by an information processing device, A UI display control process that displays the UI for arithmetic operation search, A search execution step is performed when an entity's calculation formula is entered into the UI for the aforementioned arithmetic operation search, and an arithmetic operation search is performed based on the entity's calculation formula. A result display control step that displays the entity returned as a result of an arithmetic operation search based on the calculation formula of the entity on the UI of the arithmetic operation search, An information processing method characterized by including

12. A UI display control procedure for displaying the UI for arithmetic operation search, A search execution procedure which, when an entity's calculation formula is entered into the UI for the aforementioned arithmetic operation search, executes an arithmetic operation search based on the entity's calculation formula, A result display control procedure for displaying the entity returned as a result of an arithmetic operation search based on the calculation formula of the entity on the UI of the arithmetic operation search, An information processing program characterized by causing a computer to execute it.

13. A search processing unit receives a request from the user to perform an arithmetic operation search based on the entity's calculation formula, and performs the arithmetic operation search based on the entity's calculation formula. A providing unit that returns to the user the result of an arithmetic operation search based on the entity's calculation formula, An information processing device characterized by comprising:

14. When an unknown entity that does not exist in the learned entity embedding vector space is input by the user, the search processing unit calculates the vector of the unknown entity from the vectors of entities with similar linguistic meanings and uses it for arithmetic operations. The information processing apparatus according to feature 13.

15. When the search processing unit converts entities in an arithmetic expression entered by the user into vectors using the learned entity embedding vector space, if there are unknown entities, it extracts a group of known entities that have a similar linguistic meaning to the unknown entity using AI or a language embedding vector space previously learned from a large corpus, and calculates the vector of the unknown entity from the vectors in the embedded vector space of the extracted known entities. The information processing apparatus according to feature 14.

16. The search processing unit applies arithmetic operations to the entity vectors to obtain a single vector, and extracts a group of entities in the entity embedding vector space that have vectors similar to that single vector. The information processing apparatus according to feature 15.

17. A unit that retrieves the arithmetic formulas for entities set by the user in advance, A learning unit that performs fine tuning using arithmetic formulas set in advance by the user, The information processing apparatus according to claim 13, further comprising:

18. An acquisition unit that obtains feedback on the correctness of an entity returned as a result of an arithmetic operation search based on the entity's calculation formula, A learning unit that uses feedback logs on the correctness of the entities in the search results to train the entity embedding vector space, Furthermore, The aforementioned learning unit, If the aforementioned feedback log contains only correct feedback, then fine-tuning is performed using the feedback log. If the feedback log for correct / incorrect answers also contains feedback for incorrect answers, the feedback log is used to perform preference tuning. The information processing apparatus according to feature 13.

19. An information processing method performed by an information processing device, A search processing step that receives a request from the user to perform an arithmetic operation search based on the entity's calculation formula, and performs the arithmetic operation search based on the entity's calculation formula, The process of providing the user with the results of an arithmetic operation search based on the entity's calculation formula, An information processing method characterized by including

20. A search processing procedure that receives a request from the user to perform an arithmetic operation search based on the entity's calculation formula, and performs the arithmetic operation search based on the entity's calculation formula, A procedure for providing the user with the results of an arithmetic operation search based on the entity's calculation formula, An information processing program characterized by causing a computer to execute it.