KR102158014B1 - Method and apparatus for real - time monitoring of baseball game using artificial neural network - Google Patents
Method and apparatus for real - time monitoring of baseball game using artificial neural network Download PDFInfo
- Publication number
- KR102158014B1 KR102158014B1 KR1020180051478A KR20180051478A KR102158014B1 KR 102158014 B1 KR102158014 B1 KR 102158014B1 KR 1020180051478 A KR1020180051478 A KR 1020180051478A KR 20180051478 A KR20180051478 A KR 20180051478A KR 102158014 B1 KR102158014 B1 KR 102158014B1
- Authority
- KR
- South Korea
- Prior art keywords
- game
- information
- result value
- question
- artificial intelligence
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
본 발명의 일 실시예에 따른, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 방법에 있어서, (a) 사용자 단말로 경기가 종료되지 않은 현재와 미래의 야구 경기 목록과 질문 정보를 제공하고, 사용자 단말에서 선택된 야구 경기에 대한 경기대상정보와 질문정보를 수신하는 단계; (b) 경기대상정보에 대응하는 팀 또는 선수의 과거 플레이데이터와 실시간 플레이데이터 중 적어도 하나를 기반으로 인공지능 엔진을 통해 경기대상정보 및 질문 정보에 대응하는 결과값을 추측하는 단계; 및 (c) 결과값을 사용자 단말로 제공하는 단계;를 포함하되, 경기대상정보는 팀 정보 또는 선수 정보이며, 질문 정보는 경기가 종료되지 않은 야구 경기에 참여 중이거나 참여할 예정인 선수의 경기실적 예측정보 및 팀의 경기실적 예측정보에 관한 질문이고, (b) 단계는 선수의 타석당 결과값을 도출하고, 이를 기초로 질문 정보에 대응하는 결과값을 추측하는 방법이다.In accordance with an embodiment of the present invention, in the method of providing a real-time prediction service for a baseball game based on an artificial intelligence engine, (a) providing a list of current and future baseball games and question information for which the game has not been completed, and And receiving game target information and question information for the selected baseball game in the user terminal; (b) estimating a result value corresponding to the game subject information and the question information through an artificial intelligence engine based on at least one of past play data and real-time play data of a team or player corresponding to the game subject information; And (c) providing the result value to the user terminal; including, wherein the game target information is team information or player information, and the question information is prediction of the game performance of a player who is participating in a baseball game or will participate in a baseball game for which the game has not been completed. It is a question about information and prediction information of the team's game performance, and step (b) is a method of deriving a result value per player at bat and inferring a result value corresponding to the question information based on this.
Description
본 발명은 인공지능을 통해 야구 경기의 결과를 예측하는 방법 및 시스템에 관한 것이다.The present invention relates to a method and system for predicting the outcome of a baseball game through artificial intelligence.
더욱 상세하게는 선수의 과거 경기 데이터와 실시간 진행 중인 경기에서 생성되는 데이터를 이용해 해당 경기의 안타/아웃, 득점/실점을 예측하고 나아가 경기의 최종 결과를 예측할 수 있는 방법 및 시스템에 관한 것이다.In more detail, it relates to a method and a system capable of predicting hits/outs, goals/concessions of a corresponding match, and further predicting the final result of the match using data generated from a player's past match data and a match in real time.
세이버메트릭스란 SABR(the society for American baseball research)와 메트릭스(metrics)의 합성어로 여러 수학적/통계학적 방법론을 동원해 야구라는 스포츠를 '분자 단위로 분해'하는 연구를 뜻한다.Sabermetrics is a compound word of SABR (the society for American baseball research) and metrics, and refers to a study that mobilizes various mathematical/statistical methodologies to decompose the sport of baseball into molecular units.
야구는 다른 스포츠와 달리, 과거부터 세이버메트릭스라는 이름으로 경기 결과에 대한 다양한 분석을 수행하였고, 1990년대부터는 야구계에 많은 영향을 미치게 되었다.Unlike other sports, baseball has been performing various analyzes of game results under the name of Sabermetrics from the past, and has had a great influence on the baseball world from the 1990s.
이처럼 많은 사람들이 야구 경기의 결과 예측에 높은 관심을 가졌고, 그에 따라 다양한 방식이 연구되어 왔다. 하지만, 종래에 연구된 많은 경기 결과 예측 방법은 대부분 이미 경기가 수행되어 저장된 과거의 팀 혹은 선수의 데이터를 활용하여 현재의 경기를 추측하는 방식이 대부분이다.As such, many people have a high interest in predicting the outcome of a baseball game, and various methods have been studied accordingly. However, most of the previously studied methods of predicting game results are methods of inferring the current game by using data of past teams or players that have already been played and stored.
이러한 방식은 누적된 경기 정보가 적을 경우 추측의 정확도가 떨어진다는 한계점이 존재한다.This method has a limitation in that the accuracy of the guess is deteriorated when the accumulated game information is small.
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 과거에 진행된 야구 경기의 데이터 혹은 현재 수행되어 실시간으로 생성되는 야구 경기의 데이터를 이용하여 인공지능이 야구 경기의 결과를 예측하는 것을 목적으로 한다.The present invention is to solve the above-described problems of the prior art, and aims to predict the outcome of a baseball game by artificial intelligence using data of a baseball game played in the past or data of a baseball game currently performed and generated in real time. do.
이를 자세하게 설명하면, 야구경기에 참가하는 선수가 보유한 과거 경기 데이터와 실시간으로 진행 중인 야구경기에서 데이터를 추출하여 인공지능을 학습시키고, 현재 진행 중인 야구 경기의 결과를 정확하게 예측하도록 구현하는 것을 목적으로 한다.Explaining this in detail, the purpose is to learn artificial intelligence by extracting data from past game data held by players participating in a baseball game and data from a baseball game in real time, and to accurately predict the outcome of a baseball game currently in progress. do.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.However, the technical problem to be achieved by the present embodiment is not limited to the technical problem as described above, and other technical problems may exist.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 서버에 의해 수행되는 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 방법에 있어서, (a) 사용자 단말로 경기가 종료되지 않은 현재와 미래의 야구 경기 목록과 질문 정보를 제공하고, 사용자 단말에서 선택된 야구 경기에 대한 경기대상정보와 질문정보를 수신하는 단계; (b) 경기대상정보에 대응하는 팀 또는 선수의 과거 플레이데이터와 실시간 플레이데이터 중 적어도 하나를 기반으로 인공지능 엔진을 통해 경기대상정보 및 질문 정보에 대응하는 결과값을 추측하는 단계; 및 (c) 결과값을 사용자 단말로 제공하는 단계;를 포함하되, 경기대상정보는 팀 정보 또는 선수 정보이며, 질문 정보는 경기가 종료되지 않은 야구 경기에 참여 중이거나 참여할 예정인 선수의 경기실적 예측정보 및 팀의 경기실적 예측정보에 관한 질문이고, (b) 단계는 선수의 타석당 결과값을 도출하고, 이를 기초로 질문 정보에 대응하는 결과값을 추측하는 방법일 수 있다.As a technical means for achieving the above-described technical problem, in a method for providing a real-time prediction service for a baseball game based on an artificial intelligence engine performed by a server, (a) a current and future baseball game that has not been finished with a user terminal. Providing a game list and question information, and receiving game target information and question information for a baseball game selected from a user terminal; (b) estimating a result value corresponding to the game subject information and the question information through an artificial intelligence engine based on at least one of past play data and real-time play data of a team or player corresponding to the game subject information; And (c) providing the result value to the user terminal; including, wherein the game target information is team information or player information, and the question information is prediction of the game performance of a player who is participating in a baseball game or will participate in a baseball game for which the game has not been completed. It is a question regarding information and prediction information of the team's game performance, and step (b) may be a method of deriving a result value per player at bat, and inferring a result value corresponding to the question information based on this.
본 발명의 다른 일 실시예에 따른, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 장치에 있어서, 사용자 단말이 선택한 팀 선택 정보 및 질문 정보를 수신하고, 인공지능 엔진을 통해 질문 정보에 대응하는 경기 결과를 추측하는 프로그램이 저장된 메모리 및 메모리에 저장된 프로그램을 실행하여 야구 경기의 결과를 추측하는 동작을 실행하는 프로세서를 포함하되, 프로세서는 사용자 단말로 경기가 종료되지 않은 현재와 미래의 야구 경기 목록과 질문 정보를 제공하고, 사용자 단말에서 선택된 야구 경기에 대한 경기대상정보와 질문정보를 수신하고, 경기대상정보에 대응하는 팀 또는 선수의 과거 플레이데이터와 실시간 플레이데이터 중 적어도 하나를 기반으로 인공지능 엔진을 통해 경기대상정보 및 질문 정보에 대응하는 결과값을 추측하고, 결과값을 사용자 단말로 제공하되, 경기대상정보는 팀 정보 또는 선수 정보이며, 질문 정보는 경기가 종료되지 않은 야구 경기에 참여 중이거나 참여할 예정인 선수의 경기실적 예측정보 및 팀의 경기실적 예측정보에 관한 질문이고, 선수의 타석 결과값을 도출하고, 이를 기초로 질문 정보에 대응하는 결과값을 추측하는 장치일 수 있다.In an apparatus for providing a real-time prediction service for a baseball game based on an artificial intelligence engine, according to another embodiment of the present invention, receiving team selection information and question information selected by a user terminal, and responding to the question information through the artificial intelligence engine A memory in which a program for estimating the result of a game to be played is stored, and a processor that executes an operation for estimating the result of a baseball game by executing a program stored in the memory, wherein the processor is a current and future baseball game in which the game is not finished with a user terminal. Provides list and question information, receives game target information and question information for a baseball game selected from the user terminal, and artificially based on at least one of past play data and real-time play data of the team or player corresponding to the game target information. The intelligence engine infers the result value corresponding to the game target information and question information, and provides the result value to the user terminal, but the game target information is team information or player information, and the question information is for a baseball game that has not finished the game. It is a question about the game performance prediction information of the player who is participating or will be participating, and the game performance prediction information of the team, and it may be a device that derives the result value of the player at bat, and estimates a result value corresponding to the question information based on this.
본 발명은 야구 경기의 데이터를 수집하고, 인공지능을 기반으로 경기종료되지 않은 실시간 야구 경기의 결과뿐만 아니라 미래 야구 경기의 결과를 예측할 수 있다.The present invention collects baseball game data, and can predict the result of a baseball game in the future as well as the result of a real-time baseball game that is not finished based on artificial intelligence.
이를 자세하게 설명하면, 야구경기에 참가하는 선수가 보유한 과거 경기 데이터와 실시간으로 진행 중인 야구경기에서 데이터를 추출하여 인공지능을 학습시키고, 현재 진행 중인 야구 경기의 결과를 정확하게 예측하도록 구현할 수 있다.Explaining this in detail, it is possible to learn artificial intelligence by extracting data from past game data held by players participating in a baseball game and data from a baseball game in real time, and to accurately predict the result of a baseball game currently in progress.
도 1 은 본 발명의 일 실시예에 따른, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 시스템의 구성을 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 서버의 구성을 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 방법을 나타낸 동작 흐름도이다.
도 4a 내지 도 4c는 본 발명의 일 실시예에 따른, 인공지능 엔진의 구동 원리를 설명하기 위한 예시도면이다.
도 5는 본 발명의 일 실시예에 따른, 실시간으로 수신하는 물리 데이터의 예시를 나타낸 도면이다.
도 6 내지 도 7은 본 발명의 일 실시예에 따른, 사용자 단말을 통해 제공하는 인터페이스 화면의 예시를 나타낸 예시도면이다.1 is a diagram showing the configuration of a baseball game real-time prediction service system based on an artificial intelligence engine according to an embodiment of the present invention.
2 is a diagram showing the configuration of a baseball game real-time prediction service server based on an artificial intelligence engine according to an embodiment of the present invention.
3 is an operation flowchart showing a baseball game real-time prediction service method based on an artificial intelligence engine according to an embodiment of the present invention.
4A to 4C are exemplary views for explaining a driving principle of an artificial intelligence engine according to an embodiment of the present invention.
5 is a diagram illustrating an example of physical data received in real time according to an embodiment of the present invention.
6 to 7 are exemplary views showing an example of an interface screen provided through a user terminal according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art can easily implement the present invention. However, the present invention may be implemented in various different forms and is not limited to the embodiments described herein. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and similar reference numerals are assigned to similar parts throughout the specification.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is said to be "connected" with another part, this includes not only "directly connected" but also "electrically connected" with another element interposed therebetween. . In addition, when a certain part "includes" a certain component, it means that other components may be further included rather than excluding other components unless specifically stated to the contrary.
이하의 실시예는 본 발명의 이해를 돕기 위한 상세한 설명이며, 본 발명의 권리 범위를 제한하는 것이 아니다. 따라서 본 발명과 동일한 기능을 수행하는 동일 범위의 발명 역시 본 발명의 권리 범위에 속할 것이다.The following examples are detailed descriptions to aid understanding of the present invention, and do not limit the scope of the present invention. Accordingly, the invention of the same scope performing the same function as the present invention will also belong to the scope of the present invention.
명세서 전체에서, 서버(100)는 인공지능 엔진을 기반으로 야구 경기 실시간 예측 서비스 제공 장치를 의미할 수 있다.Throughout the specification, the
도 1 은 본 발명의 일 실시예에 따른, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 시스템의 구성을 나타낸 도면이다.1 is a diagram showing the configuration of a baseball game real-time prediction service system based on an artificial intelligence engine according to an embodiment of the present invention.
도 1을 참조하면, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 시스템은 서버(100), 사용자 단말(200), 야구 경기 데이터 수신 장비(300)를 포함할 수 있고, 이들은 통신망을 통해 상호 연결될 수 있다.Referring to FIG. 1, a baseball game real-time prediction service system based on an artificial intelligence engine may include a
본 발명의 일 실시예에 따른 서버(100)는 사용자 단말(200)에 탑재된 단말 어플리케이션을 통해 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 가 제공될 수 있도록, 사용자 단말(200)에 경기 목록 및 질문정보를 제공하고, 사용자의 선택에 기초하여 결과값을 제공할 수 있다.The
사용자 단말(200)은 서버(100)로부터 제공받은 경기 목록 및 질문정보를 확인하고, 제공 받고 싶은 정보에 대한 경기대상정보 및 질문정보를 선택하고, 선택에 기초하여 결과값을 제공받는 것을 특징으로 한다.The
여기서 경기대상정보는 사용자 단말(200)이 제공받고 싶은 대상의 정보로서 팀이나 선수가 될 수 있고, 질문정보는 상기 선택한 팀이나 선수에 대해 알고 싶은 질문의 종류가 될 수 있다.Here, the game target information may be a team or a player as information on an object desired to be provided by the
따라서 질문정보는 아직 경기가 종료되지 않은 야구 경기에 참여 중이거나 참여할 예정인 선수의 경기실적 예측정보 및 팀의 경기실적 예측정보에 관한 질문이 될 수 있다. 사용자 단말(200)에 의해 선택되어 서버(100)로 전달될 수 있는 질문정보로는 타석당 결과값, 이닝당 결과값 및 경기점수 예측 결과값 중 적어도 하나의 형태로 제공되어 사용자에게 선택 받게 되고, 각각의 질문정보에 대응하는 세부적인 하위 정보를 사용자의 선택에 따라 서버(100)는 추가로 제공받을 수 있다.Therefore, the question information may be a question about the game performance prediction information of a player who is participating in a baseball game or will be participating in a baseball game that has not yet finished, and the game performance prediction information of the team. Question information that can be selected by the
예컨대 타석당 결과값에 대한 질문인 경우 사용자 단말(200)로부터 경기 정보, 선수 및 타석에 대한 선택 정보를 추가로 수신하고, 이닝당 결과값에 대한 질문의 경우 사용자 단말(200)로부터 경기 정보, 팀 및 이닝에 대한 선택 정보를 수신하며, 경기점수 예측 결과값에 대한 질문이면 사용자 단말(200)로부터 경기 정보를 추가로 수신하게 된다.For example, in the case of a question about the result value per turn at bat, game information, player and selection information on the at bat is additionally received from the
여기서 경기 정보란 사용자가 선택할 수 있는 경기가 종료되지 않은 현재와 미래의 야구 경기 목록 중 사용자가 선택한 경기가 수행되는 날짜나 경기에 대한 특별한 정보가 될 수 있다.Here, the game information may be a date on which a game selected by the user is performed or special information on a game from among the list of current and future baseball games for which the game selectable by the user is not finished.
각각의 질문정보는 사용자 단말(200)에서 텍스트 형식의 인터페이스로 제공될 수 있으나, 선택적 실시예로 이미지나 동영상으로 구성된 인터페이스로 질문정보를 제공할 수 있다. 예를 들어 경기를 수행하는 팀의 마스코트 이미지를 통해 팀을 선택하게 하는 등의 방법이 사용될 수 있게 되는 것이다.Each of the question information may be provided by the
또한, 서버(100)는 다른 선택적 실시예로 사용자 단말(200)에 경기대상정보 및 질문정보 이외에도 사용자가 선택한 야구 경기에 대한 부가적인 정보나, 선수에 대한 세부 프로필 정보 등이 더 제공될 수 있다. 예컨대 야구 경기에 대한 부가적인 정보는 야구 경기가 이루어지는 경기장의 위치나 규모 등의 정보가 포함될 수 있고, 선수에 대한 세부 프로필 정보는 해당 선수의 승률이나 주력 포지션 등을 제공할 수 있는 것이다.In addition, the
사용자 단말(200)은 서버(100)로부터 제공받은 데이터들을 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 어플리케이션을 통해 표시할 수 있다.The
인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 어플리케이션은 사용자 단말(200)에 내장된 어플리케이션이거나, 어플리케이션 배포 서버로부터 다운로드되어 사용자 단말(200)에 설치된 어플리케이션일 수 있다.The baseball game real-time prediction service application based on the artificial intelligence engine may be an application embedded in the
복수 개의 사용자 단말(200)들은 유무선 통신 환경에서 단말 어플리케이션을 이용할 수 있는 통신 단말기를 의미한다. 여기서 사용자 단말(200)은 사용자의 휴대용 단말기일 수 있다. 도 1에서는 사용자 단말(200)이 휴대용 단말기의 일종인 스마트폰(smart phone)으로 도시되었지만, 본 발명의 사상은 이에 제한되지 아니하며, 상술한 바와 같이 단말 어플리케이션을 탑재할 수 있는 단말에 대해서 제한 없이 차용될 수 있다.The plurality of
이를 더욱 상세히 설명하면, 사용자 단말(200)은 핸드헬드 컴퓨팅 디바이스(예를 들면, PDA, 이메일 클라이언트 등), 핸드폰의 임의의 형태, 또는 다른 종류의 컴퓨팅 또는 커뮤니케이션 플랫폼의 임의의 형태를 포함할 수 있으나, 본 발명이 이에 한정되는 것은 아니다.To explain this in more detail, the
야구 경기 데이터 수신 장비(300)는 실제 야구 경기장에 설치되어 실시간으로 수행되는 야구 경기의 실시간 플레이데이터를 취득하고, 이를 서버(100)로 전달하는 장비를 통칭할 수 있다.The baseball game
여기서, 실시간 플레이데이터는 선수의 플레이 결과에 관한 값으로서 속력, 위치 및 시간 중 적어도 하나를 포함하는 물리적요소인 물리데이터와 상기 야구 경기에 참여한 팀 단위의 진행 정보를 포함하는 실적 데이터를 포괄하는 데이터가 될 수 있다.Here, the real-time play data is a value related to the player's play result and includes physical data, which is a physical element including at least one of speed, position, and time, and performance data including progress information for each team participating in the baseball game. Can be.
물리데이터는 투수가 공을 던지는 속도나 각도, 주자의 도루 속도 등이 될 수 있고, 실적 데이터는 실시간으로 타석이나 이닝 상황, 점수 등이 여기에 포함될 수 있다.Physical data can be the speed or angle at which the pitcher throws the ball, the speed at which the runner steals, and the like, and the performance data can include at-bats, innings, and scores in real time.
물리데이터는 야구장에 설치된 카메라를 통해 경기에서 발생되는 다양한 물리데이터를 수집할 수 있으나, 선택적 실시예로 카메라 이외의 멀티미디어 입력장치가 야구 경기 데이터 수신 장비(300)에 포함될 수 있다. 예컨대 비디오 판독 시스템이 대표적으로 여기에 포함될 수 있으며, 그 외에 물리데이터를 취득할 수 있는 장비라면 야구 경기 데이터 수신 장비(300)로 활용될 수 있다.The physical data may collect various physical data generated in a game through a camera installed in the baseball field, but as an optional embodiment, a multimedia input device other than the camera may be included in the baseball game
실적 데이터는 야구 경기 데이터 수신 장비(300)를 통해 야구장의 현지에서 직접 데이터를 서버(100)가 수신할 수 있지만, 야구관련 공식기관의 서버로부터 수집될 수 있다. 야구관련 공식기관의 서버로부터 실적 데이터를 수집하는 경우 과거 플레이데이터에 대해서도 추가로 수집할 수 있다.The performance data may be directly received by the
한편, 통신망은 서버(100)와 사용자 단말(200)들을 연결하는 역할을 수행한다. 즉, 통신망은 사용자 단말(200)들이 서버(100)에 접속한 후 데이터를 송수신할 수 있도록 접속 경로를 제공하는 통신망을 의미한다. 통신망은 예컨대 LANs(Local Area Networks), WANs(Wide Area Networks), MANs(Metropolitan Area Networks), ISDNs(Integrated Service Digital Networks) 등의 유선 네트워크나, 무선 LANs, CDMA, 블루투스, 위성 통신 등의 무선 네트워크를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.Meanwhile, the communication network serves to connect the
도 2는 본 발명의 일 실시예에 따른, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 서버의 구성을 나타낸 도면이다.2 is a diagram showing the configuration of a baseball game real-time prediction service server based on an artificial intelligence engine according to an embodiment of the present invention.
도 2를 참조하면, 본 발명의 일 실시예에 따른 서버(100)는 통신부(110), 메모리(120), 프로세서(130) 및 데이터베이스(140)를 포함한다.Referring to FIG. 2, the
상세히, 통신부(110)는 통신망과 연동하여 서버(100), 사용자 단말(200), 야구 경기 데이터 수신 장비(300) 간의 송수신 신호를 패킷 데이터 형태로 제공하는 데 필요한 통신 인터페이스를 제공한다. 나아가, 통신부(110)는 사용자 단말(200) 및 야구 경기 데이터 수신 장비(300)로부터 데이터 요청을 수신하고, 이에 대한 응답으로서 데이터를 송신하는 역할을 수행할 수 있다.In detail, the
여기서, 통신부(110)는 다른 네트워크 장치와 유무선 연결을 통해 제어 신호 또는 데이터 신호와 같은 신호를 송수신하기 위해 필요한 하드웨어 및 소프트웨어를 포함하는 장치일 수 있다.Here, the
메모리(120)는 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스를 수행하기 위한 프로그램이 기록된다. 또한, 프로세서(130)가 처리하는 데이터를 일시적 또는 영구적으로 저장하는 기능을 수행한다. 여기서, 메모리(120)는 자기 저장 매체(magnetic storage media) 또는 플래시 저장 매체(flash storage media)를 포함할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.The
프로세서(130)는 일종의 중앙처리장치로서 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스를 제공하는 전체 과정을 제어한다. 프로세서(130)가 수행하는 각 단계에 대해서는 도 3을 참조하여 후술하기로 한다.The
여기서, 프로세서(130)는 프로세서(processor)와 같이 데이터를 처리할 수 있는 모든 종류의 장치를 포함할 수 있다. 여기서, '프로세서(processor)'는, 예를 들어 프로그램 내에 포함된 코드 또는 명령으로 표현된 기능을 수행하기 위해 물리적으로 구조화된 회로를 갖는, 하드웨어에 내장된 데이터 처리 장치를 의미할 수 있다. 이와 같이 하드웨어에 내장된 데이터 처리 장치의 일 예로써, 마이크로프로세서(microprocessor), 중앙처리장치(central processing unit: CPU), 프로세서 코어(processor core), 멀티프로세서(multiprocessor), ASIC(application-specific integrated circuit), FPGA(field programmable gate array) 등의 처리 장치를 망라할 수 있으나, 본 발명의 범위가 이에 한정되는 것은 아니다.Here, the
데이터베이스(140)는 인공지능 엔진의 학습 및 사용자 단말(200)로 제공하기 위한 팀 또는 선수의 과거 플레이데이터가 저장될 수 있고, 필요에 따라 실시간 플레이데이터도 수신되어 저장될 수 있다.The
또한, 선택적 실시예로 데이터베이스(140)는 사용자 단말(200)에서 특정 선수, 팀 혹은 경기에 대한 정보를 요청하는 경우 별도의 페이지로 제공하기 위한 정보가 더 포함될 수 있다.In addition, as an optional embodiment, the
도 3은 본 발명의 일 실시예에 따른, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 방법을 나타낸 동작 흐름도이다.3 is an operation flowchart showing a baseball game real-time prediction service method based on an artificial intelligence engine according to an embodiment of the present invention.
도 3을 참조하면, 먼저 사용자 단말로부터 경기가 종료되지 않은 현재와 미래의 야구 경기 목록과 질문 정보를 제공하고, 상기 사용자 단말에서 선택된 야구 경기에 대한 경기대상정보와 질문정보를 수신한다(S310).Referring to FIG. 3, first, a list of current and future baseball games and question information for which the game has not been completed is first provided from a user terminal, and game target information and question information for a baseball game selected from the user terminal are received (S310). .
경기대상정보에 대응하는 팀 또는 선수의 과거 플레이데이터와 실시간 플레이데이터 중 적어도 하나를 기반으로 인공지능 엔진을 통해 상기 경기대상정보 및 질문 정보에 대응하는 결과값을 추측한다(S320).Based on at least one of past play data and real-time play data of a team or player corresponding to the game target information, a result value corresponding to the game target information and question information is estimated through an artificial intelligence engine (S320).
단계(S320)에서 서버(100)는 인공지능 엔진을 이용하여 선수의 타석당 결과값을 도출하고, 이를 기초로 상기 질문 정보에 대응하는 결과값을 추측하게 되는 것이다. 이때, 인공지능 엔진이 질문정보에 대한 결과값을 추측하게 되는 과정은 후술할 도 4a를 통해 설명하도록 한다.In step S320, the
단계(S320)를 통해 추측된 결과값을 사용자 단말로 제공한다(S330).The result value estimated through step S320 is provided to the user terminal (S330).
사용자 단말(200)로 제공되는 결과값의 인터페이스는 사용자가 선택한 선수나 팀에 대한 경기실적 예측정보에 대한 결과를 숫자와 텍스트를 통해 하나의 문장으로 제공하게 되는데, 선택적 실시예로 이미지나 동영상 등이 더 추가될 수 있다. The interface of the result value provided to the
사용자 단말(200)로 제공되는 인터페이스에 관한 상세한 설명은 후술할 도 6 내지 도 7을 통해 진행하도록 한다.A detailed description of the interface provided to the
도 4a 내지 도 4c는 본 발명의 일 실시예에 따른, 인공지능 엔진의 구동 원리를 설명하기 위한 예시도면이다.4A to 4C are exemplary views for explaining a driving principle of an artificial intelligence engine according to an embodiment of the present invention.
먼저 도 4a를 참조하면, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스는 계층적인 구조를 통해 결과값을 추측하게 된다.First, referring to FIG. 4A, a baseball game real-time prediction service based on an artificial intelligence engine estimates a result value through a hierarchical structure.
이를 상세하게 설명하면, 과거의 팀 또는 선수에 대한 과거 플레이데이터들을 수집하고, 해당 데이터를 입력레이어로 설정하게 된다. 또한, 타석당 결과값, 이닝당 결과값, 경기점수 예측 결과값 중 적어도 하나를 출력 레이어로 설정하면, 복수 회의 학습을 수행함으로써, 뉴럴 네트워크 상의 입력레이어와 출력레이어 사이의 히든레이어에 대한 알고리즘이 수립되는 것이다.To explain this in detail, past play data on past teams or players are collected, and the data is set as an input layer. In addition, if at least one of the result value per turn at bat, the result value per inning, and the predicted game score is set as the output layer, the algorithm for the hidden layer between the input layer and the output layer on the neural network is established by performing multiple learning. It becomes.
위의 설명을 적용하여 질문정보에 대한 결과값을 추측하는 과정을 설명하면, 인공지능 엔진은 과거에 수집되거나, 실시간으로 수집되는 플레이데이터를 통해 선수의 타석당 결과값을 추측하게 된다.When the above explanation is applied to explain the process of estimating the result value for the question information, the artificial intelligence engine estimates the result value per player at bat through play data collected in the past or collected in real time.
만약 사용자 단말(200)이 선택한 질문정보가 타석당 결과값인 경우 인공지능 엔진을 통한 추측은 타석당 결과값을 추측하는 단계에서 종료된다. 하지만 질문정보가 이닝당 결과값이면 인공지능 엔진은 타석당 결과값에 기초하여 이닝당 결과값을 예측하고, 질문정보가 경기점수 예측 결과값이면 이닝당 결과값을 통해 경기점수 예측 결과값을 추측하는 일종의 계층적 예측 방식이 적용되는 것이다.If the question information selected by the
이때, 타석당 결과값은 출루하는 경우와 아웃되는 경우를 포함하는 복수의 실적 데이터(예를 들어, 안타, 볼넷, 삼진, 데드볼 등) 중 어느 하나에 관한 것을 사용하고, 이닝당 결과값은 공수를 교대하는 경우를 포함한 복수의 실적 데이터(예를 들어, 1회초 A : B = 1:0, 1회말 A : B = 1:1) 중 어느 하나를 포함하게 된다.At this time, the result value per at-bat is about one of a plurality of performance data (e.g., hits, walks, strikeouts, deadballs, etc.) including on-base cases and outings, and the result per inning is karate. It includes any one of a plurality of performance data including the case of shift (for example, first inning A: B = 1:0, first inning A: B = 1:1).
이를 쉽게 설명하면, 타자와 상대 투수의 데이터를 기반으로 해당 타석 타자의 안타 또는 아웃을 예측하게 되고, 이를 규합하여 이닝당 점수를 예측할 수 있게 되는 것이다. 또한, 이닝당 점수 예측이 완료된다면, 이를 통해 최종적으로 경기의 승패나 점수 예측이 가능하게 되는 것이다.To explain this easily, based on the data of the batter and the opponent pitcher, the hit or out of the corresponding at-bat batter is predicted, and the score per inning can be predicted by gathering this. In addition, if the prediction of the score per inning is completed, it is finally possible to predict the win or loss of the game through this.
이러한 방식은 야구 경기의 다양한 결과를 예측할 수 있도록 인공지능 엔진을 학습시킬 수 있고, 사용자의 질문에 유연한 답변을 전달할 수 있는 강점을 가지게 된다. 또한, 실시간 데이터를 인풋(input)값으로 전달할 수 있기 때문에 보다 명확하고 신뢰성 있는 결론의 도출이 가능한 것이다.This method can train an artificial intelligence engine to predict various outcomes of a baseball game, and has the strength of delivering flexible answers to user questions. In addition, since real-time data can be delivered as an input value, more clear and reliable conclusions can be drawn.
또한, 인공지능 엔진을 적용하여 추측한 결과값과 실제 실적 데이터와 비교하면서, 인공지능 엔진에 대한 학습을 추가로 실시할 수도 있을 것이다.In addition, it is possible to additionally learn about the artificial intelligence engine while comparing the estimated result value and actual performance data by applying the artificial intelligence engine.
도 4b를 참조하면, 본 발명이 RNN(recurrent neural networks) 계열의 알고리즘을 적용할 수 있음을 알 수 있다.Referring to FIG. 4B, it can be seen that the present invention can apply an algorithm based on recurrent neural networks (RNN).
본 발명의 서비스를 구현하기 위해 인공지능 엔진으로 적용할 수 있는 대표적인 알고리즘은 RNN(recurrent neural networks)계열이 사용될 수 있다. A representative algorithm that can be applied to an artificial intelligence engine to implement the service of the present invention may be a recurrent neural networks (RNN) series.
그림(a)은 싱글 레이어를 가지고 있는 표준 RNN모듈을 나타낸 것으로 RNN 알고리즘은 루프가 들어있어 과거의 데이터가 미래에 영향을 줄 수 있는 구조를 가지는 것이 특징이다.Fig. (a) shows a standard RNN module with a single layer. The RNN algorithm is characterized by a structure in which past data can affect the future because it contains loops.
특히 그림 (b)는 RNN계열 중에서도 특별한 종류인 LSTM(long short-term memory models)을 나타낸 것으로 LSTM에 포함되어 있는 4개의 레이어가 상호작용을 반복되는 형태를 가진다. 이를 통해 RNN에서 반복되는 네트워크 체인 중 단일 레이어를 사용하는 부분을 4개의 상호작용 가능한 특별한 방식의 구조로 형성되어 표준 RNN모델이 가지는 장기의존성 문제를 해결할 수 있게 되는 것이다.In particular, Figure (b) shows a special type of long short-term memory models (LSTM) among the RNN series. The four layers included in the LSTM have a form in which interactions are repeated. Through this, the part using a single layer among the repeated network chains in the RNN is formed in a special structure that allows four interactions, so that the long-term dependency problem of the standard RNN model can be solved.
하지만, RNN 계통의 알고리즘을 통해 본 발명의 서비스를 설명하는 것은 하나의 예시이며, 랜덤포레스트, 서포트 벡터 머신 등과 같은 인공지능 엔진이 이용할 수 있다. However, describing the service of the present invention through an RNN-based algorithm is an example, and an artificial intelligence engine such as a random forest and a support vector machine can be used.
또한, 단순 회귀 모델의 히든 레이어 수를 증가시킬 수도 있기 때문에 구현이 가능하다면, 어떠한 알고리즘을 적용하는 것인지 여부가 본 발명의 범위를 제한하지 않는다.In addition, since the number of hidden layers of the simple regression model may be increased, the scope of the present invention is not limited to which algorithm is applied, if implementation is possible.
도 4c를 참조하면, 인공지능 엔진을 기반으로 한 야구 경기를 실시간 예측하기 위해 필요한 독립변수를 예시로 나타낸 것이다. Referring to FIG. 4C, the independent variables required for real-time prediction of a baseball game based on an artificial intelligence engine are shown as an example.
이를 자세하게 설명하면, 야구 경기에 대해 예측하기 위해 사용하는 과거 플레이데이터와 실시간 플레이데이터들은 독립변수 및 종속변수들로 구성될 수 있는데, 이하는 대표적으로 사용될 수 있는 독립변수에 대해 나열한 것이다. To explain this in detail, past play data and real-time play data used to predict a baseball game may be composed of independent and dependent variables, and the following is a list of independent variables that can be used representatively.
인공지능 엔진이 학습을 수행하기 위해서는 각 팀마다의 변수를 파악하고 있어야 한다. 예컨대 도면에 제시된 바와 같이 인공지능 엔진이 수집하는 정보는 크게 4가지 카테고리를 가지게 되는데, "투수 능력치", "타자 능력치", "수비 능력치", "주루 능력치" 등을 포함할 수 있고, 각 능력치마다 하위 능력치가 속할 수 있다.In order for the artificial intelligence engine to perform learning, it must be aware of the variables of each team. For example, as shown in the drawing, the information collected by the artificial intelligence engine has four categories, which can include "pitching stats", "batter stats", "defensive stats", and "baseball stats", and each stats Each can have lower stats.
또한, 하위 능력치로는 예를 들어 "투수 능력치"에는 평균자책점, 경기, 승리, 패배, 세이브, 홀드, 승률, 이닝, 피안타, 피홈런, 볼넷, 사구, 삼진, 실점, 자책점, 이닝당 출루허용률 등이 포함될 수 있고, "타자 능력치"에는 평균 타율, 경기, 타석, 타수, 득점, 안타, 2루타, 3루타, 홈런, 루타, 타점, 희생번트, 희생플라이 등이 포함될 수 있다. "수비 능력치"는 포지션, 경기, 선발경기, 수비이닝, 실책, 견제사, 자살, 보살, 병살, 수비율, 포일, 도루허용, 도루실패, 도루저지율이 포함될 수 있고, 마지막으로 "주루 능력치"로는 경기, 도루시도, 도루허용, 도루실패, 주루사, 견제사 등이 포함될 수 있다.In addition, as for the lower stats, for example, "Pitching stats" include average ERA, game, victory, defeat, save, hold, odds, innings, hits, home runs, walks, four pitches, strikeouts, runs, own runs, and on-base allowance per inning. May be included, and the "battery ability" may include average batting average, game, at bat, at bats, goals, hits, doubles, triples, home runs, bases, RBIs, sacrifice bunts, and sacrifice fly. "Defensive stats" can include position, game, starting game, defensive innings, errors, checkers, suicide, bodhisattva, side by side, defense ratio, foil, stealing allowance, stealing failure, and stealing blocking rate. Finally, "base base stats" It may include games, attempted steals, allowable steals, failed steals, jurors, and checkers.
도 5는 본 발명의 일 실시예에 따른, 실시간으로 수신하는 물리 데이터의 예시를 나타낸 도면이다.5 is a diagram illustrating an example of physical data received in real time according to an embodiment of the present invention.
도 5를 참조하면, 투구 상황에서 야구 경기 데이터 수신 장비(300)가 수집할 수 있는 물리 데이터의 종류를 나타낸 것이다.Referring to FIG. 5, it shows the types of physical data that can be collected by the baseball game
물리데이터는 앞서 설명한 바와 같이 야구 경기장에 구비된 카메라를 통해 측정하게 된다. 투구 시 측정할 수 있는 대표적인 물리데이터는 피치 속도, 회전(속도/축/기울기), 해방 각(수평/수직), 해방 점(수평/높이), 연장(extension) 인지 속도, 이동(수평/수직 중단), 판 위치(plate location)(높이/면), 접 근각(수평/수직 중단), 구역 속도, 구역 시간이 될 수 있다.Physical data is measured through a camera provided in a baseball stadium as described above. Typical physical data that can be measured when throwing are pitch speed, rotation (speed/axis/tilt), release angle (horizontal/vertical), release point (horizontal/height), extension perceived speed, movement (horizontal/vertical). Stop), plate location (height/face), approach angle (horizontal/vertical stop), zone speed, zone time.
또한, 도 5에는 도시되지 않았지만 타자, 도루 상황, 수비측 선수들에게서도 다양한 물리데이터를 획득할 수 있다. 타자의 경우 방향(vector), 비행시간(projected hang time), 예상 타격 거리, 출구 속도, 시각 각(수직 / 수평), 타격 점(수평/높이)가 포함될 수 있고, 도루 상황에는 디그 스피드(dig speed), 추가 베이스(extra bases), 홈런 트롯(home run trot), 리드 거리, 2차 리드(볼이 투수로 방출될 때의 거리), 퍼스트 스탭(first step)(bat-on-ball 접촉 시 경과 시간), 스틸링 퍼스트 스탭(stealing first step)(투수의 첫 번째 이동 시간)이 될 수 있다. 마지막으로 수비측 선수는 퍼스트 스탭(first step)(경과된 시간), 퍼스트 스탭 효율(first step efficiency)(퍼스트 스탭의 직선거리에 대한 각도 편차), 최고속도, 가속도, 직선거리, 총 거리, 외야 루트 효율(outfield route efficiency)(직선/총 거리), 교환, 피봇(pivot), 최대 던지기 속도, 포수 교환 등을 획득할 수 있다. In addition, although not shown in FIG. 5, various physical data can be obtained from the batter, the stealing situation, and the defending players. In the case of a batter, the vector, the projected hang time, the expected hitting distance, the exit speed, the angle of view (vertical/horizontal), and the hitting point (horizontal/height) can be included. speed), extra bases, home run trot, lead distance, secondary lead (distance when ball is released to pitcher), first step (when bat-on-ball contact) Elapsed time), stealing first step (the pitcher's first movement time). Finally, the defending player is the first step (time elapsed), first step efficiency (angle deviation from the first step's linear distance), maximum speed, acceleration, linear distance, total distance, and outfield route. You can get outfield route efficiency (straight line/total distance), swap, pivot, maximum throwing speed, gunner swap, and so on.
선택적 실시예로 경기장의 환경이나, 경기에 사용되는 장비에 대한 정보를 추가로 수집하여 결과값 추측의 정확도를 높일 수 있다.In an optional embodiment, information on the environment of the stadium or equipment used for the game may be additionally collected to increase the accuracy of guessing the result value.
상기 측정된 물리데이터는 야구 경기 데이터 수신 장비(300)를 통해 서버(100)로 전달되고, 서버(100)는 실시간 데이터를 인공지능 엔진에 적용하여 서비스의 정확도를 높이게 되는 것이다.The measured physical data is transmitted to the
도 6 내지 도 7은 본 발명의 일 실시예에 따른, 사용자 단말(200)을 통해 제공하는 인터페이스 화면의 예시를 나타낸 예시도면이다.6 to 7 are exemplary views showing an example of an interface screen provided through the
도 6을 참조하면, 인공지능 엔진을 기반으로 야구 경기 실시간 예측 서비스를 위한 질문 선택 화면으로 질문정보(610), 하위 선택 정보(620)가 포함될 수 있다.Referring to FIG. 6,
인터페이스의 첫 화면에는 사용자가 원하는 질문정보(610)가 텍스트가 쓰여진 버튼으로 구성될 수 있다. 도 6에 도시되어 있는 예시로는 "Q 타석 당 결과는?", "Q 이닝 당 결과는?", "Q 경기 점수 예측은?" 의 텍스트가 작성된 3개의 버튼으로 질문정보(610)를 선택할 수 있도록 인터페이스를 제공하게 된다.On the first screen of the interface, the
만약 사용자가 질문정보(610)를 선택하는 경우 사용자 단말(200)은 서버(100)로부터 제공받은 질문정보(610)에 매핑하는 하위 선택 정보(620)를 추가로 사용자에게 제시하여 세부 정보를 수신할 수 있다.If the user selects the
예를 들어 사용자가 "Q 타석 당 결과는?"을 선택하여 입력하면, 경기 정보인 경기 날짜와 경기명, 선수 혹은 타석을 선택할 수 있도록 하위 선택 정보(620)를 선택할 수 있는 인터페이스를 추가로 제공하게 된다.For example, if the user selects and enters "Q What is the result per at-bat?", an interface is additionally provided to select the
또한, 앞서 서술한 바와 같이, 사용자 단말(200)을 통해 제시되는 질문정보(610)의 선택에 따라 사용자가 선택할 수 있는 하위 선택 정보(620)가 달라지게 된다.In addition, as described above, the
도 7은 인공지능 엔진을 기반으로 야구 경기 실시간 예측 서비스의 결과 화면으로 결과값(710), 다른 질문 선택 기능 버튼(720), 지난 예측 확인 기능 버튼(730)을 포함할 수 있다.7 is a result screen of a baseball game real-time prediction service based on an artificial intelligence engine, and may include a
앞서 서술한 바와 같이, 결과값(710)을 제공하는 인터페이스는 숫자나 텍스트를 통해 하나의 문장으로 제공될 수 있다.As described above, the interface providing the
또한, 결과값(710)을 표시하는 인터페이스에는 다른 질문 선택 기능 버튼(720), 지난 예측 확인 기능 버튼(730)이 더 포함될 수 있다.In addition, the interface displaying the
먼저, 다른 질문 선택 기능 버튼(720)을 입력하는 경우, 사용자가 선택한 질문정보(610)를 통해 제공된 질문 중 다른 하나를 다시 선택할 수 있도록 선택지가 제공되거나, 첫 질문정보(610) 선택화면으로 돌아갈 수 있다.First, when another question
이때, 사용자가 기 선택한 질문정보(610) 이외에 다른 질문을 선택할 수 있도록 선택지가 주어지는 경우, 사용자의 편의를 위해 "경기 정보"와 같은 일부 하위 선택 정보(620)를 동일하게 매핑 후 결과값(710)을 제공할 수 있다.At this time, when a user is given a choice to select a question other than the previously selected
지난 예측 확인 기능 버튼(730)이 입력된 경우, 사용자가 선택한 질문정보(610)에 대응하는 다른 경기의 결과값(710)을 제공하게 된다.When the last prediction
예컨대, A경기의 이닝당 결과값(710)을 확인한 후 지난 예측 확인 기능 버튼(730)을 입력하면, A경기를 포함한 확인 가능한 경기의 목록이 제공되고 사용자가 B경기를 선택하면 B경기의 이닝당 결과값(710)이 제공되는 것이다.For example, after checking the result per
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.An embodiment of the present invention may also be implemented in the form of a recording medium including instructions executable by a computer, such as a program module executed by a computer. Computer-readable media can be any available media that can be accessed by a computer, and includes both volatile and nonvolatile media, removable and non-removable media. Further, the computer-readable medium may include a computer storage medium. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.Although the methods and systems of the present invention have been described in connection with specific embodiments, some or all of their components or operations may be implemented using a computer system having a general-purpose hardware architecture.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above description of the present invention is for illustrative purposes only, and those of ordinary skill in the art to which the present invention pertains will be able to understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not limiting. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as being distributed may also be implemented in a combined form.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is indicated by the claims to be described later rather than the detailed description, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. do.
100: 서버
110: 서버의 통신부 120: 서버의 메모리
130: 서버의 프로세서 140: 서버의 데이터베이스
200: 사용자 단말 300: 야구 경기 데이터 수신 장치100: server
110: communication unit of the server 120: memory of the server
130: server's processor 140: server's database
200: user terminal 300: baseball game data receiving device
Claims (13)
(a) 사용자 단말로 경기가 종료되지 않은 현재와 미래의 야구 경기 목록과 질문 정보를 제공하고, 상기 사용자 단말에서 선택된 야구 경기에 대한 경기대상정보와 질문정보를 수신하는 단계;
(b) 경기대상정보에 대응하는 팀 또는 선수의 과거 플레이데이터와 실시간 플레이데이터 중 적어도 하나를 기반으로 인공지능 엔진을 통해 상기 경기대상정보 및 질문 정보에 대응하는 결과값을 추측하는 단계; 및
(c) 상기 결과값을 상기 사용자 단말로 제공하는 단계;
를 포함하되,
상기 경기대상정보는 팀 정보 또는 선수 정보이며,
상기 질문 정보는 경기가 종료되지 않은 야구 경기에 참여 중이거나 참여할 예정인 선수의 경기실적 예측정보 및 팀의 경기실적 예측정보에 관한 질문이고,
상기 (a) 단계 이전에,
과거의 팀 또는 선수에 대한 상기 과거 플레이데이터를 수집하고, 상기 과거 플레이데이터를 입력 레이어의 입력값으로 설정하고, 타석당 결과값, 이닝당 결과값, 경기점수 예측 결과값 중 적어도 하나를 출력 레이어의 출력값으로 설정하여, 복수 회의 학습을 수행함으로써, 뉴럴 네트워크 상의 상기 입력 레이어와 출력 레이어 사이의 히든 레이어에 대한 알고리즘을 수립하는 단계;를 더 포함하여, 상기 알고리즘을 기반으로 상기 인공지능 엔진이 동작하되,
상기 사용자 단말이 선택한 상기 야구 경기가 실시간으로 수행되면, 상기 야구 경기에서 생성되는 실시간 플레이데이터를 수신 후 상기 결과값 추측에 반영하되, 상기 플레이데이터는 선수의 플레이 결과에 관한 값으로서 속력, 위치 및 시간 중 적어도 하나를 포함하는 물리적요소인 물리데이터와 상기 야구 경기에 참여한 팀 단위의 경기 진행 정보를 포함하는 실적 데이터를 포함시켜, 상기 과거 플레이데이터와 실시간 플레이 데이터를 독립변수 및 종속변수로 구성하고,
상기 (b) 단계는,
선수의 타석당 결과값을 도출하고, 이를 기초로 상기 질문 정보에 대응하는 결과값을 추측하되, 상기 질문정보에 따라서, 타석당 결과값을 기반으로 추가 분석 동작을 수행하되, 상기 질문정보가 이닝당 결과값이면, 상기 인공지능 엔진은 상기 타석당 결과값에 기초하여 이닝당 결과값을 예측하고, 상기 질문정보가 경기점수 예측 결과값이면, 상기 인공지능 엔진은 상기 이닝당 결과값에 기초하여 경기점수 예측 결과값을 예측하는 계층적 예측 방식을 수행하는 것인, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 방법.In the method of providing a real-time prediction service for a baseball game based on an artificial intelligence engine performed by a server,
(a) providing a list of current and future baseball games and question information for which the game has not been completed to a user terminal, and receiving game target information and question information for the selected baseball game by the user terminal;
(b) estimating a result value corresponding to the game target information and question information through an artificial intelligence engine based on at least one of past play data and real-time play data of a team or player corresponding to the game target information; And
(c) providing the result value to the user terminal;
Including,
The competition target information is team information or player information,
The above question information is a question about the game performance prediction information of the players participating in or planning to participate in the baseball game for which the game has not been finished and the game performance prediction information of the team,
Before step (a),
The past play data for the past team or player is collected, the past play data is set as an input value of the input layer, and at least one of a result value per at bat, a result value per inning, and a prediction result value of game score is output to the output layer. Setting an output value and performing learning a plurality of times to establish an algorithm for a hidden layer between the input layer and the output layer on the neural network; further including, the artificial intelligence engine is operated based on the algorithm. ,
When the baseball game selected by the user terminal is performed in real time, the real-time play data generated in the baseball game is received and reflected in the result value estimate, but the play data is a value related to the player's play result, including speed, position, and By including physical data, which is a physical element including at least one of the time, and performance data including game progress information for each team participating in the baseball game, the past play data and real-time play data are configured as independent variables and dependent variables. ,
The step (b),
The result value per turn at bat of the player is derived, and based on this, the result value corresponding to the question information is estimated, and an additional analysis operation is performed based on the result value per turn at bat according to the question information, but the question information is per inning. If it is a result value, the artificial intelligence engine predicts the result value per inning based on the result value per turn at bat, and if the question information is the result value of the game score prediction, the artificial intelligence engine predicts the game score based on the result value per inning. A method of providing a real-time prediction service for a baseball game based on an artificial intelligence engine, which performs a hierarchical prediction method for predicting a result value.
상기 질문정보는 타석당 결과값, 이닝당 결과값 및 경기점수 예측 결과값 중 적어도 하나의 형태로 제공되는 것인, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 방법.The method of claim 1,
The question information is provided in the form of at least one of a result value per at bat, a result value per inning, and a game score prediction result value. A method for providing a baseball game real-time prediction service based on an artificial intelligence engine.
상기 질문정보가 선수의 타석당 결과값에 대한 질문인 경우, 상기 사용자 단말로부터 경기 정보, 선수 및 타석에 대한 선택 정보를 추가로 수신하고,
상기 질문정보가 팀의 이닝당 결과값에 대한 질문인 경우, 상기 사용자 단말로부터 경기 정보, 팀 및 이닝에 대한 선택 정보를 추가로 수신하고,
상기 질문정보가 팀의 경기점수 예측 결과값에 대한 질문인 경우, 상기 사용자 단말로부터 경기 정보에 대한 선택 정보를 추가로 수신하는 것인, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 방법.The method of claim 2,
When the question information is a question about the result value per player at bat, additionally receives game information, player and at-bat selection information from the user terminal,
When the question information is a question about the result value per inning of the team, game information, selection information for the team and innings are additionally received from the user terminal,
When the question information is a question about the result of predicting the game score of the team, the method for providing a baseball game real-time prediction service based on an artificial intelligence engine is further receiving selection information for the game information from the user terminal.
상기 (c) 단계는
상기 결과값을 제공하는 인터페이스를 기반으로 사용자가 선택한 선수나 팀에 대한 경기실적 예측정보에 대한 결과를 숫자와 텍스트를 통해 하나의 문장으로 제공 하는 것인, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 방법.The method of claim 1,
Step (c)
Based on the interface providing the result value, the result of the game performance prediction information for the player or team selected by the user is provided in a single sentence through numbers and text. Baseball game real-time based on artificial intelligence engine How to provide prediction services.
상기 결과값을 표시하는 인터페이스는 다른 질문 선택 기능 버튼 및 지난 예측 확인 기능 버튼을 더 포함하되,
상기 다른 질문 선택 기능 버튼이 입력된 경우, 상기 질문정보를 통해 제공된 질문 중 다른 하나를 선택할 수 있는 선택지를 제공하고,
상기 지난 예측 확인 기능 버튼이 입력된 경우, 사용자가 선택한 상기 질문정보에 대응하는 다른 경기의 결과값을 제공하는 것인, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 방법.The method of claim 4,
The interface for displaying the result value further includes another question selection function button and a last prediction confirmation function button,
When the other question selection function button is input, providing an option to select another one of the questions provided through the question information,
When the last prediction confirmation function button is input, providing a result value of another game corresponding to the question information selected by the user is provided, a baseball game real-time prediction service based on an artificial intelligence engine.
상기 물리데이터는 경기장의 카메라를 통해 측정된 정보로부터 분석되어 수집되고,
상기 실적 데이터 및 과거 플레이데이터는 야구관련 공식기관의 서버로부터 수집되는 것인, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 방법.The method of claim 1
The physical data is analyzed and collected from information measured by the camera of the stadium,
The performance data and past play data are collected from a server of an official baseball-related institution, a baseball game real-time prediction service providing method based on an artificial intelligence engine.
상기 타석당 결과값은 출루하는 경우와 아웃되는 경우를 포함하는 복수의 실적 데이터 중 어느 하나에 관한 것이고,
상기 이닝당 결과값은 공수를 교대하는 경우를 포함하는 복수의 상기 실적 데이터 중 어느 하나를 포함하되,
상기 실적 데이터는 상기 야구 경기에 참여한 팀 단위의 경기 진행 정보를 포함하는 것인, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 방법.The method of claim 1
The result value per turn at bat relates to any one of a plurality of performance data including an on-base case and an out case,
The result value per inning includes any one of the plurality of performance data including the case of alternating karate,
The performance data includes game progress information for each team participating in the baseball game. A method for providing a baseball game real-time prediction service based on an artificial intelligence engine.
상기 결과값과 상기 실적 데이터를 비교하고, 해당 비교를 기초로 인공지능 엔진에 대한 학습을 추가로 수행하는 것인, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 방법.The method of claim 7
Comparing the result value and the performance data, and further learning about an artificial intelligence engine based on the comparison, the method for providing a real-time prediction service for a baseball game based on an artificial intelligence engine.
사용자 단말이 선택한 팀 선택 정보 및 질문 정보를 수신하고, 인공지능 엔진을 통해 상기 질문 정보에 대응하는 경기 결과를 추측하는 프로그램이 저장된 메모리 및
상기 메모리에 저장된 프로그램을 실행하여 상기 야구 경기의 결과를 추측하는 동작을 실행하는 프로세서를 포함하되,
상기 프로세서는 사용자 단말로 경기가 종료되지 않은 현재와 미래의 야구 경기 목록과 질문 정보를 제공하고, 상기 사용자 단말에서 선택된 야구 경기에 대한 경기대상정보와 질문정보를 수신하고, 경기대상정보에 대응하는 팀 또는 선수의 과거 플레이데이터와 실시간 플레이데이터 중 적어도 하나를 기반으로 인공지능 엔진을 통해 상기 경기대상정보 및 질문 정보에 대응하는 결과값을 추측하고, 상기 결과값을 상기 사용자 단말로 제공하되,
상기 경기대상정보는 팀 정보 또는 선수 정보이며, 상기 질문 정보는 경기가 종료되지 않은 야구 경기에 참여 중이거나 참여할 예정인 선수의 경기실적 예측정보 및 팀의 경기실적 예측정보에 관한 질문이고,
상기 야구 경기에 대한 경기대상정보와 질문정보를 수신하기 이전에는
과거의 팀 또는 선수에 대한 상기 과거 플레이데이터를 수집하고, 상기 과거 플레이데이터를 입력 레이어의 입력값으로 설정하고, 타석당 결과값, 이닝당 결과값, 경기점수 예측 결과값 중 적어도 하나를 출력 레이어의 출력값으로 설정하여, 복수 회의 학습을 수행함으로써, 뉴럴 네트워크 상의 상기 입력 레이어와 출력 레이어 사이의 히든 레이어에 대한 알고리즘을 수립하는 단계;를 더 포함하여, 상기 알고리즘을 기반으로 상기 인공지능 엔진이 동작하되,
상기 사용자 단말이 선택한 상기 야구 경기가 실시간으로 수행되면, 상기 야구 경기에서 생성되는 실시간 플레이데이터를 수신 후 상기 결과값 추측에 반영하되, 상기 플레이데이터는 선수의 플레이 결과에 관한 값으로서 속력, 위치 및 시간 중 적어도 하나를 포함하는 물리적요소인 물리데이터와 상기 야구 경기에 참여한 팀 단위의 경기 진행 정보를 포함하는 실적 데이터를 포함시켜, 상기 과거 플레이데이터와 실시간 플레이 데이터를 독립변수 및 종속변수로 구성하고,
선수의 타석 결과값을 도출하고, 이를 기초로 상기 질문 정보에 대응하는 결과값을 추측하되, 상기 질문정보에 따라서, 타석당 결과값을 기반으로 추가 분석 동작을 수행하되, 상기 질문정보가 이닝당 결과값이면, 상기 인공지능 엔진은 상기 타석당 결과값에 기초하여 이닝당 결과값을 예측하고, 상기 질문정보가 경기점수 예측 결과값이면, 상기 인공지능 엔진은 상기 이닝당 결과값에 기초하여 경기점수 예측 결과값을 예측하는 계층적 예측 방식을 수행하는 것인, 인공지능 엔진을 기반으로 한 야구 경기 실시간 예측 서비스 제공 장치.In the apparatus for providing a real-time prediction service for a baseball game based on an artificial intelligence engine,
A memory in which a program for receiving team selection information and question information selected by the user terminal and estimating the match result corresponding to the question information through an artificial intelligence engine is stored;
Including a processor for executing an operation of estimating the result of the baseball game by executing the program stored in the memory,
The processor provides a list of current and future baseball games and question information for which the game has not been completed to the user terminal, receives game target information and question information for the baseball game selected by the user terminal, and corresponds to the game target information. Based on at least one of past play data and real-time play data of a team or player, a result value corresponding to the game target information and question information is estimated through an artificial intelligence engine, and the result value is provided to the user terminal,
The game target information is team information or player information, and the question information is a question about game performance prediction information and team game performance prediction information of players who are participating in or will be participating in a baseball game for which the game has not been completed,
Before receiving game target information and question information for the above baseball game,
The past play data for the past team or player is collected, the past play data is set as an input value of the input layer, and at least one of a result value per at bat, a result value per inning, and a prediction result value of game score is output to the output layer. Setting an output value and performing learning a plurality of times to establish an algorithm for a hidden layer between the input layer and the output layer on the neural network; further including, the artificial intelligence engine is operated based on the algorithm. ,
When the baseball game selected by the user terminal is performed in real time, the real-time play data generated in the baseball game is received and reflected in the result value estimate, but the play data is a value related to the player's play result, including speed, position, and By including physical data, which is a physical element including at least one of the time, and performance data including game progress information for each team participating in the baseball game, the past play data and real-time play data are configured as independent variables and dependent variables. ,
A player's turn at bat result value is derived, and based on this, the result value corresponding to the question information is estimated, and an additional analysis operation is performed based on the result value per turn at bat according to the question information, but the question information is the result per inning. If it is a value, the artificial intelligence engine predicts a result per inning based on the result per turn at bat, and if the question information is a game score prediction result, the artificial intelligence engine predicts the game score based on the result per inning. An apparatus for providing a real-time prediction service for a baseball game based on an artificial intelligence engine that performs a hierarchical prediction method of predicting a value.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180051478A KR102158014B1 (en) | 2018-05-03 | 2018-05-03 | Method and apparatus for real - time monitoring of baseball game using artificial neural network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180051478A KR102158014B1 (en) | 2018-05-03 | 2018-05-03 | Method and apparatus for real - time monitoring of baseball game using artificial neural network |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190127196A KR20190127196A (en) | 2019-11-13 |
KR102158014B1 true KR102158014B1 (en) | 2020-09-21 |
Family
ID=68535114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180051478A KR102158014B1 (en) | 2018-05-03 | 2018-05-03 | Method and apparatus for real - time monitoring of baseball game using artificial neural network |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102158014B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102334682B1 (en) * | 2021-03-19 | 2021-12-06 | 주식회사 스포츠데이터 에볼루션 | Game Analysis App Service Method Using Big Data-Based Baseball Training Analysis Platform |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102226018B1 (en) * | 2020-02-11 | 2021-03-09 | 조재성 | Predicting system and method using collective intelligence and artificial intelligence |
KR102637994B1 (en) * | 2020-09-29 | 2024-02-20 | 김명락 | Method and device for providing service that analyzes exercise and recommends sports facilities based on deep-learning |
KR102434391B1 (en) * | 2021-06-11 | 2022-08-19 | 성균관대학교산학협력단 | Domain shift problem solving model of interdependent LSTM model based baseball game |
JP7152093B1 (en) | 2021-12-14 | 2022-10-12 | キーコム株式会社 | Information processing device, information processing method, and program |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012054529A1 (en) * | 2010-10-18 | 2012-04-26 | Pre Play Sports, Llc | Systems and methods for scoring competitive strategy predictions of users on a play-by-play basis |
KR20150114169A (en) * | 2014-04-01 | 2015-10-12 | 박재형 | The Learning Type system and method For Sports fixture |
KR102270184B1 (en) * | 2016-04-20 | 2021-06-28 | 김세원 | System and method for providing service for predicting result of game |
KR101865698B1 (en) * | 2016-06-20 | 2018-06-08 | 전남대학교산학협력단 | System and method for predicting baseball game |
KR101837541B1 (en) * | 2016-08-18 | 2018-03-13 | (주)애슬릿미디어 | Server and user device for provider of baseball information, and method for provider of baseball information using server |
-
2018
- 2018-05-03 KR KR1020180051478A patent/KR102158014B1/en active IP Right Grant
Non-Patent Citations (1)
Title |
---|
정태충 외, 기계학습 및 시뮬레이션을 이용한 프로야구 경기 예측 및 On-line 시뮬레이션 게임 시스템 개발, 산.학.연 공동기술개발사업 연차연구보고서 2차년도, 경희대학교, 1999.* |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102334682B1 (en) * | 2021-03-19 | 2021-12-06 | 주식회사 스포츠데이터 에볼루션 | Game Analysis App Service Method Using Big Data-Based Baseball Training Analysis Platform |
Also Published As
Publication number | Publication date |
---|---|
KR20190127196A (en) | 2019-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102158014B1 (en) | Method and apparatus for real - time monitoring of baseball game using artificial neural network | |
US12097422B2 (en) | Athletic training system and method | |
US11322043B2 (en) | Remote multiplayer interactive physical gaming with mobile computing devices | |
Vinyals et al. | Starcraft ii: A new challenge for reinforcement learning | |
US11455868B2 (en) | Method, system, and computer program product for interactive sports game | |
US10872503B2 (en) | Method, system, and computer program product for interactive sports game | |
US20120202594A1 (en) | Simulated sports events utilizing authentic event information | |
US20150105134A1 (en) | Systems and methods for a combination lottery and fantasy sports league | |
KR20180098111A (en) | Apparatus and method for recommendation of curling game strategy using deep learning | |
US9821211B2 (en) | Computer-implemented methods and systems enabling fan participation in calling plays at sporting and other events | |
KR102342778B1 (en) | Golf simulation device providing personalized avatar for user and operating method thereof | |
US20170113148A1 (en) | Systems and methods for fantasy skill contests involving stochastic predictions | |
US11580822B2 (en) | System and method for sports wagering using dynamic real-time pricing and trading | |
US20230245525A1 (en) | Method, system, and computer program product for interactive sports game | |
CN115944921B (en) | Game data processing method, device, equipment and medium | |
JP7244389B2 (en) | Information processing device, information processing method and information processing program | |
Smith | Investigating Daily Fantasy Baseball: An Approach to Automated Lineup Generation | |
Takvorian | The Beautiful (Computer) Game: How Data Science Will Revolutionize the World's Most Popular Sport | |
AU2020290977A1 (en) | Method, system, and computer program product for interactive sports game | |
WO2022140182A1 (en) | Method, system, and computer program product for interactive sports game | |
JP5307914B1 (en) | GAME MANAGEMENT DEVICE, GAME SYSTEM, GAME MANAGEMENT METHOD, AND PROGRAM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |