CN111919223A - 用于机器学习算法游戏化的抽象接口 - Google Patents

用于机器学习算法游戏化的抽象接口 Download PDF

Info

Publication number
CN111919223A
CN111919223A CN201980022488.9A CN201980022488A CN111919223A CN 111919223 A CN111919223 A CN 111919223A CN 201980022488 A CN201980022488 A CN 201980022488A CN 111919223 A CN111919223 A CN 111919223A
Authority
CN
China
Prior art keywords
solution
machine learning
processed
solutions
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201980022488.9A
Other languages
English (en)
Other versions
CN111919223B (zh
Inventor
C·克拉克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Balanced Media Technology Co ltd
Original Assignee
Balanced Media Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Balanced Media Technology Co ltd filed Critical Balanced Media Technology Co ltd
Publication of CN111919223A publication Critical patent/CN111919223A/zh
Application granted granted Critical
Publication of CN111919223B publication Critical patent/CN111919223B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/67Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/847Cooperative playing, e.g. requiring coordinated actions from several players to achieve a common goal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • G06F18/2178Validation; Performance evaluation; Active pattern learning techniques based on feedback of a supervisor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/40Software arrangements specially adapted for pattern recognition, e.g. user interfaces or toolboxes therefor
    • G06F18/41Interactive pattern learning with a human teacher
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

用于交互式机器学习的方法、系统和介质。所述方法包括:迭代地执行包括以下步骤的过程:识别给定的问题的解决方案;基于确定所识别的解决方案是所述给定的问题的可能的解决方案,通过使用所述可能的解决方案运行机器学习应用程序来处理所述可能的解决方案;基于多个经处理的解决方案选择经处理的解决方案,所述多个经处理的解决方案的至少一部分来自所述过程的不同迭代;以及基于退出条件确定是否以针对所述给定的问题的所选择的解决方案退出所述过程。执行所述过程包括经由用于交互式应用程序的用户接口接收到所述交互式应用程序内的输入以在执行所述步骤之一的至少一部分中使用。

Description

用于机器学习算法游戏化的抽象接口
相关申请的交叉引用和优先权声明
本申请要求享有于2018年3月26日提交的序列号为62/648,198的美国临时专利申请的优先权。上述专利文件的内容通过引用并入本文。
技术领域
本公开内容总体上涉及使用用户交互处理机器学习(ML)算法。更具体地,本公开内容涉及用于机器学习算法游戏化的抽象接口。
背景技术
许多研究人员已经转向游戏和类似游戏的活动以通过众包研究或公民科学(CS)(也被称为人类计算(HC))来处理他们的研究。CS研究技术允许研究人员访问庞大的潜在的有兴趣帮助科学研究的志愿者公民科学家网络。CS游戏,诸如FolditTM,将科学问题变成游戏。许多CS游戏已经证明成功地激发兴趣、提供有价值的数据分析以及生成科学问题的创造性解决方案。尽管这些CS游戏具有潜力,但是CS游戏尚未在商业视频游戏的级别上获得成功和参与度。
附图说明
为了更完整地理解本公开内容以及其优点,现在参考以下结合附图进行的描述,在附图中相同的附图标记表示相同的部分:
图1例示了可以在其中实施本公开内容的各实施方案的示例网络化系统;
图2例示了可以在其中实施本公开内容的各实施方案的服务器的一个实施例;
图3例示了可以在其中实施本公开内容的各实施方案的客户端设备的一个实施例;
图4例示了根据本公开内容的各实施方案的用于实施允许机器学习算法游戏化的抽象算法接口的过程。
图5例示了根据本公开内容的各实施方案的在玩游戏循环(gameplay loop)的模型内的机器学习算法的一个示例实施方式;
图6例示了根据本公开内容的各实施方案的用于使用算法性能来动态地调节(scale)玩游戏和调整游戏级别的过程;以及
图7例示了根据本公开内容的一个或多个实施方案的用来动态地调节玩游戏和调整游戏级别的随时间的机器学习算法性能的示例曲线图。
发明内容
本公开内容的实施方案提供了交互式机器学习、用于机器学习算法游戏化的抽象接口和/或建构主义增强的(constructivist-augmented)机器学习。
在一个实施方案中,提供了一种用于交互式机器学习的方法。所述方法包括迭代地执行包括以下步骤的过程:识别给定的问题的解决方案;基于确定所识别的解决方案是所述给定的问题的可能的解决方案,通过使用所述可能的解决方案运行机器学习应用程序来处理所述可能的解决方案;基于多个经处理的解决方案选择经处理的解决方案,所述多个经处理的解决方案的至少一部分来自所述过程的不同迭代;以及基于退出条件确定是否以针对所述给定的问题的所选择的解决方案退出所述过程。执行所述过程包括经由用于交互式应用程序的用户接口接收到所述交互式应用程序内的输入以在执行所述步骤之一的至少一部分中使用。
在另一个实施方案中,提供了一种用于交互式机器学习的系统。所述系统包括处理器和可操作地连接到所述处理器的通信接口。所述处理器被配置为迭代地执行包括以下步骤的过程:识别给定的问题的解决方案;基于确定所识别的解决方案是所述给定的问题的可能的解决方案,通过使用所述可能的解决方案运行机器学习应用程序来处理所述可能的解决方案;基于多个经处理的解决方案选择经处理的解决方案,所述多个经处理的解决方案的至少一部分来自所述过程的不同迭代;以及基于退出条件确定是否以针对所述给定的问题的所选择的解决方案退出所述过程。所述通信接口被配置为经由用于交互式应用程序的用户接口接收到所述交互式应用程序内的输入以在执行所述步骤之一的至少一部分中使用。
在另一个实施方案中,提供了一种用于交互式机器学习的非暂时性计算机可读介质。所述计算机可读介质包括程序代码,所述程序代码在由系统的处理器执行时导致所述系统迭代地执行包括以下步骤的过程:识别给定的问题的解决方案;基于确定所识别的解决方案是所述给定的问题的可能的解决方案,通过使用所述可能的解决方案运行机器学习应用程序来处理所述可能的解决方案;基于多个经处理的解决方案选择经处理的解决方案,所述多个经处理的解决方案的至少一部分来自所述过程的不同迭代;以及基于退出条件确定是否以针对所述给定的问题的所选择的解决方案退出所述过程。所述计算机可读介质还包括程序代码,所述程序代码在由系统的处理器执行时导致所述系统经由用于交互式应用程序的用户接口接收到所述交互式应用程序内的输入以在执行所述步骤之一的至少一部分中使用。
根据以下附图、描述和权利要求,其他技术特征对于本领域技术人员来说可以是容易明了的。
具体实施方式
本专利文件中的下文所讨论的图1至图7和用来描述本公开内容的原理的各实施方案仅是通过例示的方式,并且不应以任何方式被解释为限制本公开内容的范围。本领域技术人员将理解,可以在任何适当地布置的系统或设备中实施本公开内容的原理。
本公开内容的各实施方案认识到让研究人员尝试成为视频游戏设计和开发方面的专家或为每个科学问题创建定制游戏可能是代价高的。本公开内容的各实施方案还认识到,尽管一些CS游戏能够解决科学问题,但是这些游戏缺乏主流视频游戏的参与度。在低参与度的情况下,定制创建的CS游戏的有用性未发挥全部潜力。
因此,本公开内容的各实施方案提供了一种将科学研究连接到现有的和/或成功的商业视频游戏的解决方案。本公开内容的实施方案为研究人员提供了一种机制以便以更一般的形式利用主流视频游戏。具体地,本公开内容的各实施方案为视频游戏(或更通常是交互式娱乐)、机器学习和问题(例如,诸如,机器学习问题、与研究和开发有关的科学问题)之间的接口提供了一种框架。
本公开内容的实施方案还提供了一种利用众包或CS技术来改善机器学习和与机器学习交互的接口。本公开内容的实施方案为激励和授权大量的在线社区(诸如,游戏社区)使用他们已经在玩游戏上花费的时间来帮助处理帮助创建更好世界的关键问题做准备。
如本文所使用的,术语“视频游戏或游戏”的使用意在作为实施例,并且可以在任何类型的交互式应用程序中实施本公开内容的实施方案。同样如本文所使用的,问题是指可以使用机器学习或计算机处理来处理或解决的任何类型的问题,包括对机器学习模型本身的改善或修改以及与研发和开发有关的科学问题。
图1例示了可以在其中实施本公开内容的各实施方案的示例网络化系统100。图1中所示出的网络化系统100的实施方案仅用于例示。在不脱离本公开内容的范围的前提下,可以使用网络化系统100的其他实施方案。
如图1中所示出的,系统100包括网络101,该网络便于系统100中各种部件之间的通信。例如,网络101可以在网络地址之间传达互联网协议(IP)数据包或其他信息。网络101可以包括一个或多个局域网(LAN);城域网(MAN);广域网(WAN);虚拟私人网(VPN);全球网——诸如因特网——的全部或一部分;或在一个或多个位置处的任何其他通信系统。
网络101便于各种服务器102-104与各种客户端设备106-114之间的通信。服务器102-104中的每个可以是任何合适的电子计算或处理设备,该电子计算或处理设备可以提供包括用于一个或多个客户端设备106-114的软件的计算服务。服务器102-104中的每个可以例如包括一个或多个处理设备、存储指令和数据的一个或多个存储器和便于通过网络101通信的一个或多个网络接口。例如,如下文更详细地讨论的,服务器102提供了一种用于使用客户端设备106-114中的一个或多个实施的机器学习算法游戏化的抽象接口。服务器103可以是与软件或游戏开发配套(assort)的服务器,如下文更详细地讨论的,该服务器103集成了该抽象接口以利用众包技术来改善机器学习算法。服务器104可以是与具有需要使用该抽象接口解决的问题和/或需要使用该抽象接口处理的项目或任务的研究人员、开发人员或其他网格计算消费者相关联的服务器。此外,在一些实施方案中,服务器102-104中的任何一个可以接收、存储和/或分析机器学习算法性能的度量以评估算法性能和/或可以将机器学习算法解决方案的结果提供给研究人员,如下文更详细地讨论的。
每个客户端设备106-114表示通过网络101与至少一个服务器或其他计算设备交互的任何合适的电子计算或处理设备。在此实施例中,客户端设备106-114包括台式计算机106、移动电话或智能手机108、平板计算机110、膝上型计算机112、视频游戏控制台114、机顶盒和/或电视机等。然而,在网络化系统100中可以使用任何其他或附加客户端设备。例如,任何互联网或网络可连接设备或物联网(IoT)设备(例如,智能电视机、电冰箱、树莓派(Raspberry PI)等)可以用于系统100中的客户端设备106-114中的一个。如下文所讨论的,在各实施方案中,客户端设备106-114在服务器102的协调下(可能连同其他计算设备一起)参与形成自愿计算网格以实施用于机器学习算法游戏化的抽象接口。例如,如本文所讨论的,客户端设备106-114可以运行各种视频游戏或交互式应用程序,所述视频游戏或交互式应用程序包括在抽象事物中运行一个或多个机器学习算法的能力。此外,在各实施方案中,客户端设备106-114中的任何一个可以生成、发送和/或分析机器学习算法性能的度量以评估算法性能和/或可以将机器学习算法解决方案的结果提供给研究人员,如下文更详细地讨论的。在一些实施方案中,各个客户端设备106-1144可以直接地与彼此或与服务器通信或使用例如具有或不具有集中式服务器的对等网络、自组网(ad hoc)和/或基于网格的网络间接地与彼此或与服务器通信,以实施抽象接口。在2018年6月5日提交的并且题为“Platform for Collaborative Processing of Computing Tasks”的序列号为16/000,589的美国申请中描述了用于用来协作处理计算任务的计算网格的平台的附加实施例,该美国申请的全部内容通过引用并入本文。
尽管图1例示了网络化系统100的一个实施例,但是可以对图1进行各种改变。例如,系统100可以以任何合适的布置包括任何数目的每个部件,并且服务器102-104和客户端设备106-114中的每个可以表示为系统100的一部分的任何数目的服务器和/或客户端设备。通常,计算和通信系统具有各种各样的配置,并且图1不将本公开内容的范围限制到任何特定配置。虽然图1例示了可以在其中使用在此专利文件中所公开的各种特征的一个操作环境,但是可以在任何其他合适的系统中这些特征。
图2和图3例示了根据本公开内容的各实施方案的网络化系统中的示例计算设备。具体地,图2例示了示例服务器200,并且图3例示了示例客户端设备300。在此例示性实施例中,服务器200表示图1中的服务器102-104中的任何一个,并且客户端设备300可以表示图1中的客户端设备106-114中的一个或多个。
如图2中所示出的,服务器200包括总线系统205,该总线系统205支持处理器210、存储设备215、通信接口220和输入/输出(I/O)单元225之间的通信。处理器210执行可以被加载到存储器230内的指令。处理器210可以以任何合适的布置包括任何合适的数目和类型的处理器或其他设备。处理器210的示例类型包括微处理器、微控制器、数字信号处理器、现场可编程门阵列、专用集成电路和分立电路系统。
存储器230和持久性存储装置235是存储设备215的实施例,该存储设备215表示能够存储信息(诸如暂时的或持久的数据、程序代码和/或其他合适的信息)和便于该信息的检索的任何结构。存储器230可以表示随机存取存储器或任何其他合适的易失性或非易失性存储设备。持久性存储装置235可以包含支持长期存储数据的一个或多个部件或设备,诸如只读存储器、硬盘驱动器、闪存或光盘。例如,持久性存储装置235可以存储关于数据的一个或多个数据库、客户端应用程序、等待分派到自愿计算网格中的单元(cell)的任务和/或来自自愿计算网格的处理结果等。在各实施方案中,持久性存储装置235可以存储带有有接口的机器学习算法的视频游戏或视频游戏的部件以将机器学习算法集成在游戏中以用于通过网络101分发。
通信接口220支持与其他系统或设备的通信。例如,通信接口220可以包括便于通过网络101进行通信的网络接口卡或无线收发器。通信接口220可以支持通过任何合适的物理或无线通信链路的通信。I/O单元225允许数据的输入和输出。例如,I/O单元225可以为通过键盘、鼠标、小键盘、触摸屏或其他合适的输入设备的用户输入提供连接。I/O单元225还可以将输出发送到显示器、打印机或其他合适的输出设备。
尽管图2例示了服务器200的一个实施例,但是可以对图2进行各种改变。例如,图2中的各种部件可以被组合、被进一步细分或被省略,并且可以根据特定需要添加附加部件。作为一个具体实施例,虽然被描绘为一个系统,但是服务器200可以包括可以被远程定位的多个服务器系统。在另一个实施例中,不同的服务器系统可以提供处理、存储和/或通信资源中的一些或全部,以用于提供根据本公开内容的各实施方案的用于机器学习算法游戏化的抽象接口。
图3例示了根据本公开内容的实施方案的示例客户端设备300。图3中所例示的客户端设备300的实施方案仅用于例示,并且图1的客户端设备106-114可以具有相同的或类似的配置。然而,客户端设备具有各种各样的配置,并且图3不将本公开内容的范围限制到电子设备的任何具体实施方式。如图3中所示出的,客户端设备300包括通信接口305、处理器310、输入/输出(I/O)接口315、输入设备325、显示器320和存储器330。存储器330包括操作系统(OS)332和一个或多个客户端应用程序334。
通信接口或电路305支持与其他系统或设备的通信。例如,通信接口305可以包括便于通过网络101进行通信的网络接口卡或无线收发器。通信接口305可以支持通过任何合适的物理或无线通信链路的通信。对于利用无线通信的实施方案,通信接口305可以使用各种各样的无线通信协议(例如,蓝牙、Wi-Fi、蜂窝、LTE通信协议等)经由一个或多个天线接收传入的射频(RF)信号。
处理器310可以包括一个或多个处理器或其他处理设备,并且执行存储在存储器330中的OS 332,以控制客户端设备300的总体操作。处理器310也能够执行驻留在存储器330中的客户端应用程序334,诸如,作为自愿计算网格的一部分的用于处理任务和存储的一个或多个客户端应用程序。在各实施方案中,处理器310执行驻留在存储器330中的客户端应用程序334,诸如,包括用于提供问题的解决方案的抽象机器学习算法的一个或多个视频游戏,如下文更详细地讨论的。处理器310可以以任何合适的布置包括任何合适的数目和类型的处理器或其他设备。处理器310的示例类型包括微处理器、微控制器、图形处理单元(GPU)、数字信号处理器、现场可编程门阵列、专用集成电路和分立电路系统。
处理器310可以根据执行过程的需要将数据移入或移出存储器330。处理器310还耦合到I/O接口315,该I/O接口315为客户端设备300提供连接到其他设备(诸如膝上型计算机和手持式计算机)的能力。I/O接口315提供附件与处理器310之间的通信路径。
处理器310也耦合到输入设备325和显示器320。客户端设备300的操作员可以使用输入设备325来将数据和输入提供到客户端设备300内。例如,输入设备325可以是触摸屏、按钮、键盘、跟踪球、鼠标、触笔、电子笔、视频游戏控制器等。显示器320可以是液晶显示器、发光二极管显示器或能够渲染文本和/或至少有限的图形(诸如来自网站)的其他显示器。存储器330耦合到处理器310。存储器330的一部分可以包括随机存取存储器(RAM),并且存储器330的另一部分可以包括闪存或其他只读存储器(ROM)。
尽管图3例示了客户端设备300的一个实施例,但是可以对图3进行各种改变。例如,图3中的各种部件可以被组合、被进一步细分或被省略,并且可以根据特定需要添加附加部件。作为一个具体实施例,处理器310可以被划分为多个处理器,诸如一个或多个中央处理单元(CPU)和一个或多个图形处理单元(GPU)。在另一个实施例中,显示器320可以外部连接到客户端设备300或不是客户端设备300的一部分,诸如例如,与视频游戏控制台或台式计算机连接。
如本文所讨论的,目前的各实施方案利用系统100的部件来为视频游戏、机器学习和问题的解决方案之间的接口提供一种框架。根据各实施方案的抽象接口连接机器学习算法以在游戏中运行并且允许玩家与该算法交互,并且以这样的方式使得算法连接不依赖于特定的算法或技术。例如,机器学习算法在游戏中被抽象,使得机器学习算法可以被替换成经由游戏接口输入的另一种算法,或一种完全新的算法(例如,以解决不同的研究人员的不同的科学问题),但是仍适合在相同的游戏中。
各实施方案认识到,传统的游戏开发人员在对游戏进行编程时已经知道他们的视频游戏的解决方案是什么。然而,使用机器学习,各实施方案认识到研究人员常常不知道他们的问题的正确解决方案是什么,或甚至不知道正确的解决方案是否存在。因此,本公开内容的各实施方案允许用户玩已经流行的和/或吸引人的游戏、使具有已知的最终目标的这些游戏如何保持乐趣,并且还解决集成机器学习算法的问题,该机器学习算法可能不具有最终解决方案或不保证具有好的解决方案。因此,本公开内容的各实施方案提供了抽象接口,以供用户玩吸引人的游戏,同时保持游戏有乐趣和吸引人——算法几乎没有或没有侵入性。
本公开内容的各实施方案进一步认识到并且利用如下理解:通过仅需要能够表征算法如何执行,就可以产生解决方案的肯定结果。由集成机器学习算法提供的解决方案在游戏期间在处理之后可能仍然是差的。然而,如果算法解决方案可以被表征,则本公开内容的各实施方案能够比较算法表征以确定由算法提供的解决方案是否正在改善。只要存在至少少量改善,抽象接口在高度流行的游戏中运行的能力就使机器学习算法和正被研究的问题的最终解决方案的总体改善量大大增加。
在一些实施方案中,根据机器学习算法的一个或多个方面利用公民科学或众包研究来提供由机器学习算法提供的解决方案的进一步改善。例如,通过分析CS项目、CS游戏和游戏设计技术,本公开内容的实施方案为研究人员提供了一种结构以将他们的问题分解成可以被包括在视频游戏中的一致格式。随附的应用程序编程接口(API)提供了允许游戏开发人员和改装社区(modding community)(例如,开发人员)访问CS数据和随附的支持功能的通用接口。此结构允许开发人员应用他们的设计专业知识来将CS更自然地集成到他们的游戏中,这提供了较大的参与度并且扩大了用户基础。各实施方案的抽象接口允许科学家专注于他们的领域知识和专业知识,同时提供利用游戏开发人员的技能以创建新的接口的途径(avenue)以及使集成参与到玩游戏中,并且两者对于支持改装社区的游戏都可以利用众包社区解决方案的添加的创造力。此外,集成解决方案允许CS研究人员在游戏和/或接口发布之后随着新的数据和参数被上载来利用CS研究。
图4例示了根据本公开内容的各实施方案的用于实施允许机器学习算法游戏化的抽象算法接口的过程400。例如,图4中所描绘的过程可以由图3中的客户端设备300、图2中的服务器200、和/或图1中的客户端设备106-114中的任何一个(共同地或单独地被称为“系统”)实施。
如本文所讨论的,本公开内容的实施方案将机器学习算法分解为下文所讨论的五个步骤,使得如果一个问题可以遵循相同的格式,则可以在视频游戏中处理针对该问题的解决方案——从而提供视频游戏、机器学习和问题之间的接口。如所描绘的,过程400是迭代过程,其中机器学习算法在各个周期中处理多个建议的解决方案。该过程以系统建议可能的解决方案(步骤405)开始。例如,在步骤405中,系统正在运行视频游戏。在该视频游戏中,系统还正在处理机器学习算法以提供科学问题的解决方案,该科学问题已经被分解为适合在游戏中由机器学习算法处理的格式。在步骤405中,系统建议或生成该问题的某个潜在解决方案,无论可能与否。在并入CS的实施方案中,系统可以呈现研究问题的潜在解决方案的标准是什么,并且请求潜在解决方案的来自用户的输入。例如,如下文更详细地讨论的,该解决方案可以由用户建议或由系统基于用户输入识别。在各实施方案中,可以在步骤405中建议多个解决方案,并且在过程400的每次迭代中评估所述多个解决方案。
随后,系统验证建议的解决方案是否是可能的(步骤410)。例如,在步骤410中,系统确定建议的解决方案是否可能是问题的有效解决方案。例如,如果存在对帮助确定输出的结构的所建立的测量、算法或方程式的限制,或如果解决方案被要求具有特定形式(例如,贝叶斯网络需要是非循环的),则建议的解决方案可以是不可能的。如果建议的解决方案(或步骤405中建议的全部解决方案)是不可能的或无效的,则系统返回到步骤405以建议其他解决方案。
在验证建议的解决方案是可能的之后,系统处理经验证的解决方案并且生成度量(步骤415)。例如,在步骤415中,系统通过使用当前提议的解决方案运行机器学习算法来测试或评估解决方案。处理还包括通过使用一个或多个度量以确定机器学习算法执行得多么好来表征机器学习算法的性能。例如,但不限于,这些算法表征度量可以包括执行时间、全局/局部分数、总的探索的解决方案、有效解决方案的百分比和学习曲线上的趋势。这些是系统用以察看算法是否改善的机器学习算法的表征。如下文更详细地讨论的,解决方案的测试或评估可以涉及用于解决方案的参数值的修改,该解决方案可以由用户建议或选择(例如,由系统基于用户输入识别)或由系统选择或建议、以及其组合。
如上文所讨论的,不管改善是否是显著的或解决方案是否是最终有用的结果,只要解决方案可以被表征,机器学习算法就可以在游戏中运行。如果存在任何改善——如基于表征度量的比较所确定的,则在游戏中机器学习算法的处理是有用的。由于本公开内容的抽象接口使得机器学习算法能够在流行的和吸引人的视频游戏中运行,因此任何较小的改善将随着大规模的视频游戏而被显著放大。
执行时间是机器学习算法用来处理解决方案的总时间(或计算资源的其他度量,诸如周期)。例如,即使算法从周期到周期仅提供适度的改善,但是执行时间是短的,则此算法可能比从周期到周期提供解决方案中的较大改善但是具有长得多的执行时间的算法优选。全局分数表征当前解决方案相对于针对特定科学问题处理的所有在前解决方案排名如何。例如,由系统以及系统100中的其他客户端设备处理的解决方案也针对正在被处理的特定科学问题运行机器学习算法。局部分数表征当前解决方案相对于由特定的客户端设备300处理的所有在前解决方案排名如何。
探索的解决方案是由机器学习算法采用的技术能够探索一个总解决方案空间的多少个可能的解决方案的度量。例如,使用由机器学习算法采用的技术,探索的解决方案度量量化了机器学习算法将探索一个解决方案空间中的总的可能数目的解决方案中的多少个解决方案或多少百分比的解决方案(例如,诸如步骤405中可建议的解决方案数目)。例如,利用由本公开内容提供的参与度的增加,探索总解决方案的较大百分比的机器学习算法可以是较好的,尽管在别处性能较差。此外,由于在该过程的附加迭代中建议了附加解决方案,因此可以随时间更新此度量。
有效解决方案的百分比是用于机器学习算法的提议的或建议的解决方案的多少百分比是有效的度量,例如,如果总解决方案中仅三分之二有效,则具有较多的总解决方案的算法可能比具有较少的解决方案但是具有更高的有效百分比的另一个算法更糟糕。此外,由于在过程的附加迭代中验证了附加解决方案,因此这是随时间被更新的度量。学习曲线上的趋势是算法随时间如何执行的度量。学习曲线是算法随时间如何执行的例示,例如使用全局或局部分数度量。算法的性能可以开始差但是可以在学习曲线上较快地斜升,并且因此比以较好的解决方案开始但是从周期到周期示出很少改善的算法优选。
如本文所讨论的,只要可以表征用于处理科学问题的解决方案的算法,例如,使用上文所讨论的示例度量中的一个或多个,就可以测量该算法的性能,并且如果此测量的性能改善,无论多么少,该算法已经以最终对解决科学问题有用的方式被成功地抽象为玩游戏。
随后,系统选择经处理的解决方案(步骤420)。例如,在步骤420中,系统审查n个经处理的解决方案的结果,例如使用关于经处理的解决方案生成的度量,以决定或选择使用那个解决方案用于进一步测试。例如,通常步骤405中建议的解决方案基于来自步骤420的先前选择的解决方案中的种子(seeded)初始状态。因此,步骤405可以附加地包括系统使用选择的解决方案作为开始点来建议或提议新的解决方案。例如,作为步骤420的一部分,系统可以基于解决方案是否值得被进一步探索、是否具有最高的分数(局部的或全局的)等的标准选择解决方案。
随后,系统基于退出条件退出过程(步骤425)。例如,在步骤425中,系统可以确定机器学习算法的处理是否满足一个或多个退出条件。如果不,则系统返回到步骤405和过程400的另一次迭代。如果是这样,则系统停止机器学习算法的处理。例如,退出条件可以包括处理机器学习算法长达一定量的时间、运行一定数目的迭代、任何度量的一定分数、用于机器学习算法的解决方案在一定数目的试验或一定时间段内没有改善(例如,算法已经收敛)等。
此外,在各实施方案中,本公开内容提供了允许用户通过视频游戏与机器学习算法交互的框架。通过将玩游戏抽象为算法和抽象该算法以在游戏中运行,本公开内容的各实施方案可以混合和匹配机器学习和用户交互的元素以替换或增加(augment)算法的一个或多个步骤或增加一个或多个步骤。例如,用户可以选择可能的解决方案、对解决方案进行评估和排名、和/或选择或决定哪个解决方案是最好的解决方案或接下来要使用的解决方案。
本公开内容提供了用于使用用户交互来替换或增加算法的一个或多个步骤或增加一个或多个步骤的至少四个示例场景。作为第一实施例,用户可以生成用来评估经处理的解决方案的训练数据。例如,对于用以从照片中识别面部的机器学习算法,用户可以选择面部的照片以生成用来评估算法性能的训练数据。第二实施例是监督学习。例如,对于用于选择照片中的特定对象的机器学习算法,用户可以指示机器学习算法是否正确地执行。
第三实施例是突变(mutation)。当机器学习算法陷入局部搜索空间或“局部最小值”——其中解决方案随时间没有大的改善(如果有的话)时,算法应用突变技术以通过随机改变参数和变量来摆脱局部搜索空间。在一个或多个实施方案中,系统可以请求用户输入以建议突变或不同的解决方案,以试图将算法移出局部最小值。例如,客户端设备可以使用机器学习来评估1000个解决方案,并且向用户提供一个或多个解决方法,以使用户将解决方案的部分操纵到可能更好。用户操纵的解决方案然后被反馈给机器学习算法,以使系统继续处理以试图摆脱局部搜索空间。从而,系统将用户选择的突变应用于机器学习算法——不仅仅是使用启发法(heuristic)或机器学习生成的突变。作为一个具体实施例,对于尝试对航天器进行编程以飞行通过小行星带(asteroid field)的问题,航天器的每个传感器被认为到机器学习算法的输入,并且每个传感器具有加权值,例如,以用于神经网络的矩阵的形式。机器学习算法调整传感器加权值,以对各种传感器之间的相对重要性(例如,包括航天器基于各种传感器输入所采取的响应类型和响应严重度)进行编程。用户选择的突变可以提供关于什么传感器是更重要的或较不重要的(例如,长程或短程传感器之间的相对重要性)加权传感器的输入。因此,当使用用户选择的突变重新运行算法时,可以将解决方案移出局部搜索空间或最小值。
第四实施例是人类搜索启发法。除了机器学习算法处理之外,来自实际监测用户游戏玩法的数据可以被记录并且被提供给机器学习算法以使该算法根据由用户尝试的内容“学习”或选择解决方案(或其部分)以更快地训练机器学习算法。换句话说,机器学习算法可以评估累积的用户数据并且识别决策模式,以试图学习为什么要做出用户决策。例如,系统包括用于搜索启发法的编程,以评估用户搜索和数据优化,并且然后训练神经网络以按与用户做过的方式相同或类似的方式搜索数据,以确定与如果神经网络在不检查从用户搜索和优化生成的数据的情况下执行过程相比结果是否更好或是否导致更好的解决方案。
因此,本公开内容的实施方案进一步提供了一种使人工智能(AI)和用户在协作环境中一起工作以解决问题的机制。除了机器学习算法简单地使用空闲的CPU资源来在后台处理一定部件的能力之外,本公开内容的实施方案通过并入来自用户反馈和玩游戏的输入来提供对机器学习算法的处理的进一步改善,以使用上文所讨论的用户贡献技术来进一步改善机器学习算法的效力。例如,如果用户正在选择解决方案,则机器学习算法可以导致游戏在视觉上向用户显示解决方案以供用户决定是否应在下一个周期内使用该解决方案。因此,本公开内容的实施方案提供了一种允许用户通过视频游戏与机器学习算法交互的框架。
因此,通过专注于改善而不是识别最优解决方案,并且通过将游戏交互部分基于算法找到更好的解决方案不一定找到最好的解决方案,本公开内容的实施方案抽象机器学习算法,使得机器学习算法可以被应用于比原本可应用的更多的游戏。通过专注于改善和利用本文所公开的抽象技术,本公开内容的实施方案允许游戏中的参与度保持高,例如,好似在游戏中没有使用算法或几乎没有偏离正常的游戏玩法。以此方式,通过抽象机器学习算法的元素,本公开内容的实施方案使得能够将机器学习算法包括在游戏的部件内。这使得研究人员和开发人员能够通过使用本文所公开的用于机器学习算法的抽象接口在更广泛得多地被接受的对大众有吸引力的视频游戏中通过机器学习使他们的问题被处理。此外,使用本公开内容的抽象接口,任何类型的机器学习算法或技术可以被使用(即,不依赖于特定类型的算法),例如,机器学习算法可以是遗传算法、粒子群优化、使用神经网络技术等。
在各实施方案中,系统提供一种通用接口,该通用接口允许游戏开发人员集成各种各样的CS项目以及访问分布式自愿网格计算网络的能力。为了使研究人员利用此资源,研究人员仅需要分析他们的项目并且将其项目分解为由该接口支持的格式。游戏开发人员将API集成到他们的游戏中,设计支持给定的问题类型的吸引人的系统,并且访问结果数据。一旦其他类似的问题被转换为支持的格式,此系统则可再次使用以应用于所述其他类似的问题。从根本上,考虑到可以将项目分解为以下一般的分析结构,任何种类的CS项目可以被分析。
首先,系统识别待被分析或待被解决的问题。在分析项目时,第一阶段是识别处理数据所需的工作类型。例如,问题是数据生成问题(例如,出于某种目的用户正在创建新的数据)?问题是用户分析问题(例如,用户正在分类或以其他方式执行微任务)?问题是用户计算问题(例如,用户的玩家正在应用更复杂的问题解决技能)?问题是将更传统地使用机器学习算法或方法来解决但是具有潜在的交互元素(混合项目)的问题?
第二,系统捕获并且变换数据。例如,系统确定数据以什么格式;数据是否被分解为更小、更易管理的数据微块以使数据更可访问;以及确定数据是否是一致的或数据中的一些是否存在独特之处。例如,系统可以确定数据中的一些已经被处理并且可以用作基础样本(例如,作为训练数据或游戏教程的基础)。数据可能需要是可以以可解析的格式放置(诸如经典的逗号分隔值(CSV)文件)或使用CSV文件创建图像数据的索引的数据。
第三,系统识别支持启发法、仿真研究或适合度(fitness)标准。例如,系统确定是否存在在过去对此研究或类似研究的分析中已经证明成功的任何已建立的启发法。这些启发法可以为开发社区提供指导方针以帮助理解过程,并且可以通知与玩游戏循环相关的设计选择中的一些,其中开发人员可以创建模仿启发式方法中的一些的活动。开发人员还可以将归一化的启发法输出映射到各种玩游戏元素(例如,对象颜色、统计乘数(statisticmultiplier)),从而为用户提供可视化问题/数据并且与问题/数据交互的独特方式。类似地,系统确定是否存在可以使模拟更准确的已建立的方程式、算法、工具或其他方程式。此类型的信息的实施例包括Rosetta结构预测方法。在用户计算是一个因素的情形下,此种信息对于使数据具有价值可以是有用的。这些仿真工具还可以在验证或选择步骤中用于验证,以及在作为过程步骤的一部分的创建适合度分数或度量中也可以是有用的。群组评分或共识也可以用作使用统计分析技术来提供数字导引的查证工具。为了使处理步骤向用户提供反馈或取得用户工作的质量的相对感觉,存在输出表示给定的用户生成的结果的相对质量的值或度量的某种适合度函数。此适合度函数可以来自被解决的问题的类型(例如,聚类问题)或特定于研究领域的某物。为了在游戏中良好地工作,这些适合度函数需要是快速的并且有效率的,像帧速率一样,并且是一致的;实时反馈对于成功的参与度可以是重要的。
为了容易地将科学研究集成到玩游戏和审美/主题中,存在许多元素要考虑。下文描述了游戏集成的一些原理,以在玩游戏和科学研究价值之间提供平衡。首先,游戏被设计用于较广泛的应用。如果问题可以被抽象使得相同类型的其他问题也可以被解决(例如,使用聚类算法的任何问题可以使用相同的游戏/运作方式),则为数据的混合提供机会以为玩游戏添加多样性。除非科学的理解对输出的成功是根本的,否则游戏设计元素被设计为实现期望的结果,而不特别提到科学。
第二,游戏集成识别并且加强期望的输出。适合度函数或其他成功量度(measure)将给予玩家的反馈作为因素计入,以加强输出的研究价值。在适合度函数提供数字值时,反馈也被修改为与游戏的审美和主题一致。将输出与规定的成功量度进行比较,因为有时最好的结果随着研究需要而变化。将其他期望的行为诸如准确性(质量)、总体贡献(数量)和效率(速度)作为因素计入游戏奖励和/或反馈。成功的公式没有必要都与输出有关,而是被平衡,使得最重要的因素具有足够的加权。不适当的加权可能导致加强不期望的行为或用户“游戏”系统,这两者都降低结果的质量。
第三,研究活动被集成到游戏循环中。由于玩游戏循环表示激励玩家的中央活动,因此通过将研究活动连接到循环来便于无缝集成。玩家动作和所得到的输出两者是集成活动中的因素。研究活动被分解为用来完成输出的部件动作。这些动作常常建议特定的玩游戏元素、运作方式或系统。来自研究活动的输出的形式与期望的结果的比较可以建议集成技术,例如,任何现有的模仿科学活动的游戏运作方式。将运作方式集成到玩游戏中允许科学元素更自然地集成。类似地,利用在其他游戏中证明的游戏运作方式可以帮助减少要求平衡的变量的数目,并且将更多的注意力放在集成上而不是放在使运作方式本身吸引人。
第四,游戏被设计用于不寻常的结果。与可以迎合游戏的需要的游戏系统不同,研究输出有时可以提供极端和意外的结果。取决于数据,可以使玩家经历完整的成功、失败或从未实现任一个。这样,游戏需要维持参与度以取得这些结果,将这些结果作为因素计入游戏反馈或其他玩游戏元素。
第五,游戏使复杂性和准确性平衡。玩家可以使许多元素平衡,但是存在一点,在该点处玩游戏复杂性、人类计算复杂性和预期的速度和准确性可能创建延伸超出普通玩家的认知阈值的挑战。为了使这平衡,增加一个元素的复杂性可以通过其他元素的降低的复杂性来平衡。如果问题具有高准确性需要或要求复杂的人类计算,则快节奏、实时、高技能游戏不太可能对于大多数玩家产生预期的结果。慢节奏或回合制运作方式允许玩家花他们的时间并且考虑问题,这可以更好地适合需要。因此,较简单的问题如果它们更好地适合期望的玩游戏则通常可以保持较复杂的运作方式和定时。
第六,游戏集成考虑游戏的审美和/或主题的集成。涉及非视觉数据的研究活动常常与任何主题一起工作。涉及视觉数据(诸如在分类类型问题中找到的元素)的那些研究活动,可能要求一些创造性考虑以使这些元素在总体游戏中适合。
出于例示本公开内容的实施方案的优点的目的,讨论了以下关于药物研究的示例实施方式。此实施方式意在作为例示性实施例,而不是对可以根据本公开内容的原理和教导实施的各实施方案的限制。在寻找用于多药耐药性癌症的化学疗法联合药物特性时,所识别的要解决的问题是大量中的一个。联合药物是一种帮助使现有的耐药性癌细胞更有效的药。联合药物研究是相对新的,因此几乎没有数据允许研究人员从现有的药中识别出好的候选者。即使有一些消除/降低,仍需要以某种方式评估超过500万种潜在的联合药物。在早期的研究中,科学家购买了71种药物并且将它们作为潜在的联合药物进行测试,其中23种联合药物示出一些成功,而剩余的48种则没有。每种药具有30个识别变量。在最简单的情形下,研究人员想要一种方式来确定23种成功的药的共性,以帮助创建一种系统来识别用于测试的新药以及相反地识别剩余的药中的什么方面使它们不成功。
遵循CS模型,第一问题集中于识别问题。在检查了问题、数据集和期望的信息之后,寻找作为聚类问题呈现的群组之间的共性。在确定问题参数之后,对数据进行分析以确定如何呈现信息。每种药已经存在于记载了30个变量的表格中。为了在聚类问题中使用数据,数据被归一化,以使得其全部可以以一致的标度(scale)(在此情况下0-1)表示。添加指出每种药作为联合药物的相对成功或失败的数据点,并且该数据被转换为CSV文件。
当寻找启发法、仿真研究和适合度标准时,聚类问题的需要被识别。存在许多可以形成基本算法的聚类算法。在此情况下,选择基于质心的算法(诸如,K均值)作为开始点。从根本上,基于质心的算法移动质心从而寻找最好的分数,提供启发法以自其开始。质心移动还建议一交互区域以供玩家与其互动,在功能上替换了算法的该方面。
聚类算法中的其他驱动因素是确定适合度分数导引质心的移动并且帮助识别它是否正在移动朝向或远离改善的得分。此功能对于玩家能够评估他们的成功也是关键的。在此情形下,目标是试图察看是什么将两个群组分开,以使得成为适合度分数的基础,加权平均值示出一个群组中有多少种工作的联合药物相比于另一个群组中有多少种工作的联合药物。虽然因为存在两个基本群组而以两个质心开始,但是适合度分数被设计使得在将来的迭代中可以添加任何数目的质心。
分析任何准确性指导方针,用户需要足够准确的数据以致用户可以判断他们是否正在改善分数,但是精确度并不那么关键,因为预期是由玩家提供的数据将为单独的神经网络提供训练数据,该神经网络被设计为分析和识别训练集外部的其他潜在的联合药物。如果证明更多的改进是必要的,研究人员计划对玩家结果运行单独的传统的基于质心的算法以改进分数。
在游戏开发中在实施问题、数据和适合度分数中,为了使游戏开发人员能够创建接口,游戏开发要知道的关键信息是理解聚类算法如何工作以及尝试使用数据集实现什么。最后,分析结构问题被分析以核查是否识别出设计游戏的接口所必需的数据。为了建议新的解决方案,用户或算法需要能够提供新的质心位置。为了以我们的参数提供有效的解决方案,质心位置需要在当我们格式化数据时确定的归一化空间内。在此情形下的处理阶段将应用适合度函数并且取得表示群组被分开得多么好的相对分数。在将玩家生成的数据作为用于神经网络的训练信息的应用中,任何所得到的解决方案都是有效的,因此在该阶段没有必要进行过滤。如果附加的改进被证明是必要的,则对所得到的质心运行单独的K均值算法。最后,将退出参数定义为开放的。
提供了上文所讨论的算法的游戏化的两个实施例。第一实施例表示玩家操纵无线电拨号以影响质心位置,并且所得到的分数使波形移位得更靠近或更远离匹配目标波。第二是医疗小型游戏,其中数据位置表示身体的部分,并且玩家可以调整质心位置以改善各种功能。这些小型游戏中的任一个或两个可以被集成到任何数目的流行的和吸引人的视频游戏的各方面中。
各实施方案提供了建构主义增强的机器学习。建构主义学习通常是指导师们能够将过去的知识带入与学生的协作伙伴关系内以指导他们的经验学习过程的场景。在这些实施方案中,系统将用户知识直接引入到网络内,这模仿在建构主义学习理论中看到的导师-学生协作关系。如本文所讨论的,本公开内容的这些实施方案通过接收由用户生成的输入来增强机器学习。例如,在上文所讨论的实施例中的每个中,基于交互增强机器学习算法,无论它是用于突变、训练数据、搜索启发法、监督学习等。例如,在一些实施方案中,系统在卷积内核上使用聚类技术以减少问题空间和识别关键的卷积内核。系统然后将内核替换成由用户建构的内核。例如,系统通过在整个训练过程中增强输入以及直接修改隐藏层、加权和连接来允许算法指导。在训练期间系统还利用用户识别的模式和优化机会,并且可以随后修改机器学习模型以利用用户直觉。在这些实施方案中,系统可以改善模型准确性、压缩模型大小或在缺乏大数据集时允许模型改善。
在建构主义增强的机器学习的一个实施例中,通过使用人类识别的模式加速机器学习来增强机器学习。例如,通过接收用于提议的解决方案(例如,用于图像中的对象识别)的许多组用户游戏输入,系统可以对游戏输入求平均以计算概率分布。然后系统可以使用于机器学习算法的搜索空间变窄。以此方式,系统使用用户输入作为阿尔法(alpha)过滤器,该阿尔法过滤器将作为在处理问题以识别解决方案中由机器学习算法应用程序的许多过滤器中的一个被应用。
在建构主义增强的机器学习的另一个实施例中,游戏或其他交互式应用程序期间的用户输入可以被跟踪和被建模。系统可以使用用户输入的模型以基于性能修改机器学习算法的值。
在建构主义增强的机器学习的另一个实施例中,用户输入可以被用于机器学习算法的压缩。例如,系统可以使用聚类来查找用于压缩的平均过滤器。然而,这样的压缩可能过度表示一些被假设为不同的解决方案,例如,由于在解决方案中存在噪声,而未充分表示压缩数据集中的离散解决方案。使用本公开内容的这些实施方案的抽象接口,系统可以发送聚类(例如,在交互式环境中)以供由用户分类和压缩。例如,用户可能更善于认识(和忽略)噪声(例如,在图像中)以使类似的解决方案相互关联,所述类似的解决方案由于噪声因此机器学习算法可能不相关联。另一方面,在不足够类似的相关联的解决方案中,用户可能不具有实现机器学习算法中存在的压缩的需要的基础。在这些实施方案中,系统可以将用户压缩输入与机器学习输入结合使用、基于相关联的分类器更擅长什么对相应的输入进行加权、以及使用输入中的任一个或两个来压缩或降低数据集的大小以辅助加快进一步计算和减少存储要求。
在建构主义增强的机器学习的另一个实施例中,在机器学习模型的改善被认为是给定的问题的情况下,用户输入可以被用来改善或修改机器学习模型本身。例如,机器学习模型可以对卷积执行聚类算法以确定平均质心。这些质心可以被呈现给用户,例如,在交互式应用程序中,例如,作为一个图像或一组图像,以使用户选择或建议改善机器学习模型的解决方案。用户选择的或建议的解决方案可以呈参数或确定的质心中的一个或多个的形式以修改或更新机器学习模型。随后,系统可以基于修改的或更新的模型运行机器学习算法(例如,在多次迭代中),并且评估该模型的性能以确定是否发生了改善。稍后的迭代可以包括在关于较早的用户解决方案建议的迭代之后,系统接收解决方案的附加建议用于改善机器学习模型。以此方式,使用用户建议的解决方案来改善机器学习模型可以允许减少充分训练神经网络所需要的或所使用的数据的量。此外,由于用户建议的修改,因此使用用户建议的解决方案来改善机器学习模型可以允许减少用于神经网络的计算或训练的时间的量。
图5例示出了根据本公开内容的各实施方案的在玩游戏循环500的模型内的机器学习算法的一个示例实施方式。例如,图5中所描绘的玩游戏循环500可以被实施在由图3中的客户端设备300或图1中的客户端设备106-114中的任何一个(共同地或单独地被称为“系统”)运行的游戏中。玩游戏循环500的例示意在作为一个实施例,而不是作为对可以根据本公开内容实施的各实施方案的限制。
玩游戏循环500是在游戏玩法期间可能发生的、还与并入机器学习算法相关或可用来并入机器学习算法的常见活动的模型或表示。例如,在加载(收集)阶段510期间,当在游戏中用户正在收集资源时,系统可以使数据集和问题被加载。在分析阶段515(玩游戏循环500的建立、升级、修改阶段)期间,当在游戏中用户正在建立、升级和/或修改时,系统正在执行解决方案的处理或评估。例如,过程400的部分可以是分析阶段515内的子循环,在该子循环中提议、验证和处理新的解决方案。在一个实施例中,分析阶段515可以涉及修改建议的或确定的解决方案,例如,关于如上文所讨论的建构主义增强的机器学习。这样,系统可以利用通过用户交互修改的用于机器学习模型的深度学习网络的修改内核。聚类可以提供可能的解决方案。然后,系统可以使用用户交互来修改聚类,并且然后朝向修改机器学习模型移动。
然后,一旦处理了经处理的解决方案,系统就测试(测试阶段520)该解决方案以确定所选择的解决方案有多么好,然后将该解决方案与先前的解决方案进行比较(比较阶段525)以确定该解决方案是否比先前的解决方案好,并且随后,选择该解决方案(选择阶段505)以再次开始循环500。作为测试阶段520的一部分,当在游戏中用户正在执行交战或战斗时,系统可以生成度量。作为比较阶段525的一部分,系统还可以使用游戏中奖励来激励用户参与和/或改善结果,所述游戏中奖励包括例如连续的玩游戏、虚拟物品、排名等。
图6例示了根据本公开内容的各实施方案的用于使用算法性能来动态地调节玩游戏和调整游戏级别的过程。例如,图6中所描绘的过程可以由图3中的客户端设备300、图2中的服务器200、和/或图1中的客户端设备106-114中的任何一个(共同地或单独地被称为“系统”)实施。
在这些实施方案中,系统监测和使用用于算法性能的学习曲线(步骤605)来调整游戏级别和动态地调节玩游戏。例如,在步骤605中,系统可以随时间标绘性能度量,诸如全局分数,以生成并且监测算法学习曲线。在图7中通过例示的方式示出了用于算法性能的评分度量或用于算法的学习曲线的一个实施例。如所示出的,算法性能中的大的斜坡最初发送在705处,并且然后在不久以后算法性能在稳定时期(plateau)710处变得平坦。对于斜升的时段,那通常是一个级别的开始。一旦分数达到稳定时期,游戏就达到了一个级别的结束。系统检测此稳定时期的发生(步骤610)。例如,在步骤610中,系统可以使用一个或多个阈值或相继的分数的平均作为参数以确定算法性能相对于较早的斜升何时达到稳定时期。此稳定时期可以被认为是局部最小值。
系统然后监测算法性能何时超越稳定时期(步骤615)。例如,在步骤615中,系统正在寻找用户以从用于稳定时期710的局部最小值突变出来,并且找到更好的解决方案,导致算法性能在715处再次增加,其中学习处理再次开始。作为步骤615的一部分,系统可以使用一个或多个阈值,所述一个或多个阈值可以在确定算法性能已经超越稳定时期710中与稳定时期710内的分数变量有关。一旦检测到算法性能超越稳定时期时,系统增加游戏级别(步骤620),其中对于游戏的每个级别重复该过程。例如,在稳定时期之后增加的算法性能被认为是游戏的第二级别(或下一个级别)。
在级别的改变处,玩游戏角色的能力被增加,作为突破先前的局部最小值和改善算法性能的激励。每个级别都比更难到达,这意味着达到下一个稳定时期720并且在725处突破需要附加的计算时间和/或算法交互。例如,激励用户使计算机运行更长时间以捐赠附加的资源(例如,在游戏中,执行收集步骤)以到达下一个级别和附加的激励。
在这些实施方案中,基于角色的级别而不一定基于算法的性能调节游戏难度。基于角色能力调节游戏的难度,角色能力基于作为监测学习曲线的结果的所达到的级别。例如,在第一人称射击(FPS)游戏中,难度可以是在一个级别上的敌人的数目。可以基于角色能力增加该数目以保持玩游戏具有挑战性和吸引人。角色多么强大或角色的能力依赖于所实现的与学习曲线相关联的级别数目。以此方式,玩游戏反映了算法性能,并且为用户提供了激励和参与度以进一步改善算法性能。
尽管图4和图6分别例示了用于实施允许机器学习算法游戏化的抽象算法接口的过程的实施例和使用该算法来动态地调节玩游戏和调整游戏级别的过程的实施例,但是可以对图4和图6进行各种改变。例如,虽然被示出为一系列步骤,但是每个图中的各个步骤可以重叠、并行发生、以不同顺序发生或发生多次。在另一个实施例中,步骤可以被省略或由其他步骤替换。
阐明整个本专利文件中使用的某些词语和短语的定义可能是有利的。术语“耦合”以及其派生词是指两个或更多个元素之间的任何直接或间接通信,无论这些元素是否彼此物理接触。术语“发送”、“接收”和“传达”以及其派生词包含直接和间接通信。术语“包含(include)和包括(comprise)”以及其派生词是指包括但不限于。术语“或”是包含性的,意味着和/或。短语“与......相关联”以及其派生词意指包括……、包括在……内、与……互连、包含……、包含在……内、连接到……或与……连接、耦合到……或与……耦合、与……可通信、与……协作、交错、并置、与……接近、绑定到……或与……绑定、具有、具有……的属性、具有对……的关系或与……的关系等。当与项列表一起使用时,短语“至少一个”意味着可以使用所列项中的一个或多个的不同组合,并且可能只需要列表中的一个项。例如,“A、B和C中的至少一个”包括以下组合中的任何一个:A、B、C、A和B、A和C、B和C、以及A和B和C。
此外,下文所描述的各种功能可以由一个或多个计算机程序实施或支持,所述计算机程序中的每个由计算机可读程序代码形成并且被体现在计算机可读介质中。术语“应用程序”和“程序”是指适于以合适的计算机可读程序代码实施的一个或多个计算机程序、软件部件、指令集、过程、功能、对象、类、实例、相关数据或其一部分。短语“计算机可读程序代码”包括任何类型的计算机代码,包括源代码、目标代码和可执行代码。短语“计算机可读介质”包括能够由计算机访问的任何类型的介质,诸如只读存储器(ROM)、随机存取存储器(RAM)、硬盘驱动器、光盘(CD)、数字视频光盘(DVD)或任何其他类型的存储器。“非暂时性”计算机可读介质排除传输暂时性电信号或其他信号的有线、无线、光学或其他通信链路。非暂时性计算机可读介质包括可以在其中持久地存储数据的介质和可以在其中存储数据并且稍后重写数据的介质,诸如可重写光盘或可擦除存储器设备。
在整个本专利文件中提供了其他某些单词和短语的定义。本领域普通技术人员应理解,在许多(如果不是大多数)实例中,这样的定义适用于这样的定义的词语和短语的在前的以及将来的使用。
尽管已经使用一个示例性实施方案描述了本公开内容,但是可以向本领域技术人员建议各种改变和改型。本公开内容意在包含落入所附权利要求书的范围内的这样的改变和改型。
一个实施方案提供了一种用于交互式机器学习的方法。所述方法包括迭代地执行包括以下步骤的过程:识别给定的问题的解决方案;基于确定所识别的解决方案是所述给定的问题的可能的解决方案,通过使用所述可能的解决方案运行机器学习应用程序来处理所述可能的解决方案;基于多个经处理的解决方案选择经处理的解决方案,所述多个经处理的解决方案的至少一部分来自所述过程的不同迭代;以及基于退出条件确定是否以针对所述给定的问题的所选择的解决方案退出所述过程。执行所述过程包括经由用于交互式应用程序的用户接口接收到所述交互式应用程序内的输入以在执行所述步骤之一的至少一部分中使用。
另一个实施方案提供了一种用于交互式机器学习的系统。所述系统包括处理器和可操作地连接到所述处理器的通信接口。所述处理器被配置为迭代地执行包括以下步骤的过程:识别给定的问题的解决方案;基于确定所识别的解决方案是所述给定的问题的可能的解决方案,通过使用所述可能的解决方案运行机器学习应用程序来处理所述可能的解决方案;基于多个经处理的解决方案选择经处理的解决方案,所述多个经处理的解决方案的至少一部分来自所述过程的不同迭代;以及基于退出条件确定是否以针对所述给定的问题的所选择的解决方案退出所述过程。所述通信接口被配置为经由用于交互式应用程序的用户接口接收到所述交互式应用程序内的输入以在执行所述步骤之一的至少一部分中使用。
另一个实施方案提供了一种用于交互式机器学习的非暂时性计算机可读介质。所述计算机可读介质包括程序代码,所述程序代码在由系统的处理器执行时导致所述系统迭代地执行包括以下步骤的过程:识别给定的问题的解决方案;基于确定所识别的解决方案是所述给定的问题的可能的解决方案,通过使用所述可能的解决方案运行机器学习应用程序来处理所述可能的解决方案;基于多个经处理的解决方案选择经处理的解决方案,所述多个经处理的解决方案的至少一部分来自所述过程的不同迭代;以及基于退出条件确定是否以针对所述给定的问题的所选择的解决方案退出所述过程。所述计算机可读介质还包括程序代码,所述程序代码在由系统的处理器执行时导致所述系统经由用于交互式应用程序的用户接口接收到所述交互式应用程序内的输入以在执行所述步骤之一的至少一部分中使用。
在以上实施例和实施方案中的任何一个中,所述过程还包括以下步骤:关于在每次迭代中处理的经处理的解决方案生成度量;以及基于所生成的度量中的一个或多个,使用所述经处理的解决方案来表征所述机器学习应用程序的性能。另外,选择所述经处理的解决方案包括使用所选择的解决方案基于所述机器学习应用程序的性能从所述多个经处理的解决方案选择所述经处理的解决方案。
在以上实施例和实施方案的任何一个中,所述过程还包括:接收所述输入以在执行所述步骤之一的至少一部分中使用包括:基于所接收的输入,识别对所述机器学习应用程序的参数的修改;识别所述给定的问题的解决方案包括:对于所述过程的迭代,将参数修改识别为所识别的解决方案的至少一部分;并且处理所述可能的解决方案包括:基于所述参数修改来修改所述机器学习应用程序,以及在一次或多次迭代中运行修改的机器学习应用程序。
在以上实施例和实施方案中的任何一个中,基于所接收的输入所识别的所述参数修改选自在所述过程的在前的迭代中由所述机器学习应用程序生成的一组参数修改,所述在前的迭代在时间上在所述迭代之前。
在以上实施例和实施方案中的任何一个中,接收所述输入以在执行所述步骤之一的至少一部分中使用包括:经由所述用户接口接收所述输入作为用于在所述交互式应用程序期间呈现的交互的参数输入;识别所述给定的问题的解决方案包括:将所述参数输入识别为所识别的解决方案的至少一部分;并且通过使用所述可能的解决方案运行所述机器学习应用程序来处理所述可能的解决方案包括:使用来自在所述交互式应用程序期间呈现的交互的所述参数输入至少作为用于所述机器学习应用程序的参数的修改。
在以上实施例和实施方案中的任何一个中,接收所述输入以在执行所述步骤之一的至少一部分中使用包括:经由所述用户接口接收所述输入作为对于在所述交互式应用程序期间呈现的交互针对所述给定的问题的至少一部分的尝试的解决方案,其中在所述过程的多次迭代中接收多个尝试的解决方案;并且选择所述经处理的解决方案包括:评估所述多个尝试的解决方案;以及基于对所述尝试的解决方案的评估选择所述经处理的解决方案。
在以上实施例和实施方案中的任何一个中,接收所述输入以在执行所述步骤之一的至少一部分中使用包括:经由所述用户接口接收所述输入作为来自使用所述可能的解决方案运行所述机器学习应用程序的输出是否正确的指示;并且处理所述可能的解决方案包括:基于所接收的指示评估所述可能的解决方案。
在以上实施例和实施方案中的任何一个中,所述交互式应用程序是视频游戏,并且在执行所述步骤之一的至少一部分中使用的所接收的输入是从所述视频游戏的游戏玩法接收的。
本申请中的描述都不应被理解为暗示任何具体的元素、步骤或功能是必须被包括在权利要求范围内的必要元素。寻求专利的主题的范围仅由权利要求限定。此外,除非确切的词语“用于……的手段”由分词跟随,否则权利要求都不意在援引35 U.S.C.§112(f)。

Claims (15)

1.一种用于交互式机器学习的方法,所述方法包括:
迭代地执行包括以下步骤的过程:
识别给定的问题的解决方案;
基于确定所识别的解决方案是所述给定的问题的可能的解决方案,通过使用所述可能的解决方案运行机器学习应用程序来处理所述可能的解决方案;
基于多个经处理的解决方案选择经处理的解决方案,所述多个经处理的解决方案的至少一部分来自所述过程的不同迭代;以及
基于退出条件确定是否以针对所述给定的问题的所选择的解决方案退出所述过程,
其中执行所述过程包括经由用于交互式应用程序的用户接口接收到所述交互式应用程序内的输入以在执行所述步骤之一的至少一部分中使用。
2.根据权利要求1所述的方法,其中所述过程还包括以下步骤:
关于在每次迭代中处理的经处理的解决方案生成度量;以及
基于所生成的度量中的一个或多个,使用所述经处理的解决方案来表征所述机器学习应用程序的性能,
其中选择所述经处理的解决方案包括使用所选择的解决方案基于所述机器学习应用程序的性能从所述多个经处理的解决方案选择所述经处理的解决方案。
3.根据权利要求1所述的方法,其中:
接收所述输入以在执行所述步骤之一的至少一部分中使用包括:
基于所接收的输入,识别对所述机器学习应用程序的参数的修改,
识别所述给定的问题的解决方案包括:
对于所述过程的迭代,将参数修改识别为所识别的解决方案的至少一部分,并且
处理所述可能的解决方案包括:
基于所述参数修改来修改所述机器学习应用程序,以及
在一次或多次迭代中运行修改的机器学习应用程序。
4.根据权利要求3所述的方法,其中基于所接收的输入所识别的所述参数修改选自在所述过程的在前的迭代中由所述机器学习应用程序生成的一组参数修改,所述在前的迭代在时间上在所述迭代之前。
5.根据权利要求1所述的方法,其中:
接收所述输入以在执行所述步骤之一的至少一部分中使用包括:
经由所述用户接口接收所述输入作为用于在所述交互式应用程序期间呈现的交互的参数输入,
识别所述给定的问题的解决方案包括:
将所述参数输入识别为所识别的解决方案的至少一部分,并且
通过使用所述可能的解决方案运行所述机器学习应用程序来处理所述可能的解决方案包括:
使用来自在所述交互式应用程序期间呈现的交互的所述参数输入至少作为用于所述机器学习应用程序的参数的修改。
6.根据权利要求1所述的方法,其中:
接收所述输入以在执行所述步骤之一的至少一部分中使用包括:
经由所述用户接口接收所述输入作为对于在所述交互式应用程序期间呈现的交互针对所述给定的问题的至少一部分的尝试的解决方案,其中在所述过程的多次迭代中接收多个尝试的解决方案,并且
选择所述经处理的解决方案包括:
评估所述多个尝试的解决方案;以及
基于对所述尝试的解决方案的评估选择所述经处理的解决方案。
7.根据权利要求1所述的方法,其中:
接收所述输入以在执行所述步骤之一的至少一部分中使用包括:
经由所述用户接口接收所述输入作为来自使用所述可能的解决方案运行所述机器学习应用程序的输出是否正确的指示,并且
处理所述可能的解决方案包括:
基于所接收的指示评估所述可能的解决方案。
8.一种用于交互式机器学习的系统(200),所述系统包括:
处理器(210),所述处理器被配置为迭代地执行包括以下步骤的过程:
识别给定的问题的解决方案;
基于确定所识别的解决方案是所述给定的问题的可能的解决方案,通过使用所述可能的解决方案运行机器学习应用程序来处理所述可能的解决方案;
基于多个经处理的解决方案选择经处理的解决方案,所述多个经处理的解决方案的至少一部分来自所述过程的不同迭代;以及
基于退出条件确定是否以针对所述给定的问题的所选择的解决方案退出所述过程;以及
通信接口(220),所述通信接口可操作地连接到所述处理器,所述通信接口被配置为经由用于交互式应用程序的用户接口接收到所述交互式应用程序内的输入以在执行所述步骤之一的至少一部分中使用。
9.根据权利要求8所述的系统,其中所述处理器还被配置为执行进一步包括以下步骤的所述过程:
关于在每次迭代中处理的经处理的解决方案生成度量;以及
基于所生成的度量中的一个或多个,使用所述经处理的解决方案来表征所述机器学习应用程序的性能,
其中为了选择所述经处理的解决方案,所述处理器被配置为使用所选择的解决方案基于所述机器学习应用程序的性能从所述多个经处理的解决方案选择所述经处理的解决方案。
10.根据权利要求8所述的系统,其中:
所述处理器被配置为:
基于所接收的输入,识别对所述机器学习应用程序的参数的修改,
为了识别所述给定的问题的解决方案,所述处理器被配置为:
对于所述过程的迭代,将参数修改识别为所识别的解决方案的至少一部分,并且
为了处理所述可能的解决方案,所述处理器被配置为:
基于所述参数修改来修改所述机器学习应用程序,以及
在一次或多次迭代中运行修改的机器学习应用程序。
11.根据权利要求10所述的系统,其中基于所接收的输入所识别的所述参数修改选自在所述过程的在前的迭代中由所述机器学习应用程序生成的一组参数修改,所述在前的迭代在时间上在所述迭代之前。
12.根据权利要求8所述的系统,其中:
为了接收所述输入以在执行所述步骤之一的至少一部分中使用,所述通信接口还被配置为:
经由所述用户接口接收所述输入作为用于在所述交互式应用程序期间呈现的交互的参数输入,
为了识别所述给定的问题的解决方案,所述处理器还被配置为:
将所述参数输入识别为所识别的解决方案的至少一部分,并且
为了通过使用所述可能的解决方案运行所述机器学习应用程序来处理所述可能的解决方案,所述处理器还被配置为:
使用来自在所述交互式应用程序期间呈现的交互的所述参数输入至少作为用于所述机器学习应用程序的参数的修改。
13.根据权利要求8所述的系统,其中:
为了接收所述输入以在执行所述步骤之一的至少一部分中使用,所述通信接口还被配置为:
经由所述用户接口接收所述输入作为对于在所述交互式应用程序期间呈现的交互针对所述给定的问题的至少一部分的尝试的解决方案,其中在所述过程的多次迭代中接收多个尝试的解决方案,并且
为了选择所述经处理的解决方案,所述处理器还被配置为:
评估所述多个尝试的解决方案;以及
基于对所述尝试的解决方案的评估选择所述经处理的解决方案。
14.根据权利要求8所述的系统,其中:
为了接收所述输入以在执行所述步骤之一的至少一部分中使用,所述通信接口还被配置为:
经由所述用户接口接收所述输入作为来自使用所述可能的解决方案运行所述机器学习应用程序的输出是否正确的指示,并且
其中为了处理所述可能的解决方案,所述处理器还被配置为:
基于所接收的指示评估所述可能的解决方案。
15.一种用于交互式机器学习的非暂时性计算机可读介质(215),所述计算机可读介质包括程序代码,所述程序代码在由系统(200)的处理器(210)执行时导致所述系统:
迭代地执行包括以下步骤的过程:
识别给定的问题的解决方案;
基于确定所识别的解决方案是所述给定的问题的可能的解决方案,通过使用所述可能的解决方案运行机器学习应用程序来处理所述可能的解决方案;
基于多个经处理的解决方案选择经处理的解决方案,所述多个经处理的解决方案的至少一部分来自所述过程的不同迭代;以及
基于退出条件确定是否以针对所述给定的问题的所选择的解决方案退出所述过程;以及
经由用于交互式应用程序的用户接口接收到所述交互式应用程序内的输入以在执行所述步骤之一的至少一部分中使用。
CN201980022488.9A 2018-03-26 2019-03-26 用于机器学习算法游戏化的抽象接口 Active CN111919223B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862648198P 2018-03-26 2018-03-26
US62/648,198 2018-03-26
PCT/US2019/024157 WO2019191153A1 (en) 2018-03-26 2019-03-26 Abstracted interface for gamification of machine learning algorithms

Publications (2)

Publication Number Publication Date
CN111919223A true CN111919223A (zh) 2020-11-10
CN111919223B CN111919223B (zh) 2024-07-02

Family

ID=67984195

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980022488.9A Active CN111919223B (zh) 2018-03-26 2019-03-26 用于机器学习算法游戏化的抽象接口

Country Status (6)

Country Link
US (1) US11763190B2 (zh)
EP (1) EP3746890A4 (zh)
JP (1) JP7413628B2 (zh)
CN (1) CN111919223B (zh)
CA (1) CA3094240A1 (zh)
WO (1) WO2019191153A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114139629A (zh) * 2021-12-02 2022-03-04 中国人民解放军国防科技大学 基于度量学习的自引导式混合数据表征学习方法及系统

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018100683A1 (ja) * 2016-11-30 2018-06-07 株式会社オプティム コンピュータシステム、エッジデバイス制御方法及びプログラム
US10565475B2 (en) * 2018-04-24 2020-02-18 Accenture Global Solutions Limited Generating a machine learning model for objects based on augmenting the objects with physical properties
US11561540B2 (en) * 2019-02-26 2023-01-24 Intel Corporation Augmenting autonomous driving with remote viewer recommendation
CN111914862B (zh) * 2019-05-09 2023-07-11 富士通株式会社 用于对多目标模型进行训练的训练装置和训练方法
US11369871B2 (en) * 2020-04-01 2022-06-28 Sony Interactive Entertainment Inc. Interactive what-if game replay methods and systems
US11038528B1 (en) * 2020-06-04 2021-06-15 International Business Machines Corporation Genetic programming based compression determination
US20210406642A1 (en) * 2020-06-30 2021-12-30 Nvidia Corporation Anomaly characterization using one or more neural networks

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102089757A (zh) * 2008-10-03 2011-06-08 益焦.com有限公司 基于代理的系统的自动创建的系统和方法
CN105229687A (zh) * 2013-03-15 2016-01-06 格林伊登美国控股有限责任公司 用于呼叫中心的智能自动代理
US20160162783A1 (en) * 2014-12-09 2016-06-09 Futurewei Technologies, Inc. Autonomous, Closed-Loop and Adaptive Simulated Annealing Based Machine Learning Approach for Intelligent Analytics-Assisted Self-Organizing-Networks (SONs)

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7406475B2 (en) * 2001-01-09 2008-07-29 British Telecommunications Public Limited Company Software tool for heuristic search methods
US7093004B2 (en) 2002-02-04 2006-08-15 Datasynapse, Inc. Using execution statistics to select tasks for redundant assignment in a distributed computing platform
US7634450B2 (en) * 2003-12-12 2009-12-15 Hewlett-Packard Development Company, L.P. System and method for determining difficulty measures for training cases used in developing a solution to a problem
JP2007312848A (ja) 2006-05-23 2007-12-06 Daiwa Tsusho:Kk キャラクタ育成ゲームプログラム
US8239293B2 (en) 2006-12-20 2012-08-07 Microsoft Corporation Computer system and method for bulk auditing, archiving, and selling personal property of a customer
US20120225721A1 (en) 2011-03-04 2012-09-06 Microsoft Corporation Game dossier for an advisory services network
US8821272B2 (en) * 2011-09-26 2014-09-02 Andrew Jack Thomas System and method of gamification of real-life events
JP5874292B2 (ja) 2011-10-12 2016-03-02 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
US8982066B2 (en) 2012-03-05 2015-03-17 Ricoh Co., Ltd. Automatic ending of interactive whiteboard sessions
JP6440205B2 (ja) 2012-08-02 2018-12-19 ガナリラ、エルエルシー 問題をゲーム化するためのシステムおよび方法
US8744890B1 (en) 2013-02-14 2014-06-03 Aktana, Inc. System and method for managing system-level workflow strategy and individual workflow activity
US9386152B2 (en) 2013-03-15 2016-07-05 Genesys Telecommunications Laboratories, Inc. Intelligent automated agent and interactive voice response for a contact center
CN103472756A (zh) 2013-09-27 2013-12-25 腾讯科技(深圳)有限公司 一种实现人工智能的方法、服务器和设备
US10722802B2 (en) 2015-07-24 2020-07-28 Silver Curve Games, Inc. Augmented reality rhythm game
FR3044438A1 (fr) 2015-11-27 2017-06-02 Thales Sa Systeme et procede d'aide a la decision

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102089757A (zh) * 2008-10-03 2011-06-08 益焦.com有限公司 基于代理的系统的自动创建的系统和方法
CN105229687A (zh) * 2013-03-15 2016-01-06 格林伊登美国控股有限责任公司 用于呼叫中心的智能自动代理
US20160162783A1 (en) * 2014-12-09 2016-06-09 Futurewei Technologies, Inc. Autonomous, Closed-Loop and Adaptive Simulated Annealing Based Machine Learning Approach for Intelligent Analytics-Assisted Self-Organizing-Networks (SONs)

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王波等: "问题驱动的需求捕获中问题分析与解决技术研究", 计算机研究与发展, vol. 50, no. 7, 15 July 2013 (2013-07-15), pages 1513 - 1523 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114139629A (zh) * 2021-12-02 2022-03-04 中国人民解放军国防科技大学 基于度量学习的自引导式混合数据表征学习方法及系统

Also Published As

Publication number Publication date
CA3094240A1 (en) 2019-10-03
CN111919223B (zh) 2024-07-02
US20190294922A1 (en) 2019-09-26
WO2019191153A1 (en) 2019-10-03
EP3746890A1 (en) 2020-12-09
JP2021519972A (ja) 2021-08-12
US11763190B2 (en) 2023-09-19
JP7413628B2 (ja) 2024-01-16
EP3746890A4 (en) 2021-12-08

Similar Documents

Publication Publication Date Title
CN111919223B (zh) 用于机器学习算法游戏化的抽象接口
US11413539B2 (en) Realtime dynamic modification and optimization of gameplay parameters within a video game application
CN113365706B (zh) 使用云游戏网络的人工智能(ai)模型训练
US20230054150A1 (en) Automated dynamic custom game content generation
US11673049B2 (en) Operator interface for automated game content generation
US11724193B2 (en) Automated prediction of user response states based on traversal behavior
US20230076907A1 (en) Game definition file
US11957982B2 (en) Parametric player modeling for computer-implemented games
US12083436B2 (en) Automated assessment of custom game levels
US11806624B2 (en) On device game engine architecture
US11738272B2 (en) Automated generation of custom content for computer-implemented games
Nouwou Mindom et al. A comparison of reinforcement learning frameworks for software testing tasks
CN112245934B (zh) 虚拟场景应用中虚拟资源的数据分析方法、装置及设备
Ehlert Improving input prediction in online fighting games
Zambrano Huertas et al. Deep reinforcement learning for optimal gameplay in street fighter III: a resource-constrained approach

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant