CN108207119B - 对损坏网络连接的基于机器学习的识别 - Google Patents

对损坏网络连接的基于机器学习的识别 Download PDF

Info

Publication number
CN108207119B
CN108207119B CN201680036171.7A CN201680036171A CN108207119B CN 108207119 B CN108207119 B CN 108207119B CN 201680036171 A CN201680036171 A CN 201680036171A CN 108207119 B CN108207119 B CN 108207119B
Authority
CN
China
Prior art keywords
application
link
links
duration
presentation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201680036171.7A
Other languages
English (en)
Other versions
CN108207119A (zh
Inventor
李欣
杨昉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN108207119A publication Critical patent/CN108207119A/zh
Application granted granted Critical
Publication of CN108207119B publication Critical patent/CN108207119B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9558Details of hyperlinks; Management of linked annotations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/75Indicating network or usage conditions on the user display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

一种用于识别损坏网络连接的方法、系统和装置,包括在计算机存储介质上编码的计算机程序。在一个方面中,一种系统包括前端服务器,所述前端服务器接收针对与链接到给定应用的一个或多个应用链接的多个不同的用户交互来指明呈现持续时间的数据,所述呈现持续时间指定所述应用链接所链接到的应用内容在与所述一个或多个应用链接的所述多个不同的用户交互之后被呈现了多长时间。与所述前端服务器进行通信的后端服务器可基于对每个应用链接的呈现持续时间应用机器学习模型来将该应用链接分类为损坏或工作。所述机器学习模型可使用标记训练数据来生成。所述后端服务器可基于应用链接被所述机器学习模型分类为损坏来生成并输出将所述应用链接识别为损坏链接的警示。

Description

对损坏网络连接的基于机器学习的识别
背景技术
互联网促进在全球用户之间交换信息和事务。信息的这种交换使得数据提供者能够向各种用户提供数据。可以各种方式提供数据,包括在电子文档(例如,网页)上和在应用(例如,移动app)内发布信息。例如,应用可包括向用户呈现信息的应用页面。
链接可用于协助用户导航到可以是用户感兴趣的资源。链接可指向电子文档或者指向应用中的特定位置(例如,指向应用页面)。然而,一些链接可能未恰当地指向文档或应用页面。这样的链接通常被称为损坏链接。例如,如果链接所指向的文档或应用页面被移动到新地址或者从托管该文档或应用页面的域中移除,则该链接可以变成损坏链接。此外,应用链接可以在应用更新之后或者响应于托管应用内容的服务器变得不可用而损坏。
发明内容
本说明书描述了涉及使用机器学习来基于内容在发起(或者完成)网络连接(例如,响应于用户与损坏应用链接的交互)之后被呈现了多长时间来识别损坏网络连接(例如,损坏应用链接)的技术。
一般而言,本说明书中所描述的主题的一个创新方面可用一种系统加以实施,所述系统包括一个或多个前端服务器,所述一个或多个前端服务器接收数据,所述数据针对与链接到给定应用的一个或多个应用链接的多个不同的用户交互来指明呈现持续时间,所述呈现持续时间指明所述应用链接所链接到的应用内容在与所述一个或多个应用链接的所述多个不同的用户交互之后被呈现了多长时间。所述系统也可包括一个或多个后端服务器,所述一个或多个后端服务器与所述一个或多个前端服务器进行通信并且执行操作,所述操作包括:基于对每个应用链接的呈现持续时间应用机器学习模型来将该应用链接分类为损坏或工作。所述机器学习模型可使用标记训练数据来生成,所述标记训练数据对于训练应用链接集合中的每个训练应用链接包括:所述训练应用链接的呈现持续时间集合;以及标记,所述标记基于与所述训练应用链接的用户交互是否导致了通过所述训练应用链接所指向的内容的成功呈现来指明所述训练应用链接是损坏还是工作。所述一个或多个后端服务器也可执行包括以下的操作:基于给定应用链接被所述机器学习模型分类为损坏来生成并输出将所述给定应用链接识别为损坏链接的警示。此方面的其它实施例包括被配置成执行在计算机存储设备上编码的所述方法的动作的对应装置、方法和计算机程序。
这些和其它实施例均可可选地包括以下特征中的一个或多个。在一些方面中,所述机器学习模型通过基于持续时间来将所述应用链接的每个呈现持续时间指派至持续时间组集合中的持续时间组来对应用链接进行分类。每个持续时间组可以是针对持续时间的范围并且包括所述应用链接在所述持续时间组的持续时间的范围内的呈现持续时间。所述机器学习模型可基于由指派至每个持续时间组的呈现持续时间的数目所定义的模式将所述应用链接分类为损坏或工作。由所述呈现持续时间的数目所定义的所述模式可包括所述呈现持续时间的分布。
在一些方面中,由所述系统执行的所述操作可包括:识别包括链接到给定应用的所述一个或多个应用链接的应用链接集合;基于所述应用链接集合中的应用链接的特性来将所述应用链接分组成应用链接组集合;以及基于对所述应用链接组中的应用链接的呈现持续时间应用机器学习模型来将每个应用链接组分类为具有损坏或工作链接。
在一些方面中,每个应用链接包括用于识别特定应用内的特定位置的字符串。由所述系统执行的所述操作可包括:至少基于所述一个或多个应用链接的所述字符串来识别包括所述应用链接的应用链接集合的一个或多个应用链接前缀模式。每个应用链接前缀模式可指明两个或更多个应用链接所共有的字符串。对于每个应用链接前缀模式,由所述系统执行的所述操作可包括:识别包括所述应用链接前缀模式所指明的字符串的应用链接组;识别所述应用链接组中的每个应用链接的呈现持续时间集合;将所述机器学习模型应用于所述应用链接组的呈现持续时间;以及基于所述机器学习模型将所述应用链接集合分类为损坏来生成并输出将给定应用链接前缀模式的给定应用链接组识别为损坏链接的警示。
在一些方面中,由所述系统执行的所述操作包括:基于每个应用链接前缀模式能够获得的呈现持续时间的数目来识别所述一个或多个应用链接前缀模式。在一些方面中,所述机器学习模型包括线性回归模型。
可实现本说明书中所描述的主题的特定实施例以便实现以下优点中的一个或多个。因为对指向应用的内容的损坏链接的选择可致使应用崩溃或者不恰当地运作,所以识别并移除指向应用的内容的损坏链接可防止该应用或执行该应用的设备的崩溃和/或不恰当的运作。使用机器学习来识别坏应用链接允许识别指向无法被应用或web爬取器(crawler)恰当地爬取的应用内容的坏应用链接。通过减少将用户的设备引向不正确的应用内容或者致使在用户的设备上执行的应用崩溃或者不恰当地运作的坏应用链接的数目而降低了用户挫败感。
在附图和以下描述中阐述了本说明书所描述的主题的一个或多个实施例的细节。主题的其它特征、方面和优点将根据说明书、附图和权利要求书变得显而易见。
附图说明
图1是损坏链接检测系统自动地检测损坏应用链接的示例环境。
图2是示出应用链接的呈现持续时间的示例分布的表示的曲线图。
图3是示出应用链接的呈现持续时间的示例分布的表示的曲线图。
图4是用于对机器学习模型进行训练以预测应用链接是否是损坏链接的示例过程的流程图。
图5是用于识别损坏应用链接的示例过程的流程图。
图6是用于识别损坏应用链接的应用链接前缀模式的示例过程的流程图。
在各个附图中相似的附图标记和名称指示相似的元素。
具体实施方式
本文中所描述的系统和技术允许检测损坏应用链接,包括无法通过选择链接(例如,手动地或自动地)并且确定是否获得了应用链接所指向的内容来测试的应用链接。例如,用于以这种方式测试应用链接的应用爬取器可能无法访问应用链接所指向的应用内容,因为该应用可能需要登录信息来访问该内容。在另一示例中,使用应用爬取器来测试应用链接与当使用web爬取器来测试指向网页的web链接时相比可以致使更多的网络超时,从而使应用爬取器的使用变得不太有效。使用机器学习而不是应用爬取器可避免这样的网络超时,并且由此改进用于识别损坏应用链接的技术,例如,通过提供更准确的损坏链接分析。
系统可对机器学习模型进行训练以基于应用链接的呈现持续时间来预测应用链接是否是损坏链接。应用链接的呈现持续时间指明通过该应用链接所链接到的应用内容在与该应用链接的用户交互之后被呈现了多长时间。例如,响应于与应用的用户交互,可以从发生了与应用链接的用户交互的时间到应用被关闭或者应用导航到其它内容的时间来测量呈现持续时间。如果应用崩溃,则可以根据发生了与应用链接的用户交互的时间和应用崩溃时的时间来测量呈现持续时间。
在一些实施方式中,机器学习模型基于应用链接的呈现持续时间的分布而将应用链接分类为损坏或工作。例如,如果应用链接具有比长呈现持续时间(具有大于阈值持续时间的那些)基本上更多的(例如,超过指定数目的或百分比的)短呈现持续时间(例如,具有小于阈值持续时间的那些),则该应用链接可以具有表明该应用链接损坏的分布模式。在另一示例中,如果应用链接具有很少(例如,小于阈值)的短呈现持续时间的呈现持续时间的自然分布,则该应用链接可以具有表明该应用链接正确地操作并且它未损坏的分布模式。
机器学习模型也可以预测(例如,确定)应用链接组是否损坏。可基于应用链接的前缀模式来将应用链接分组成应用链接组。每个应用链接可包括用于识别特定应用内的特定位置的字符串,所述特定位置(例如应用的特定应用页面、视频应用的特定视频、或餐馆评论应用的特定餐馆页面)。每个应用链接前缀模式可指定为多个应用链接所共有的字符串。例如,第一应用链接的字符串可以是“appname:itemcategory1/item1”并且第二应用链接的字符串可以是“appname:itemcategory1/item2”。这两个应用链接的应用链接前缀模式可以是“appname:itemcategory/”,因为此字符串为两个应用链接所共有(例如,在两个应用链接中相同)。因为具有匹配(例如,基于匹配字符的数目而相同或者在指定的相似性度量内)前缀模式的应用链接常常同时或者出于相同原因而损坏,所以通过前缀模式来对应用链接进行分组允许机器学习模型在无需单独地在每个应用链接的呈现持续时间上运行模型的情况下预测该组中的链接是否已损坏。相对于必须单独地在每个应用链接上运行模型,此分组可使用更少的计算资源来导致更快的分类。该分组也可增加由机器学习模型针对特定分类所使用的选择持续时间数据的量,从而由于降低了有噪声或不正确的数据的影响而导致更准确的预测。
图1是损坏链接检测系统110自动地检测损坏应用链接的示例环境100。损坏链接检测系统110包括一个或多个前端服务器112和一个或多个链接分类服务器114。前端服务器112可通过网络130从客户端设备142(例如,客户端设备142-A和142-B)接收指定呈现持续时间的数据。例如,响应于应用链接被分类为损坏链接,前端服务器112也可通过网络130向客户端设备142传送通知或警示。网络130可包括局域网(LAN)、广域网(WAN)、互联网、移动网络、或其组合。
每个客户端设备142可包括一个或多个应用146和持续时间监视器144。例如,客户端设备142-A包括应用146-A和持续时间监视器144-A。类似地,客户端设备142-B包括应用146-B和持续时间监视器144-B。应用146可以包括为特定平台或特定类型的设备而开发的本原应用(native application)。
用户可以通过与指向应用(例如,链接到应用的网络位置)或者指向应用内的特定位置的应用链接交互(例如,进行选择)来访问应用146的内容。应用链接可包括使得客户端设备142响应于与应用链接的用户交互而打开应用146(如果应用146尚未打开的话)并导航到该应用链接所指向的特定位置的字符串。例如,该字符串可以识别应用146和应用链接所指向的应用146内的特定位置。应用链接可以是表单中的深链接或链接到除应用的最高层页面(例如,欢迎页面或登录页面)以外的应用的特定页面(或用户界面屏幕)的统一资源识别符(URI)。
应用链接可被呈现在网页上、在应用内、在搜索结果页面、和/或其它类型的电子资源上。相同的应用链接可被呈现在多个不同的资源上并且可由多个不同的用户进行交互。如上所述,如果应用146被更新、托管应用内容的服务器变得不可用(例如,离线)或者对于用户而言可能不容易显而易见的其它事件,则应用链接可以变为损坏。在这样的情况下,与应用链接(在呈现有应用链接的任一资源上)的用户交互可以致使应用链接所指向的应用崩溃或者致使该应用呈现不正确的内容。因此,从电子资源中识别并移除损坏应用链接可防止这样的崩溃和不正确的内容呈现,从而改善对应用的用户体验。
损坏链接是未恰当地链接到特定应用或到应用内的特定位置的链接。例如,损坏应用链接可以链接到应用内不存在的位置。在另一示例中,损坏应用链接可以链接到应用内这样的位置:该位置先前存在,但是由于托管该位置处的内容的服务器不可用或者内容被移动到不同的位置——例如由于对应用的更新——而当前确实不存在。
如果应用链接恰当地链接到不正确的内容则该应用链接也可以是损坏的。例如,应用链接可以意图链接到特定新闻故事,但是实际上链接到不同的新闻故事。在此示例中,与应用链接交互的用户可能被呈现不同的新闻故事并且可能关闭应用或者返回到包括链接的应用或内容而不阅读该不同的新闻故事。通过识别并移除这样的损坏应用链接可改善用户体验并且减少被发起来检索内容的网络请求的数目,从而导致更好的网络性能并减少对网络资源的需求。
持续时间监视器144可监视应用内容的呈现持续时间。例如,持续时间监视器114可监视在与指向应用内容的应用链接的用户交互(例如,对指向应用内容的应用链接的选择)之后呈现的内容的呈现持续时间。例如,响应于与应用的用户交互,可以从发生了与应用链接的用户交互的时间到应用被关闭或者应用导航到其它内容的时间来测量呈现持续时间。例如,用户可以在下午12:01选择到应用内的特定位置的应用链接(例如,其被呈现在搜索结果页面上),并且可以经由应用将特定位置处的内容呈现给用户。响应于该选择,持续时间监视器144(或提供了搜索结果页面的搜索系统)可以将选择的时间记录在日志(例如,搜索日志)中。如果用户选择后退按钮或者以其他方式退出应用,则客户端设备142可以返回到搜索结果页面。持续时间监视器144(或搜索系统)可以在日志中记录客户端设备142关闭应用或者返回到搜索结果页面的时间,例如12:05。在此示例中,持续时间监视器144可以例如从日志中获得所述两个时间,并且通过将12:05减去12:01来确定呈现持续时间。因此,在此示例中,呈现持续时间是4分钟。如果应用崩溃,则可以根据发生了用户与应用链接的交互的时间和应用崩溃时的时间来测量呈现持续时间。例如,持续时间监视器144可以接收例如来自客户端设备的应用或操作系统的指定应用崩溃时的时间的消息。
持续时间监视器144可以监视并记录接收在客户端设备142处的用户交互的多个不同的应用链接的呈现持续时间。持续时间监视器144也可以向损坏链接检测系统110的前端服务器112传送指定每个应用链接的呈现持续时间的数据。前端服务器112可从与多个不同的用户相关联的多个不同的客户端设备142接收呈现持续时间。例如,前端服务器112可以从与第一用户相关联的客户端设备142-A以及从和与第一用户不同的第二用户相关联的客户端设备142-B接收呈现持续时间。以这种方式,可以在多个不同的用户之上聚合对给定应用链接的选择持续时间。
前端服务器112可将所接收到的呈现持续时间提供给链接分类服务器114。进而,链接分类服务器114可将呈现持续时间存储在呈现持续时间数据库118,例如存储在数据存储设备上)中。每个呈现持续时间可与其呈现持续时间被记录的应用链接相关联地存储。
可以作为一个或多个后端服务器被实现的链接分类服务器114可对机器学习模型116进行训练以预测应用链接是否损坏和/或应用链接组中的应用链接是否损坏。用于对机器学习模型进行训练的示例技术被图示在图4中并在下面进行描述。机器学习模型116可基于应用链接的呈现持续时间而将应用链接分类为损坏或工作(例如,未损坏)。例如,链接分类服务器114可以将机器学习模型116应用于应用链接的呈现持续时间的集合并且基于该组呈现持续时间而对该应用链接进行分类。用于对应用链接进行分类的呈现持续时间的集合可以是在与应用链接的用户交互之后的特定时间段内——例如在前一天或前一周内——发生的内容呈现的那些持续时间。
在一些实施方式中,机器学习模型116基于应用链接的呈现持续时间的分布来将应用链接分类为损坏或工作。在此示例中,链接分类服务器114可以具有持续时间组的集合并且每个持续时间组可以对应于持续时间的范围。例如,所述组可以包括持续时间为0至3秒的第一组、持续时间为3至6秒的第二组、持续时间为6至9秒的第三组等。链接分类服务器114可针对每个呈现持续时间来识别该呈现持续时间落在的持续时间的范围并且将该呈现持续时间指派至与持续时间的该范围相对应的持续时间组。例如,链接分类服务器114可以将7秒的呈现持续时间指派至具有范围6至9秒的持续时间组。
链接分类服务器114可确定指派至每个持续时间组的呈现持续时间的数目的计数。每个持续时间组的计数定义应用链接的呈现持续时间分布。具体的,应用链接的分布针对持续时间组的集合中的每个持续时间组指定指派至该持续时间组的应用链接的呈现持续时间的数目。应用链接的示例分布被图示在图2中并在下面进行描述。机器学习模型116可被应用于应用链接的每个持续时间组的计数并且可基于该计数来对应用链接进行分类。例如,链接分类服务器114可以生成包括每个持续时间组的向量元素的特征向量。每个向量元素的值可以等于指派至与该向量元素相对应的持续时间组的应用链接的呈现持续时间的数目的计数(或者与其成比例)。例如,特征向量可以包括与6至9秒持续时间组相对应的向量元素。此向量元素的值可以是介于6秒与9秒之间的应用链接的呈现持续时间的数目。链接分类服务器可以将机器学习模型116应用于针对应用链接所生成的特征向量以将应用链接分类为损坏或工作。
通过基于呈现持续时间的分布来对应用链接进行分类,机器学习模型116可在由多个不同的客户端设备142对应用的多个请求之上虑及呈现持续时间的模式。例如,损坏应用链接可以导致大量呈现持续时间被指派至具有短持续时间的持续时间组,同时使显著更少的呈现持续时间被指派至具有更长持续时间的持续时间组。相比之下,工作的应用链接可以使相当多数目(例如,超过阈值数目)的呈现持续时间被指派至许多不同的持续时间组,包括具有较长持续时间的那些。如在下面更详细地描述的,可对机器学习模型116进行训练以识别与损坏应用链接相对应的各个不同的分布模式以及与工作的应用链接的各种不同的分布模式。
机器学习模型116可以与个体应用链接类似的方式对应用链接组进行分类。例如,链接分类服务器114可针对包括在应用链接组中的每个应用链接来识别应用链接的呈现持续时间并且针对该组聚合所述呈现持续时间。然后,链接分类服务器114可将机器学习模型116应用于该应用链接组的呈现持续时间并且输出该组中的应用链接总体上是否损坏的分类。例如,针对该组的损坏的分类可以指示该组中的每个应用链接都损坏。作为响应,分类服务器114可以生成指明该组中的应用链接可能损坏的警示并且将该警示传送到前端服务器112。进而,前端服务器112可以将该警示传送到系统管理员的客户端设备,所述系统管理员可以进一步调查该组中的应用链接。
为了对一组应用链接进行分类,链接分类服务器114可以生成该组中的应用链接的呈现持续时间的分布并且将机器学习模型应用于该分布。例如,链接分类服务器114可以以与个体应用链接的特征向量类似的方式生成该组的特征向量。链接分类服务器114可以生成包括持续时间组的集合中的每个持续时间组的向量元素的特征向量。每个向量元素的值可以等于指派至与该向量元素相对应的持续时间组的应用链接组的呈现持续时间的数目的计数(或者与其成比例)。例如,特征向量可以包括与1至3秒持续时间组相对应的向量元素。此向量元素的值可以是介于1秒与3秒之间的组的呈现持续时间的总数目。为了图示,组可以具有两个应用链接作为成员。两个应用链接中的一个可能已具有介于1秒与3秒之间的十个呈现持续时间,而另一个应用链接可能已具有介于1秒与3秒之间的五个呈现持续时间。在此示例中,与1至3秒持续时间组相对应的向量元素可以具有值15。链接分类服务器可以将机器学习模型116应用于为应用链接组而生成的特征向量以将该组中的应用链接分类为损坏或工作。
链接分类服务器114可基于应用链接的一个或多个特性和/或应用链接所指向的应用或应用内容的一个或多个特性来将应用链接集合指派至组。链接分类服务器114可将识别组和每个组的成员的数据存储在链接组数据库120中。在一些实施方式中,链接分类服务器114可以基于包括在应用链接中的字符串来将应用链接指派至组。如上所述,可基于应用链接的前缀模式来对应用链接进行分组。在此示例中,链接分类服务器114可识别在要针对其生成组的一个或多个应用链接中找到的字符串。在特定示例中,链接分类服务器114可以识别为应用链接中的两个或更多个所共有(例如,在其中相同)的字符串并且为通过公共字符串所定义的应用链接前缀模式生成组。
在一些实施方式中,应用链接前缀模式基于在应用链接的字符串开头处开始的字符串。例如,第一应用链接的字符串可以是“appname:itemcategory1/item1”并且第二应用链接的字符串可以是“appname:itemcategory1/item2”。在此示例中,链接分类服务器114可以从左向右评估字符串并且确定两个应用链接具有“appname:itemcategory1/”的公共前缀。作为响应,链接分类服务器114可以生成应用链接前缀模式“appname:itemcategory1/”的组并且在该组中包括具有以该应用链接前缀模式开始的字符串的每个应用链接。
链接分类服务器114可以基于应用链接的数目和/或每个潜在组可获得的呈现持续时间的数目来生成组。例如,链接分类服务器114可以识别两个或更多个应用链接所共有的字符串。对于每个识别的字符串,链接分类服务器114可以识别包括该字符串的应用链接的数目。链接分类服务器114然后可以为至少阈值数目的应用链接包括其字符串的每个字符串生成组。在另一示例中,链接分类服务器114可以基于包括字符串的应用链接的数目来对字符串进行排名并且生成前N个字符串的组,其中“N”是指定的数目(例如,由损坏链接检测系统的管理员指定并且可从数据存储或数字存储器设备获得)。对于每个组,链接分类服务器114可用包括针对其生成该组的字符串的应用链接来填充该组。
类似地,链接分类服务器114可以识别两个或更多个不同的应用链接所共有(例如,在其中相同)的字符串。对于每个识别的字符串,链接分类服务器114可以识别存储在呈现持续时间数据库118中的包括该字符串的应用链接的呈现持续时间的总数目。如果链接分类服务器114使用机器学习模型116来基于特定时间段(例如,前一天)内的呈现持续时间对应用链接进行分类,则链接分类服务器可以识别包括字符串并且其呈现持续时间至少部分地在该特定时间段内发生的应用链接的呈现持续时间的总数目。例如,如果应用内容的呈现在特定时间段内被发起但是持续直到在该特定时间段结束之后为止,则呈现持续时间可以部分地在该特定时间段内发生。链接分类服务器114可以为包括其字符串的应用链接可获得至少阈值数目的呈现持续时间的每个字符串生成组。在另一示例中,链接分类服务器114可以基于可获得的呈现持续时间的数目来对字符串进行排名并且为前N个字符串生成组,其中“N”是指定的数目。对于每个组,链接分类服务器114可用包括针对其生成该组的字符串的应用链接来填充该组。
链接分类服务器114也可以为特定应用生成组。例如,链接分类服务器可以为每个特定应用创建组并且在特定应用的组中包括指向该应用或该特定应用内的特定位置的每个应用链接。
链接分类服务器114也可基于呈现持续时间随着时间推移的变化来对应用链接和/或应用的组进行分类。例如,如果应用链接的呈现持续时间已显著地减小了(例如,减小了至少阈值量),则应用链接可能已变为损坏。为了对应用链接进行分类,链接分类服务器114可在特定时间段——例如,前一星期——上确定每天(或另一适当的时间段)的应用链接的平均呈现持续时间。应用服务器也可确定当前日(或其它适当的时间段)的应用链接的平均呈现持续时间。链接分类服务器114然后可将当前日的平均呈现持续时间与先前日的平均呈现持续时间(或考虑中的所有先前日的组合平均值)相比较。如果当前日的平均呈现持续时间比先前日的平均呈现持续时间少至少阈值量,则链接分类服务器114可以将应用链接分类为损坏链接。
在一些实施方式中,如果先前日的平均呈现持续时间的标准偏差超过阈值,则链接分类服务器114可以不对应用链接进行分类。例如,高标准偏差(例如,超过阈值的标准偏差)可以指示数据不够稳定以用于对应用链接进行分类,从而防止链接分类服务器114输出错误的分类。
图2是示出应用链接的呈现持续时间的示例分布的表示的曲线图200。曲线图200图示呈现持续时间组,并且对于每个持续时间组,图示指派至每个持续时间组的呈现持续时间的数目的计数。在此示例中,持续时间组均针对两秒持续时间范围内。例如,第一持续时间组针对0至2秒的持续时间范围内并且第一持续时间组已被指派了十个呈现持续时间。即,通过应用链接所链接到的应用的内容以0至2秒之间的持续时间被查看了十次。在一些实施方式中,分布可以基于指派至每个持续时间组的呈现持续时间的百分比而不是指派至每个持续时间组的呈现持续时间的数目的计数。
可对分布应用机器学习模型以预测(例如,确定)应用链接是工作还是损坏。此示例分布可以表示损坏链接的呈现持续时间,因为大多数呈现持续时间小于二十秒并且存在很少的大于三十秒的呈现持续时间。因此,机器学习模型可以针对此示例分布输出损坏的分类。
图3是示出应用链接的呈现持续时间的示例分布的表示的曲线图300。与图2的曲线图200类似,曲线图300图示呈现持续时间组,并且对于每个持续时间组,图示指派至每个持续时间组的呈现持续时间的数目的计数。可对分布应用机器学习模型以预测(例如,确定)应用链接是工作还是损坏。此示例分布可以表示工作的链接的呈现持续时间,因为呈现持续时间分布在持续时间的范围之上并且未对短呈现持续时间高度地加权。因此,机器学习模型可以针对此示例分布输出工作的分类。
图4是用于对机器学习模型进行训练以预测应用链接是否是损坏链接的示例过程400的流程图。过程400的操作可例如由包括一个或多个数据处理装置的系统——诸如图1的损坏链接检测系统110——来实现。过程400也可由存储在计算机存储介质上的指令来实现,其中由包括数据处理装置的系统执行所述指令致使该数据处理装置执行过程400的操作。
系统识别训练应用链接的集合(402)。例如,系统可以访问包括识别训练应用链接的数据和每个训练应用链接的标记训练数据的数据库或索引。训练应用链接可以是可针对其获得标记训练数据的应用链接。例如,训练应用链接可以是操作状态(例如,工作或损坏)是已知的并且至少存在阈值数目的、可用于在对机器学习模型进行训练时使用的实际呈现持续时间的应用链接。可识别训练应用链接,使得集合包括至少阈值数目的工作应用链接和至少阈值数目的损坏应用链接。
系统获得每个训练应用链接的标记训练数据(404)。例如,系统可以访问数据库,识别被索引到每个训练应用链接的标记训练数据,并且检索训练应用链接的标记训练数据。每个训练应用链接的标记训练数据可包括训练应用链接的呈现持续时间的集合和标记。训练应用链接的标记可指明训练应用链接是损坏还是工作。例如,应用链接的标记可基于与训练应用链接的用户交互是否致使设备导航到训练应用链接所指向的内容来指明训练应用链接是损坏还是工作。
在一些实施方式中,一个或多个系统管理员和/或一个或多个用户测试训练应用链接并相应地更新标记。例如,系统管理员可以与训练应用链接交互(例如,选择训练应用链接)并且监视以了解该训练应用链接所链接到的内容是否被呈现。如果正确的内容在与训练应用链接的交互之后被呈现,则系统管理员可以更新训练应用链接的标记以指示该训练应用链接工作。如果训练应用链接所链接到的应用确实未打开或者训练应用链接所链接到的内容在与该训练应用链接的交互之后未被呈现,则系统管理员可以更新标记以指示训练应用链接损坏。在另一示例中,与训练应用链接交互的用户被提示——例如自动地使用用户界面元素——来选择训练应用是工作还是损坏。
系统使用训练数据来对机器学习模型进行训练以预测应用链接是工作还是损坏(406)。在一些实施方式中,系统可以通过将训练应用链接和对应的呈现持续时间以及标签的一部分分割成训练集合和测试集合来生成机器学习模型。然后可以使用训练集合中的每个训练应用链接的呈现持续时间以及训练集合中的每个训练应用链接的标记来对机器学习模型进行训练。在一些实施方式中,机器学习模型可以包括与呈现持续时间的特定特征相关联的一个或多个权重,例如,每个持续时间组的权重、呈现持续时间的幅值的权重和/或在每个持续时间组中的呈现持续时间的相对数目的权重。对预测模型进行训练可以包括调整与被查明为预测应用链接是损坏还是工作的特征和特征组合相关联的权重。可以使用用于使特征和标记相关的各种方法和技术——诸如聚类、线性回归、逻辑回归和非线性回归。
在对预测模型进行训练之后,然后可以使用测试集合中或另一训练集合中的训练应用链接的呈现持续时间来测试模型。然后可以基于测试的结果来调整与机器学习模型中的每个特征相关联的权重。
图5是用于识别损坏应用链接的示例过程500的流程图。过程500的操作可例如由包括一个或多个数据处理装置的系统——诸如图1的损坏链接检测系统110——来实现。过程500也可通过存储在计算机存储介质上的指令来实现,其中由包括数据处理装置的系统执行所述指令致使该数据处理装置执行过程500的操作。
系统接收指明给定应用的一个或多个应用链接的呈现持续时间的数据(502)。一个或多个应用链接中的每一个可以链接到给定应用内的特定位置或给定应用的特定内容。每个呈现持续时间可以指明应用链接链所接到的应用内容在用户与应用链接的交互之后被呈现了多长时间。
数据可包括与一个或多个应用链接中的每一个的多个不同的用户交互的呈现持续时间。例如,每个应用链接可以接收来自多个不同的用户的交互。响应于每个交互,应用链接所链接到的应用内容可以被呈现给与该应用链接交互的用户。对于每个用户交互,系统可监视应用内容在用户交互之后被呈现的持续时间并且将该持续时间记录为应用链接的呈现持续时间。
如果应用链接损坏,则应用的内容可能未被呈现给用户,或者不正确的内容可能被呈现给用户。如果应用崩溃,则呈现持续时间可以指明与应用的用户交互和应用崩溃之间的时间量。如果应用确实未打开,则呈现持续时间可以为零。如果不正确的内容被呈现,则呈现持续时间可以是短的(例如,小于阈值持续时间),因为用户可能导航离开不正确的内容或者关闭应用。
系统基于对应用链接的呈现持续时间应用机器学习模型来将每个应用链接分类为损坏或工作(504)。例如,系统可以基于针对应用链接观察到的呈现持续时间来识别已被训练来预测应用链接是工作还是损坏的机器学习模型。可以例如使用图4中所图示的并在上面描述的示例过程400来对机器学习模型进行训练。
在一些实施方式中,机器学习模型基于呈现持续时间的分布来预测应用链接是工作还是损坏。例如,系统可以将每个呈现持续时间指派至具有该呈现持续时间落在的持续时间的范围的持续时间组。系统可确定指派至每个持续时间组的呈现持续时间的数目。每个持续时间组的计数定义应用链接的呈现持续时间的分布。可将机器学习模型应用于每个持续时间组的计数并且机器学习模型可基于该计数来输出对应用链接的工作或损坏的分类。
在一些实施方式中,可将机器学习模型应用于应用链接的特征向量。在此示例中,特征向量可包括每个持续时间组的向量元素。每个向量元素的值可以等于指派至与该向量元素相对应的持续时间组的应用链接的呈现持续时间的数目的计数(或者与其成比例)。
系统生成并输出对于由机器学习模型分类为损坏链接的每个应用链接的警示(506)。对于给定应用链接的警示可以基于该给定应用链接由机器学习模型分类为损坏来将该给定应用链接识别为损坏链接。系统可以将警示传送到系统管理员的客户端设备。作为响应,系统管理员可以进一步调查应用链接。如果系统管理员确定应用链接损坏,则系统管理员可以从包括链接的一个或多个电子资源中移除损坏链接并且/或者修复该链接。
图6是用于识别损坏应用链接的应用链接前缀模式的示例过程600的流程图。过程600的操作可例如由包括一个或多个数据处理装置的系统——诸如图1的损坏链接检测系统110——来实现。过程600也可通过存储在计算机存储介质上的指令来实现,其中由包括数据处理装置的系统执行所述指令致使该数据处理装置执行处理600的操作。
系统至少基于应用链接的字符串来识别应用链接集合的一个或多个应用链接前缀模式(602)。例如,如上所述,每个应用链接可包括用于识别特定应用内的特定位置的字符串。系统可以识别两个或更多个应用链接所共有的字符串并且为通过公共字符串所定义的应用链接前缀模式生成组。如上所述,可以基于应用链接的数目和/或每个潜在组可获得的呈现持续时间的数目来生成应用链接组。
对于每个应用链接前缀模式,识别包括通过该应用链接前缀模式所指明的字符串的应用链接组(604)。例如,系统可以将通过应用链接前缀模式所指明的字符串与每个应用链接的字符串相比较。包括与应用链接前缀模式所指明的字符串匹配的字符集合的每个应用链接可以被包括在应用链接前缀模式的应用链接组中。例如,如果两个字符串相同或者至少具有指明的相似性,则第一字符串可以被视为与第二字符串匹配。字符串之间的相似性可以基于在字符串中相同的并且在字符串内处于相同位置中的字符的数目(或字符的百分比)。在一些实施方式中,系统仅在应用链接前缀模式的应用链接组中包括具有以应用链接前缀模式所指明的字符串开始的字符串的那些应用链接。
对于每个应用链接前缀模式,系统识别应用链接组中的每个应用链接的呈现持续时间集合(606)。例如,每个应用链接可以具有呈现持续时间的结合。系统可以将该组的呈现持续时间聚合成呈现持续时间集合。
对于每个应用链接前缀模式,系统将机器学习模型应用于应用链接组的呈现持续时间集合(608)。系统可以以相同的或类似的方式将机器学习模型应用于呈现持续时间集合,如上面参考图5所描述的。例如,系统可以将呈现持续时间集合中的每个呈现持续时间指派至具有该呈现持续时间落在的持续时间的范围的持续时间组。系统可确定指派至每个持续时间组的呈现持续时间集合的呈现持续时间的数目的计数。系统可将机器学习模型应用于每个持续时间组的计数,并且机器学习模型可基于该计数来输出对应用链接的工作或损坏的分类。
在一些实施方式中,可将机器学习模型应用于应用链接组的特征向量。在此示例中,特征向量可包括每个持续时间组的向量元素。每个向量元素的值可以等于指派至与该向量元素相对应的持续时间组的应用链接组的呈现持续时间的数目的计数(或者与其成比例)。
系统基于机器学习模型将应用链接集合分类为损坏来生成并输出将给定应用链接前缀模式的给定应用链接组识别为损坏链接的警示(610)。例如,机器学习模型可以输出对每个应用链接组的工作或损坏的分类。对于具有损坏的分类的那些应用链接,系统可生成将应用组中的应用链接识别为损坏链接的警示。系统可以将该警示传送到系统管理员的客户端设备,所述系统管理员可以进一步调查并修复或者移除任何损坏链接。
本说明书中所描述的主题和功能操作的实施例可用数字电子电路、用计算机软件、固件或硬件——包括本说明书中所公开的结构及其结构等同物、或者用它们中一个或多个的组合加以实现。本说明书中所描述的主题的实施例可作为一个或多个计算机程序——即计算机程序指令的一个或多个模块被实现,其在计算机存储介质上编码以供由数据处理装置执行或者控制数据处理装置的操作的。替选地或此外,可将程序指令编码在人工生成的传播信号上,所述传播信号例如为机器生成的电、光、或电磁信号,该信号被生成来对信息进行编码以便传输到合适的接收器装置以供由数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器阵列或设备、或者它们中的一个或多个的组合,或者被包括在其中。此外,虽然计算机存储介质不是传播信号,但是计算机存储介质可以是在人工生成的传播信号中编码的计算机程序指令的源或目的地。计算机存储介质也可以是一个或多个单独的物理组件或介质(例如,多个CD、磁盘或其它存储设备),或者被包括在其中。
本说明书中所描述的操作可作为由数据处理装置对存储在一个或多个计算机可读存储设备上或者从其它源接收到的数据执行的操作来被实现。
术语“数据处理装置”涵盖用于对数据进行处理的所有种类的装置、设备和机器,作为示例包括可编程处理器、计算机、片上系统或者多个处理器、多个计算机、多个片上系统或上述的组合。该装置可包括专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。该装置除了包括硬件之外还可包括为所述计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时环境、虚拟机或它们中的一个或多个的组合的代码。该装置和执行环境可实现各种不同的计算模型基础设施,诸如web服务、分布式计算和网格计算基础设施。
计算机程序(也被称为程序、软件、软件应用、脚本或代码)可用任何形式的编程语言来编写,所述编程语言包括编译或解释语言、声明性或过程语言,并且它可被以任何形式部署,包括作为独立程序或者作为适合于在计算环境中使用的模块、组件、子例程、对象或其它单元。计算机程序可以但未必对应于文件系统中的文件。可在保持其它程序或数据(例如,存储在标记语言文档中的一个或多个脚本)的文件的一部分中、在专用于所讨论的程序的单个文件中或者在多个协调文件(例如,存储一个或多个模块、子程序或代码的部分的文件)中存储程序。可将计算机程序部署成在一个计算机上或在位于一个站点处或者跨多个站点分布并通过通信网络互连的多个计算机上执行。
本说明书中所描述的过程和逻辑流程可通过一个或多个可编程处理器执行一个或多个计算机程序以通过对输入数据进行操作并生成输出来执行动作而被执行。过程和逻辑流程也可由专用逻辑电路来执行,并且装置也可作为专用逻辑电路被实现,所述专用逻辑电路例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
作为示例,适合于执行计算机程序的处理器包括通用微处理器和专用微处理器两者,以及任何其它种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的必要元件是用于依照指令执行动作的处理器以及用于存储指令和数据的一个或多个存储设备。通常,计算机也将包括用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘),或者在操作上耦合以从其接收数据或者将数据传输到所述大容量存储设备,或者这二者。然而,计算机不必具有这样的设备。此外,可将计算机嵌入在另一设备中,所述另一设备例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏控制台、全球定位系统(GPS)接收器或便携式存储设备(例如,通用串行总线(USB)闪存驱动器)等。适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储设备,作为示例包括半导体存储设备,例如EPROM、EEPROM和闪速存储器设备;磁盘,例如内部硬盘或可移动盘;磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可由专用逻辑电路来补充,或者并入专用逻辑电路。
为了提供与用户的交互,可将本说明书中所描述的主题的实施例实现在计算机上,所述计算机具有用于向用户显示信息的显示设备——例如CRT(阴极射线管)或LCD(液晶显示)监视器——以及用户可用来向该计算机提供输入的键盘和指示设备——例如鼠标或轨迹球。其它种类的设备也可用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感官反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以任何形式接收来自用户的输入,包括声、语音或触觉输入。此外,计算机可通过向由用户使用的设备发送文档并且从由用户使用的设备接收文档来与用户交互;例如,通过响应于从web浏览器接收到的请求而向用户的客户端设备上的web浏览器发送网页。
可将本说明书中所描述的主题的实施例实现在计算系统中,所述计算系统包括后端组件——例如作为数据服务器,或者包括中间件组件——例如应用服务器,或者包括前端组件——例如具有用户可用来与本说明书中所描述的主题的实施方式交互的图形用户界面或Web浏览器的客户端计算机,或者包括一个或多个这样的后端、中间件或前端组件的任何组合。系统的组件可通过任何形式或介质的数字数据通信——例如,通信网络——来互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”)、互连网络(例如,互联网)以及对等网络(例如,点对点对等网络)。
计算系统可包括客户端和服务器。客户端和服务器通常彼此远离并且通常通过通信网络来交互。客户端和服务器的关系借助于在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序而产生。在一些实施例中,服务器向客户端设备传送数据(例如,HTML页面)(例如,出于向与客户端设备交互的用户显示数据并且从与客户端设备交互的用户接收用户输入的目的)。可在服务器处从客户端设备接收在客户端设备处生成的数据(例如,用户交互的结果)。
虽然本说明书包含许多特定实施方式细节,但是这些不应该被解释为对任何发明的或可以要求保护的范围构成限制,而是相反被解释为特定于特定发明的特定实施例的特征的描述。也可在单个实施例中组合地实现在本说明书中在分开的实施例的场境(context)中描述的某些特征。相反,也可在多个实施例中单独地或者按照任何适合的子组合实现在单个实施例的场境中描述的各种特征。此外,尽管特征可以在上面被描述为按照某些组合起作用并因此甚至最初如此要求保护,然而来自要求保护的组合的一个或多个特征可在一些情况下被从该组合中删去,并且所要求保护的组合可以针对子组合或子组合的变化。
类似地,虽然在附图中按照特定次序描绘了操作,但是这不应该被理解为要求按照所示特定次序或者按照顺序次序执行这样的操作,或者要求执行所有图示的操作以实现所希望的结果。在某些情况下,多任务处理和并行处理可以是有利的。此外,上面所描述的实施例中的各种系统组件的分离不应该被理解为在所有实施例中要求这样的分离,并且应该理解的是,所描述的程序组件和系统通常可被一起集成在单个软件产品中或者封装到多个软件产品中。
因此,已经对主题的特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,权利要求书中所记载的动作可被按照不同的次序执行并仍然实现所希望的结果。此外,附图中所描绘的过程不一定要求所示特定次序或顺序次序以实现所希望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。
以下是权利要求。

Claims (20)

1.一种用于识别损坏的应用链接的系统,包括:
一个或多个前端服务器,所述一个或多个前端服务器接收数据,所述数据针对与链接到给定应用的一个或多个应用链接的多个不同的用户交互来指明呈现持续时间,所述呈现持续时间指明在与所述一个或多个应用链接的所述多个不同的用户交互之后所述应用链接所链接到的应用内容被呈现了多长时间;以及
一个或多个后端服务器,所述一个或多个后端服务器与所述一个或多个前端服务器进行通信并且执行操作,所述操作包括:
基于对所述应用链接的呈现持续时间应用机器学习模型来将每个应用链接分类为损坏或工作,其中,所述机器学习模型使用标记训练数据来生成,对于训练应用链接集合中的每个训练应用链接,所述标记训练数据包括:
所述训练应用链接的呈现持续时间集合;以及
标记,所述标记基于与所述训练应用链接的用户交互是否导致了通过所述训练应用链接所指向的内容的成功呈现来指明所述训练应用链接是损坏还是工作;以及
基于给定应用链接被所述机器学习模型分类为损坏,来生成并输出将所述给定应用链接识别为损坏链接的警示。
2.根据权利要求1所述的系统,其中,所述机器学习模型通过以下操作来对应用链接进行分类:
基于持续时间来将所述应用链接的每个呈现持续时间指派至持续时间组集合中的持续时间组,每个持续时间组是针对持续时间范围并且包括所述应用链接在所述持续时间组的所述持续时间范围内的呈现持续时间;以及
基于由指派至每个持续时间组的呈现持续时间的数目所定义的模式,将所述应用链接分类为损坏或工作。
3.根据权利要求2所述的系统,其中,由所述呈现持续时间的数目所定义的所述模式包括所述呈现持续时间的分布。
4.根据权利要求1所述的系统,其中,所述操作包括:
识别应用链接集合,所述应用链接集合包括链接到给定应用的所述一个或多个应用链接;
基于所述应用链接集合中的所述应用链接的特性来将所述应用链接分组成应用链接组集合;以及
基于对所述应用链接组中的应用链接的呈现持续时间应用机器学习模型,来将每个应用链接组分类为具有损坏或工作的链接。
5.根据权利要求1所述的系统,其中:
每个应用链接包括用于识别特定应用内的特定位置的字符串;以及
所述操作包括:
至少基于所述应用链接的所述字符串来识别包括所述一个或多个应用链接的应用链接集合的一个或多个应用链接前缀模式,每个应用链接前缀模式指明两个或更多个应用链接所共有的字符串;
对于每个应用链接前缀模式:
识别包括所述应用链接前缀模式所指明的所述字符串的应用链接组;
识别所述应用链接组中的每个应用链接的呈现持续时间集合;
将所述机器学习模型应用于所述应用链接组的所述呈现持续时间;以及
基于所述机器学习模型将所述应用链接集合分类为损坏,来生成并输出将给定应用链接前缀模式的给定应用链接组识别为损坏链接的警示。
6.根据权利要求5所述的系统,其中,所述操作包括:基于每个应用链接前缀模式能够获得的呈现持续时间的数目来识别所述一个或多个应用链接前缀模式。
7.根据权利要求1所述的系统,其中,所述机器学习模型包括线性回归模型。
8.一种用于识别损坏的应用链接的方法,所述方法包括:
接收数据,所述数据针对与链接到给定应用的一个或多个应用链接的多个不同的用户交互来指明呈现持续时间,所述呈现持续时间指明在与所述一个或多个应用链接的所述多个不同的用户交互之后所述应用链接所链接到的应用内容被呈现了多长时间;
基于对每个应用链接的呈现持续时间应用机器学习模型来将所述应用链接分类为损坏或工作,其中,所述机器学习模型使用标记训练数据来生成,对于训练应用链接集合中的每个训练应用链接,所述标记训练数据包括:
所述训练应用链接的呈现持续时间集合;以及
标记,所述标记基于与所述训练应用链接的用户交互是否导致了通过所述训练应用链接所指向的内容的成功呈现来指明所述训练应用链接是损坏还是工作;以及
基于给定应用链接被所述机器学习模型分类为损坏,来生成并输出将所述给定应用链接识别为损坏链接的警示。
9.根据权利要求8所述的方法,其中,所述机器学习模型通过以下操作来对应用链接进行分类:
基于持续时间来将所述应用链接的每个呈现持续时间指派至持续时间组集合中的持续时间组,每个持续时间组是针对持续时间范围并且包括所述应用链接在所述持续时间组的所述持续时间范围内的呈现持续时间;以及
基于由指派至每个持续时间组的呈现持续时间的数目所定义的模式,将所述应用链接分类为损坏或工作。
10.根据权利要求9所述的方法,其中,由所述呈现持续时间的数目所定义的所述模式包括所述呈现持续时间的分布。
11.根据权利要求8所述的方法,进一步包括:
识别应用链接集合,所述应用链接集合包括链接到给定应用的所述一个或多个应用链接;
基于所述应用链接集合中的应用链接的特性来将所述应用链接分组成应用链接组集合;以及
基于对所述应用链接组中的应用链接的呈现持续时间应用机器学习模型,来将每个应用链接组分类为具有损坏或工作的链接。
12.根据权利要求8所述的方法,其中,每个应用链接包括用于识别特定应用内的特定位置的字符串,所述方法进一步包括:
至少基于所述应用链接的所述字符串来识别包括所述一个或多个应用链接的应用链接集合的一个或多个应用链接前缀模式,每个应用链接前缀模式指明两个或更多个应用链接所共有的字符串;
对于每个应用链接前缀模式:
识别包括所述应用链接前缀模式所指明的所述字符串的应用链接组;
识别所述应用链接组中的每个应用链接的呈现持续时间集合;
将所述机器学习模型应用于所述应用链接组的所述呈现持续时间;以及
基于所述机器学习模型将所述应用链接集合分类为损坏,来生成并输出将给定应用链接前缀模式的给定应用链接组识别为损坏链接的警示。
13.根据权利要求12所述的方法,进一步包括:基于每个应用链接前缀模式能够获得的呈现持续时间的数目来识别所述一个或多个应用链接前缀模式。
14.根据权利要求8所述的方法,其中,所述机器学习模型包括线性回归模型。
15.一种编码有计算机程序的计算机存储介质,所述程序包括指令,所述指令在由数据处理装置执行时致使所述数据处理装置执行操作,所述操作包括:
接收数据,所述数据针对与链接到给定应用的一个或多个应用链接的多个不同的用户交互来指明呈现持续时间,所述呈现持续时间指明在与所述一个或多个应用链接的所述多个不同的用户交互之后所述应用链接所链接到的应用内容被呈现了多长时间;
基于对每个应用链接的呈现持续时间应用机器学习模型来将所述应用链接分类为损坏或工作,其中,所述机器学习模型使用标记训练数据来生成,对于训练应用链接集合中的每个训练应用链接,所述标记训练数据包括:
所述训练应用链接的呈现持续时间集合;以及
标记,所述标记基于与所述训练应用链接的用户交互是否导致了通过所述训练应用链接所指向的内容的成功呈现来指明所述训练应用链接是损坏还是工作;以及
基于给定应用链接被所述机器学习模型分类为损坏,来生成并输出将所述给定应用链接识别为损坏链接的警示。
16.根据权利要求15所述的计算机存储介质,其中,所述机器学习模型通过以下操作来对应用链接进行分类:
基于持续时间来将所述应用链接的每个呈现持续时间指派至持续时间组集合中的持续时间组,每个持续时间组是针对持续时间范围并且包括所述应用链接在所述持续时间组的所述持续时间范围内的呈现持续时间;以及
基于由指派至每个持续时间组的呈现持续时间的数目所定义的模式,将所述应用链接分类为损坏或工作。
17.根据权利要求16所述的计算机存储介质,其中,由所述呈现持续时间的数目所定义的所述模式包括所述呈现持续时间的分布。
18.根据权利要求15所述的计算机存储介质,其中,所述操作包括:
识别应用链接集合,所述应用链接集合包括链接到给定应用的所述一个或多个应用链接;
基于所述应用链接集合中的应用链接的特性来将所述应用链接分组成应用链接组集合;以及
基于对所述应用链接组中的应用链接的呈现持续时间应用机器学习模型,来将每个应用链接组分类为具有损坏或工作的链接。
19.根据权利要求15所述的计算机存储介质,其中:
每个应用链接包括用于识别特定应用内的特定位置的字符串;并且
所述操作包括:
至少基于所述应用链接的所述字符串来识别包括所述一个或多个应用链接的应用链接集合的一个或多个应用链接前缀模式,每个应用链接前缀模式指明两个或更多个应用链接所共有的字符串;
对于每个应用链接前缀模式:
识别包括所述应用链接前缀模式所指明的所述字符串的应用链接组;
识别所述应用链接组中的每个应用链接的呈现持续时间集合;
将所述机器学习模型应用于所述应用链接组的所述呈现持续时间;以及
基于所述机器学习模型将所述应用链接集合分类为损坏,来生成并输出将给定应用链接前缀模式的给定应用链接组识别为损坏链接的警示。
20.根据权利要求19所述的计算机存储介质,其中,所述操作包括:基于每个应用链接前缀模式能够获得的呈现持续时间的数目来识别所述一个或多个应用链接前缀模式。
CN201680036171.7A 2016-10-17 2016-10-17 对损坏网络连接的基于机器学习的识别 Active CN108207119B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/102265 WO2018072060A1 (en) 2016-10-17 2016-10-17 Machine learning based identification of broken network connections

Publications (2)

Publication Number Publication Date
CN108207119A CN108207119A (zh) 2018-06-26
CN108207119B true CN108207119B (zh) 2021-06-01

Family

ID=62018474

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680036171.7A Active CN108207119B (zh) 2016-10-17 2016-10-17 对损坏网络连接的基于机器学习的识别

Country Status (7)

Country Link
US (2) US10628511B2 (zh)
EP (1) EP3381158B1 (zh)
JP (1) JP6689955B2 (zh)
KR (1) KR101904436B1 (zh)
CN (1) CN108207119B (zh)
RU (1) RU2715802C1 (zh)
WO (1) WO2018072060A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10701166B2 (en) * 2017-01-31 2020-06-30 Microsoft Technology Licensing, Llc Automated application linking
US11461801B2 (en) 2018-03-02 2022-10-04 Adobe Inc. Detecting and resolving semantic misalignments between digital messages and external digital content
CN111344697A (zh) * 2018-07-18 2020-06-26 深圳码隆科技有限公司 用于机器视觉模型的基于复杂度的渐进式训练
JP7392280B2 (ja) * 2019-04-01 2023-12-06 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
US11341204B2 (en) * 2019-05-22 2022-05-24 Adobe Inc. Identifying and presenting misalignments between digital messages and external digital content
US11005727B2 (en) 2019-07-25 2021-05-11 Vmware, Inc. Visual overlays for network insights
US11271824B2 (en) * 2019-07-25 2022-03-08 Vmware, Inc. Visual overlays for network insights
US11669582B2 (en) * 2021-03-24 2023-06-06 Rookie Road, Inc. Systems and methods for automatic resource replacement

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102663062A (zh) * 2012-03-30 2012-09-12 奇智软件(北京)有限公司 一种处理搜索结果中无效链接的方法及装置
CN105022824A (zh) * 2015-07-21 2015-11-04 北京神州绿盟信息安全科技股份有限公司 无效链接的识别方法和装置
CN105975526A (zh) * 2016-04-29 2016-09-28 国家计算机网络与信息安全管理中心 一种url链接有效性的验证方法

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6253204B1 (en) * 1997-12-17 2001-06-26 Sun Microsystems, Inc. Restoring broken links utilizing a spider process
US20040070606A1 (en) * 2002-09-27 2004-04-15 Dan Yang Method, system and computer product for performing e-channel analytics
CA2418568C (en) * 2003-02-10 2011-10-11 Watchfire Corporation Method and system for classifying content and prioritizing web site content issues
US7992090B2 (en) * 2003-09-25 2011-08-02 International Business Machines Corporation Reciprocal link tracking
US7516147B2 (en) * 2003-10-23 2009-04-07 Sumisho Computer Systems Corporation URL system and method for licensing content
JP2005301502A (ja) * 2004-04-08 2005-10-27 Simple Create:Kk 広告システム、端末装置、および端末装置用プログラム
US7484178B2 (en) * 2004-08-30 2009-01-27 International Business Machines Corporation Method and apparatus for self validating URL links
US7610267B2 (en) * 2005-06-28 2009-10-27 Yahoo! Inc. Unsupervised, automated web host dynamicity detection, dead link detection and prerequisite page discovery for search indexed web pages
JP2007272695A (ja) 2006-03-31 2007-10-18 Fujitsu Ltd ブラウザ処理プログラムおよびブラウザ処理装置
US20080052629A1 (en) 2006-08-26 2008-02-28 Adknowledge, Inc. Methods and systems for monitoring time on a web site and detecting click validity
US20080133500A1 (en) * 2006-11-30 2008-06-05 Caterpillar Inc. Website evaluation and recommendation tool
US8015139B2 (en) * 2007-03-06 2011-09-06 Microsoft Corporation Inferring candidates that are potentially responsible for user-perceptible network problems
EP2192729B1 (en) * 2007-08-22 2014-05-07 Nippon Telegraph and Telephone Corporation Path management control method, path management control program, path management control device and path management control system
US8326941B2 (en) 2007-12-31 2012-12-04 International Business Machines Corporation Method for autonomic detection and repair of broken links in web environments
US8095530B1 (en) * 2008-07-21 2012-01-10 Google Inc. Detecting common prefixes and suffixes in a list of strings
US20100287174A1 (en) * 2009-05-11 2010-11-11 Yahoo! Inc. Identifying a level of desirability of hyperlinked information or other user selectable information
US8666996B2 (en) 2009-12-23 2014-03-04 Mastercard International Incorporated Methods and systems for detecting broken links within a file
US8909732B2 (en) * 2010-09-28 2014-12-09 Qualcomm Incorporated System and method of establishing transmission control protocol connections
US8996977B2 (en) * 2010-12-10 2015-03-31 International Business Machines Corporation System, method, and computer program product for management of web page links
US9075885B2 (en) 2011-04-07 2015-07-07 Cisco Technology, Inc. System for handling a broken uniform resource locator
US8792347B2 (en) 2012-06-01 2014-07-29 Opera Software Ireland Limited Real-time network monitoring and subscriber identification with an on-demand appliance
US9301173B2 (en) * 2013-03-15 2016-03-29 The Nielsen Company (Us), Llc Methods and apparatus to credit internet usage
CA2908095A1 (en) * 2013-04-23 2014-10-30 Quixey, Inc. Entity bidding
US20140325327A1 (en) * 2013-04-29 2014-10-30 International Business Machines Corporation Replacing problem web links using context information
CN103605992B (zh) 2013-11-28 2018-01-19 国家电网公司 一种电力内外网交互中的敏感图像识别方法
JP6157395B2 (ja) * 2014-03-28 2017-07-05 株式会社Kddi総合研究所 リンク補完装置、リンク補完方法及びリンク補間プログラム
CN105207797A (zh) 2014-06-20 2015-12-30 中国电信股份有限公司 故障定位方法和装置
US9979644B2 (en) * 2014-07-13 2018-05-22 Cisco Technology, Inc. Linking to content using information centric networking
GB2530507A (en) * 2014-09-24 2016-03-30 Ibm Checking links
CA2972973A1 (en) 2015-01-09 2016-07-14 Ecorithm, Inc. Machine learning-based fault detection system
US11032176B2 (en) * 2015-01-14 2021-06-08 Hughes Network Systems, Llc Determining link conditions of a client LAN/WAN from measurement point to client devices and application servers of interest
WO2016115319A1 (en) 2015-01-15 2016-07-21 The University Of North Carolina At Chapel Hill Methods, systems, and computer readable media for generating and using a web page classification model

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102663062A (zh) * 2012-03-30 2012-09-12 奇智软件(北京)有限公司 一种处理搜索结果中无效链接的方法及装置
CN105022824A (zh) * 2015-07-21 2015-11-04 北京神州绿盟信息安全科技股份有限公司 无效链接的识别方法和装置
CN105975526A (zh) * 2016-04-29 2016-09-28 国家计算机网络与信息安全管理中心 一种url链接有效性的验证方法

Also Published As

Publication number Publication date
JP6689955B2 (ja) 2020-04-28
KR101904436B1 (ko) 2018-10-04
EP3381158A4 (en) 2019-03-20
KR20180050608A (ko) 2018-05-15
EP3381158B1 (en) 2021-03-10
RU2715802C1 (ru) 2020-03-03
US10628511B2 (en) 2020-04-21
US20190197077A1 (en) 2019-06-27
JP2019501429A (ja) 2019-01-17
US11361046B2 (en) 2022-06-14
US20200192964A1 (en) 2020-06-18
CN108207119A (zh) 2018-06-26
EP3381158A1 (en) 2018-10-03
WO2018072060A1 (en) 2018-04-26

Similar Documents

Publication Publication Date Title
CN108207119B (zh) 对损坏网络连接的基于机器学习的识别
US11449379B2 (en) Root cause and predictive analyses for technical issues of a computing environment
CN106202453B (zh) 一种多媒体资源推荐方法和装置
US8060497B1 (en) Framework for evaluating web search scoring functions
US11645515B2 (en) Automatically determining poisonous attacks on neural networks
US20150347923A1 (en) Error classification in a computing system
US20160307133A1 (en) Quality prediction
TW201737163A (zh) 問題預測方法及預測系統
US9906542B2 (en) Testing frequency control using a volatility score
US10769866B2 (en) Generating estimates of failure risk for a vehicular component
US10127506B2 (en) Determining users for limited product deployment based on review histories
WO2020096665A2 (en) System error detection
CN114722281B (zh) 基于用户画像及用户选课行为的培训课程配置方法、装置
US20240112229A1 (en) Facilitating responding to multiple product or service reviews associated with multiple sources
US10296924B2 (en) Document performance indicators based on referral context
CN115705255A (zh) 学习因果关系
US20170124085A1 (en) Website navigation path analysis
US11093855B1 (en) Crowd sourced training of an artificial intelligence system
CN115292187A (zh) 无编码的页面自动测试方法、装置、电子设备和介质
JP6875579B2 (ja) 破損ネットワーク接続の機械学習に基づく識別
JP6570501B2 (ja) 情報提供装置、情報提供方法、および情報提供プログラム
US20230237343A1 (en) Ranking data slices using measures of interest
US11556810B2 (en) Estimating feasibility and effort for a machine learning solution
CN115018557A (zh) 数据对象的处理方法、装置和服务器
CN112334871A (zh) 用于基于数字助理的应用的动作验证

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
GR01 Patent grant