CN109074751A - 用双推荐引擎实现内容提供的系统和方法 - Google Patents

用双推荐引擎实现内容提供的系统和方法 Download PDF

Info

Publication number
CN109074751A
CN109074751A CN201780029648.3A CN201780029648A CN109074751A CN 109074751 A CN109074751 A CN 109074751A CN 201780029648 A CN201780029648 A CN 201780029648A CN 109074751 A CN109074751 A CN 109074751A
Authority
CN
China
Prior art keywords
user
response
data
group
content
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.)
Withdrawn
Application number
CN201780029648.3A
Other languages
English (en)
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.)
Pearson Education Inc
Original Assignee
Pearson Education Inc
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
Priority claimed from US15/236,238 external-priority patent/US10614368B2/en
Application filed by Pearson Education Inc filed Critical Pearson Education Inc
Publication of CN109074751A publication Critical patent/CN109074751A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/322Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/335Filtering based on additional data, e.g. user or group profiles
    • G06F16/337Profile generation, learning or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/338Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/355Class or cluster creation or modification
    • 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/951Indexing; Web crawling techniques
    • 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/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/123Storage facilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/131Fragmentation of text files, e.g. creating reusable text-blocks; Linking to fragments, e.g. using XInclude; Namespaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/226Validation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0224Discounts or incentives, e.g. coupons or rebates based on user history
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0269Targeted advertisements based on user profile or attribute
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/20Education
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B5/00Electrically-operated educational appliances
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B7/00Electrically-operated teaching apparatus or devices working with questions and answers
    • G09B7/02Electrically-operated teaching apparatus or devices working with questions and answers of the type wherein the student is expected to construct an answer to the question which is presented or wherein the machine gives an answer to the question presented by a student
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • 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/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • 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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5051Service on demand, e.g. definition and deployment of services in real time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/74591Address table lookup; Address filtering using content-addressable memories [CAM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • 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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • 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/56Provisioning of proxy services
    • H04L67/567Integrating service provisioning from a plurality of service providers
    • 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/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • 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/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • 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/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • 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]
    • 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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/10Protocols in which an application is distributed across nodes in the network
    • 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/52Network services specially adapted for the location of the user terminal
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Game Theory and Decision Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • Computer Security & Cryptography (AREA)
  • Algebra (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Computational Mathematics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)

Abstract

本文公开了用第一推荐引擎和第二推荐引擎实现内容选择的系统和方法。所述系统可包括存储器,所述存储器包括内容库数据库和模型数据库。所述系统可包括具有第一网络接口和第一I/O子系统的用户设备。所述系统可包括一个或多个服务器,所述一个或多个服务器可包括分组选择系统和呈现系统。这些一个或多个服务器可:接收来自所述用户设备的响应数据;将所接收到的响应数据提供给第一推荐引擎;在所选的下一个节点为占位符节点时警示第二推荐引擎;检索与下一个节点内容的选择相关的至少一个统计模型;以及基于所述至少一个统计模型的输出选择下一个节点内容。

Description

用双推荐引擎实现内容提供的系统和方法
背景技术
计算机网络或数据网络是允许计算机交换数据的电信网络。在计算机网络中,网络计算设备沿网络链路(数据连接)彼此交换数据。节点之间的连接使用电缆介质或无线介质建立。最广为人知的计算机网络是互联网。
生成、路由和终止数据的网络计算机设备称为网络节点。节点可包括主机诸如个人计算机、电话、服务器以及网络硬件。当一个设备能够与另一个设备交换信息时,无论它们是否彼此具有直接连接,都可以说两个这样的设备是联网在一起的。
计算机网络在用于承载其信号的传输介质、用于组织网络流量的通信协议、网络的大小、拓扑和组织意图方面不同。在大多数情况下,除了直接处理传输介质的物理层之外,通信协议在其他更具体或更通用的通信协议上分层。
发明内容
本公开的一个方面涉及一种用第一推荐引擎和第二推荐引擎实现内容选择的系统。在一些实施方案中,该系统可包括存储器。该存储器可包括:内容库数据库和模型数据库。在一些实施方案中,内容库数据库可包括布置在内容网络中的多个节点。在一些实施方案中,内容网络中的节点经由多个边缘成对地连接。在一些实施方案中,内容网络中的一些节点与数据分组和防护条件相关联。在一些实施方案中,内容网络中的一些节点与占位符内容的数据库相关联。在一些实施方案中,模型数据库可包括与以下各项中的至少一者相关的多个模型:用户技能等级或数据分组难度等级,其中模型可为例如统计模型。该系统可包括用户设备。用户设备可包括能够经由通信网络交换数据的第一网络接口。用户设备可包括第一I/O子系统,该I/O子系统可经由用户界面将电信号转换为用户可解读的输出。该系统可包括一个或多个服务器。这些一个或多个服务器可包括分组选择系统和呈现系统。在一些实施方案中,一个或多个服务器可根据由一个或多个服务器执行的软件来控制。在一些实施方案中,该软件可控制服务器:接收来自用户设备的响应数据;将所接收到的响应数据提供给第一推荐引擎,并且其中第一推荐引擎可基于以下条件选择下一个节点:在内容网络中的当前位置、潜在的下一个节点、过去的响应数据以及与潜在的下一个节点相关联的一个或若干个防护条件。在一些实施方案中,处理器可被控制为:在所选的下一个节点包括占位符节点时警示第二推荐引擎,其中占位符节点与占位符内容的数据库相关联;检索与下一个节点内容的选择相关的至少一个模型;以及基于该至少一个模型的输出选择下一个节点内容。
在一些实施方案中,向第一推荐引擎提供所接收到的响应数据还包括选择下一个节点。在一些实施方案中,选择下一个节点包括:识别潜在的下一个节点;以及检索防护条件。在一些实施方案中,每个防护条件定义用于进入一个潜在的下一个节点的一个或若干个先决条件。
在一些实施方案中,识别潜在的下一个节点包括:识别用户在内容网络中的位置,其中内容网络中的位置处于原始节点处;识别从原始节点延伸的边缘;以及识别经由所识别的边缘连接到原始节点的非先决条件节点。在一些实施方案中,选择下一个节点还包括:识别与用户设备相关联的用户;以及从存储器检索用户历史。
在一些实施方案中,选择下一个节点还包括将用户历史应用到潜在的下一个节点的防护条件。在一些实施方案中,将用户历史应用到潜在的下一个节点的防护条件包括:(a)选择一个潜在的下一个节点;(b)识别与所选的潜在的下一个节点相关联的防护条件;(c)将防护条件与用户历史进行比较;以及(d)当防护条件与用户历史的比较指示防护条件得到满足时,将第一值与所选的一个潜在的下一个节点相关联。在一些实施方案中,将步骤(a)至(d)重复用于每个潜在的下一个节点。
在一些实施方案中,基于至少一个模型的输出选择下一个节点内容包括:识别与用户设备相关联的用户;检索用户历史;以及识别潜在的下一个节点内容。在一些实施方案中,基于至少一个模型的输出选择下一个节点内容包括:识别以下各项中的至少一者的一个或若干个特征:潜在的下一个节点内容或用户历史;提取所识别的一个或若干个特征;以及将一个或若干个特征中的一些或全部特征输入到所检索到的至少一个模型中。在一些实施方案中,基于至少一个模型的输出选择下一个节点内容包括基于一个或若干个特征中的一些或全部特征的输入用检索到的至少一个模型生成输出。
在一些实施方案中,一个或多个服务器被进一步配置为向用户设备提供所选的下一个节点内容。在一些实施方案中,向用户设备提供所选的下一个节点内容包括:生成包含所选的下一个节点内容的多个电信号;以及将电信号发送到用户设备。在一些实施方案中,第一推荐引擎被包含在呈现系统中,并且其中第二推荐引擎被包含在分组选择系统中。
本公开的一个方面涉及一种用第一推荐引擎和第二推荐引擎实现内容选择的方法。该方法包括:在一个或多个服务器处接收来自用户设备的响应数据,该一个或多个服务器包括分组选择系统和呈现系统;自动地将所接收到的响应数据提供给第一推荐引擎,其中第一推荐引擎可基于以下各项中的至少一者来选择下一个节点:在内容网络中的当前位置;潜在的下一个节点;过去的响应数据;与潜在的下一个节点相关联的一个或若干个防护条件;以及在所选的下一个节点为占位符节点时警示第二推荐引擎。在一些实施方案中,占位符节点与占位符内容的数据库相关联。该方法可包括:从模型数据库检索与下一个节点内容的选择相关的至少一个模型,该模型数据库包括与以下各项中的至少一者相关的多个模型:用户技能等级或数据分组难度等级;以及基于该至少一个模型的输出选择下一个节点内容。
在一些实施方案中,该方法可包括向用户设备提供所选的下一个节点内容。在一些实施方案中,向用户设备提供所选的下一个节点内容包括:生成包含或编码所选的下一个节点内容的多个电信号;以及将电信号发送到用户设备。在一些实施方案中,第一推荐引擎在呈现系统中,并且第二推荐引擎在分组选择系统中。
在一些实施方案中,基于至少一个模型的输出选择下一个节点内容包括:识别与用户设备相关联的用户;检索用户历史;以及识别潜在的下一个节点内容。在一些实施方案中,基于至少一个模型的输出选择下一个节点内容包括:识别以下各项中的至少一者的一个或若干个特征:潜在的下一个节点内容或用户历史;提取所识别的一个或若干个特征;以及将一个或若干个特征中的一些或全部特征输入到所检索到的至少一个模型中。
本公开的一个方面涉及实现混合内容提供的方法。该方法包括:接收用户识别信息,其中用户识别信息识别用户;确定用户在内容网络中的位置,该内容网络包括以顺序关系链接的多个节点;基于用户在内容网络中的位置来识别潜在的下一个节点;从潜在的下一个节点确定下一个节点;以及向用户提供下一个内容,其中当下一个节点不为占位符节点时,下一个内容直接链接到下一个节点,并且当下一个节点为占位符节点时,从与所确定的下一个节点相关联的占位符内容的数据库提供下一个内容。在一些实施方案中,节点中的一些或全部各自与防护条件相关联。在一些实施方案中,每个防护条件识别用于进入与该防护条件相关联的节点中的条件。
本公开的一个方面涉及用分布式呈现引擎实现内容提供的方法。该方法包括:在至少一个服务器中的呈现器模块处接收数据分组;从所接收到的数据分组提取分组元数据,其中分组元数据识别所接收到的数据分组的至少一个属性;将所接收到的数据分组的递送部分提供给定位在用户设备中的视图模块;从视图模块接收呈现器模块处的数据请求;检索与呈现器模块处的数据请求对应的第二数据分组;以及接收对所提供的所接收的数据分组的递送部分的响应。
本公开的一个方面涉及用于自动数据分组的方法。该方法包括:识别用户组群,其中用户组群包括多个用户共享共同属性;向用户组群中的用户提供数据分组;接收用户组群中的用户对所提供的数据分组的响应;将所接收到的响应中的每个转化为可观察对象,其中可观察对象包括所接收到的响应的表征;生成响应组群,该响应组群包括用户组群中的用户组,其中基于所接收到的响应的可观察对象的共性来生成响应组群;基于组群百分比与误解阈值的比较来识别误解,生成并向用户设备发送请求修改与误解相关联的至少一个数据分组的警示。
本公开的一个方面涉及用于自动触发靶向干预的方法。该方法包括:用至少一个服务器选择用户;在至少一个服务器处从存储器中的用户配置文件数据库接收与所识别的用户相关联的用户元数据;确定用户与潜在的误解相关联;检索指示是否存在与用户相关联的潜在误解的所选用户的元数据;基于误解阈值与指示是否存在与用户相关联的潜在误解的元数据之间的比较来确定未确认用户中的潜在误解;基于从用户接收的并且与用户配置文件数据库中的多个所提供的补充数据分组相关的响应来更新用户元数据;基于所更新的用户元数据确认所述误解的存在;以及自动地触发靶向干预。在一些实施方案中,可基于用户与链接误解的组群之间的关联来识别潜在的误解,其中组群可为具有由组群中用户所提供的一个或若干个响应生成的可观察对象的共同属性的用户组。在一些实施方案中,干预可包括与AI代理的交互。AI代理经由通信网络与用户设备通信链接。
根据下文提供的详细说明,本发明可应用的其他领域将显而易见。应当理解,在示出各种实施方案的同时给出的详细说明和具体示例旨在仅仅用于说明目的,而不意在必然地限制本发明的范围。
附图说明
图1为示出内容分发网络的示例的框图。
图2为示出内容分发网络内的计算机服务器和计算环境的框图。
图3为示出内容分发网络内的一个或多个数据存储库服务器的实施方案的框图。
图4为示出内容分发网络内的一个或多个内容管理服务器的实施方案的框图。
图5为示出内容分发网络内的专用计算机设备的物理部件和逻辑部件的框图。
图6是示出通信网络的一个实施方案的框图。
图7是示出用户设备和监管人设备通信的一个实施方案的框图。
图8是计算堆栈的一个实施方案的示意图。
图9A是内容分发网络内模块的通信和处理流程的实施方案的示意图。
图9B是内容分发网络内模块的通信和处理流程的另一实施方案的示意图。
图9C是内容分发网络内模块的通信和处理流程的另外的实施方案的示意图。
图9D是呈现过程的一个实施方案的示意图。
图10A是示出数据管理过程的一个实施方案的流程图。
图10B是示出用于评估响应的过程的一个实施方案的流程图。
图11是内容网络的一个实施方案的示意图。
图12是示出用两个推荐引擎向用户提供内容的过程的一个实施方案的流程图。
图13是示出用于识别下一个节点的过程的一个实施方案的流程图。
图14是示出用于选择下一个节点内容的过程的一个实施方案的流程图。
图15是示出基于对是否存在占位符节点的确定来选择下一个节点内容的过程的一个实施方案的流程图。
图16是示出用于两部分呈现引擎的操作的过程的一个实施方案的流程图。
图17是示出用于自动识别和纠正误解的过程的一个实施方案的流程图。
图18是示出用于识别用户误解的过程的一个实施方案的流程图。
图19是示出用于自动触发干预的过程的一个实施方案的流程图。
在附图中,类似的部件和/或特征可以具有相同的附图标记。另外,可通过在附图标记后加上连接号和用于区分类似部件的第二标记来对相同类型的各种部件加以区分。只要在说明书中使用了第一附图标记,其描述即适用于具有相同第一附图标记的任一类似部件,而不考虑第二附图标记。
具体实施方式
下文的描述仅提供例示性实施方案,而非旨在限制本发明的范围、适用性或架构。相反,下文对示例性实施方案的描述将为本领域中的技术人员提供实施优选示例性实施方案的操作性描述。应当理解,在不脱离所附权利要求中陈述的实质和范围的情况下,可对元件的功能和布置做出各种改变。
现在参考图1,其示出了一个框图,该框图示出了实现并支持本文所述的某些实施方案和特征的内容分发网络(CDN)100的各种部件。在一些实施方案中,内容分发网络100可包括一个或多个物理部件和/或一个或若干个虚拟部件诸如一个或若干个云计算部件。在一些实施方案中,内容分发网络100可包括物理和云计算部件的混合。
内容分发网络100可包括一个或多个内容管理服务器102。如下文更详细讨论的,内容管理服务器102可以是任何所需类型的服务器,包括例如机架式服务器、塔式服务器、微型服务器、刀片服务器、迷你机架式服务器、移动服务器、超级密集服务器、超级服务器等,并且可包括各种硬件部件,例如母板、处理单元、存储器系统、硬盘驱动器、网络接口、电源等。内容管理服务器102可包括一个或更多个服务器群、集群或任何其他适当的布置和/或计算机服务器的组合。内容管理服务器102可根据位于服务器102的存储器子系统中的所存储的指令来操作,并且可运行操作系统,包括任何市售服务器操作系统和/或本文所讨论的任何其他操作系统。
内容分发网络100可包括一个或多个数据存储库服务器104,诸如数据库服务器和基于文件的存储系统。数据库服务器104可访问可存储在各种硬件部件上的数据。这些硬件部件可包括例如形成第0层存储的部件、形成第1层存储的部件、形成第2层存储的部件和/或形成任何其他存储层的部件。在一些实施方案中,第0层存储是指数据库服务器104中最快的存储层,具体地讲,第0层存储为非RAM或非高速缓存存储器的最快的存储。在一些实施方案中,第0层存储器可实施在固态存储器诸如固态驱动器(SSD)和/或闪存存储器中。
在一些实施方案中,第1层存储是指存储器管理系统中作为一个或若干个较高性能的系统的存储,它比第0层存储器相对较慢,并且比其他存储器层相对较快。第1层存储器可以是一个或若干个硬盘,其可以是例如高性能硬盘。这些硬盘可例如通过一个或若干个光纤通道物理地或通信地或者物理地并且通信地连接。在一些实施方案中,一个或若干个磁盘可被布置到磁盘存储系统中,具体地讲,可被布置到企业级磁盘存储系统中。磁盘存储系统可包括任何所需级别的冗余来保护其中存储的数据,并且在一个实施方案中,磁盘存储系统可利用产生系统资源的均匀分配和数据均衡分布的并行性的网格体系结构来实现。
在一些实施方案中,与第1层存储和第2层存储相比,第2层存储是指在存储器管理系统中包括一个或若干个相对较低性能的系统的存储。因此,第2层存储器比第1层存储器和第0层存储器相对较慢。第2层存储器可包括一个或若干个SATA驱动器或一个或若干个NL-SATA驱动器。
在一些实施方案中,数据库服务器104的一个或若干个硬件和/或软件部件可被布置到一个或若干个存储区域网络(SAN),该一个或若干个存储区域网络可为一个或若干个专用网络,提供对数据存储库的访问,具体地讲提供对统一的块级数据存储库的访问。SAN通常具有其自身的存储设备网络,通常不能由其他设备通过局域网(LAN)进行访问。SAN允许以这样的方式访问这些设备,使得这些设备看起来在本地附接到了用户设备。
数据存储库104可包括与内容分发网络100的功能相关的存储的数据。下文参考图3描述可在内容分发网络100的某些实施方案中保持的数据存储库104的例示性示例。在一些实施方案中,多个数据存储库可驻留在单个服务器104上,使用服务器104的相同存储部件或使用不同的物理存储部件来确保数据安全性和数据存储库之间的完整性。在其他实施方案中,每个数据存储库可具有独立的专用数据存储库服务器104。
内容分发网络100还可包括一个或多个用户设备106和/或监管人设备110。用户设备106和监管人设备110可显示经由内容分发网络100接收的内容,并且可支持用户与内容的各种类型的交互。用户设备106和监管人设备110可包括移动设备,诸如智能电话、平板电脑、个人数字助理和可穿戴计算设备。此类移动设备可运行各种移动操作系统,并且针对互联网、电子邮件、短消息服务(SMS)、移动射频识别(M-RFID)和/或其他通信协议可被启用。其他用户设备106和监管人设备110可以是通用个人计算机或专用计算设备,包括例如个人计算机、膝上型计算机、工作站计算机、投影设备和交互式房间显示系统。此外,用户设备106和监管人设备110可以是能够通过一个或多个网络120进行通信的任何其他电子设备,诸如瘦客户端计算机、启用互联网的游戏系统、商用或家用电器和/或个人消息传递设备。
在内容分发网络100的不同情况中,用户设备106和监管人设备110可对应于不同类型的专用设备,例如教育网络中的学生设备和教师设备、公司网络中的雇员设备和演示设备、游戏网络中不同的游戏设备等。在一些实施方案中,用户设备106和监管人设备110可在相同的物理位置107(诸如,教室或会议室)操作。在这种情况下,该设备可包含支持与其他附近的设备(诸如,无线收发器和无线通信接口、以太网插座或其他局域网(LAN)接口等)的直接通信的部件。在其他具体实施中,用户设备106和监管人设备110不需要在相同位置107处使用,而是可在相远离的地理位置使用,其中每个用户设备106和监管人设备110可使用安全特征和/或专用硬件(例如,硬件加速的SSL和HTTPS、WS-Security、防火墙等),与内容管理服务器102和/或其他远程用户设备106通信。此外,不同的用户设备106和监管人设备110可被分配不同的指定角色,诸如演示者设备、教师设备、管理员设备等,并且在这种情况下,不同的设备可设置有附加的硬件和/或软件部件来提供内容并支持其他设备不可用的用户功能。
内容分发网络100还可包括隐私服务器108,所述隐私服务器在使用其他服务器上托管的应用程序或服务的同时在隐私服务器108处保持私人用户信息。例如,即使用户正在访问位于管辖区域之外的服务器(例如,内容管理服务器102)上的应用程序,隐私服务器108还可用于保持在一个管辖区域内的用户的私人数据。在这种情况下,隐私服务器108可拦截用户设备106或监管人设备110与包括用户私人信息的其他设备之间的通信。隐私服务器108可创建不公开私人信息的令牌或标识符,并且可在与其他服务器和系统通信时使用所述令牌或标识符,而不是使用用户的私人信息。
如图1所示,内容管理服务器102可与一个或多个附加服务器(诸如,内容服务器112、用户数据服务器112和/或管理员服务器116)通信。这些服务器中的每一者可包括与一个或多个内容管理服务器102相同的物理部件和逻辑部件中的一些或全部,并且在某些情况下,这些服务器112-116的硬件和软件部件可并入一个或多个内容管理服务器102,而不是被实现为独立的计算机服务器。
内容服务器112可包括硬件和软件部件来生成、存储和保持内容资源,以分发给网络100中的用户设备106和其他设备。例如,在用于专业培训和教育目的的内容分发网络100中,内容服务器112可包括培训材料、展示、计划、教学大纲、评论、评估、互动节目和模拟、课程模型、课程大纲,以及对应于不同材料和/或不同类型的用户设备106的各种培训界面的数据存储库。在用于媒体分发、互动游戏等的内容分发网络100中,内容服务器112可包括媒体内容文件,诸如音乐、电影、电视节目、游戏和广告。
用户数据服务器114可包括存储和处理与每个用户的活动和内容分发网络100的使用相关的多个用户的数据的硬件和软件部件。例如,内容管理服务器102可记录和跟踪每个用户的系统使用,包括他或她的用户设备106、所访问的内容资源,以及与其他用户设备106的交互。该数据可由用户数据服务器114存储和处理,以支持用户跟踪和分析特征。例如,在专业的培训和教育环境中,用户数据服务器114可存储和分析每个用户所观看的培训材料、所参加的展示、完成的课程、交互、评估结果等。用户数据服务器114还可包括用于用户生成的材料(诸如,由用户完成的评估和测试,以及由用户准备的文档和作业)的存储库。在媒体分发和互动游戏的情况中,用户数据服务器114可存储和处理多个用户的资源访问数据(例如,访问的内容标题、访问时间、数据使用量、游戏历史、用户设备和设备类型等)。
管理员服务器116可包括用于在内容管理服务器102和内容分发网络100内的其他部件处发起各种管理功能的硬件和软件部件。例如,管理员服务器116可监视内容分发网络100中的各种服务器、数据存储库和/或用户设备106的设备状态和性能。当需要时,管理员服务器116可从网络100添加或删除设备,并且执行设备维护,诸如向网络100中的设备提供软件更新。管理员服务器116上的各种管理工具可允许授权用户设置对各种内容资源的用户访问权限,监视用户和设备106的资源使用,并且执行分析并生成关于特定网络用户和/或设备的报告(例如,资源使用跟踪报告、培训评估等)。
内容分发网络100可包括一个或多个通信网络120。虽然在图1中仅识别单个网络120,但是内容分发网络100可包括图1中所示计算机服务器和设备中的任何一者和/或本文所述其他设备之间的任何数量的不同通信网络。通信网络120可启用各种计算设备、服务器和内容分发网络100的其他部件之间的通信。如下所述,内容分发网络100的各种具体实施可采用不同类型的网络120,例如计算机网络、电信网络、无线网络和/或这些和/或其他网络的任意组合。
内容分发网络100可包括:一个或若干个导航系统或特征,包括例如全球定位系统(“GPS”)、GALILEO等;或者位置系统或特征,包括例如可以经由例如三角测量确定内容分发网络100的一个或若干个部件的位置的一个或若干个收发器。所有这些均描述为导航系统122。
在一些实施方案中,导航系统122可以包括一个或若干个特征,这些特征可与内容分发网络100的一个或若干个部件通信,包括例如与一个或若干个用户设备106和/或与一个或若干个监管人设备110通信。在一些实施方案中,该通信可包括从导航系统122传输信号,该信号由内容分发网络100的一个或若干个部件接收,并且可以用于确定内容分发网络100的一个或若干个部件的位置。
参考图2,示出了示例性分布式计算环境200,其包括计算机服务器202、四个客户端计算设备206,以及可实现本文所述某些实施方案和特征的其他部件。在一些实施方案中,服务器202可对应于以上在图1中讨论的内容管理服务器102,并且客户端计算设备206可对应于用户设备106。然而,图2中所示计算环境200可对应于被配置为实现客户端-服务器模型或其他分布式计算体系结构的设备和服务器的任何其他组合。
客户端设备206可被配置为通过一个或多个网络220接收和执行客户端应用程序。此类客户端应用程序可以是基于web浏览器的应用程序和/或独立式软件应用程序,诸如移动设备应用程序。服务器202可经由一个或多个通信网络220与客户端设备206通信连接。客户端设备206可从服务器202或从其他应用程序提供商(例如,公共或私人应用商店)接收客户端应用。服务器202可被配置为运行一个或多个服务器软件应用程序或服务,例如基于web或基于云端的服务,以支持内容分发和与客户端设备206的交互。操作客户端设备206的用户可依次利用一个或多个客户端应用程序(例如,虚拟客户端应用程序)与服务器202进行交互,以利用由这些部件提供的服务。
各种不同的子系统和/或部件204可在服务器202上实现。操作客户端设备206的用户可发起一个或多个客户端应用程序,以使用由这些子系统和部件提供的服务。服务器202和客户端设备206内的子系统和部件可在硬件、固件、软件或其组合中实现。在不同的分布式计算系统200和内容分发网络100中,各种不同的系统配置是可能的。因此,图2中所示的实施方案是分布式计算系统的一个示例,并且不旨在进行限制。
虽然示出了具有四个客户端计算设备206的示例性计算环境200,但是可支持任何数量的客户端计算设备。其他设备诸如专用传感器设备等可与客户端设备206和/或服务器202进行交互。
如图2所示,各种安全和集成部件208可用于通过一个或多个通信网络220发送和管理服务器202和用户设备206之间的通信。安全和集成部件208可包括独立的服务器,诸如web服务器和/或认证服务器,和/或专用网络部件,诸如防火墙、路由器、网关、负载均衡器等。在某些情况下,安全和集成部件208可对应于在与服务器202相同的物理位置在相同实体的控制下操作的一组专用硬件和/或软件。例如,部件208可包括数据中心或云端基础结构中的一个或多个专用web服务器和网络硬件。在其他示例中,安全和集成部件208可对应于可在独立的物理位置和/或由独立的实体操作的独立的硬件和软件部件。
安全和集成部件208可实现用于数据传输和存储的各种安全特征,诸如认证用户和限制对未知或未授权用户的访问。在各种具体实施中,安全和集成部件208可提供例如基于文件的集成模式或用于在内容分发网络100中的各种设备之间传输数据的基于服务的集成方案。安全和集成部件208还可使用安全数据传输协议和/或数据传输加密,例如文件传输协议(FTP)、安全文件传输协议(SFTP)和/或良好隐私(PGP)加密。
在一些实施方案中,一个或多个web服务可在安全和集成部件208内和/或在内容分发网络100内的其他地方实现。此类服务包括跨域和/或跨平台的web服务和/或根据Web服务互操作性(WS-I)指南设计的web服务,可根据各种web服务标准诸如RESTful web服务(即,基于表述性状态转移(REST)架构风格和约束的服务)针对企业应用而开发。一些web服务可使用安全套接字层(SSL)或传输层安全(TLS)协议来提供服务器202和用户设备206之间的安全连接。SSL或TLS可使用HTTP或HTTPS来提供认证和保密性。在其他示例中,可使用具有用于认证的OAuth开放标准的REST over HTTPS,或使用通过XML加密提供安全SOAP消息的WS-Security标准来实现web服务。在其他示例中,安全和集成部件208可包括用于提供安全web服务的专用硬件。例如,安全和集成部件208可包括具有内置功能诸如硬件加速的SSL和HTTPS、WS-Security和防火墙的安全网络设备。此类专用硬件可安装和配置在任何web服务器的前面,使得任何外部设备可与专用硬件直接通信。
一个或多个通信网络220可以是本领域技术人员所熟悉的任何类型的网络,其可使用各种商业上可用的协议中的任一种来支持数据通信,包括但不限于TCP/IP(传输控制协议/互联网协议)、SNA(系统网络体系结构)、IPX(互联网分组交换协议)、安全套接字层(SSL)或传输层安全(TLS)协议、超文本传输协议(HTTP)和安全超文本传输协议(HTTPS)、近场通信(NFC)等。仅仅作为示例,网络220可以是局域网(LAN)、诸如基于以太网、令牌环等的网络。一个或多个网络220还可以是广域网,诸如互联网。网络220可包括电信网络诸如公共交换电话网络(PSTN),或虚拟网络诸如内联网或外联网。红外和无线网络(例如,使用电气和电子工程师协会(IEEE)802.11协议族或其他无线协议)也可包括在网络220中。
计算环境200还可包括一个或多个数据存储库210和/或后端服务器212。在某些示例中,数据存储库210可对应于以上在图1中讨论的数据存储库服务器104,并且后端服务器212可对应于各种后端服务器112-116。数据存储库210和服务器212可驻留在相同的数据中心中,或者可在距服务器202的远程位置处操作。在某些情况下,一个或多个数据存储库210可驻留在服务器202内的非暂态存储介质上。其他数据存储库210和后端服务器212可远离服务器202,并且被配置为经由一个或多个网络220与服务器202通信。在某些实施方案中,数据存储库210和后端服务器212可驻留在存储区域网络(SAN)中,或者可使用存储即服务(STaaS)架构模型。
参考图3,其示出了对应于以上在图1中讨论的内容分发网络100的数据存储库服务器104的一组示例性数据存储库和/或数据存储库服务器。一个或多个个人数据存储库301-311可驻留在单个实体控制下的单个计算机服务器104(或单个服务器群或集群)上的存储器中,或者可驻留在由不同实体操作的独立服务器上和/或远程位置处。在一些实施方案中,数据存储库301-311可由内容管理服务器102和/或网络100内的其他设备和服务器(例如,用户设备106、监管人设备110、管理员服务器116等)访问。可基于尝试与数据存储库交互的过程、用户凭据和/或设备来限制或拒绝对数据存储库301-311中的一个或多个的访问。
以下段落描述了可在内容分发网络100的一些实施方案中实现的特定数据存储库的示例。应当理解,数据存储库301-311的以下描述,包括其功能和其中存储的数据类型,是说明性的而非限制性的。数据存储库服务器体系结构、设计以及特定数据存储库301-311的执行可取决于内容分发网络100的情况、大小和功能要求。例如,在用于专业培训和教育目的的内容分发系统100中,可在一个或多个数据存储库服务器104中实现独立数据库或基于文件的存储系统,以存储学员和/或学生数据、培训师和/或教授数据、培训模块数据和内容描述、培训结果、评估数据等。相反,在用于从内容提供方到订阅户的媒体分发的内容分发系统100中,可在一个或多个数据存储库服务器104中实现独立数据存储库,以存储可用内容标题和描述、内容标题使用统计、订阅者配置文件、账户数据、支付数据、网络使用统计信息等。
用户配置文件数据存储库301(在本文中也称为用户配置文件数据库301)可包括与内容分发网络100内的最终用户相关的信息。该信息可包括用户特征,诸如用户名称、访问凭据(例如,登录名和密码)、用户偏好以及与内容分发网络100内的任何先前用户交互相关的信息(例如,所请求的内容、所发布的内容、已完成的内容模块、培训得分或评估、其他相关用户等)。在一些实施方案中,该信息可涉及一个或若干个个人最终用户诸如一个或若干个学生、教师、管理员等,并且在一些实施方案中,该信息可涉及一个或若干个机构最终用户,诸如一个或若干个学校、学校群组诸如一个或若干个学区、一个或若干个学院、一个或若干个大学、一个或若干个培训提供方等。在一些实施方案中,该信息可识别一个或若干个组中的一个或若干个用户成员资格,例如,学生在大学、学校、程序、年级、课程、班级等的成员资格。
用户配置文件数据库301可包括与用户的状态、位置等相关的信息。该信息可识别例如用户正在使用的设备、设备的位置等。在一些实施方案中,该信息可基于任何位置检测技术包括例如导航系统122等来生成。
与用户状态有关的信息可以识别例如登录状态信息,该登录状态信息可指示用户当前是否登录到内容分发网络100和/或登录是否活动。在一些实施方案中,与用户状态有关的信息可识别用户当前是否正在访问内容和/或参与内容分发网络100的活动。
在一些实施方案中,关于用户状态的信息可识别例如用户与内容分发网络100交互的一个或若干个属性和/或由内容分发网络100分发的内容。这可包括识别用户与内容分发网络100的交互的数据、用户通过内容分发网络100消费的内容等。在一些实施方案中,这可包括识别通过内容分发网络100访问的信息的类型和/或用户经由内容分发网络100执行的活动类型的数据,自用户上次访问内容和/或参与来自内容分发网络100的活动以来经过的时间等。在一些实施方案中,该信息可涉及包括数据、内容和/或活动的聚合的内容程序,并且可识别例如通过内容程序的进度,或者通过形成内容程序的数据、内容和/或活动的聚合的进度。在一些实施方案中,该信息可以跟踪例如自从参与和/或完成一种或若干种类型的活动以来的时间量、自从与一个或若干个监管人和/或监管人设备110通信以来的时间量等。
在该一个或若干个最终用户是个人并且具体地讲是学生的一些实施方案中,用户配置文件数据库301可还包括与这些学生的学术和/或教育经历相关的信息。该信息可识别学生已发起、已完成和/或已部分完成的一个或若干个学习课程,以及在这些学习课程中得到的成绩。在一些实施方案中,学生的学术和/或教育经历可还包括识别学生在一个或若干个测试、测验和/或作业上的表现的信息。在一些实施方案中,该信息可存储在不是内容分发网络100中最快的存储器的一层存储器中。
用户配置文件数据库301可包括与一个或若干个学生学习偏好相关的信息。例如,在一些实施方案中,用户(在本文中也称为学生或学生用户)可具有一个或若干个偏爱的学习风格、一个或若干个最有效的学习风格和/或诸如此类。在一些实施方案中,学生的学习风格可以是描述学生学得最好的方式或学生偏爱的学习方式的任何学习风格。在一个实施方案中,这些学习风格可包括例如将学生识别为听觉型学习者、视觉型学习者和/或触觉型学习者。在一些实施方案中,识别一个或若干个学生学习风格的数据可包括基于学生的教育经历识别学习风格的数据,诸如当学生在作业上和/或在有利于听觉型学习者的课程中已得到较高的成绩和/或分数时,将该学生识别为听觉型学习者。在一些实施方案中,该信息可存储在不是内容分发网络100中最快的存储器的一层存储器中。
在一些实施方案中,用户配置文件数据存储库301还可包括识别一个或多个用户技能等级的信息。在一些实施方案中,这些一个或若干个用户技能等级可识别基于用户与内容分发网络100交互的过往表现确定的技能等级,并且在一些实施方案中,这些一个或若干个用户技能等级可识别基于用户与内容分发网络100交互的过往表现和一个或若干个预测模型确定的预测技能等级。
用户配置文件数据库301可还包括与负责组织、呈现和/或管理向学生的信息呈现的一个或若干个教师和/或指导员相关的信息。在一些实施方案中,用户配置文件数据库301可包括识别教师已教授课程和/或学科的信息、识别教师当前教授的课程和/或学科的数据和/或识别老师将教授的课程和/或学科的数据。在一些实施方案中,其中可包括与一个或若干个教师的一个或若干个教学风格相关的信息。在一些实施方案中,用户配置文件数据库301可还包括指示教师收到的过去的评估和/或评估报告的信息。在一些实施方案中,用户配置文件数据库301可还包括与教师收到的改善建议、教师得到的培训、教师接受的继续教育和/或诸如此类相关的信息。在一些实施方案中,该信息可存储在不是内容分发网络100中的最快存储器的一层存储器中。
账户数据存储库302(在本文中也称为账户数据库302)可生成并存储内容分发网络100内的各种角色中的不同用户的账户数据。例如,可在账户数据存储库302中针对个人最终用户、监管人、管理员用户和实体诸如公司或教育机构创建账户。账户数据可包括账户类型、当前账户状态、账户特征,以及与账户相关联的任何参数、限制、制约。
内容库数据存储库303(在本文中也称为内容库数据库303)可包括描述经由内容分发网络100可用的个人内容项(或内容资源或数据分组)的信息。在一些实施方案中,内容库数据库303中的这些数据分组可被链接以形成对象网络。在一些实施方案中,这些数据分组可根据一个或若干个顺序关系链接在对象网络中,在一些实施方案中,该一个或若干个顺序关系可为可例如识别数据对象的相对分级结构和/或难度的先决条件关系。在一些实施方案中,该数据对象的层级可由内容分发网络100根据用户对对象网络的体验生成,并且在一些实施方案中,该数据对象的层级可基于一个或若干个现有和/或外部层级诸如提纲、内容表等生成。例如,在一些实施方案中,对象网络可对应于提纲,使得提纲的内容实施在对象网络中。
在一些实施方案中,内容库数据存储库303可包括提纲、日程等。在一些实施方案中,提纲或日程可以识别与用户相关的一个或若干个任务和/或事件。在一些实施方案中,例如,当用户是某个组诸如部门或班级的成员时,与用户相关的这些任务和/或事件可以识别一个或若干个分配、测验、考试等。
在一些实施方案中,库数据存储库303可包括与存储在内容服务器112中的内容资源相关联的元数据、属性和其他特征。此类数据可识别相关联的内容资源的一个或多个方面或内容属性,例如内容资源的主题事项、访问级别或技能等级,内容资源的许可证属性(例如,对可授权使用和/或内容资源分发的任何限制和/或制约)、内容资源的价格属性(例如,用于确定针对内容资源的使用或分发的支付金额的价格和/或价格结构)、内容资源的评级属性(例如,指示内容资源的评估或有效性的数据)等。在一些实施方案中,库数据存储库303可被配置为允许更新内容元数据或属性,并允许添加和/或移除与内容资源相关的信息。例如,内容关系可被实现为图形结构,其可存储在库数据存储库303中或存储在附加存储器中,以供选择算法与其他元数据一起使用。
在一些实施方案中,内容库数据存储库303可包含用于评估从用户接收的响应的信息。在一些实施方案中,例如,用户可从内容分发网络100接收内容,并且可在接收到内容之后提供对所接收内容的响应。例如,在一些实施方案中,接收的内容可包括一个或多个问题、提示等,并且对所接收的内容的响应可包括对这些一个或多个问题、提示等的回答。在一些实施方案中,来自内容库数据存储库303的信息(这里称为“比较数据”)可用于确定响应是否是正确的和/或期望的响应。
在一些实施方案中,内容库数据库303和/或用户配置文件数据库301可包括聚合网络,这里也称为内容网络或内容聚合网络。聚合网络可包括可通过例如以下方式链接在一起的多个内容聚合:由普通用户创建;与共同主题、话题、技能等的关系;从一组共同源材料诸如源数据分组创建;等。在一些实施方案中,内容聚合可包括内容的分组,所述内容包括可以例如闪存卡的形式提供给用户的呈现部分以及提取部分,该提取部分可包括对呈现部分的期望响应诸如对闪存卡的应答。在一些实施方案中,一个或若干个内容聚合可以由内容分发网络100生成,并且可以与一个或若干个数据分组相关,所述一个或若干个数据分组可例如在对象网络中组织。在一些实施方案中,该一个或若干个内容聚合可分别从存储在一个或若干个数据分组中的内容创建。
在一些实施方案中,位于内容库数据库303和/或用户配置文件数据库301中的内容聚合可与这些内容聚合的用户创建者相关联。在一些实施方案中,对内容聚合的访问可基于例如用户是否创建内容聚合而变化。在一些实施方案中,内容库数据库303和/或用户配置文件数据库301可包括与特定用户相关联的内容聚合的数据库,并且在一些实施方案中,内容库数据库303和/或用户配置文件数据库301可包括每个分别与特定用户相关联的多个内容聚合的数据库。在一些实施方案中,这些内容聚合的数据库可包括由其特定用户创建的内容聚合,并且在一些实施方案中,这些内容聚合的数据库还可包括由特定用户和/或该特定用户的监管人选择包括在其中的内容聚合。在一些实施方案中,这些内容聚合可以与对象网络中的数据分组类似的层级关系布置和/或链接,和/或链接到对象网络或与对象网络中的数据分组相关联的任务或技能,或者提纲或日程。
在一些实施方案中,内容聚合网络和形成内容聚合网络的内容聚合可根据对象网络和/或对象网络中实施的层级关系来组织。在一些实施方案中,内容聚合网络和/或形成内容聚合网络的内容聚合可根据提纲、日程等中识别的一个或多个任务来组织。
定价数据存储库304可包括用于确定用于提供对内容分发网络100和/或网络100内的单独内容资源的访问的支付金额的定价信息和/或定价结构。在某些情况下,可基于用户对内容分发网络100的访问(例如,基于时间的订阅费或基于网络使用的定价)来确定定价。在其他情况下,定价可与特定内容资源相关。某些内容资源可具有相关联的定价信息,而其他定价确定可基于所访问的资源、用户的配置文件和/或账户以及期望的访问级别(例如,访问持续时间、网络速度等)。另外,定价数据存储库304可包括与内容资源组的编译定价相关的信息,诸如组价格和/或资源分组的价格结构。
许可证数据存储库305可包括与内容分发网络100内的内容资源的许可证和/或许可相关的信息。例如,许可证数据存储库305可识别内容服务器112中的个人内容资源和/或内容资源的编译的许可证和许可条款,内容资源的版权所有者和/或公共或大规模版权所有者信息,诸如内容服务器112中未包括的内容的版权所有者的联系信息。
内容访问数据存储库306可包括内容分发网络100的访问权限和安全信息以及特定内容资源。例如,内容访问数据存储库306可包括可在用户尝试登录网络100期间验证的登录信息(例如,用户标识符、登录名、密码等)。内容访问数据存储库306还可用于存储所分配的用户角色和/或用户访问级别。例如,用户的访问级别可对应于所述多组内容资源和/或用户被允许访问的客户端或服务器应用程序。可基于订阅级别、培训计划、课程/成绩等级等来允许或拒绝某些用户对某些应用程序和资源的访问。某些用户可具有对一个或多个终端用户的监管访问,允许监管人访问终端用户的内容、活动、评估等的全部或部分。此外,某些用户可对内容管理网络100中的一些用户和/或一些应用程序具有管理访问,允许此类用户添加和删除用户账户、修改用户访问权限、对软件和服务器执行维护更新等。
源数据存储库307可包括与经由内容分发网络可用的内容资源的源相关的信息。例如,源数据存储库307可识别内容资源的作者和发起设备、源自相同作者或发起设备的先前数据块和/或数据组等。
评估数据存储库308可包括用于指导用户评估的信息和内容管理网络100中的内容资源。在一些实施方案中,评估数据存储库308可包含例如用于评估用户(例如,学员/学生、游戏用户、媒体内容消费者等)和/或用于评估网络100中的内容资源的分析标准和分析指南。评估数据存储库308还可包括与评估处理任务相关的信息,例如,对已收到某些内容资源或已访问某些应用程序的用户和用户设备106的识别,内容资源、用户或应用程序等的评估状态或评估历史。评估标准可存储在评估数据存储库308中,包括用于评估内容、用户或应用程序的具有一个或若干个电子细则或评分指南的形式的数据和/或指令。评估数据存储库308还可包括针对用户、内容和应用程序的过去的评估和/或评估分析,包括相对排名、特性、解释等。
模型数据存储库309(在本文中也称为模型数据库309)可存储与一个或若干个预测模型(其中预测模型可为例如统计模型)相关的信息。在一些实施方案中,这些可包括一个或若干个证据模型、风险模型、技能模型等。在一些实施方案中,证据模型可以是基于数学的统计模型。证据模型可以基于例如项目响应理论(IRT)、贝叶斯网络(BayesianNetwork,Bayes net)、性能因子分析(PFA)等。在一些实施方案中,证据模型可以是对用户和/或对一个或若干个内容项可定制的。具体地讲,可将与用户和/或一个或若干个内容项相关的一个或若干个输入插入到证据模型中。这些输入可以包括例如用户技能等级的一个或若干个度量、内容项难度和/或技能等级的一个或若干个度量等。然后可使用定制的证据模型预测用户对一个或若干个内容项提供期望响应或非期望响应的可能性。
在一些实施方案中,风险模型可包括可用于计算一个或若干个模型函数值的一个或若干个模型。在一些实施方案中,这些一个或若干个模型函数值可以用于计算风险概率,该风险概率可表征用户的风险诸如学生用户未能实现期望的结果,诸如未能正确响应于一个或多个数据分组、未能实现期望的程序完成等级(例如,在预定时间段内)、未能实现期望的学习结果等。在一些实施方案中,风险概率可识别学生用户未能完成程序的60%的风险。
在一些实施方案中,这些模型可包括多个模型函数,包括例如第一模型函数、第二模型函数、第三模型函数和第四模型函数。在一些实施方案中,一些或全部模型功能可与程序的一部分例如程序的完成阶段和/或完成状态相关联。例如,在一个实施方案中,第一模型函数可与第一完成状态相关联,第二模型函数可与第二完成状态相关联,第三模型函数可与第三完成状态相关联,并且第四模型函数可与第四完成状态相关联。在一些实施方案中,可选择这些完成状态,使得这些完成状态的一些或全部小于程序的期望完成等级。具体地讲,在一些实施方案中,这些完成状态可以被选择为全部都小于程序的60%完成,更具体地,在一些实施方案中,第一完成状态可以是程序的20%完成,第二完成状态可以是程序的30%完成,第三完成状态可以是程序的40%完成,第四完成状态可以是程序的50%完成。类似地,任何期望数量的模型函数可与任何期望的完成状态数相关联。
在一些实施方案中,可基于学生用户通过程序的进度从多个模型函数中选择模型函数。在一些实施方案中,可将学生用户的进度与一个或若干个状态触发阈值进行比较,其中每个状态触发阈值可以与一个或多个模型函数相关联。如果状态触发中的一个由学生用户的进度触发,则可选择对应的一个或若干个模型函数。
模型函数可包括多种类型的模型和/或函数。在一些实施方案中,每个模型函数输出可用于计算风险概率的函数值。可通过对指示一个或若干个用户属性和/或用户参数(这里也称为程序状态参数)的一个或若干个值执行一个或若干个数学运算来计算该函数值。在一些实施方案中,每个模型函数可使用相同的程序状态参数,并且在一些实施方案中,模型函数可使用不同的程序状态参数。在一些实施方案中,当模型函数中的至少一个使用其他模型函数不使用的至少一个程序状态参数时,模型函数使用不同的程序状态参数。
在一些实施方案中,技能模型可包括识别一个或若干个学生的预测技能等级的统计模型。在一些实施方案中,该模型可识别学生的单个技能等级和/或学生的可能的技能等级的范围。在一些实施方案中,该统计模型可识别学生用户的技能等级和与该技能等级相关联的错误值或错误范围。在一些实施方案中,错误值可与基于置信等级确定的置信区间相关联。因此,在一些实施方案中,随着与内容分发网络的学生交互的数量增加,置信等级可以增加,并且错误值可以减小,使得由错误值识别的关于预测的技能等级的范围更小。
阈值数据库310(在本文中也称为阈值数据库)可存储一个或若干个阈值。这些一个或若干个阈值可在状态或条件之间区别描绘。在一个示例性实施方案中,例如,阈值可在可接受的用户性能和不可接受的用户性能之间,适合于用户的内容和不适合用户的内容,风险等级等之间区别描绘。
除了上述示例性数据存储库之外,一个或多个数据存储库服务器104(例如,数据库服务器、基于文件的存储服务器等)可包括一个或多个外部数据聚合器311。外部数据聚合器311可包括可由内容管理网络100访问但不由内容管理网络100维护的第三方数据源。外部数据聚集器311可包括与内容分发网络100的用户、内容资源或应用程序相关的任何电子信息源。例如,外部数据聚集器311可以是包含人口统计数据、教育相关数据、消费者销售数据、健康相关数据等的第三方数据存储库。示例性外部数据聚集器311可包括例如社交网络web服务器、公共记录数据存储库、学习管理系统、教育机构服务器、业务服务器、消费者销售数据存储库、医疗记录数据存储库等。从各种外部数据聚合器311检索到的数据可用于验证和更新用户账户信息、建议用户内容,以及执行用户和内容评估。
现在参考图4,其示出了一个框图,该框图示出内容分发网络100内的一个或多个内容管理服务器102的实施方案。在此类实施方案中,内容管理服务器102执行流式内容的内部数据收集和处理连同外部数据收集和处理。其他实施方案可具有所有外部或所有内部数据收集的任一者。该实施方案允许及时报告可能使报告方或其他各方感兴趣的信息。在这个实施方案中,内容管理服务器102可监视从几个源收集的信息,以便允许其基于该信息及时地做出业务和/或处理决策。例如,可收集用户动作和/或响应的报告,以及一个或若干个处理任务的状态和/或结果,并从多个源向内容管理服务器102报告。
在内部,内容管理服务器102从一个或多个内部部件402至408收集信息。内部部件402至408收集和/或处理与以下事物有关的信息:提供给用户的内容;用户消耗的内容;用户提供的响应;用户技能等级;内容难度等级;用于向用户提供的下一内容等。内部部件402至408可以实时、接近实时或沿着另一时间线报告所收集和/或生成的信息。为了说明报告信息的任何延迟,时间戳或陈旧指示可通知其他人信息采样的及时性。内容管理服务器102可选择允许第三方通过订阅内容分发网络100使用在服务器102内聚合的内部或外部收集的信息。
命令和控制(CC)接口338将收集的输入信息配置成数据流的输出,数据流在本文中也被称为内容流。用于接受收集的信息和提供数据流的API被提供给服务器102外部想要订阅数据流的第三方。服务器102或第三方可以使用CC接口338设计尚未定义的API。服务器102还可使用CC接口338定义授权和认证参数诸如认证、授权、登录和/或数据加密。在本实施方案中,CC信息通过与收集的信息或数据流分离的信道传递到内容分发网络100的内部部件402至408和/或其他部件,但是其他实施方案可在这些通信信道中嵌入CC信息。CC信息允许限制信息报告频率、指定信息和数据流的格式、去激活一个或多个内部部件402至408和/或内容分发网络100的其他部件、更新认证和授权等。
可通过CC接口338研究和探索可用的各种数据流。针对特定订阅者(可以是一个或多个内部部件402至408和/或内容分发网络100的其他部件)的那些数据流选择存储在队列订阅信息数据库322中。然后,服务器102和/或CC接口338将选择的数据流路由到已经选择给定数据流的递送的处理订阅者。此外,服务器102还支持对由存档数据代理336收集、存储在历史数据存储库334中的各种数据流的历史查询。通过CC接口238可选择各种数据流以存档到历史数据存储库334中。
服务器102以外的内容分发网络100的部件还可收集信息,所述信息实时、接近实时或沿着另一时间线向服务器102报告。这些部件与服务器102之间存在定义的API。由服务器102收集的每种类型的信息或变量属于定义的API或多个API。在某些情况下,CC接口338用于定义附加变量,以修改可用于处理订阅者的API。附加的变量可传递给所有处理订阅或者仅子集。例如,服务器102之外的内容分发网络100的部件可以报告用户响应,但是将该用户的标识符定义为私有变量,该私有变量不会被传递给缺乏对该用户的访问权限和/或接收该用户数据的授权的处理订阅者。具有访问该用户的访问权限和/或接收该用户数据的授权的用户将接收订阅者标识符以及报告该部件的响应。数据流或子流的加密和/或唯一寻址可用于在消息传递队列中隐藏私有变量。
用户设备106和/或管理设备110通过安全和/或集成硬件410与服务器102通信。与安全和/或集成硬件410的通信可加密或不加密。例如,可使用使用TCP连接的套接字。除了TCP,在一些实施方案中,可使用传输层协议诸如SCTP和UDP摄取收集的信息。可使用诸如SSL的协议来保护TCP连接上的信息。可对与服务器102交互的任何用户设备106和/或监管人设备执行认证和授权。安全和/或集成硬件410通过提供API和任何加密、授权和/或认证从一个或若干个用户设备106和/或监管人设备110接收信息。在某些情况下,安全和/或集成硬件410重新格式化或重新安排该接收到的信息。
消息传递总线412(在本文中也称为消息传递队列或消息传递信道)可从服务器102的内部部件和/或服务器102以外的内容分发网络100的部件接收信息,并且将收集到的信息作为数据流分发给从消息传递队列412请求该数据流的任何处理订阅者。如图4所示,处理订阅者由到消息传递总线412的连接器指示,该连接器具有远离消息传递总线412指向的箭头。只有特定处理订阅者已经订阅的消息传递队列412内的数据流才能由该处理订阅者读取(如果接收到)。发送至消息传递队列412的收集到的信息由消息传递队列412在几分之一秒内处理并在数据流中返回。可使用各种多播和路由技术从消息传递队列412分发多个处理订阅者请求的数据流。可使用诸如多播或多个单播的协议在消息传递队列412内分发流。此外,传输层协议例如TCP、SCTP和UDP可用于各种实施方案。
通过CC接口338,外部或内部处理订阅者可以在消息传递队列412内被分配一个或多个数据流。数据流是特定类别中的特定类型的消息。例如,数据流可包括由指定的一组部件报告给消息传递总线412的所有数据。一个或多个处理订阅者可以订阅和接收数据流以处理信息并作出决策,和/或将处理的输出作为收集的反馈信息反馈到消息传递队列412中。通过CC接口338,开发者可搜索可用的数据流或指定新的数据流及其API。可通过利用处理订阅者处理多个现有数据流来确定新数据流。
CDN 110具有内部处理订阅者402至408,其处理分配的数据流以在服务器102内执行功能。内部处理订阅者402至408可执行功能诸如向用户提供内容,接收来自用户的响应,确定接收的响应的正确性,基于响应的正确性更新一个或多个模型,推荐用于提供给一个或多个用户的新内容等。内部处理订阅者402至408可决定来自数据流的记录的过滤和加权。如果决策是基于对数据流的分析而作出的,则每个数据记录都进行时间标记以反映信息的收集时间,使得例如可以对更近的结果给出附加可信度。其他实施方案可过滤出数据流中来自不可靠源的记录或过时的记录。例如,信息的特定贡献者可被证明具有不太理想的收集的信息,所述特定贡献者可以进行非常低的加权或者完全去除。
内部处理订阅者402至408可另外处理一个或多个数据流,以提供不同的信息,从而反馈到消息传递队列412作为不同数据流的一部分。例如,数百个用户设备106可提供被置于消息队列412上的数据流中的响应。内部处理订阅者402至408可以接收数据流并对其进行处理,以确定提供给一个或若干个用户的一个或若干个数据分组的难度,并且将该信息供给回到消息传递队列412,以便其他内部和外部处理订阅者可能的使用。
如上所述,CC接口338允许CDN 110查询历史消息传递队列412信息。存档数据代理336监听消息传递队列412,以便在历史数据库334中存储数据流。历史数据库334可以存储数据流持续不同时间量,并且可不存储所有数据流。不同的数据流可存储不同的时间量。
关于部件402至408,内容管理服务器102可包括各种服务器硬件和软件部件,该服务器硬件和软件部件管理内容分发网络100内的内容资源,并且向各种用户设备106上的用户提供交互式内容和自适应内容。例如,内容管理服务器102可向内容分发网络100内的其他设备提供指令并且从内容分发网络100内的其他设备接收信息,以便管理和递送在网络100内执行的内容资源、用户数据和服务器或客户端应用程序。
内容管理服务器102可包括分组选择系统402。分组选择系统402可使用内容分发网络100(例如,分组选择服务器402)内的专用硬件,或使用共享内容管理服务器102内的指定硬件和软件资源来实现。在一些实施方案中,分组选择系统402可调整内容资源的选择和自适应能力以匹配接收内容的用户的需要和期望。例如,分组选择系统402可查询各种数据存储库和服务器104来检索用户信息,诸如用户偏好和特征(例如,从用户配置文件数据存储库301)、用户对内容资源的访问限制(例如,从内容访问数据存储库306)、先前的用户结果和内容评估(例如,来自评估数据存储库308)等。基于从数据存储库104和其他数据源检索的信息,分组选择系统402可修改个人用户的内容资源。
在一些实施方案中,分组选择系统402可以包括推荐引擎,在本文中也称为自适应推荐引擎。在一些实施方案中,推荐引擎可选择一个或若干个内容片段(在本文中也称为数据分组)以提供给用户。可基于例如从数据库服务器104检索的信息选择这些数据分组,所述数据库服务器包括例如用户配置文件数据库301、内容库数据库303、模型数据库309等。在一些实施方案中,可根据一个或若干个选择规则自适应地选择和/或选择该一个或若干个数据分组。例如,在一个实施方案中,推荐引擎可从识别例如用户技能等级的用户配置文件数据库301检索信息。推荐引擎可进一步从内容库数据库303检索信息,该信息识别例如用于提供给用户的潜在数据分组以及那些数据分组的难度和/或与那些数据分组相关联的技能等级。
推荐引擎可基于例如一个或若干个规则、模型、预测等识别用于提供的一个或若干个潜在数据分组和/或一个或若干个用于向用户提供的数据分组。推荐引擎可以使用用户的技能等级生成一个或若干个用户提供对一些或全部潜在数据分组的期望响应的可能性的预测。在一些实施方案中,推荐引擎可以将一个或若干个数据分组与选择标准配对,该选择标准可用于基于从学生用户接收的一个或若干个响应确定应该向学生用户递送哪个分组。在一些实施方案中,如果预测指示期望响应的可能性过高或者期望响应的可能性过低,则可以从潜在数据分组池中消除一个或若干个数据分组。在一些实施方案中,推荐引擎然后可将一个或若干个选择标准应用于剩余的潜在数据分组以选择用于提供给用户的数据分组。该一个或若干个选择标准可以基于例如与用于接收对数据分组的响应的期望估计时间有关的标准、一个或若干个内容参数、一个或若干个分配参数等。
内容管理服务器102还可包括汇总模型系统404。汇总模型系统404可使用内容分发网络100(例如,汇总模型服务器404)内的专用硬件,或使用共享内容管理服务器102内的指定硬件和软件资源来实现。在一些实施方案中,汇总模型系统404可通过各种类型的内容资源和组,诸如在培训或教育环境、交互式游戏环境等中的媒体编译、课程或总课程来监视用户的进度。例如,汇总模型系统404可查询一个或多个数据库和/或数据存储库服务器104来检索用户数据,诸如相关联的内容编译或节目、内容完成状态、用户目标、结果等。
内容管理服务器102还可包括响应系统406,在一些实施方案中,该响应系统可包括响应处理器。响应系统406可使用内容分发网络100(例如,响应服务器406)内的专用硬件,或者使用共享内容管理服务器102内的指定硬件和软件资源来实现。响应系统406可被配置为接收和分析来自用户设备106的信息。例如,可编译和分析用户提交的内容资源的各种评级,然后将其存储在与内容相关联的数据存储库(例如,内容库数据存储库303和/或评估数据存储库308)中。在一些实施方案中,响应服务器406可分析信息以利用例如主题事项、年龄组、技能等级等来确定内容资源的有效性或适当性。在一些实施方案中,响应系统406可利用网络100内的一个或多个内容资源或资源组的属性来向分组选择系统402或汇总模型系统404提供更新。响应系统406还可接收和分析来自用户设备106、监管人设备110和管理员服务器116等的用户评估数据。例如,响应系统406可接收、聚合和分析不同情况中不同类型的用户(例如,终端用户、监管人、管理员等)的用户评估数据(例如,媒体消费者评级、学员或学生的理解水平、教师效果水平、选手技能等级等)的用户。
在一些实施方案中,响应系统406可被进一步配置为从用户接收一个或若干个响应并分析该一个或若干个响应。在一些实施方案中,例如,响应系统406可被配置为将一个或若干个响应转化为一个或若干个可观察对象。如本文所用,可观察对象是接收的响应的表征。在一些实施方案中,将一个或若干个响应转化为一个或若干个可观察对象可包括确定该一个或若干个响应是正确响应(在本文中也称为期望响应)还是不正确响应(在本文中也称为非期望响应)。在一些实施方案中,将一个或若干个响应转化为一个或若干个可观察对象可包括表征一个或若干个响应是期望响应和/或非期望响应的程度。在一些实施方案中,响应系统406可生成一个或若干个值以反映在响应于一个或若干个数据分组时的用户性能。在一些实施方案中,这些一个或若干个值可包括用于一个或若干个响应和/或数据分组的一个或若干个得分。
内容管理服务器102还可包括呈现系统408。呈现系统408可使用内容分发网络100(例如,呈现服务器408)内的专用硬件,或者使用共享内容管理服务器102内的指定硬件和软件资源来实现。呈现系统408可包括呈现引擎,该呈现引擎可以是例如在内容递送系统上运行的软件模块。
呈现系统408(在本文中也称为呈现模块或呈现引擎)可从分组选择系统402和/或从汇总模型系统404接收内容资源,并且将资源提供给用户设备106。呈现系统408可基于用户特征和偏好,和/或用户设备106的设备能力来确定内容资源的适当呈现格式。如果需要,呈现系统408可在发送之前将内容资源转换为适当的呈现格式和/或压缩内容。在一些实施方案中,呈现系统408还可确定用于内容资源的传输的适当的传输媒体和通信协议。
在一些实施方案中,呈现系统408可包括专用安全和集成硬件410以及对应的软件部件,以实现适当的安全特征内容传输和存储,提供支持的网络和客户端访问模型,以及支持性能和网络100的可扩展性要求。安全和集成层410可包括上面在图2中讨论的安全和集成部件208中的一些或全部,并且可控制内容资源和其他数据的传输,以及请求和内容交互的接收,接收至以及接收自用户设备106、监管人设备110、管理服务器116和网络100中的其他设备。
现在参考图5,其示出示例性计算机系统的框图。系统500可以对应于上述内容分发网络100的任何计算设备或服务器,或者本文描述的任何其他计算设备,并且具体地可以包括例如一个或多个用户设备106、监管人设备110和/或服务器102、104、108、112、114、116中的任何一个。在该示例中,计算机系统500包括经由总线子系统502与多个外围子系统通信的处理单元504。这些外围子系统包括例如存储子系统510、I/O子系统526和通信子系统532。
总线子系统502提供用于使计算机系统500的各种部件和子系统按照预期彼此通信的机制。虽然总线子系统502被示意性地示出为单条总线,但总线子系统的替代实施方案可利用多条总线。总线子系统502可以是几种类型的总线结构中的任何一种,包括存储器总线或存储器控制器、外围总线和使用各种总线体系结构中的任意一种的局部总线。此类体系结构可包括例如工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局部总线和外围部件互连(PCI)总线,所述外围部件互连总线可实现为根据IEEE P1386.1标准制造的夹层总线。
处理单元504可实现为一个或多个集成电路(例如,常规微处理器或微控制器),控制计算机系统500的操作。包括单核和/或多核处理器的一个或多个处理器可包括在处理单元504中。如图所示,处理单元504可实现为具有包括在每个处理单元中的单核或多核处理器和处理器高速缓存的一个或多个独立处理单元506和/或508。在其他实施方案中,处理单元504还可实现为四核处理单元或更大的多核设计(例如,六核处理器、八核处理器、十核处理器或更多核的处理器)。
处理单元504可执行包含在程序代码中的各种软件处理,并且可保持多个同时执行的程序或处理。在任何给定时间,要执行的程序代码中的一些或全部可驻留在一个或多个处理器504和/或存储子系统510中。在一些实施方案中,计算机系统500可包括一个或多个专用处理器,诸如数字信号处理器(DSP)、外置处理器、图形处理器、专用处理器等。
I/O子系统526可包括一个或多个用户界面输入设备和/或用户界面输出设备530的设备控制器528。用户界面输入设备和用户界面输出设备530可与计算机系统500集成(例如,集成音频/视频系统和/或触摸屏显示器),或者可以是可与计算机系统500附接/分离的独立外围设备。I/O子系统526可通过将一个或若干个电信号转换为用户可感知和/或可解释的形式从而向用户提供一个或若干个输出,并且可通过基于与I/O子系统的用户引起的一个或若干个交互生成一个或若干个电信号从用户接收一个或若干个输入,所述交互包括诸如按下按键或按钮、移动鼠标、与触摸屏或触控板交互、声波与麦克风的交互等。
输入设备530可包括键盘、指示设备诸如鼠标或轨迹球,结合到显示器中的触摸板或触摸屏、滚轮、点击轮、拨号盘、按钮、开关、键盘、具有语音命令识别系统的音频输入设备、麦克风以及其他类型的输入设备。输入设备530还可包括三维(3D)鼠标、操纵杆或指示棒、游戏手柄和图形输入板,以及音频/视频设备,诸如扬声器、数字相机、数字摄像机、便携式媒体播放器、网络摄像机、图像扫描仪、指纹扫描仪、条形码读取器3D扫描仪、3D打印机、激光测距仪和眼睛注视跟踪设备。附加输入设备530可包括例如使得用户能够使用手势和语音命令,通过自然用户界面来控制输入设备并与之进行交互的运动感测和/或手势识别设备,检测来自用户的眼睛活动并且将眼睛姿态转换为输入到输入设备的输入的眼睛姿势识别设备,使得用户能够通过语音命令与语音识别系统进行交互的语音识别感测设备、医学成像输入设备、MIDI键盘、数字乐器等等。
输出设备530可包括一个或多个显示子系统、指示灯或非视觉显示器诸如音频输出设备等。显示子系统可包括例如阴极射线管(CRT)显示器、平板设备诸如使用液晶显示器(LCD)或等离子体显示器的设备、发光二极管(LED)显示器、投影设备、触摸屏等。一般来说,术语“输出设备”的使用旨在包括用于将信息从计算机系统500输出至用户或其他计算机的所有可能类型的设备和机构。例如,输出设备530可包括但不限于视觉地递送文本、图形和音频/视频信息的各种显示设备,诸如监视器、打印机、扬声器、耳机、汽车导航系统、绘图仪、语音输出设备和调制解调器。
计算机系统500可包括一个或多个存储子系统510,包括用于存储数据和程序指令的硬件和软件部件,诸如系统存储器518和计算机可读存储介质516。系统存储器518和/或计算机可读存储介质516可存储在处理单元504上可加载和可执行的程序指令,以及在执行这些程序期间生成的数据。
根据计算机系统500的配置和类型,系统存储器318可存储在易失性存储器(诸如随机存取存储器(RAM)512)和/或非易失性存储驱动器514(诸如只读存储器)、闪存存储器等)。RAM 512可包含处理单元504可立即访问和/或当前正在操作和执行的数据和/或程序模块。在一些具体实施中,系统存储器518可包括多种不同类型的存储器,诸如静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)。在一些具体实施中,基本输入/输出系统(BIOS)通常可存储在非易失性存储驱动器514中,其包含(诸如在启动期间)帮助计算机系统500内的元件之间传输信息的基本例程。通过举例而非限制的方式,系统存储器518可包括应用程序520(诸如,客户端应用程序、Web浏览器、中间层应用程序、服务器应用程序等)、程序数据522和操作系统524。
存储子系统510还可提供一个或多个有形计算机可读存储介质516,用于存储提供一些实施方案的功能的基本编程和数据结构。由处理器执行时提供本文所描述的功能的软件(程序、代码模块、指令)可存储在存储子系统510中。这些软件模块或指令可由处理单元504执行。存储子系统510还可以提供用于存储根据本发明使用的数据的储存库。
存储子系统300还可包括可进一步连接到计算机可读存储介质516的计算机可读存储介质读取器。一起并且可选地,与系统存储器518组合的计算机可读存储介质516可全面地表示远程、本地、固定和/或可移动存储设备,以及用于临时和/或更永久地包含、存储、传输和检索计算机可读信息的存储媒体。
包含程序代码或程序代码的部分的计算机可读存储介质516可包括本领域中已知或使用的任何适当的介质,包括存储介质和通信介质,诸如但不限于以用于存储和/或传输信息的任何方法或技术实现的易失性和非易失性介质、可移动和不可移动介质。其可包括有形计算机可读介质,诸如RAM、ROM、电可擦除可编程ROM(EEPROM)、闪存存储器或其他存储技术、CD-ROM、数字通用盘(DVD)或其他光学存储器、磁带盒、磁带、磁盘存储器或其他磁存储设备或其他有形计算机可读介质。其还可包括无形计算机可读介质,诸如数据信号、数据传输或可用于传输所需信息并且可由计算机系统500访问的任何其他介质。
例如,计算机可读存储介质516可包括从不可移动非易失性磁介质读取或向其写入的硬盘驱动器,从可移动非易失性磁盘读取或向其写入的磁盘驱动器,以及光盘驱动器,该光盘驱动器从可移动非易失性光盘或其他光学介质诸如CD ROM、DVD和Blu-盘读取或向其写入。计算机可读存储介质516可包括但不限于驱动器、闪存存储器卡、通用串行总线(USB)闪存驱动器、安全数字(SD)卡、DVD盘,数字视频磁带等。计算机可读存储介质516还可包括基于非易失性存储器的固态驱动器(SSD)(诸如,基于闪存的SSD、企业闪存驱动器、固态ROM等)、基于易失性存储器的SSD(诸如,固态RAM、动态RAM、静态RAM)、基于DRAM的SSD、磁阻RAM(MRAM)SSD和使用基于DRAM的SSD和基于闪存存储器的SSD的组合的混合SSD。盘驱动器及其相关联的计算机可读介质可为计算机系统500提供计算机可读指令、数据结构、程序模块和其他数据的非易失性存储。
通信子系统532可经由包括局域网(LAN)、广域网(WAN)(例如,互联网)和各种无线电信网络的一个或多个通信网络提供来自计算机系统500和外部计算设备的通信接口。如图5所示,通信子系统532可包括例如一个或多个网络接口控制器(NIC)534(诸如,以太网卡、异步传输模式NIC、令牌环NIC等),以及一个或多个无线通信接口536(诸如,无线网络接口控制器(WNIC)、无线网络适配器等)。如图5所示,通信子系统532可包括例如一个或多个位置确定特征538,诸如一个或若干个导航系统特征和/或接收器等。此外或替代地,通信子系统532可包括一个或多个调制解调器(电话、卫星、电缆、ISDN)、同步或异步数字用户线路(DSL)单元、接口、接口等。通信子系统536还可包括射频(RF)收发器部件、全球定位系统(GPS)接收器部件和/或其他部件,其中该射频收发器部件用于访问无线语音和/或数据网络(例如,使用蜂窝电话技术,高级数据网络技术诸如3G、4G或EDGE(全球演进的增强型数据率),WiFi(IEEE 802.11家族标准)或其他移动通信技术或它们的任意组合)。
通信子系统532的各种物理部件可以是经由计算机网络、总线等连接到计算机系统500,和/或可物理地集成到计算机系统500的主板上的可拆卸部件。通信子系统532还可全部或部分地由软件实现。
在一些实施方案中,通信子系统532还可代表可使用或访问计算机系统500的一个或多个用户,接收结构化和/或非结构化数据馈送、事件流、事件更新等形式的输入通信。例如,通信子系统532可被配置为从社交网络和/或其他通信服务的用户实时接收数据馈送,web馈送诸如丰富站点摘要(RSS)馈送,和/或来自一个或多个第三方信息源(例如,数据聚合器311)的实时更新。另外,通信子系统532可被配置为以连续数据流的形式接收数据,其可包括实时事件和/或事件更新的事件流(例如,传感器数据应用程序、金融报价器、网络性能测量工具、分析工具、汽车交通监控等)。通信子系统532可将此类结构化和/或非结构化数据馈送、事件流、事件更新等输出至一个或多个数据存储库104,所述数据存储库可与连接到计算机系统500的一个或多个流传输数据源计算机进行通信。
由于计算机和网络不断变化的性质,图中所示计算机系统500的描述旨在仅作为具体示例。具有比图中所示的系统更多或更少的部件的许多其他配置是可能的。例如,还可使用自定义硬件和/或可在硬件、固件、软件或其组合中实现特定元件。此外,可采用到其他计算设备诸如网络输入/输出设备的连接。基于本文提供的公开内容和教导,本领域普通技术人员将理解实现各种实施方案的其他方式和/或方法。
现在参考图6,示出了示出通信网络的一个实施方案的框图。具体地讲,图6描绘了一种硬件配置,其中消息在源集线器602之间经由通信网络120交换,通信网络可以包括一个或若干个中间集线器604。在一些实施方案中,源集线器602可以是内容分发网络产生和启动消息发送的任何一个或若干个部件,并且终端集线器606可以是内容分发网络100的接收并且不重新发送消息的任何一个或若干个部件。在一些实施方案中,例如,源集线器602可以是用户设备106、监管人设备110和/或服务器102中的一者或若干者,并且终端集线器606同样可以是用户设备106、监管人设备110和/或服务器102中的一者或若干者。在一些实施方案中,中间集线器604可以包括接收消息并将消息重新发送到下一个节点的任何计算设备。
如图6所示,在一些实施方案中,集线器602、604、606的每一者可以与数据存储库104通信地连接。在这样的实施方案中,集线器602、604、606的一些或全部可以向数据存储库104发送识别所接收的消息和/或任何发送或重新发送的消息的信息。在一些实施方案中,该信息可用于确定任何发送和/或接收的消息的完整性,和/或验证终端集线器606接收的任何消息的准确性和完整性。
在一些实施方案中,通信网络120可由中间集线器604形成。在一些实施方案中,通信网络120可包括单个中间集线器604,并且在一些实施方案中,通信网络120可包括多个中间集线器。例如,在一个实施方案中,如图6所示,通信网络120包括第一中间集线器604-A和第二中间集线器604-B。
现在参考图7,示出了示出用户设备106和监管人设备110通信的一个实施方案的框图。在一些实施方案中,例如,用户可具有多个设备,这些设备可以与内容分发网络100连接以发送或接收信息。在一些实施方案中,例如,用户可以具有个人设备诸如移动设备、智能电话、平板电脑、智能手表、膝上型电脑、PC等。在一些实施方案中,除个人设备以外,其他设备还可以是任何计算设备。该其他设备可以包括例如膝上型电脑、PC、智能电话、平板电脑、智能手表等。在一些实施方案中,另一设备与个人设备的不同之处在于,个人设备被注册为内容分发网络100内的个人设备,而另一设备没有被注册为内容分发网络100内的个人设备。
具体参考图7,用户设备106可以包括个人用户设备106-A和一个或多个其他用户设备106-B。在一些实施方案中,个人用户设备106-A和一个或多个其他用户设备106-B中的一者或两者可以通信地连接到内容管理服务器102和/或导航系统122。类似地,监管人设备110可以包括个人监管人设备110-A和一个或多个其他监管人设备110-B。在一些实施方案中,个人监管人设备110-A和一个或多个其他监管人设备110-B中的一者或两者可以通信地连接到内容管理服务器102和/或导航系统122。
在一些实施方案中,内容分发网络可例如经由通信网络120向一个或多个用户设备106和/或一个或多个监管人设备110发送一个或多个警报。在一些实施方案中,警报的接收可以导致在接收设备内启动应用程序,并且在一些实施方案中,警报可以包括链接,该链接在被选择时启动应用程序或将链接选择者的设备的web浏览器导航至与警报关联的页面或入口。
例如,在一些实施方案中,提供此警报可包括识别一个或若干个用户设备106和/或与学生用户相关联的学生用户账户和/或一个或若干个监管人设备110和/或与监管人用户相关联的监管人用户账户。在识别这些一个或若干个设备106、110和/或账户之后,提供该警报可包括基于确定设备106、110和/或账户中的哪些正在被主动使用来确定设备106、110的活动设备,然后向该活动设备提供警报。
具体地讲,如果用户正在主动使用设备106、110中的一者诸如其他用户设备106-B和其他监管人设备110-B和/或账户,则可经由该其他设备106-B、110-B和/或正在使用的账户向用户提供警报。如果用户未主动使用其他设备106-B、110-B和/或账户,则可识别个人设备106-A、110-A设备诸如智能电话或平板电脑,并且可以向该个人设备106-A、110-A提供警报。在一些实施方案中,警报可以包括用于指导默认设备提供所接收警报的指示诸如接收警报的听觉、触觉或视觉指示的代码。
在一些实施方案中,警报的接收方设备106、110可以提供警报的接收指示。在一些实施方案中,警报的呈现可包括控制I/O子系统526例如提供警报和/或警报接收的听觉、触觉和/或视觉指示。在一些实施方案中,这可包括控制监管人设备110的屏幕以显示警报、警报中包含的数据和/或警报指示。
现在参考图8,示出了应用程序堆栈并且具体地示出了堆栈650的一个实施方案的示意图。在一些实施方案中,内容分发网络100可以包括堆栈650的一部分,该部分可包括基础结构层652、平台层654、应用层656和产品层658。在一些实施方案中,堆栈650可以包括层、硬件和/或软件的一些或全部,以提供一个或多个期望的功能和/或产品。
如图8所示,基础结构层652可以包括一个或若干个服务器、通信网络、数据存储库、隐私服务器等。在一些实施方案中,基础结构层还可包括一个或若干个用户设备106和/或作为内容分发网络的一部分连接的监管人设备110。
平台层可包括一个或若干个平台软件程序、模块和/或功能。这些可以包括例如识别服务、安全服务和/或自适应平台服务660。在一些实施方案中,识别服务可以例如识别一个或若干个用户、内容分发网络100的部件等。安全服务可以针对一个或若干个安全威胁、漏洞、病毒、恶意软件等监视内容分发网络。自适应平台服务660可以从内容分布网络100的一个或若干个部件接收信息并且可以基于该接收的信息提供预测模型,建议等。自适应平台服务660的功能将在下面的图9A至图9C中更详细地讨论。
应用层656可以包括一个或若干个产品软件或产品软件模块可以在其上或在其中操作的软件或软件模块。在一些实施方案中,应用层656可包括例如管理系统、记录系统等。在一些实施方案中,管理系统可包括例如学习管理系统(LMS)、内容管理系统(CMS)等。管理系统可被配置为控制向用户递送一个或若干个资源和/或从用户接收一个或若干个响应。在一些实施方案中,记录系统可以包括例如虚拟成绩单、虚拟顾问等。
产品层可包括一种或若干种软件产品和/或软件模块产品。这些软件产品和/或软件模块产品可为软件产品和/或软件模块产品的一个或若干个用户提供一个或若干个服务和/或功能。
现在参考图9A至图9C,示出了内容分发网络100内的模块的通信和处理流程的实施方案的示意图。在一些实施方案中,可在平台层654和/或应用层656的部分中执行通信和处理。图9A描绘了可经由消息信道412在平台层654和/或应用层656中的这种通信或处理的第一实施方案。
平台层654和/或应用层656可包括可在软件或硬件中实施的多个模块。在一些实施方案中,模块的一些或全部可在单个位置以硬件和/或软件实施,并且在一些实施方案中,这些模块中的一些或全部可以在多个位置以硬件和/或软件实施。这些模块可执行一个或若干个过程,包括例如呈现过程670、响应过程676、汇总模型过程680和分组选择过程684。
在一些实施方案中,呈现过程670可以包括向一个或若干个用户设备106和/或监管人设备110递送内容的一个或若干个方法和/或步骤。呈现过程670可由呈现器模块672和视图模块674执行。呈现器模块672可以是内容分发网络100并且具体地服务器102的硬件或软件模块。在一些实施方案中,呈现器模块672可包括位于服务器102上的一个或若干个部分、特征和/或功能,和/或位于用户设备106上的一个或若干个部分、特征和/或功能。在一些实施方案中,呈现器模块672可在呈现系统408中实施。
呈现器模块672可控制向一个或若干个用户设备106和/或监管人设备110提供内容。具体地讲,呈现器模块672可控制一个或若干个消息的生成,以便向一个或若干个期望的用户设备106和/或监管人设备110提供内容。呈现器模块672可以进一步控制将这些一个或若干个消息提供给期望的一个或若干个期望用户设备106和/或监管人设备110。因此,在一些实施方案中,呈现器模块672可以控制通信子系统532的一个或若干个特征,以生成并向一个或若干个用户设备106和/或监管人设备110发送包含内容的一个或若干个电信号。
在一些实施方案中,呈现器模块672可以控制和/或管理呈现过程670的呈现功能的一部分,并且可以具体地管理呈现功能的“外部循环”。如本文所用,外部循环指的是与跟踪用户在一组数据分组的全部或部分中的进度有关的任务。在一些实施方案中,这可包括识别一个或若干个已完成的数据分组或节点,和/或根据例如一个或若干个固定规则对一个或若干个下一个数据分组或节点进行非自适应选择。这种非自适应选择不依赖于预测模型的使用而是依赖于规则,所述规则基于与一个或多个先前完成的数据分组或评估的完成和/或一个或若干个先前完成的数据分组是否成功完成有关的数据识别下一个数据分组。
在一些实施方案中,并且由于呈现功能的外部循环的管理,包括呈现器模块对一个或多个下一个数据分组、节点或任务的非自适应选择,呈现器模块可以用作在本文中称为第一推荐引擎或基于规则的推荐引擎的推荐引擎。在一些实施方案中,第一推荐引擎可被配置为基于以下项中的一个或全部为用户选择下一个节点:用户在内容网络中的当前位置;潜在的下一个节点;用户的历史包括用户的先前响应;以及与潜在的下一个节点相关联的一个或若干个防护条件;在一些实施方案中,防护条件定义了进入或退出节点的一个或若干个先决条件。
在一些实施方案中,呈现器模块672可包括位于服务器102上的部分和/或位于用户设备106上的部分。在一些实施方案中,呈现器模块672的位于服务器102上的部分可以接收数据分组信息,并且将接收的数据分组信息的子集提供给呈现器模块672的位于用户设备106上的部分。在一些实施方案中,功能和/或能力的这种分离可以避免解决方案数据位于用户设备106上并且避免被用户设备106的用户潜在地访问。
在一些实施方案中,呈现器模块672的位于用户设备106上的部分可被进一步配置为从呈现器模块672的位于服务器102上的部分接收数据分组信息的子集,并且将该数据分组信息的子集提供给视图模块674。在一些实施方案中,呈现器模块672的位于用户设备106上的部分可被进一步配置为从视图模块674接收内容请求,并且将该内容请求提供给呈现器模块674的位于服务器102上的部分。
视图模块674可以是内容分发网络100的用户设备106和/或监管人设备110的一些或全部的硬件或软件模块。视图模块674可以从呈现器模块672接收一个或若干个电信号和/或通信,并且可以经由例如I/O子系统526将在该一个或若干个电信号和/或通信中接收的内容提供给用户设备106和/或监管人设备110的用户。
在一些实施方案中,视图模块674可控制和/或监视呈现功能的“内部循环”。如本文所用,内部循环是指与跟踪和/或管理用户通过数据分组的进度有关的任务。这可以具体地涉及跟踪和/或管理用户通过数据分组的一个或若干个内容、问题、评估和/或诸如此类的进度。在一些实施方案中,这可以进一步包括选择数据分组的一个或若干个下一项内容、下一个问题、下一个评估和/或诸如此类,以用于呈现和/或提供给用户设备106的用户。
在一些实施方案中,呈现器模块672和视图模块674中的一者或两者可以包括一个或若干个呈现引擎。在一些实施方案中,这些一个或若干个呈现引擎可包括不同的能力和/或功能。在一些实施方案中,其中一个呈现引擎可被配置为跟踪用户通过单个数据分组、任务、内容项等的进度,并且在一些实施方案中,其中一个呈现引擎可以跟踪用户通过一系列数据分组、任务、内容项等的进度。
响应过程676可包括用于评估响应的一个或若干个方法和/或步骤。在一些实施方案中,这可包括例如确定响应是否包括期望响应和/或非期望响应。在一些实施方案中,响应过程676可以包括确定一个或若干个接收的响应的正确性和/或不正确性的一个或若干个方法和/或步骤。在一些实施方案中,这可以包括例如确定多项选择响应、真/假响应、简短回答响应、论文响应等的正确性和/或不正确性。在一些实施方案中,响应处理器可采用例如自然语言处理、语义分析等确定接收的响应的正确性或不正确性。
在一些实施方案中,响应过程676可由响应处理器678执行。响应处理器678可以是内容分发网络100并且具体地服务器102的硬件或软件模块。在一些实施方案中,响应处理器678可在响应系统406中实施。在一些实施方案中,响应处理器678可以通信地连接到呈现过程760的一个或多个模块,诸如呈现器模块672和/或视图模块674。在一些实施方案中,响应处理器678可以与例如消息信道412和/或内容分发网络100的其他部件和/或模块通信地连接。
汇总模型过程680可以包括生成和/或更新一个或若干个模型的一个或若干个方法和/或步骤。在一些实施方案中,这可包括例如实现直接或间接从响应处理器678接收的信息,以更新一个或若干个模型。在一些实施方案中,汇总模型过程680可以包括与一个或若干个用户属性相关的模型诸如用户技能模型、用户知识模型、学习风格模型等的更新。在一些实施方案中,汇总模型过程680可以包括与一个或若干个内容属性有关的模型的更新,所述属性包括与单个内容项和/或数据分组有关的属性和/或与多个内容项和/或数据分组有关的属性。在一些实施方案中,这些模型可与一个或若干个数据分组的属性诸如难度、辨别力、所需时间等相关联。
在一些实施方案中,汇总模型过程680可由模型引擎682执行。在一些实施方案中,模型引擎682可以是内容分发网络100并且具体地服务器102的硬件或软件模块。在一些实施方案中,模型引擎682可在汇总模型系统404中实施。
在一些实施方案中,模型引擎682可以通信地连接到呈现过程760的一个或若干个模块诸如呈现器模块672和/或视图模块674,可以连接到响应处理器678和/或建议。在一些实施方案中,模型引擎682可以通信地连接到消息信道412和/或内容分发网络100的其他部件和/或模块。
分组选择过程684可包括识别和/或选择数据分组以呈现给用户的一个或若干个步骤和/或方法。在一些实施方案中,该数据分组可包括多个数据分组。在一些实施方案中,可以根据作为汇总模型过程680的一部分更新的一个或若干个模型来选择该数据分组。在一些实施方案中,可以根据一个或若干个规则、概率、模型等选择该数据分组。在一些实施方案中,可通过结合由模型引擎682在汇总模型过程680中更新的多个模型来选择一个或若干个数据分组。在一些实施方案中,可通过推荐引擎686来选择这些一个或若干个数据分组。推荐引擎686可以是内容分发网络100并且具体地服务器102的硬件或软件模块。在一些实施方案中,推荐引擎686可在分组选择系统402中实施。在一些实施方案中,推荐引擎686可以直接地和/或例如经由消息信道间接地通信地连接到呈现过程670、响应过程676和/或汇总模型过程680中的一个或多个模块。
在一些实施方案中,并且如图9A所示,呈现器模块672可以接收用于呈现给用户设备106的数据分组。可以直接或间接地从推荐引擎686接收该数据分组。在一些实施方案中,例如,呈现器模块672可以从推荐引擎686接收用于提供给用户设备106的数据分组,并且在一些实施方案中,呈现器模块672可以经由视图模块674接收用于提供给用户设备106的数据分组的标识符。这可经由消息信道412从推荐引擎686接收。具体地讲,在一些实施方案中,推荐引擎686可以向消息信道412提供数据,指示用于经由用户设备106提供给用户的数据分组的识别和/或选择。在一些实施方案中,指示数据分组的识别和/或选择的该数据可以识别数据分组和/或可以识别数据分组的预期接收方。
消息信道412可以以数据流690的形式输出该接收的数据,数据流可以由例如呈现器模块672、模型引擎682和/或推荐引擎686接收。在一些实施方案中,呈现器模块672、模型引擎682和/或推荐引擎686的一些或全部可以被配置为解析和/或过滤数据流690,以识别与它们的操作相关的数据和/或事件。因此,例如,呈现器模块672可以被配置为解析数据流以获得与呈现器模块672的操作相关的信息和/或事件。
在一些实施方案中,呈现器模块672可以从数据流690中提取数据分组,和/或从数据流中提取识别数据分组和/或指示选择数据分组的数据。在从数据流690中提取识别数据分组的数据的情况下,呈现器模块672可以从数据库服务器104,并且具体地从内容库数据库303请求和接收数据分组。在从数据流690中提取指示数据分组的选择的数据的实施方案中,呈现器模块672可以从推荐引擎686请求和接收数据分组的标识,然后从数据库服务器104,并且具体地,从内容库数据库303请求和接收数据分组,并且其中从数据流690提取指示数据分组的选择的数据的一些实施方案中,呈现器模块672可以从推荐引擎686请求和接收数据分组。
然后,呈现器模块可以将数据分组和/或数据分组的部分提供给视图模块674。在一些实施方案中,例如,呈现器模块672可检索可以例如与数据分组相关联和/或存储在数据库服务器104中的一个或若干个规则和/或条件。在一些实施方案中,这些规则和/或条件可以识别数据分组的用于提供给视图模块674的部分和/或数据分组的不提供给视图模块674的部分。在一些实施方案中,例如,数据分组的敏感部分(例如,与数据分组相关联的任何问题的解决方案信息)未被提供给视图模块674,以防止不期望地访问数据分组的那些敏感部分的可能性。因此,在一些实施方案中,该一个或若干个规则和/或条件可以识别数据分组的用于提供给视图模块674的部分和/或数据分组的不提供给视图模块的部分。
在一些实施方案中,呈现器模块672可以根据一个或多个规则和/或条件,生成包含数据分组的全部或部分的电子消息并将其传输到视图模块674。视图模块674接收这些部分或全部数据分组,并且可以经由例如I/O子系统526将全部或部分这些信息提供给与视图模块674相关联的用户设备的106的用户。在一些实施方案中,作为向视图模块674的用户提供全部或部分数据分组的一部分,视图模块674可以接收一个或若干个用户响应。在一些实施方案中,可以经由用户设备106的I/O子系统526接收这些一个或若干个用户响应。
在接收到一个或多个用户响应之后,视图模块674可以将一个或若干个用户响应提供给响应处理器678。在一些实施方案中,这些一个或若干个响应可以直接提供给响应处理器678,并且在一些实施方案中,这些一个或若干个响应可以经由消息信道412间接地提供给响应处理器678。
在响应处理器678接收到所述一个或若干个响应之后,响应处理器678可以确定响应是否是期望的响应和/或接收的响应是期望的响应的程度。在一些实施方案中,响应处理器可以通过例如使用一种或多种技术包括例如自然语言处理(NLP)、语义分析等进行此确定。
在一些实施方案中,响应处理器可利用可与数据分组相关联的比较数据确定响应是否是期望响应和/或响应是期望响应的程度。在一些实施方案中,该比较数据可以包括例如期望响应的指示和/或一个或若干个非期望响应的指示、响应密钥、包括用于确定响应是期望响应的程度的一个或多若干个标准的响应成规。在一些实施方案中,可接收比较数据作为数据分组的一部分和/或与数据分组相关联。在一些实施方案中,响应处理器678可以从呈现器模块672和/或从消息信道412接收比较数据。在一些实施方案中,从视图模块674接收的响应数据可以包括识别与响应相关联的用户和/或数据分组或数据分组部分的数据。在一些实施方案中,响应处理器678仅接收识别与一个或若干个响应相关联的数据分组和/或数据分组的部分的数据,响应处理器678可以从数据库服务器104,并且更具体地,从数据库服务器104的内容库数据库303请求和/或接收比较数据。
在接收到比较数据之后,响应处理器678确定一个或若干个响应是否包括期望的响应和/或该一个或若干个响应包括期望响应的程度。然后响应处理器可向消息信道412提供表征一个或若干个响应是否包括期望响应和/或一个或若干个响应包括期望响应的程度的数据。如上面所讨论的,消息信道可在数据流690中包括响应处理器678的输出,该数据流可以不断地通过消息信道412输出。
在一些实施方案中,模型引擎682可以订阅消息信道412的数据流690,并且因此可以接收消息信道412的数据流690,如图9A所示。模型引擎682可以监视数据流690,以识别与模型引擎的操作相关的数据和/或事件。在一些实施方案中,模型引擎682可以监视数据流690,以识别与确定响应是否是期望响应和/或响应是期望响应的程度相关的数据和/或事件。
当模型引擎识别相关事件和/或相关数据时,模型引擎682可以获取所识别的相关事件和/或相关数据并修改一个或多个模型。在一些实施方案中,这可以包括更新和/或修改与提供响应的用户相关的一个或若干个模型,更新和/或修改与关联响应的数据分组相关的一个或若干个模型和/或诸如此类。在一些实施方案中,可以从数据库服务器104检索这些模型,并且在一些实施方案中,可以从数据库服务器104的模型数据源309检索这些模型。
在模型已经更新后,更新后的模型可以存储在数据库服务器104中。在一些实施方案中,模型引擎682可以向消息信道412发送指示模型更新完成的事件的数据。消息信道412可以将该信息结合到可以由推荐引擎686接收的数据流690中。建议引擎686可以监视数据流690,以识别与建议引擎686的操作相关的数据和/或事件。在一些实施方案中,推荐引擎686可以监视数据流690,以识别与模型引擎682更新一个或多个模型相关的数据和/或事件。
针对与提供响应的用户相关的模型和/或与提供给用户的数据分组相关的模型,当推荐引擎686识别了数据流690中指示汇总模型过程680完成的信息时,推荐引擎686可以识别和/或选择用于提供给用户和/或呈现过程470的下一个数据分组。在一些实施方案中,可以根据一个或若干个规则和/或条件执行对下一个数据分组的选择。在选择了下一个数据分组之后,推荐引擎686可以向模型引擎682提供识别下一个选择的数据分组的信息,和/或向消息信道412提供指示选择下一个内容项的事件的信息。在消息信道412接收识别下一内容项的选择的信息和/或接收下一内容项之后,消息信道412可以将该信息包括在数据流690中,并且可以重复关于图9A所讨论的过程。
现在参考图9B,示出了可以经由消息信道412在平台层654和/或应用层656中的通信或处理的第二实施方案的示意图。在图9B所描绘的实施方案中,提供给呈现器模块672然后提供给视图模块674的数据分组不包括针对用户响应的提示和/或不导致接收用户响应。由于未接收到响应,当数据分组完成时,未向响应处理器678提供任何内容,而是从视图模块674和/或呈现器模块672中的一个向消息信道412提供指示数据分组完成的数据。然后,数据被包括在数据流690中,并且由模型引擎682接收,模型引擎使用数据更新一个或若干个模型。在模型引擎682已经更新一个或多个模型之后,模型引擎682向消息信道412提供指示模型更新完成的数据。然后,消息信道412在数据流690中包括指示模型更新完成的数据,并且可订阅数据流690的推荐引擎686可以从数据流690中提取指示模型更新完成的数据。然后,推荐引擎686可以识别用于提供给呈现器模块672的下一个或多个数据分组,然后推荐引擎686可以直接或间接地向呈现器模块672提供下一个或多个数据分组。
现在参考图9C,示出了平台层654和/或应用层656中的双通信或混合通信的实施方案的示意图。具体地讲,在本实施方案中,一些通信与一个或若干个任务的完成是同步的,而一些通信是异步的。因此,在图9C描绘的实施方案中,呈现器模块972经由直接通信692与模型引擎682同步通信,并且经由消息信道412与模型引擎682异步通信。
具体地讲,并且参考图9C,呈现器模块672可以经由视图模块674接收和/或选择用于呈现给用户设备106的数据分组。在一些实施方案中,呈现器模块672可以识别数据分组的可以提供给视图模块674的全部或部分,以及数据分组的用于保留不提供给视图模块674的部分。在一些实施方案中,呈现器模块可向视图模块674提供数据分组的全部或部分。在一些实施方案中,并且响应于数据分组的全部或部分的接收,视图模块674可以提供对数据分组的全部或部分的接收的确认,并且可以经由用户设备106向用户提供数据分组的全部或部分。在一些实施方案中,视图模块674可以将数据分组的全部或部分提供给用户设备106,同时控制经由用户设备106向用户呈现数据分组的内部循环。
在已经将全部或部分数据分组提供给用户设备106之后,视图模块674可以从用户设备106,并且具体地,从用户设备106的I/O子系统526接收指示与该数据分组相关联的一个或若干个任务的完成的响应。响应于该接收,视图模块674可以向呈现器模块672提供该完成状态的指示,和/或可以向响应处理器678提供响应。
在响应处理器678接收到响应之后,响应处理器678可以确定接收到的响应是否是期望的响应。在一些实施方案中,这可以包括例如确定响应是否包括正确答案和/或响应包括正确答案的程度。
在响应处理器已经确定接收的响应是否是期望响应之后,响应处理器678可以向呈现器模块672提供接收的响应是否是期望响应的确定结果的指示。响应于接收到关于所接收的响应是否是期望响应的确定结果的指示,呈现器模块672可以经由直接通信692与模型引擎682同步通信,并且可经由消息信道412与模型引擎682异步通信。在一些实施方案中,同步通信可以有利地包括模型引擎682和呈现器模块672之间的双向通信,使得模型引擎682可以在模型引擎完成模型更新时向呈现器模块672提供指示。
在模型引擎682已经接收到同步和异步通信中的一者或两者之后,模型引擎682可以更新与例如用户、数据分组等有关的一个或若干个模型。在模型引擎682完成了一个或若干个模型的更新之后,模型引擎682可以向呈现器模块672发送通信,指示更新的一个或若干个模块的完成。
在呈现器模块672接收到指示完成一个或若干个模型的更新的通信之后,呈现器模块672可以向推荐引擎686发送请求识别下一个数据分组的通信。如上所述,然后推荐引擎686可以检索更新的模型并检索用户信息。利用更新的模型和用户信息,推荐引擎可以识别用于提供给用户的下一个数据分组,并且可以将数据分组提供给呈现器模块672。在一些实施方案中,推荐引擎686可以进一步向模型引擎682提供下一个数据分组的指示,在确定接收的数据分组的响应是否是期望响应之后,该模型引擎可使用与下一数据分组有关的信息立即或在从呈现器模块672接收到通信之后更新一个或若干个模型。
现在参考图9D,其示出了呈现过程670的一个实施方案的示意图。具体地讲,图9D描绘了呈现器模块672的多个部分,即外部部分673和内部部分675。在一些实施方案中,呈现器模块672的外部部分673可以位于服务器中,并且在一些实施方案中,呈现器模块672的内部部分675可以位于用户设备106中。在一些实施方案中,如本文所讨论的,呈现器模块的外部部分673可被配置为与呈现器模块672的内部部分675通信和/或交换数据。例如,在一些实施方案中,呈现器模块672的外部部分673可以接收数据分组,并且可以将数据分组解析成用于提供给呈现器模块672的内部部分675的部分和不提供给呈现器模块672的内部部分675的部分。在一些实施方案中,呈现器模块672的外部部分673可以从呈现器模块672的内部部分675接收对附加数据和/或附加数据分组的请求。在这样的实施方案中,呈现器模块672的外部部分673可以从例如数据库服务器104并且更具体地从内容库数据库104识别和检索请求的数据和/或附加数据分组。
现在参考图10A,其示出一个流程图,该流程图示出用于数据管理的过程440的一个实施方案。在一些实施方案中,过程440可以由内容管理服务器102执行,更具体地,由呈现系统408和/或呈现模块或呈现引擎执行。在一些实施方案中,过程440可以作为呈现过程670的一部分来执行。
过程440在框442处开始,在该框处识别数据分组。在一些实施方案中,数据分组可以是用于向学生用户提供的数据分组。在一些实施方案中,可以基于从推荐引擎686直接或间接接收的通信来识别数据分组。
在识别数据分组之后,过程440前进至框444,在该框处请求数据分组。在一些实施方案中,这可以包括请求与数据分组有关的信息,诸如形成数据分组的数据。在一些实施方案中,可从例如内容库数据库303请求此信息。在请求数据分组之后,过程440前进至框446,在该框处接收数据分组。在一些实施方案中,数据分组可以由呈现系统408从例如内容库数据库303接收。
在接收到数据分组之后,过程440前进至框448,在该框处识别一个或若干个数据组件。在一些实施方案中,例如,数据分组可以包括一个或若干个数据组件,该数据组件可以例如包含不同的数据。在一些实施方案中,这些数据组件中的一者(这本文中称为呈现组件)可以包括用于向学生用户提供的内容,该内容可以包括一个或若干个请求和/或问题等。在一些实施方案中,这些数据组件中的一者(在本文中称为响应组)可以包括响应于数据分组,并且具体地,响应于呈现组件和/或呈现组件的一个或多个请求和/或问题,用于评估从用户设备106接收的一个或若干个响应的数据。因此,在一些实施方案中,该数据分组的响应组件可用于确定用户是否提供了期望响应或非期望响应。
在识别数据组件之后,过程440前进至框450,在该框处识别递送数据分组。在一些实施方案中,递送数据分组可以包括用于经由用户设备106递送至用户诸如学生用户的数据分组的一个或若干个数据组件。在一些实施方案中,递送分组可以包括呈现组件,并且在一些实施方案中,递送分组可以排除响应分组。在生成递送数据分组之后,过程440前进至框452,在该框中递送数据分组被提供给用户设备106,并且更具体地提供给视图模块674。在一些实施方案中,这可以包括经由例如通信网络120向用户设备106提供递送数据分组。
在递送数据分组已经提供给用户设备106之后,过程440前进至框454,在该框处数据分组和/或其一个或若干个组件被发送和/或提供给响应处理器678。在一些实施方案中,向响应处理器发送数据分组和/或其一个或若干个组件可包括从学生用户接收响应,并且在发送数据分组和/或其一个或若干个组件到响应处理器的同时发送对学生用户的响应至响应处理器。在一些实施方案中,例如,这可以包括向响应处理器提供响应组件。在一些实施方案中,响应组件可以从呈现系统408提供给响应处理器。
现在参考图10B,其示出一个流程图,该流程图示出了评估响应的过程460的一个实施方案。在一些实施方案中,该过程可以作为响应过程676的一部分执行,并且可以例如由响应系统406和/或由响应处理器678执行。在一些实施方案中,响应系统406可响应于从用户设备106或从视图模块674直接或间接地接收到响应而执行过程460。
过程460在框462处开始,在该框处经由例如通信网络120从用户设备106接收响应。在已经接收到响应之后,过程460前进至框464,在该框处接收与响应相关联的数据分组。在一些实施方案中,这可以包括接收数据分组的全部或一个或若干个组件,例如数据分组的响应组件。在一些实施方案中,响应处理器可以从呈现引擎接收数据分组。
在接收到数据分组之后,过程460前进至框466,在该框处识别响应类型。在一些实施方案中,可以基于数据诸如与响应相关联的元数据执行该识别。在其他实施方案中,可以基于数据分组信息诸如响应组件执行识别。
在一些实施方案中,响应类型可以识别数据分组的一个或若干个请求和/或问题的一个或若干个属性诸如请求和/或问题类型。在一些实施方案中,这可以包括将一个或若干个请求和/或问题的一些或全部识别为真/假、多项选择、简短回答、论文等。
在识别了响应类型之后,过程460前进至框468,在该框处比较数据分组和响应以确定响应是否包括期望响应和/或非期望响应。在一些实施方案中,这可以包括比较接收的响应和数据分组以确定接收的响应是否匹配数据分组的响应组件的全部或部分,以确定接收的响应与响应组件的全部或部分的匹配程度,以确定接收的响应实施数据分组的响应组件中所识别的一个或多个质量的程度等。在一些实施方案中,这可包括根据一个或若干个规则对响应进行分类。在一些实施方案中,这些规则可用于将响应分类为期望响应或非期望响应。在一些实施方案中,这些规则可用于识别响应中所表明的一个或若干个错误和/或误解。在一些实施方案中,这可包括例如:使用自然语言处理软件和/或算法;使用一个或若干个数字辞典;使用词形归类软件、词典和/或算法;等。
在对数据分组和响应进行比较之后,过程460前进至框470,在该框处确定响应期望度。在一些实施方案中,这可以包括基于数据分组和响应的比较结果,确定响应是期望响应还是非期望响应。在一些实施方案中,这还可包括量化响应为期望响应的程度。例如,该确定可以包括确定响应是否为正确响应、不正确响应、部分正确响应等。在一些实施方案中,响应期望度的确定可以包括生成表征响应期望度的值,并且将该值存储在数据库104诸如用户配置文件数据库301之一中。在确定响应期望度之后,过程460前进至框472,在该框处生成评估值。在一些实施方案中,评估值可以是表征一个或多个响应的响应期望度的聚合值。该评估值可存储在数据库104之一中,诸如用户配置文件数据库301。
现在参考图11,其示出了内容网络700的一个实施方案的示意图。在一些实施方案中,内容网络700(在本文中也称为对象网络)可包括链接多个节点702的多个边缘701。在一些实施方案中,边缘701可以先决条件关系链接节点702,使得单个边缘701链接一对节点702,这对节点702中的一个是这对节点702中另一个的先决条件。在图11中,该先决条件关系由链接一对节点702的边缘701的箭头的方向指示,使得箭头的起点位于先决条件节点处,并且箭头的头部位于非先决条件节点处。
在图11中所描绘的实施方案中,这些节点702包括节点1、节点2、节点3、节点4、节点5和节点6。如图11中进一步所描绘的,节点702中的一些诸如节点1可未与内容相关联,而其他节点702诸如节点2、节点3、节点4、节点5和节点6可与内容704相关联。具体地讲,节点2与内容b相关联,节点3与内容c相关联,节点4与内容字母d相关联,节点5与占位符内容(在本文中也称为占位符节点)相关联,并且节点6与内容字母f相关联。在一些实施方案中,占位符节点是其内容不固定但可例如自适应地选自可在数据库服务器104中找到的一组潜在的内容或内容对象的节点。在一些实施方案中,可基于与内容、用户、用户技能等级等相关的一个或若干个预测或统计模型来自适应地选择该内容。
在一些实施方案中,占位符节点的内容可选自与该占位符节点相关的一个或若干个数据库。这些数据库可存储在例如内容库数据存储库303内。在一些实施方案中,在占位符节点处呈现给用户的内容可由推荐引擎686基于统计模型来确定,该统计模型可例如由模型引擎基于与一个或若干个用户过往性能相关的数据来更新。
在一些实施方案中,节点702中的一些或全部可与防护条件相关联,防护条件在本文中也称为门条件,如条件706所指示。在一些实施方案中,防护条件可识别用于进入和/或离开节点702的先决条件。这些防护条件可例如基于用户是否掌握一个或若干个先前的节点、目标诸如目标一708、技能等级等来判定对节点702的进入。在一些实施方案中,这些防护条件可基于对先前节点和/或对评估的一个或若干个响应是正确的还是不正确的或者基于对先前节点或评估的正确响应与不正确响应之间的比率来判定对节点702的进入。在一些实施方案中,这些防护条件可基于先前节点702的完成来判定对节点702的进入,诸如,基于节点2的完成来判定对节点3的进入。在一些实施方案中,这些防护条件中的每一个均可与节点702和/或边缘701相关联。在一些实施方案中,每个防护条件与节点702相关联。在一些实施方案中,这可使得进入识别特定节点702的节点702的数据库,该数据库包括与一个或若干个防护条件和/或针对该一个或若干个防护条件的指示物相关和/或识别一个或若干个防护条件和/或针对该一个或若干个防护条件的指示物的数据。
在一些实施方案中,内容网络700的节点702的一些或全部可布置成一个或若干个环路703。在一些实施方案中,环路的持续时间可基于确定用户何时可退出环路的一个或若干个防护条件和/或可基于识别用户可保持在环路中的最小和/或最大周期数的标准。具体地讲,如图700所示,节点1包括指示用户可保持在环路703中的最大周期数的指示符,并且具体地指示用户可保持在环路703中的最大周期数为2。在一些实施方案中,例如,通过内容网络700引导和/或控制用户移动的推荐引擎可包括每次用户通过环路时可递增的计数。可将该计数与指示用户可保持在环路中的最小和/或最大周期数的指示符进行比较,以确定是否必须再次允许用户通过环路或者是否应禁止用户再次进入环路。
如图11中进一步所见,节点1包括将节点1连接到节点6的边缘701。在一些实施方案中,当计数达到指示用户可保持在环路中的最大周期数的指示符时,将用户从节点1引导到节点6。
现在参考图12,其示出了一个流程图,该流程图示出用两个推荐引擎向用户提供内容的过程800的一个实施方案。过程800可由内容分发网络100的全部或部分来执行,并且可具体地使用图9A至图9D中所示的引擎和/或模块来执行。在一个实施方案中,过程800可由内容分发网络的服务器102使用图9A至图9D中所示的引擎和/或模块中的一些或全部来执行。
过程800从框802开始,在该框处接收响应数据。在一些实施方案中,响应数据可由呈现器模块672接收并且具体地可由呈现器模块672的外部模块673接收。在一些实施方案中,可由呈现器模块672经由视图模块674从用户设备106接收响应数据,并且在一些实施方案中,可由呈现器模块672的外部模块673从用户设备106经由视图模块674和内部模块675接收响应。在一些实施方案中,响应数据可包括用户响应和/或识别针对一个或若干个先前提供的数据分组、评估等接收的用户响应的数据。
在一些实施方案中,并且响应于接收到响应数据,呈现器模块672和/或呈现器模块672的外部模块673可评估响应数据,以确定响应是包括正确响应还是包括不正确响应、用户是否已掌握与响应相关的一个或若干个目标和技能、用户是否已完成先前的数据分组等。在一些实施方案中,并且响应于接收到响应数据,呈现器模块672可向响应处理器678提供响应数据以用于处理,从而确定响应的正确性或不正确性。在一些实施方案中,响应数据可直接提供给响应处理器678,并且在一些实施方案中,响应数据可经由消息信道412提供给响应处理器678。在一些实施方案中,并且在响应处理器678评估了响应数据之后,响应处理器678可将指示响应数据评估的结果的数据提供给呈现器模块672,该响应数据评估由响应处理器执行。在一些实施方案中,指示评估结果的数据可直接提供给呈现器模块672和/或可经由消息信道412间接地提供给呈现器模块672。
在接收到响应数据之后,过程800前进至框804,在该框处将响应数据提供给第一推荐引擎。在其中第一推荐引擎包括呈现器模块672并且具体地包括呈现器模块672的外部模块673的一些实施方案中,呈现器模块672接收响应可包括将响应数据提供给第一推荐引擎。在其中第一推荐引擎包括呈现器模块672并且具体地包括呈现器模块672的外部模块673的一些实施方案中,呈现器模块672接收指示来自响应处理器678的评估结果的数据可包括将响应数据提供给第一推荐引擎。在其中第一推荐引擎与呈现器模块672分开的一些实施方案中,呈现器模块672可以一个或若干个电信号的形式将指示评估结果的数据提供给该第一推荐引擎。
在将响应数据提供给第一推荐引擎之后,过程800前进至框806,在该框处识别下一个节点。在一些实施方案中,根据将一个或若干个规则或条件应用到框802中所接收到的响应数据的用户源的用户历史来识别该下一个节点。在一些实施方案中,可根据将一个或若干个规则或条件应用到指示响应数据评估的结果的数据来识别下一个节点,该响应数据评估由响应处理器678执行。在一些实施方案中,该下一个节点可由第一推荐引擎识别。
在识别下一个节点之后,过程800前进至决策状态808,在该框处,确定下一个节点是否包括占位符节点。在一些实施方案中,该确定可包括确定下一个节点是否与特定的恒定内容相关联或者下一个节点是否与自适应选择的内容相关联。如果确定了下一个节点为占位符节点,则过程800前进至框810,在该框处,警示第二推荐引擎。在一些实施方案中,第二推荐引擎可包括被配置为自适应地选择内容以提供给占位符节点中的用户的推荐引擎。在一些实施方案中,对内容的自适应选择基于呈现内容、用户历史、用户技能等级、用户学习风格等的一个或若干个属性的一个或若干个统计模型。在一些实施方案中,对第二推荐引擎的警示可包括向第二推荐引擎发送一个或若干个电信号,其中一个或若干个电信号可包括例如用户数据、响应数据等。
在警示第二推荐引擎之后,过程800前进至框812,在该框处,选择下一个节点内容。在一些实施方案中,可根据图14的过程840中所描述的占位符算法来选择下一个节点内容。在一些实施方案中,这可包括基于统计模型识别来自例如潜在的下一个内容的数据库的下一个内容,其中下一个内容的数据库可定位在数据库服务器104中并且具体地定位在内容库数据库303中。选择下一个节点内容可由第二推荐引擎进行,该第二推荐引擎可驻留在例如推荐引擎686中。
在选择了下一个节点内容之后,或者在确定了下一个节点不为占位符节点的情况下再次返回到决策状态808之后,过程800前进至框814,在该框处,接收或检索下一个节点内容。在其中下一个节点不为占位符节点的实施方案中,下一个内容可为与下一个节点相关联的内容。在其中下一个节点为占位符节点的实施方案中,下一个内容可为在框812中选择的下一个节点内容。在一些实施方案中,可从数据库服务器104并且特别是从内容库数据库303检索下一个节点内容。
在检索到下一个节点内容之后,过程800前进至框816,在该框处,将下一个节点内容提供给用户。在一些实施方案中,这可包括生成包含下一个节点内容的通信以及将该通信发送到用户设备106,该通信可包括多个电信号,框802中从该用户设备接收响应数据。在一些实施方案中,下一个节点内容经由用户设备106提供给用户,并且具体地经由视图模块674从呈现器模块672提供给用户设备106。在一些实施方案中,下一个节点内容从呈现器模块672提供给用户设备,并且具体地讲,从呈现器模块672的外部模块673提供给呈现器模块672的内部模块675,然后从呈现器模块672的内部模块675提供给视图模块674,再然后经由用户设备106的I/O子系统526提供给用户。
现在参考图13,其示出一个流程图,该流程图示出用于识别下一个节点的过程820的一个实施方案。过程820可由内容分发网络100的全部或部分(包括图9A至图9D中所示的引擎和模块中的一些或全部)来执行。在一些实施方案中,过程820可由第一推荐引擎来执行,在一些实施方案中,该第一推荐引擎可定位在呈现模块672和推荐引擎686中的一者或两者中。在一些实施方案中,过程820可作为图12的步骤806的一部分或者替代该步骤来执行。
过程820在框824处开始,在该框处确定用户的位置内容网络。在一些实施方案中,这可包括确定用户所在的内容网络和/或选择用户所在的一个或若干个内容网络中的一个。在一些实施方案中,用户为框802中所接收的响应的用户源。在一些实施方案中,可基于框802中所接收的响应和/或基于例如图8的框802的步骤之前用户登录时所提供的用户标识符来识别该用户。在一些实施方案中,确定用户的内容网络和/或在内容网络中的位置可基于对与框802中所接收的响应数据相关联的数据分组和/或节点702的识别。在一些实施方案中,可通过识别与框802中所接收的响应相关联的数据分组和/或节点702然后识别内容网络中的该数据分组和/或节点702来确定用户在内容网络中的位置。
在识别到在内容网络中的位置之后,过程820前进至框826,在该框处,检索用户历史。在一些实施方案中,可检索用户历史数据,以用于框802中所接收的响应的用户源。在一些实施方案中,该用户历史可识别关于一个或若干个先前评估、数据分组、任务、节点等的用户性能。在一些实施方案中,可从用户配置文件数据库301或者从数据库服务器104上的另一位置处检索用户历史。
在检索到用户历史之后,过程820前进至框828,在该框处,识别一个或若干个潜在的下一个节点。如图11所示,相对于节点1,在一些实施方案中,潜在的下一个节点可包括多个下一个节点。如图11所示,相对于节点2,在一些实施方案中,潜在的下一个节点可包括单个下一个节点。在一些实施方案中,可通过识别内容网络中用户位置的节点、通过识别从用户位置的节点延伸的边缘以及通过识别用户位置的节点的非先决条件节点来识别潜在的下一个节点,其中用户位置的节点在本文中也称为原始节点,该非先决条件节点经由所识别到的边缘连接到用户位置的节点。在一些实施方案中,潜在的下一个节点可由第一推荐引擎来识别。
在识别到潜在的下一个节点之后,过程820前进至框830,在该框处,检索用于所识别的潜在的下一个节点的条件。在一些实施方案中,这些门条件中的每一个均可识别用于行进到所识别的潜在的下一个节点中至少一个的一个或若干个要求。可从数据库服务器104并且具体地可从内容库数据库303检索这些门条件。在一些实施方案中,每个门条件均可存储在和/或经由例如指示物呈现在与其节点相关联的内容库数据库303中。在一些实施方案中,可通过向数据库服务器104查询与所识别的潜在的下一个节点相关联的四个门条件从数据库服务器104检索门条件。
在检索到门条件之后,过程820前进至框832,在该框处,通过将用户历史的所有或部分应用到所检索到的门条件来识别下一个节点。在一些实施方案中,这可包括将与先前呈现和/或提供给用户的一个或若干个数据分组和/或评估相关的用户历史数据与框830中所检索到的门条件进行比较,和/或将与先前呈现和/或提供给用户的一个或若干个数据分组和/或评估相关的用户历史数据应用到框830中所检索到的门条件。在一些实施方案中,这还可包括将与框802中所检索到的响应相关的用户历史数据与框830中所检索到的门条件进行比较,和/或将与框802中所检索到的响应相关的用户历史数据应用到框830中所检索到的门条件。在一些实施方案中,用户历史数据对门条件的这种应用和/或用户历史数据与门条件的这种比较可使得将一个节点识别为下一个节点。
在一个实施方案中,例如,将用户历史应用到门条件可包括:识别这组潜在的下一个节点;选择一个潜在的下一个节点;识别所选的潜在的下一个节点的防护条件;将用户历史与潜在的下一个节点的防护条件进行比较;以及基于用户历史与潜在的下一个节点的防护条件之间的比较结果来将值与潜在的下一个节点相关联。在一些实施方案中,当所选的下一个节点的防护条件与用户历史的比较指示所有防护条件均已得到满足并且用户可进入所选的下一个节点时,第一值可与所选的潜在的下一个节点相关联。此外,在一些实施方案中,当所选的下一个节点的防护条件与用户历史的比较指示并非所有防护条件均已得到满足并且用户无法进入所选的下一个节点时,第二值可与所选的潜在的下一个节点相关联。在一些实施方案中,可重复这些步骤,直到已经选择所有潜在的下一个节点。另选地,在一些实施方案中,可重复这些步骤,直到所选的潜在的下一个节点与第一值相关联。在此类实施方案中,与第一值相关联的第一所选的潜在的下一个节点被识别为下一个节点。在识别到下一个节点之后,过程800前进至框834,并且继续到图12的框808。
现在参考图14,其示出了一个流程图,该流程图示出用于选择下一个节点内容的过程840的一个实施方案。过程840可由内容分发网络100的全部或部分(包括图9A至图9D中所示的引擎和模块中的一些或全部)来执行。在一些实施方案中,过程840可由第二推荐引擎来执行,在一些实施方案中,该第二推荐引擎可定位在推荐引擎686中。在一些实施方案中,过程840可作为图12的步骤812的一部分或者替代该步骤来执行。
方法840在框842处开始,在该框处识别用户。在一些实施方案中,可基于框802中所接收的响应和/或基于例如图8的框802的步骤之前用户登录时所提供的用户标识符来识别该用户。在识别到用户之后,过程840前进至框844,在该框处检索用户历史数据。在一些实施方案中,可检索用户历史数据,以用于框802中所接收到的响应的用户源。在一些实施方案中,该用户历史可识别关于一个或若干个先前评估、数据分组、任务、节点等的用户性能。在一些实施方案中,可从用户配置文件数据库301或者从数据库服务器104上的另一位置处检索用户历史。
在检索到用户历史之后,过程840前进至框846,在该框处识别潜在的下一个节点内容。在一些实施方案中,这可包括识别与占位符节点相关联的潜在的下一个节点内容的数据库。在一些实施方案中,潜在的下一个节点内容的该数据库可存储在数据库服务器104中并且具体地可存储在数据库服务器104的内容库数据库303中。
在识别到潜在的下一个节点之后,过程840前进至框848,在该框处接收或检索一个或若干个预测模型。在一些实施方案中,这些模型可包括存储在数据库服务器中的多个统计模型。在一些实施方案中,统计模型中至少一个识别技能等级或下一个数据分组的辨识中的一者。在一些实施方案中,这些统计模型可包括一个或若干个证据模型、风险模型、技能模型等。在一些实施方案中,证据模型可以是基于数学的统计模型。证据模型可以基于例如项目响应理论(IRT)、贝叶斯网络(贝叶斯网络)、性能因子分析(PFA)等。在一些实施方案中,证据模型可以是对用户和/或对一个或若干个内容项可定制的。具体地讲,可以将与用户和/或一个或若干个内容项相关的一个或若干个输入插入到证据模型中。在一些实施方案中,这些预测模型可从数据库服务器104检索,并且具体地可从数据库服务器104中的模型数据库309检索。
在接收到或检索到预测模型之后,过程840前进至框850,在该框处,基于预测模型选择下一个节点内容。在一些实施方案中,这可包括识别潜在的下一个节点内容的一个或若干个特征、识别用户历史中的一个或若干个特征、提取该一个或若干个特征、根据一个或若干个特征生成一个或若干个参数以及将一个或若干个特征和/或一个或若干个参数中的一些或全部输入到检索的预测模型中。在一些实施方案中,该模型然后可基于输入特征和/或参数生成模型输出,该模型输出识别作为下一个节点内容来选择的潜在的下一个节点内容中的一个或若干个。在一些实施方案中,这可由服务器102使用第二推荐引擎来执行,该第二推荐引擎可例如定位在推荐引擎636中。在选择了下一个节点内容之后,过程840继续到框852,并且然后前进至图12中所识别的框814。
现在参考图15,其示出了一个流程图,该流程图示出用于选择下一个节点内容的过程900的一个实施方案。过程900可由内容分发网络100的全部或部分来执行,并且具体地可使用图9A至图9D所示的引擎和/或模块来执行。在一个实施方案中,过程900可由内容分发网络的服务器102使用图9A至图9D所示的引擎和/或模块中的一些或全部来执行。过程900在框902处开始,在该框处接收用户识别信息。在一些实施方案中,用户识别信息可包括用户名、密码、登录信息、唯一用户标识符等。在一些实施方案中,用户识别信息可由用户设备106经由用户设备106的I/O子系统526来接收,并且可经由用户设备106和服务器102中的一者或两者的通信子系统532以及通信网络120来提供给服务器102。在接收到用户识别信息之后,可识别与用户识别信息相关联的用户。在一些实施方案中,这可包括将所接收到的用户识别信息与存储在数据库服务器(诸如,用户配置文件数据库301)中的信息进行比较。在一些实施方案中,例如,用户识别信息可与存储在用户配置文件数据库301中的用户信息唯一地相关联,并且可通过使所接收到的用户识别信息与该用户信息相关联来识别用户。
在接收到用户识别信息之后,过程900前进至框904,在该框处,识别和/或确定用户在内容网络中的位置。在一些实施方案中,在内容网络中的位置已确定的用户为框902中所接收到的用户识别信息所用于的用户。在一些实施方案中,确定用户在内容网络中的位置可包括例如检索识别用户的上一个完成的节点702的用户历史数据。在一些实施方案中,该用户历史数据可存储在数据库服务器104中,并且具体地可存储在用户配置文件数据库301中。在一些实施方案中,确定用户在内容网络中的位置可包括识别用户向与节点相关联的内容提供的上一个响应以及识别与该上一个响应相关联的节点。在一些实施方案中,用户在内容网络中的位置的确定可由服务器102来执行,并且更具体地由例如呈现器模块672来执行。
在确定在内容网络中的位置之后,过程900前进至框906,在该框处,检索用户历史。在一些实施方案中,用户历史可包括用户历史数据,可为框902中所接收到的用户识别信息所用于的用户检索该用户历史数据。在一些实施方案中,该用户历史可识别关于一个或若干个先前评估、数据分组、任务、节点等的用户性能。在一些实施方案中,该用户历史可特定于单个用户(诸如,框902中所接收到的用户识别信息所用于的用户)或者特定于一组用户。在一些实施方案中,可从用户配置文件数据库301或者从数据库服务器104上的另一位置处检索用户历史。
在检索到用户历史之后,过程900前进至框908,在该框处,识别一个或若干个潜在的下一个节点。在一些实施方案中,该一个或若干个潜在的下一个节点可包括通过边缘701直接链接到用户在内容网络中的当前位置的节点的一个或若干个非先决条件节点。在一些实施方案中,可通过识别从内容网络中的用户位置的节点延伸的边缘、识别通过所识别的边缘连接到内容网络中的用户当前位置的节点的节点以及生成那些节点的子集(内容网络中的用户当前位置的节点的非先决条件节点)来识别这些潜在的下一个节点。在一些实施方案中,潜在的下一个节点可由服务器102来识别,并且更具体地可由推荐引擎686和/或呈现器模块672来识别。
在识别到潜在的下一个节点之后,过程900前进至框910,在该框处,检索门条件。在一些实施方案中,这些门条件可为与框908中所识别的潜在的下一个节点相关联的门条件。在一些实施方案中,可从数据库服务器104并且具体地可从内容库数据库303检索门条件。在一些实施方案中,可通过向内容库数据库查询与被识别为潜在的下一个节点的节点相关联的门条件来检索关键条件。
在检索到门条件之后,过程900前进至框912,在该框处,通过将用户历史应用到门条件来识别下一个节点。在一些实施方案中,下一个节点可由第一推荐引擎和/或呈现器模块672来选择。在一些实施方案中,下一个节点可选自框908中所识别的一组潜在的下一个节点。
在识别到下一个节点之后,过程900前进至决策状态914,在该框处,确定了下一个节点是否为占位符节点。该确定可包括确定下一个节点是否与特定的恒定内容相关联或者下一个节点是否与自适应选择的内容相关联。在一些实施方案中,例如,当节点702不为占位符节点时,该节点可与第一值相关联,并且当节点702为占位符节点时,该节点可与第二值相关联。在一些实施方案中,确定下一个节点是否为占位符节点可包括确定下一个节点是与第一值相关联还是与第二值相关联。
如果确定了下一个节点为占位符节点,则过程900前进至框916,在该框处,检索一个或多个预测模型。在一些实施方案中,这些模型可包括存储在数据库服务器中的多个统计模型。在一些实施方案中,统计模型中的至少一个识别技能等级或下一个数据分组的辨识中的一者。在一些实施方案中,这些统计模型可包括一个或若干个证据模型、风险模型、技能模型等。在一些实施方案中,证据模型可以是基于数学的统计模型。证据模型可以基于例如项目响应理论(IRT)、贝叶斯网络(贝叶斯网络)、性能因子分析(PFA)等。在一些实施方案中,证据模型可以是对用户和/或对一个或若干个内容项可定制的。具体地讲,可以将与用户和/或一个或若干个内容项相关的一个或若干个输入插入到证据模型中。在一些实施方案中,这些预测模型可从数据库服务器104检索,并且具体地可从数据库服务器104中的模型数据库309检索。
在检索到预测模型之后,过程900前进至框918,在该框处,检索潜在的占位符内容。在一些实施方案中,检索潜在的占位符内容可包括识别潜在的占位符内容。在一些实施方案中,并且如上文所讨论的,占位符节点可与可选择性地呈现在占位符节点的位置中的一组内容相关联。在一些实施方案中,这组内容可存储在数据库服务器104中,并且具体地可存储在数据库服务器的内容库数据库303中。在一些实施方案中,可通过从包含潜在的占位符内容的数据库查询与所选的下一个占位符节点相关联的潜在的占位符内容来识别这组潜在的占位符内容。在一些实施方案中,该查询可由服务器102发送到数据库服务器104。在一些实施方案中,可响应于从数据库服务器104查询潜在的占位符内容而由服务器102从数据库服务器104接收潜在的占位符内容。
在识别到这组潜在的占位符内容之后,过程900前进至框920,在该框处,选择占位符内容。在一些实施方案中,经由例如将一个或多个模型(诸如,存储在模型数据库309中的那些)应用到框902中所接收到的识别信息所用于的用户的属性和/或这组潜在的占位符内容中的占位符内容的两个属性,从这组潜在的占位符内容中选择占位符内容。在一些实施方案中,这些模型可由模型引擎682基于一个或若干个先前接收的来自一个或若干个用户的响应来更新,并且更新的模型可存储在模型数据库309中。
在一些实施方案中,这些模型可用于自适应地选择下一个占位符内容。在一些实施方案中,例如,这可包括使用一个或多个模型来生成对用户技能等级的预测、对一组潜在的占位符内容中的一个或若干个占位符内容片段的难度等级的预测、对用户完成一组占位符内容中一个或若干个占位符内容片段所需的时间量的预测、用户成功完成一组占位符内容中一个或若干个占位符内容片段的可能性,等等。在一些实施方案中,例如,可选择具有与用户的技能等级最佳地对应的技能等级或难度等级的占位符内容片段。在一些实施方案中,例如,可选择具有用户成功完成占位符内容片段的期望可能性的占位符内容片段。在一些实施方案中,占位符内容片段可由第二推荐引擎和/或推荐引擎686选择。
在识别下一个内容之后,并且在确定了下一个节点不为占位符节点的情况下再次返回到决策状态914之后,过程900前进至框922,在该框处,将下一个节点提供给用户。在一些实施方案中,下一个节点可包括框912中所识别的节点和/或相关联的内容,或者在下一个节点为占位符节点的情况下,下一个节点可包括框920中所识别的下一个内容。
在一些实施方案中,下一个节点和/或与下一个节点相关联的内容经由用户设备106提供给用户,并且具体地经由视图模块674从呈现器模块672提供给用户设备106。在一些实施方案中,下一个节点内容从呈现器模块672提供给用户设备,并且具体地讲,从呈现器模块672的外部模块673提供给呈现器模块672的内部模块675,然后从呈现器模块672的内部模块675提供给视图模块674,再然后经由用户设备106的I/O子系统526提供给用户。
现在参考图16,其示出了一个流程图,该流程图示出用于两部分呈现引擎的操作的过程1000的一个实施方案。在一些实施方案中,该过程具体地涉及呈现器模块672的操作,因为其与图9A至图9D中所描绘的视图模块674进行交互。在一些实施方案中,过程1000的步骤中的一些或全部可由呈现器模块672的外部模块673来执行。该过程在框1002处开始,在该框处,数据分组由呈现引擎的一部分接收,并且具体地由呈现器模块672接收。在一些实施方案中,接收识别所接收到的数据分组的预期用户/接收方的数据可与接收数据分组同时进行。在一些实施方案中,可由呈现器模块672从推荐引擎686、从消息信道412和/或从数据库服务器104或更具体地从内容库数据库303接收数据分组。
在接收到数据分组之后,过程1000前进至框1004,在该框处,从数据分组提取分组元数据。在一些实施方案中,分组元数据包括识别数据分组的其他数据的一个或若干个属性的数据。在一些实施方案中,例如,该元数据可识别数据分组中数据的一个或若干个部分,诸如,数据分组中数据的旨在用于提供给用户的呈现部分和数据分组中数据的不旨在提供给用户的非呈现部分。在一些实施方案中,例如,数据分组中数据的非呈现部分可包括应答数据和/或用于评估对数据分组的一个或若干个用户响应的数据。在一些实施方案中,元数据还可包括识别与数据分组相关联的一个或若干个防护条件的信息。在一些实施方案中,可由呈现引擎的一部分并且具体地由呈现器模块672从框1002中所接收的数据分组提取元数据。
在提取了分组元数据之后,过程1000前进至框1006,在该框处,识别数据分组的递送部分。在一些实施方案中,这可包括使用所提取的分组元数据在数据分组的递送部分与数据分组的非递送部分之间描绘。在识别到数据分组的递送部分之后,过程1000前进至框1008,在该框处,提取数据分组的非递送部分。在一些实施方案中,这可包括将来自形成潜在通信的有效载荷的数据的非递送部分从呈现器模块672移动到视图模块674。
在从数据分组提取非递送部分之后,过程1000前进至框1010,在该框处,由呈现器模块672的外部模块673识别接收方内部模块675。在其中呈现器模块672不包括外部模块673和内部模块675的实施方案中,步骤1010可包括由呈现器模块672识别接收方视图模块674。在一些实施方案中,这可包括识别与框1002中所接收到的数据分组的预期接收方相关联的内部模块675和/或视图模块674,其中可基于识别与框1002中数据分组同时接收的预期接收方的数据来识别预期接收方。
在识别接收方内部模块675和/或视图模块674之后,过程1000前进至框1012,在该框处,将递送部分提供给所识别的接收方内部模块675和/或视图模块674。在一些实施方案中,这可包括由外部模块673和/或呈现器模块672生成一个或若干个电信号以及将这些电信号发送到框1010中所识别的接收方。在一些实施方案中,该一个或多个电信号可包括框1006中所识别的递送部分。在一些实施方案中,这些电信号可经由通信网络120以及服务器102和/或用户设备106的通信子系统532来传输。
在提供了递送部分之后,过程1000前进至决策状态1014,在该框处,确定是否接收到数据请求。在一些实施方案中,例如,外部模块673和/或呈现器模块672可接收内部模块675和/或视图模块674对附加数据的请求。在一些实施方案中,可响应于框1012中数据分组的部分的递送和/或独立于框1012中数据分组的部分的递送来接收该请求。
如果确定已接收数据请求,则过程前进至框1016,在该框处,识别相关的数据存储库。在一些实施方案中,这可包括识别包含所请求的数据的数据库服务器104中的一个或若干个数据库。在一些实施方案中,可通过从数据库服务器和/或数据库服务器104的一个或若干个数据库(诸如,内容库数据库303)查询所请求的数据来识别该一个或若干个数据库。在一些实施方案中,响应于此类查询,数据库服务器104和/或该查询的接收方数据库可作出响应并且识别其是否包含所请求的数据。如果数据库和/或数据库服务器104包含所请求的数据,则该数据库和/或数据库服务器104被识别为相关的数据存储库。
在识别到相关的数据存储库之后,过程1000前进至框1018,在该框处,请求附加数据。在一些实施方案中,可由例如服务器102从所识别的相关数据存储库请求该附加数据。在请求附加数据之后,过程1000前进至框1020,在该框处,接收一个或若干个附加数据分组和/或所请求的数据。在一些实施方案中,该请求的数据和/或一个或若干个附加请求的数据分组可由服务器102并且具体地可由呈现器模块672或呈现器模块672的外部模块673从所识别的相关数据存储库接收。在接收到一个或若干个附加数据分组和/或所请求的数据之后,过程1000继续到框1004,并且如上文概述的那样继续。
再次返回到决策状态1014,如果确定了未请求附加数据或者未接收到数据请求,则过程1000前进至框1022,在该框处,接收响应。在一些实施方案中,该响应可与框1002中接收到的数据分组相关,并且在一些实施方案中,该响应可与在框1020中接收到的附加数据分组相关。在一些实施方案中,可在确定决策状态1014之后或者在过程1000中的任何时刻处接收该响应。在一些实施方案中,可经由与框1012中递送的递送部分连接的通信网络120从用户设备106接收该响应。在一些实施方案中,可由呈现器模块672从视图模块674接收该响应,并且在一些实施方案中,可由外部模块673从内部模块675接收该响应,其中内部模块675从视图模块674接收响应。
在接收到响应之后,过程1000前进至框1024,在该框处,生成消息并将其发送到内容分发网络100的一个或若干个其他部件。在一些实施方案中,该消息可为一个或若干个电信号并且可包括指示所接收到的响应的数据和/或所接收到的响应。该消息可由外部模块675和/或呈现器模块672生成,并且可被发送到例如消息信道412和/或响应处理器678、模型引擎682和/或推荐引擎。在一些实施方案中,消息可经由通信网络120中的一个或若干个通信子系统532发送。
现在参考图17,其示出了一个流程图,该流程图示出用于自动识别和纠正误解的过程1100的一个实施方案。过程1100可由内容分发网络100的全部或部分来执行,并且具体地可使用图9A至图9D所示的引擎和/或模块来执行。在一个实施方案中,过程1100可由内容分发网络的服务器102使用图9A至图9D所示的引擎和/或模块中的一些或全部来执行。过程在框1102处开始,在该框处,识别用户组群。在一些实施方案中,用户组群包括一组处于类似位置处的用户。在一些实施方案中,用户组群可包括属于共同的组、类别、团体、等级等的一个或若干个用户。在一些实施方案中,可基于由服务器102从例如用户设备106和/或监管人设备110接收的用户输入来识别组群。
在识别到用户组群之后,过程1100前进至框1104,在该框处,将数据分组提供给框1102中所识别的用户组群中的用户。在一些实施方案中,可根据本文所述的一个过程来选择数据分组。具体地讲,在一些实施方案中,数据分组可由推荐引擎686来选择,并且可经由用户设备106并且具体地经由I/O子系统526、视图模块674、呈现器模块六或72和用户设备106的组合来提供给用户。
在已经将数据分组提供给用户组群中的用户之后,过程1100前进至框1106,在该框处,接收所提供的数据分组。在一些实施方案中,例如,响应可接收自用户组群中的每个用户,在一些实施方案中,响应可接收自用户组群中的一些用户中的每个用户。在一些实施方案中,响应可由服务器102并且具体地可由呈现器模块672经由视图模块674、通信子系统532、I/O系统526和用户设备106来接收。
在接收到响应之后,过程1100前进至框1108,在该框处,评估框1106中所接收到的响应。在一些实施方案中,对响应的评估可包括将每个响应转化为可观察对象。在一些实施方案中,将响应中的每个转化为可观察对象可包括确定所接收到的响应中的每个是包括正确响应还是不正确响应,或者在本文中也分别称为期望响应或非期望响应。在一些实施方案中,响应可由响应处理器678根据存储在内容库数据库303中的比较数据来评估。在一些实施方案中,对响应的评估可包括将接收到的响应中的每个与值相关联,并且具体地讲,将包括期望响应的每个响应与第一值相关联以及将包括非期望响应的所接收到的响应中的每个与第二值相关联。在一些实施方案中,这些值可与其接收到的响应相关联地存储在用户配置文件数据库301中和/或数据库服务器104中的任何其他期望数据库中。
在评估了响应之后,过程1100前进至框1110,在该框处,基于所评估的响应来识别用户误解。在一些实施方案中,这可包括识别一个或若干个误解和/或识别具有该一个或若干个误解的用户。在一些实施方案中,可基于框1106中所接收到的响应的属性的一个或若干个共性(如框1108中响应的评估所示)来识别这些用户误解。在一些实施方案中,用户误解可由服务器102并且具体地由响应处理器678和/或模型引擎682来识别。
在识别用户误解之后,过程1100前进至框1112,在该框处,选择一个或若干个纠正并且将其提供给用误解识别到的用户。在一些实施方案中,这可包括识别与误解相关联的一个或若干个数据分组,诸如,框1104中所提供的数据分组。在一些实施方案中,选择和提供纠正可包括识别与误解相关联的该一个或若干个数据分组,以及生成请求修改和/或替换该一个或多个数据分组的警示并将其发送到例如监管人设备110。在一些实施方案中,可如上文所述的那样生成和发送该警示。在一些实施方案中,这可包括选择和提供包含被配置成处理和/或纠正误解的内容的一个或若干个数据分组。在一些实施方案中,接收纠正的用户可为在框1110中被识别为具有用户误解的用户。
现在参考图18,其示出了一个流程图,该流程图示出用于识别用户误解的过程1130的一个实施方案。过程1130可作为图17的框1110的一部分或者替代该框来执行。在一些实施方案中,过程1130可由内容分发网络100和/或其部件(包括服务器)来执行。在一些实施方案中,过程1130可使用图9A至图9D中所示的引擎和/或模块来执行。
该过程从框1132处开始,在该框处,生成一个或若干个响应组群。在一些实施方案中,该一个或若干个响应组群中的每一个均可识别具有处于类似位置处的响应的用户。在一些实施方案中,这可包括根据所提供的响应是期望响应还是非期望响应和/或根据其响应为期望响应或非期望响应的原因来分组组群中的用户。在对选择响应问题(诸如,多项选择问题或真/假问题)的响应的情况下,可根据用户所选的响应来形成组群。在对构造响应问题的响应的情况下,可根据作为响应的一部分执行的一个或若干个用户步骤、提供给用户的支持响应的原因等来形成组群。在一些实施方案中,用户可与指示用户所在的响应组群的值相关联。响应组群可由服务器100并且具体地可由响应处理器678生成。
在生成了响应组群之后,过程1130前进至框1134,在该框处,确定组群百分比。在一些实施方案中,组群百分比可包括在框1132中所生成的响应组群中的每个响应组群发现的并且在框1102中所识别的用户组群中的用户的百分比。在一些实施方案中,组群百分比可包括在框1132中所生成的响应组群中的每个响应组群发现的并且在框1102中所识别的用户组群中的响应提供用户的百分比。在一些实施方案中,组群百分比可由服务器102并且具体地可由响应处理器678来确定。
在确定了组群百分比之后,过程1130前进至框1136,在该框处,检索误解阈值。在一些实施方案中,误解阈值可在其中存在误解的可能性足够小以便确保不会发生干预和/或纠正的情况与其中存在误解的可能性足够大以便确保发生干预和/或纠正的情况之间描绘。在一些实施方案中,误解阈值可从数据库服务器104检索,并且具体地可从数据库服务器104中的阈值数据库310检索。
在检索误解阈值之后,过程1130前进至框1138,在该框处,组群百分比与误解阈值进行比较。在一些实施方案中,这种比较可确定组群百分比是否指示误解存在的可能性足够大以便确保发生干预和/或纠正。在一些实施方案中,如果组群百分比与误解阈值的比较指示存在误解的可能性足够大以便确保发生干预,则第一值可与该组群相关联,并且如果组群百分比与误解阈值的比较指示存在误解的可能性不足以大到确保发生干预,则第二值可与该组群相关联。在一些实施方案中,可由服务器102(包括例如响应处理器678和/或模型引擎682)将组群百分比与误解阈值进行比较。
在已将组群百分比与误解阈值进行比较之后,过程1130前进至决策状态1140,在该框处,确定是否识别到潜在误解。在一些实施方案中,这可包括确定是第一值还是第二值与响应组群相关联。更具体地讲,这可包括选择一个响应组群以及确定所选的一个响应组群是与第一值相关联还是与第二值相关联。如果所选的一个响应组群与第一值相关联,则识别到潜在误解,或者,如果所选的一个响应组群与第二值相关联,则未识别到潜在误解。在一些实施方案中,可重复该过程,直到评估了响应组群中的每个响应组群以确定其是否与潜在误解相关联。如果确定了所选的一个潜在组群未与潜在误解相关联,则过程1130可前进至框1141并等待下一个响应。在一些实施方案中,在接收到下一个响应之后,过程可前进至图17的框1108。
再次返回决策状态1140,如果确定已识别潜在的误解,则过程1130前进至框1142,在该框处,更新元数据。在一些实施方案中,这可包括更新一些或全部响应组群中的用户的用户数据,并且在一些实施方案中,这可包括更新与例如图17的框1104中所提供的数据分组相关的元数据。在已更新元数据之后,过程1130前进至框1144,并且继续到图17的框1112。
现在参考图19,其示出一个流程图,该流程图示出用于自动触发干预的过程1200的一个实施方案。在一些实施方案中,这可包括针对具有所识别的误解的个体的干预。在一些实施方案中,该干预可包括靶向干预,该目标干预可包括附加内容、问题、评估等。在一些实施方案中,该干预可以一个或若干个附加数据分组的形式提供。在一些实施方案中,该干预可包括与AI(人工智能)代理的交互。在一些实施方案中,AI代理可包括问题应答计算系统、智能教学系统的全部或部分、教学代理等。在一些实施方案中,AI代理的功能可基于人工智能、机器学习等来确定。在一些实施方案中,AI代理可驻留在服务器102和/或内容分发网络100的另一部件中。在一些实施方案中,过程1200可由服务器102和/或内容分发网络100的另一部件来执行,该另一部件包括例如图9A至图9D中所示的引擎和/或模块。
过程1200在框1202处开始,在该框处,选择用户。在一些实施方案中,用户可选自与用户配置文件数据库301中的用户数据相关联的若干用户。在一些实施方案中,用户可由服务器102选择。在选择了用户之后,过程1200前进至框1204,在该框处,检索与框1202中所选的用户相关联的用户数据。在一些实施方案中,该用户数据可包括用户元数据,该用户元数据可识别用户的一个或若干个属性,包括所选用户的一个或若干个先前响应的评估结果。在一些实施方案中,可由例如服务器102从用户配置文件数据库301检索用户元数据。
在检索到用户数据之后,过程1200前进至决策状态1206,在该框处,确定所选用户是否与潜在的误解相关联。在一些实施方案中,这可包括确定所选用户是否属于与指示潜在误解的第一值相关联的组群。在一些实施方案中,该第一值可存储在用户元数据中,如图18的框1142中所示。在一些实施方案中,确定所选用户是否属于与第一值相关联的组群包括提取用户元数据中指示用户是否属于该组群的部分。
在一些实施方案中,确定所选用户是否与潜在误解相关联可包括确定所选用户是否与和误解相关联的一个或若干个节点相关联。在例如其中执行了图17和图18的过程1100和过程1130的一些实施方案中,与一个或若干个数据分组相关联的元数据可将这些数据分组识别为先前与误解相关联。在一些实施方案中,确定所选用户是否与潜在误解相关联可包括确定所选用户是否已遍历和/或接收到与具有识别先前相关联的误解的元数据的一个或若干个节点相关联的内容。在一些实施方案中,如果所选用户与一个或若干个此类节点相关联,则指示误解的可能性的值可基于例如一个或若干个属性与先前具有误解的用户的属性之间的比较来生成。如果指示误解可能性的该值足够高,则用户可被标记为具有潜在的误解。如果确定了所选用户具有潜在的误解,则过程1200前进至框1216并且等待下一个响应。
再次返回到决策状态1206,如果确定了用户属于与指示潜在误解的第一值相关联的组群,则过程1200前进至决策状态1208,在该框处,确定用户元数据是否包含附加数据,该附加数据指示与和第一值相关联的组群相关的误解,第一值指示如决策状态1206中所确定的所选用户所属的潜在误解。在一些实施方案中,这可包括:识别框1202中所选的用户提供的一个或若干个其他响应和/或与框1202中所选的用户提供的一个或若干个其他响应相关的元数据;以及确定该一个或若干个其他响应是否指示相关的误解。在一些实施方案中,该确定可由服务器102执行。
如果识别了一个或若干个先前的响应和/或与一个或若干个先前响应相关的元数据,该一个或若干个先前的响应指示与和第一值相关联的组群相关的误解,则过程1200前进至框1210,在该框处,检索误解阈值。
在一些实施方案中,误解阈值可为图18的框1136中所检索到的相同阈值,并且在一些实施方案中,框1210中所检索到的误解阈值可不同于图18的框1136中所检索到的误解阈值。在一些实施方案中,例如,图18的框1136中所检索到的误解阈值可用于识别与数据分组相关的误解和/或与图17的框1102中所识别的用户组群相关的误解。
由于图19的框1210中所识别的误解阈值用于识别单个用户中的误解,该阈值可不同于使用上文引用的其他情况的那些阈值。类似地,由于图17的框1102中所识别的用户组群自身可提供具有统计意义的样本,基于图17的框1102中所选的用户组群对单个数据分组的一组响应来识别与数据分组和/或图17的框1102中所识别的该组群相关的误解,而识别针对单个用户的误解则可能要求对多个数据分组的响应。在一些实施方案中,误解阈值的值可基于用户所提供的响应和/或与用户所提供的响应相关的元数据而变化。在一些实施方案中,例如,由于响应该类型响应中的猜测因素造成不确定性,可能要求更高的阈值以用于所选的响应类型的响应。误解阈值可由服务器102从阈值数据库310检索。
在检索到误解阈值之后,过程1200前进至框1212,在该框处,将误解阈值与和潜在误解相关的用户元数据的一些或所有部分进行比较,该潜在误解与包括该用户的组群相关联。在一些实施方案中,这可包括基于与该误解相关的一些或全部用户响应的集合来确定存在误解的可能性。在一些实施方案中,误解阈值与和该潜在误解相关的用户数据的一些或所有部分之间的比较可由服务器102来执行。
在比较了误解阈值与和误解相关的用户元数据之后,过程1200前进至框1214,在该框处,确定误解是否得到确认。在一些实施方案中,这可包括确定与潜在误解相关联的和/或与潜在误解相关的一些或所有元数据是否指示误解的可能性足够高以便确保发生干预。如果确定了干预得到确保,则过程1200可前进至框1218并且可触发干预。在一些实施方案中,该干预可包括靶向干预,该目标干预可包括递送内容以纠正一个或若干个所识别的误解。在一些实施方案中,该干预可包括与AI代理的一种或若干种交互。在一些实施方案中,这可包括生成警示并且将其发送到AI代理、框1202中所选的用户的用户设备106和/或框1202中所选的用户的监管人的两台监管人设备110。在一些实施方案中,该警示可包括计算机代码,该计算机代码被配置为触发AI代理的自动操作和/或被配置为自动显示一个或若干个数据片段,诸如,对决策状态1214中所确定的误解的识别。
再次返回到决策状态1214,如果确定了误解尚未得到确认,或者返回到决策状态1208,如果确定了框中所选用户未与和潜在误解(该潜在误解与用户所属的组群相关联)相关的元数据相关联,则过程1200可前进至框1220,在该框处,识别补充数据分组。在一些实施方案中,可从内容库数据库303中包含的一组数据分组中识别和/或选择补充数据分组。在一些实施方案中,补充数据分组可基于预期响应与所选数据分组的相关性来选择,以确定其是否可验证和/或针对潜在误解的干预是否得到确保。在一些实施方案中,补充数据分组可由服务器102和/或推荐引擎686来选择。
在选择了补充数据分组之后,过程1200可前进至框1222,在该框处,数据分组可提供给框1202中所选的用户。在一些实施方案中,可通过以下方式来将数据分组提供给框1202中所选的用户:将数据分组提供给呈现器模块672,该呈现器模块然后可将数据分组提供给视图模块674,该视图模块然后可经由I/O子系统526将数据分组提供给用户设备106的用户。
在将数据分组提供给用户之后,过程1200前进至框1224,在该框处,接收和评估对框1222中所提供的数据分组的响应。在一些实施方案中,响应可由呈现器模块672经由视图模块674、I/O子系统526和用户设备106来接收,并且响应可由响应处理器678来评估。在一些实施方案中,可使用从数据库服务器104并且具体地从内容库数据库303检索到的比较数据来评估响应。
在评估了响应之后,过程1200前进至框1226,在该框处,更新用户配置文件和/或用户元数据。在一些实施方案中,这可包括更新与用户和/或用户元数据相关联的一个或若干个模型,以反映框1224中对所接收响应的评估的结果。在一些实施方案中,用户元数据可由模型引擎682更新。在更新了用户配置文件和/或用户元数据之后,过程1200返回到框1210,并且如上文概述的那样继续。
还可使用所公开的实施方案的多个变型和修改。在上文的描述中给出了具体细节,以便深入理解这些实施方案。但是,应当理解,这些实施方案也可在不具备这些具体细节的情况下实践。例如,为避免使实施方案难以理解,熟知的电路、过程、算法、结构和技术在示出时可能去掉了不必要的细节。
可以多种方式完成上文所述的技术、框、步骤和手段的具体实施。例如,这些技术、框、步骤和手段可在硬件、软件或两者的组合中实施。对于硬件具体实施,处理单元可在一个或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑设备(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、设计成用于执行上文所述的功能的其他电子单元和/或它们的组合内实现。
此外,应当注意,实施方案可被描述为过程,该过程被描绘为流程图、流动图、数据流图、结构图或框图。尽管描绘内容可将操作描述为顺序过程,但许多操作可平行或同时执行。除此之外,这些操作的顺序可重新排列。当一个方法的操作完成时,该方法即终止,但可具有未包括在图中的附加步骤。方法可对应于方法、函数、程序、子例程、子程序等。当方法对应于功能时,其终止对应于使功能返回至调用函数或主函数。
此外,实施方案可由硬件、软件、加密语言、固件、中间件、微码、硬件描述语言和/或它们的组合来实现。在软件、固件、中间件、脚本语言和/或微码中实现时,执行必要任务的程序代码或代码段可储存在机器可读介质诸如存储介质中。代码段或机器可执行指令可表示过程、功能、子程序、程序、例程、子例程、模块、软件包、脚本、类或指令、数据结构和/或程序语句的任何组合。代码段可通过传递和/或接收信息、数据、变元、参数和/或存储内容而连接到另一代码段或硬件电路。信息、变元、参数、数据等可经由包括存储器共享、消息传递、令牌传递、网络传输等在内的任何适合的手段来传递、转发或传输。
对于固件和/或软件具体实施,方法可利用执行本文所述功能的模块(如,程序、功能等)来实施。可使用任何以有形方式体现指令的机器可读介质来实施本文所述的方法。例如,软件代码可储存于存储器中。存储器可在处理器内或在处理器外部实施。如上文所述,术语“存储器”是指任何类型的长期、短期、易失性、非易失性或其他存储介质,并且不限于任何特定类型的存储器或任何数量的存储器或者任何类型的存储器存储所在的介质。
此外,如本文所公开,术语“存储介质”可表示用于存储数据的一个或多个存储器,包括只读存储器(ROM)、随机存取存储器(RAM)、磁RAM、核心存储器、磁盘存储介质、光学存储介质、闪存存储器设备和/或用于存储信息的其他机器可读介质。术语“机器可读介质”包括但不限于,便携式或固定式存储设备、光学存储设备和/或各种其他能够储存且包含或携带指令和/或数据的存储介质。
尽管结合特定装置和方法在上文描述了本公开的原理,但应当清楚地理解,这些描述仅以举例的方式做出,而不作为对本公开的范围的限制。

Claims (100)

1.一种用第一推荐引擎和第二推荐引擎实现内容选择的系统,所述系统包括:
存储器,所述存储器包括:
内容库数据库,所述内容库数据库包括布置在内容网络中的多个节点,其中所述内容网络中的所述节点经由多个边缘成对地连接,其中所述内容网络中的一些所述节点与数据分组和防护条件相关联,并且其中所述内容网络中的一些所述节点与占位符内容的数据库相关联;以及
模型数据库,所述模型数据库包括与以下各项中的至少一者相关的多个模型:用户技能等级或数据分组难度等级;
用户设备,所述用户设备包括:
第一网络接口,所述第一网络接口被配置为经由通信网络交换数据;以及
第一I/O子系统,所述第一I/O子系统被配置为经由用户界面将电信号转换为用户可解读的输出;以及
一个或多个服务器,所述一个或多个服务器包括分组选择系统和呈现系统,其中所述一个或多个服务器被配置为:
接收来自所述用户设备的响应数据;
将所接收到的响应数据提供给第一推荐引擎,其中所述第一推荐引擎被配置为基于以下项来选择下一个节点:在所述内容网络中的当前位置;潜在的下一个节点;过去的响应数据;以及与所述潜在的下一个节点相关联的一个或若干个防护条件;
在所选的下一个节点包括占位符节点时警示第二推荐引擎,其中所述占位符节点与占位符内容的数据库相关联;
检索与下一个节点内容的选择相关的至少一个模型;以及
基于所述至少一个模型的输出选择下一个节点内容。
2.根据权利要求1所述的系统,其中向所述第一推荐引擎提供所接收到的响应数据还包括选择下一个节点。
3.根据权利要求2所述的系统,其中选择所述下一个节点包括:
识别潜在的下一个节点;以及
检索防护条件,其中每个防护条件定义用于进入所述潜在的下一个节点中的一个潜在的下一个节点中的一个或若干个先决条件。
4.根据权利要求2所述的系统,其中识别潜在的下一个节点包括:
识别所述用户在所述内容网络中的位置,其中所述用户在所述内容网络中的位置包括原始节点;
识别从所述原始节点延伸的边缘;以及
识别经由所识别的边缘连接到所述原始节点的非先决条件节点。
5.根据权利要求4所述的系统,其中选择所述下一个节点还包括:
识别与所述用户设备相关联的所述用户;以及
从所述存储器检索所述用户历史。
6.根据权利要求5所述的系统,其中选择所述下一个节点还包括将所述用户历史应用到所述潜在的下一个节点的所述防护条件。
7.根据权利要求6所述的系统,其中将所述用户历史应用到所述潜在的下一个节点的所述防护条件包括:
(a)选择所述潜在的下一个节点中的一个潜在的下一个节点;
(b)识别与所选的潜在的下一个节点相关联的防护条件;
(c)将所述防护条件与所述用户历史进行比较;以及
(d)当所述防护条件与所述用户历史的所述比较指示所述防护条件得到满足时,将第一值与所述潜在的下一个节点中的所选的一个潜在的下一个节点相关联。
8.根据权利要求7所述的系统,其中将步骤(a)至(d)重复用于每个所述潜在的下一个节点。
9.根据权利要求8所述的系统,其中基于所述至少一个模型的输出选择下一个节点内容包括:
识别与所述用户设备相关联的所述用户;
检索所述用户历史;以及
识别潜在的下一个节点内容。
10.根据权利要求9所述的系统,其中基于所述至少一个模型的输出选择下一个节点内容包括:
识别以下各项中的至少一者的一个或若干个特征:所述潜在的下一个节点内容或所述用户历史;
提取所识别的一个或若干个特征;以及
将所述一个或若干个特征中的一些或全部特征输入到所检索到的至少一个模型中。
11.根据权利要求10所述的系统,其中基于所述至少一个模型的输出选择下一个节点内容包括基于所述一个或若干个特征中的一些或全部特征的所述输入用所检索到的至少一个模型生成输出。
12.根据权利要求11所述的系统,其中所述一个或多个服务器被进一步配置为向所述用户设备提供所选的下一个节点内容。
13.根据权利要求12所述的系统,其中向所述用户设备提供所选的下一个节点内容包括:生成包含所选的下一个节点内容的多个电信号;以及将所述电信号发送到所述用户设备。
14.根据权利要求1所述的系统,其中所述第一推荐引擎在所述呈现系统中,并且其中所述第二推荐引擎在所述分组选择系统中。
15.一种用第一推荐引擎和第二推荐引擎实现内容选择的方法,所述方法包括:
在一个或多个服务器处接收来自用户设备的响应数据,所述一个或多个服务器包括分组选择系统和呈现系统;
自动地将所接收到的响应数据提供给第一推荐引擎,其中所述第一推荐引擎被配置为基于以下项中的至少一者来选择下一个节点:在所述内容网络中的当前位置;潜在的下一个节点;过去的响应数据;或与所述潜在的下一个节点相关联的一个或若干个防护条件;
在所选的下一个节点包括占位符节点时警示第二推荐引擎,其中占位符节点与占位符内容的数据库相关联;
从模型数据库检索与下一个节点内容的选择相关的至少一个模型,所述模型数据库包括与以下各项中的至少一者相关的多个模型:用户技能等级或数据分组难度等级;以及
基于所述至少一个模型的输出选择下一个节点内容。
16.根据权利要求15所述的方法,还包括向所述用户设备提供所选的下一个节点内容。
17.根据权利要求16所述的方法,其中向所述用户设备提供所选的下一个节点内容包括:生成包括所选的下一个节点内容的多个电信号;以及将所述电信号发送到所述用户设备。
18.根据权利要求17所述的方法,其中所述第一推荐引擎在所述呈现系统中,并且其中所述第二推荐引擎在所述分组选择系统中。
19.根据权利要求17所述的方法,其中基于所述至少一个模型的输出选择下一个节点内容包括:
识别与所述用户设备相关联的所述用户;
检索所述用户历史;以及
识别潜在的下一个节点内容。
20.根据权利要求19所述的方法,其中基于所述至少一个模型的输出选择下一个节点内容包括:
识别以下各项中的至少一者的一个或若干个特征:所述潜在的下一个节点内容或所述用户历史;
提取所识别的一个或若干个特征;以及
将所述一个或若干个特征中的一些或全部特征输入到所检索到的至少一个模型中。
21.一种用于实现混合内容提供的系统,所述系统包括:
存储器,所述存储器包括:
用户配置文件数据库,所述用户配置文件数据库包括与多个用户相关的信息,其中与所述多个用户相关的所述信息包括与所述多个用户中的每个用户相关联的唯一用户历史数据;以及
内容库数据库,所述内容库数据库包括内容网络中以顺序关系链接的多个节点,其中所述多个节点中的一些与防护条件相关联,其中每个防护条件识别用于进入与所述防护条件相关联的所述节点中的条件;
用户设备,所述用户设备包括:
第一网络接口,所述第一网络接口被配置为经由通信网络来交换数据;以及
第一I/O子系统,所述第一I/O子系统被配置为经由用户界面将电信号转换为用户可解读的输出;以及
一个或多个服务器,所述一个或多个服务器被配置为:
接收用户识别信息,其中所述用户识别信息识别用户;
确定由所接收到的用户识别信息识别的所述用户在所述内容网络中的所述位置;
基于所述用户在所述内容网络中的所述位置来识别潜在的下一个节点;
从所识别的潜在的下一个节点中确定下一个节点;以及
向所述用户提供下一个内容,其中当所述下一个节点不为占位符节点时,所述下一个内容直接链接到所述下一个节点,并且其中当所述下一个节点为占位符节点时,从与所确定的下一个节点相关联的占位符内容的数据库提供所述下一个内容。
22.根据权利要求21所述的系统,其中所述下一个内容经由呈现器模块向所述用户提供。
23.根据权利要求22所述的系统,其中所述呈现器模块驻留在所述一个或多个服务器中。
24.根据权利要求21所述的系统,其中所述用户的所述位置包括第一节点。
25.根据权利要求24所述的系统,其中识别潜在的下一个节点包括:识别通过边缘直接链接到所述第一节点的节点;以及识别所述节点的通过边缘直接链接到所述第一节点的子集,所述子集为所述第一节点的非先决条件节点。
26.根据权利要求25所述的系统,其中所述一个或多个服务器被进一步配置为:从所述内容库数据库检索用于所述潜在的下一个节点的门条件;以及检索所述用户的所述用户历史数据。
27.根据权利要求26所述的系统,其中通过将所检索到的用户历史数据应用到所检索到的防护条件来确定所述下一个节点。
28.根据权利要求27所述的系统,其中所述一个或多个服务器被进一步配置为确定所述下一个节点为占位符节点。
29.根据权利要求28所述的系统,还包括存储在所述存储器中的模型数据库,其中所述模型数据库包括多个预测模型。
30.根据权利要求29所述的系统,其中所述一个或多个服务器被进一步配置为:从所述模型数据库检索预测模型;检索与所述下一个节点相关联的潜在的占位符内容;以及从所检索到的潜在的占位符内容中识别所述下一个内容。
31.根据权利要求30所述的系统,其中所检索到的预测模型包括基于数学的统计模型。
32.根据权利要求21所述的系统,其中所述基于数学的统计模型基于项目响应理论(IRT)。
33.根据权利要求27所述的系统,其中所述一个或多个服务器被进一步配置为确定所述下一个节点不为占位符节点。
34.一种实现混合内容提供的方法,所述方法包括:
接收用户识别信息,其中所述用户识别信息识别用户;
确定所述用户在内容网络中的位置,所述内容网络包括以顺序关系链接的多个节点,其中所述多个节点中的一些与防护条件相关联,其中每个防护条件识别用于进入与所述防护条件相关联的所述节点中的条件;
基于所述用户在所述内容网络中的所述位置来识别潜在的下一个节点;
从所述潜在的下一个节点中确定下一个节点;以及
将下一个内容提供给所述用户,其中在所述下一个节点不为占位符节点时,所述下一个内容直接链接到所述下一个节点;并且其中当所述下一个节点为占位符节点时,从与确定的下一个节点相关联的占位符内容的数据库提供所述下一个内容。
35.根据权利要求34所述的方法,其中所述用户的所述位置包括第一节点。
36.根据权利要求35所述的方法,其中识别潜在的下一个节点包括:识别通过边缘直接链接到所述第一节点的节点;以及识别所述节点的通过边缘直接链接到所述第一节点的所述子集,所述子集为所述第一节点的非先决条件节点。
37.根据权利要求36所述的方法,还包括:从所述内容库数据库检索用于所述潜在的下一个节点的门条件;以及检索所述用户的所述用户历史数据。
38.根据权利要求37所述的方法,其中通过将所检索到的用户历史数据应用到所检索到的防护条件来确定所述下一个节点。
39.根据权利要求38所述的方法,还包括:确定所述下一个节点为占位符节点;从模型数据库检索预测模型;检索与所述下一个节点相关联的潜在的占位符内容;以及从所检索到的潜在的占位符内容中识别所述下一个内容。
40.根据权利要求39所述的方法,其中所检索到的预测模型包括基于数学的统计模型。
41.一种用于实现混合内容提供的系统,所述系统包括:
存储器,所述存储器包括:
内容库数据库,所述内容库数据库包括内容网络中以顺序关系链接的多个数据分组;
用户设备,所述用户设备包括:
视图模块;
第一网络接口,所述第一网络接口被配置为经由通信网络交换数据;以及
第一I/O子系统,所述第一I/O子系统被配置为经由用户界面将电信号转换为用户可解读的输出;以及
包括呈现器模块的一个或多个服务器,其中所述呈现器模块被配置为:
接收数据分组;
接收识别所述数据分组的预期接收方的信息;
从所接收到的数据分组提取分组元数据,其中所述分组元数据识别所接收到的数据分组的至少一个属性;
将所接收到的数据分组的递送部分提供给所述视图模块;
从所述视图模块接收所述呈现器模块处的数据请求;
检索与所述呈现器模块处的所述数据请求对应的第二数据分组;以及
接收对所提供的所接收的数据分组的递送部分的响应。
42.根据权利要求41所述的系统,其中所述数据分组元数据识别所述数据分组的递送部分和所述数据分组的非递送部分。
43.根据权利要求42所述的系统,其中所述数据分组元数据识别与所述数据分组相关联的防护条件。
44.根据权利要求42所述的系统,其中所述呈现器模块被配置为从所述数据分组提取所述非递送部分。
45.根据权利要求44所述的系统,其中所述呈现器模块包括定位在所述一个或多个服务器中的外部模块和定位在所述用户设备中的内部模块,其中所述外部模块和所述内部模块直接通信地连接。
46.根据权利要求45所述的系统,其中所述呈现器模块的所述外部模块被配置为识别与所述数据分组的所述预期接收方相关联的所述内部模块。
47.根据权利要求44所述的系统,其中所述呈现器模块被配置为识别与所述数据分组的所述预期接收方相关联的所述视图模块。
48.根据权利要求47所述的系统,其中检索所述第二数据分组包括:识别所述相关的数据存储库;以及请求所述第二数据分组。
49.根据权利要求48所述的系统,其中4,其中所述非递送部分包括评估数据,其中所述评估数据被配置为由响应处理器用于将响应转化为可观察对象。
50.根据权利要求49所述的系统,其中所述呈现器模块被进一步配置为在接收到所述响应时自动地生成指示所接收到的响应的消息并且将其发送到所述响应处理器。
51.根据权利要求50所述的系统,其中所述呈现器模块被配置为经由消息信道将指示所接收到的响应的所述消息发送到所述响应处理器。
52.根据权利要求50所述的系统,其中所述呈现器模块被配置为经由同步通信将指示所接收到的响应的所述消息直接发送到所述响应处理器。
53.一种用分布式呈现引擎实现内容提供的方法,所述方法包括:
在至少一个服务器中的呈现器模块处接收数据分组;
在所述至少一个服务器中的所述呈现器模块处接收识别所述数据分组的预期接收方的信息;
从所接收到的数据分组提取分组元数据,其中所述分组元数据识别所接收到的数据分组的至少一个属性;
将所接收到的数据分组的递送部分提供给定位在用户设备中的视图模块;
从所述视图模块接收所述呈现器模块处的数据请求;
检索与所述呈现器模块处的所述数据请求对应的第二数据分组;以及
接收对所提供的所接收的数据分组的递送部分的响应。
54.根据权利要求53所述的方法,其中所述数据分组元数据识别所述数据分组的递送部分和所述数据分组的非递送部分。
55.根据权利要求54所述的方法,其中所述数据分组元数据识别与所述数据分组相关联的防护条件。
56.根据权利要求54所述的方法,还包括从所述数据分组提取所述非递送部分。
57.根据权利要求56所述的方法,还包括识别与所述数据分组的所述预期接收方相关联的所述视图模块。
58.根据权利要求57所述的方法,其中检索所述第二数据分组包括:识别所述相关的数据存储库;以及请求所述第二数据分组。
59.根据权利要求56所述的方法,其中所述非递送部分包括评估数据,其中所述评估数据被配置为由响应处理器用于将响应转化为可观察对象。
60.根据权利要求59所述的方法,还包括在经由消息信道接收到所述响应时自动地生成指示所接收到的响应的消息并且将其发送到所述响应处理器。
61.一种用于自动纠正数据分组的系统,所述系统包括:
存储器,所述存储器包括:
内容库数据库,所述内容库数据库包括布置在内容网络中的多个节点;以及
阈值数据库,所述阈值数据库包括在存在误解的可接受可能性和存在误解的不可接受可能性之间描绘的误解阈值;
用户设备,所述用户设备包括:
第一网络接口,所述第一网络接口被配置为经由通信网络交换数据;以及
第一I/O子系统,所述第一I/O子系统被配置为经由用户界面将电信号转换为用户可解读的输出;以及
一个或多个服务器,所述一个或多个服务器被配置为:
识别用户组群,其中所述用户组群包括共享共同属性的多个用户;
向所述用户组群中的所述用户提供数据分组;
接收所述用户组群中的所述用户对所提供的数据分组的响应;
将所接收到的响应中的每个转化为可观察对象,其中所述可观察对象包括所接收到的响应的表征;
生成响应组群,所述响应组群包括所述用户组群中的用户组,其中基于所接收到的响应的所述可观察对象的共性来生成所述响应组群;
基于组群百分比与误解阈值的所述比较来识别误解;以及
生成并向用户设备发送请求修改与所述误解相关联的至少一个数据分组的警示。
62.根据权利要求61所述的系统,其中所述存储器还包括含有识别多个用户的数据的用户配置文件数据库。
63.根据权利要求61所述的系统,其中所述可观察对象识别所接收到的响应是包括期望响应还是包括非期望响应。
64.根据权利要求63所述的系统,其中所述一个或多个服务器被进一步配置为生成多个响应组群,其中所述响应组群中的每个响应组群均包括用户组。
65.根据权利要求64所述的系统,其中基于由所接收到的响应生成的可观察对象的共同属性来生成响应组群。
66.根据权利要求65所述的系统,其中所述一个或多个服务器被进一步配置为针对所述响应组群中的每个响应组群生成组群百分比,其中所述组群百分比识别被分组在与所述组群百分比相关联的所述响应组群中的用户的百分比。
67.根据权利要求66所述的系统,其中所述一个或多个服务器被进一步配置为:
从所述误解数据库检索误解阈值;
将所述误解阈值与所述响应组群中的每个响应组群的所述组群百分比进行比较;以及
基于所述误解阈值与所述响应组群中的一个响应组群的所述组群百分比的所述比较来识别用于所述响应组群中的所述一个响应组群的潜在误解。
68.根据权利要求67所述的系统,其中所述一个或多个服务器被进一步配置为更新指示所识别的潜在误解的元数据。
69.根据权利要求68所述的系统,其中所述更新的元数据包括属于所述响应组群中的一个响应组群的用户的用户元数据。
70.根据权利要求68所述的系统,其中所述更新的元数据包括所提供的数据分组的元数据。
71.一种用于自动纠正数据分组的方法,所述方法包括:
识别用户组群,其中所述用户组群包括共享共同属性的多个用户;
向所述用户组群中的所述用户提供数据分组;
接收所述用户组群中的所述用户对所提供的数据分组的响应;
将所接收到的响应中的每个转化为可观察对象,其中所述可观察对象包括所接收到的响应的表征;
生成响应组群,所述响应组群包括所述用户组群中的用户组,其中基于所接收到的响应的所述可观察对象的共性来生成所述响应组群;
基于组群百分比与误解阈值的所述比较来识别误解;以及
生成并向用户设备发送请求修改与所述误解相关联的至少一个数据分组的警示。
72.根据权利要求71所述的方法,其中生成并发送警示包括识别与所识别的误解相关联的一个或若干个数据分组。
73.根据权利要求71所述的方法,其中所述可观察对象识别所接收到的响应是包括期望响应还是包括非期望响应。
74.根据权利要求73所述的方法,还包括生成多个响应组群,其中所述响应组群中的每个响应组群均包括用户组。
75.根据权利要求74所述的方法,其中基于由所接收到的响应生成的可观察对象的共同属性来生成响应组群。
76.根据权利要求75所述的方法,还包括针对所述响应组群中的每个响应组群生成组群百分比,其中所述组群百分比识别被分组在与所述组群百分比相关联的所述响应组群中的用户的百分比。
77.根据权利要求76所述的方法,还包括:
从误解数据库检索误解阈值;
将所述误解阈值与所述响应组群中的每个响应组群的所述组群百分比进行比较;以及
基于所述误解阈值与所述响应组群中的一个响应组群的所述组群百分比的所述比较来识别针对所述响应组群中的所述一个响应组群的潜在误解。
78.根据权利要求77所述的方法,还包括更新指示所识别的潜在误解的元数据。
79.根据权利要求78所述的方法,其中所述更新的元数据包括属于所述响应组群中的所述一个响应组群的用户的用户元数据。
80.根据权利要求78所述的方法,其中所述更新的元数据包括所提供的数据分组的元数据。
81.一种用于自动纠正数据分组的系统,所述系统包括:
存储器,所述存储器包括:
内容库数据库,所述内容库数据库包括布置在内容网络中的多个节点;以及
阈值数据库,所述阈值数据库包括在存在误解的可接受可能性和存在误解的不可接受可能性之间描绘的误解阈值;
用户设备,所述用户设备包括:
第一网络接口,所述第一网络接口被配置为经由通信网络交换数据;以及
第一I/O子系统,所述第一I/O子系统被配置为经由用户界面将电信号转换为用户可解读的输出;以及
一个或多个服务器,所述一个多个服务器被配置为:
识别用户组群,其中所述用户组群包括共享共同属性的多个用户;
将数据分组提供给所述用户组群中的所述用户;
接收所述用户组群中的所述用户对所提供的数据分组的响应;
将所接收到的响应中的每个转化为可观察对象,其中所述可观察对象包括所接收到的响应的表征;
生成包括所述用户组群中的用户组的响应组群,其中基于所接收到的响应的所述可观察对象的共性来生成所述响应组群;
基于组群百分比与误解阈值的所述比较来识别误解,以及
生成并向用户设备发送请求修改与所述误解相关联的至少一个数据分组的警示。
82.根据权利要求81所述的系统,其中所述存储器还包括含有识别多个用户的数据的用户配置文件数据库。
83.根据权利要求81所述的系统,其中所述可观察对象识别所接收到的响应是包括期望响应还是包括非期望响应。
84.根据权利要求83所述的系统,其中所述一个或多个服务器被进一步配置为生成多个响应组群,其中所述响应组群中的每个响应组群均包括用户组。
85.根据权利要求84所述的系统,其中基于从所接收到的响应生成的可观察对象的共同属性来生成响应组群。
86.根据权利要求85所述的系统,其中所述一个或多个服务器被进一步配置为生成用于所述响应组群中的每个响应组群的组群百分比,其中所述组群百分比识别被分组在与所述组群百分比相关联的所述响应组群中的用户的所述百分比。
87.根据权利要求86所述的系统,其中所述一个或多个服务器被进一步配置为:
从所述误解数据库检索误解阈值;
将所述误解阈值与所述响应组群中的每个响应组群的所述组群百分比进行比较;以及
基于所述误解阈值与所述响应组群中的一个响应组群的所述组群百分比的所述比较识别所述响应组群中的所述一个响应组群的潜在误解。
88.根据权利要求87所述的系统,其中所述一个或多个服务器被进一步配置为更新指示所识别的潜在误解的元数据。
89.根据权利要求88所述的系统,其中所述更新的元数据包括属于所述响应组群中的所述一个响应组群的用户的用户元数据。
90.根据权利要求88所述的系统,其中所述更新的元数据包括所提供的数据分组的元数据。
91.一种用于自动纠正数据分组的方法,所述方法包括:
识别用户组群,其中所述用户组群包括共享共同属性的多个用户;
向所述用户组群中的所述用户提供数据分组;
接收所述用户组群中的所述用户对所提供的数据分组的响应;
将所接收到的响应中的每个转化为可观察对象,其中所述可观察对象包括所接收到的响应的表征;
生成响应组群,所述响应组群包括所述用户组群中的用户组,其中基于所接收到的响应的所述可观察对象的共性来生成所述响应组群;
基于组群百分比与误解阈值的所述比较来识别误解;以及
生成并向用户设备发送请求修改与所述误解相关联的至少一个数据分组的警示。
92.根据权利要求91所述的方法,其中生成并发送警示包括识别与所识别的误解相关联的一个或若干个数据分组。
93.根据权利要求91所述的方法,其中所述可观察对象识别所接收到的响应是包括期望响应还是包括非期望响应。
94.根据权利要求93所述的方法,还包括生成多个响应组群,其中所述响应组群中的每个响应组群均包括用户组。
95.根据权利要求94所述的方法,其中基于由所接收到的响应生成的可观察对象的共同属性来生成响应组群。
96.根据权利要求95所述的方法,还包括针对所述响应组群中的每个响应组群生成组群百分比,其中所述组群百分比识别被分组在与所述组群百分比相关联的所述响应组群中的用户的所述百分比。
97.根据权利要求96所述的方法,还包括:
从误解数据库检索误解阈值;
将所述误解阈值与所述响应组群中的每个响应组群的所述组群百分比进行比较;以及
基于所述误解阈值与所述响应组群中的一个响应组群的所述组群百分比的所述比较来识别针对所述响应组群中的所述一个响应组群的潜在误解。
98.根据权利要求97所述的方法,还包括更新指示所识别的潜在误解的元数据。
99.根据权利要求98所述的方法,其中所述更新的元数据包括属于所述响应组群中的所述一个响应组群的用户的用户元数据。
100.根据权利要求98所述的方法,其中所述更新的元数据包括所提供的数据分组的元数据。
CN201780029648.3A 2016-04-08 2017-04-07 用双推荐引擎实现内容提供的系统和方法 Withdrawn CN109074751A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662320213P 2016-04-08 2016-04-08
US62/320,213 2016-04-08
US15/236,238 2016-08-12
US15/236,238 US10614368B2 (en) 2015-08-28 2016-08-12 System and method for content provisioning with dual recommendation engines
PCT/US2017/026648 WO2017177161A1 (en) 2016-04-08 2017-04-07 System and method for content provisioning with dual recommendation engines

Publications (1)

Publication Number Publication Date
CN109074751A true CN109074751A (zh) 2018-12-21

Family

ID=59999567

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201780035911.XA Pending CN109661660A (zh) 2016-04-08 2017-04-07 基于人工智能的内容推荐和调配的方法和系统
CN201780029648.3A Withdrawn CN109074751A (zh) 2016-04-08 2017-04-07 用双推荐引擎实现内容提供的系统和方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201780035911.XA Pending CN109661660A (zh) 2016-04-08 2017-04-07 基于人工智能的内容推荐和调配的方法和系统

Country Status (4)

Country Link
US (21) US10325215B2 (zh)
EP (4) EP3440567A4 (zh)
CN (2) CN109661660A (zh)
WO (3) WO2017176493A1 (zh)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11947582B2 (en) * 2015-01-12 2024-04-02 International Business Machines Corporation Enhanced knowledge delivery and attainment using a question answering system
US10325215B2 (en) * 2016-04-08 2019-06-18 Pearson Education, Inc. System and method for automatic content aggregation generation
US10642848B2 (en) 2016-04-08 2020-05-05 Pearson Education, Inc. Personalized automatic content aggregation generation
US10789316B2 (en) 2016-04-08 2020-09-29 Pearson Education, Inc. Personalized automatic content aggregation generation
US10015280B2 (en) 2016-08-18 2018-07-03 Google Llc Content delivery acceleration system
US10200457B2 (en) * 2016-10-26 2019-02-05 Uber Technologies, Inc. Selective distribution of machine-learned models
US20180374371A1 (en) * 2017-06-27 2018-12-27 International Business Machines Corporation Recommending learning activities
US10878359B2 (en) 2017-08-31 2020-12-29 East Carolina University Systems, methods, and computer program products for generating a normalized assessment of instructors
US10454803B2 (en) * 2017-10-02 2019-10-22 Salesforce.Com, Inc. Inspecting network performance at diagnosis points
US10979392B2 (en) 2017-10-19 2021-04-13 Bank Of America Corporation Preventing unauthorized access to secure enterprise information systems using a multi-filtering and randomizing control system
US20190164095A1 (en) * 2017-11-27 2019-05-30 International Business Machines Corporation Natural language processing of feeds into functional software input
US20190171985A1 (en) * 2017-12-05 2019-06-06 Promontory Financial Group Llc Data assignment to identifier codes
US10592309B2 (en) 2017-12-05 2020-03-17 Bank Of America Corporation Using smart data to forecast and track dual stage events
US20190188614A1 (en) * 2017-12-14 2019-06-20 Promontory Financial Group Llc Deviation analytics in risk rating systems
US10500510B1 (en) * 2017-12-27 2019-12-10 Disney Enterprises, Inc. Contextually changing guest messaging and experience
CN107992633B (zh) * 2018-01-09 2021-07-27 国网福建省电力有限公司 基于关键词特征的电子文档自动分类方法及系统
CN110314381B (zh) * 2018-03-28 2022-08-12 腾讯科技(深圳)有限公司 任务处理方法及装置、计算机可读介质和电子设备
US11250720B2 (en) 2018-03-30 2022-02-15 Pearson Education, Inc. Systems and methods for automated and direct network positioning
US10721255B2 (en) * 2018-04-05 2020-07-21 Oath Inc. Systems and methods for assessing riskiness of a domain
US10979521B2 (en) * 2018-04-12 2021-04-13 Pearson Management Services Limited Systems and methods for stacked-microservice based content provisioning
WO2019218370A1 (zh) * 2018-05-18 2019-11-21 深圳傲智天下信息科技有限公司 一种ai语音交互方法、装置及系统
CN110647314B (zh) * 2018-06-27 2023-12-08 阿里巴巴(中国)有限公司 技能生成方法、装置及电子设备
US11531928B2 (en) * 2018-06-30 2022-12-20 Microsoft Technology Licensing, Llc Machine learning for associating skills with content
WO2020018736A1 (en) * 2018-07-19 2020-01-23 Pearson Education, Inc. Personalized automatic content aggregation generation
CN110866040B (zh) * 2018-08-27 2024-05-17 京东科技控股股份有限公司 用户画像生成方法、装置和系统
US11380211B2 (en) * 2018-09-18 2022-07-05 Age Of Learning, Inc. Personalized mastery learning platforms, systems, media, and methods
KR20200045821A (ko) * 2018-10-23 2020-05-06 삼성전자주식회사 전자의무기록에 기반하여 대화서비스를 제공하는 전자 장치 및 방법
US10540388B1 (en) 2018-11-02 2020-01-21 International Business Machines Corporation Location-aware intelligent data migration and delivery
US11182727B2 (en) * 2018-11-05 2021-11-23 International Business Machines Corporation Automatically detecting inconsistencies between a business process model and a corresponding tutorial video
US20200177529A1 (en) * 2018-11-29 2020-06-04 International Business Machines Corporation Contextually correlated live chat comments in a live stream with mobile notifications
CN109784967A (zh) * 2018-12-05 2019-05-21 微梦创科网络科技(中国)有限公司 一种信息的推送方法和装置
BR112021010468A2 (pt) * 2018-12-31 2021-08-24 Intel Corporation Sistemas de segurança que empregam inteligência artificial
CN110187912B (zh) * 2019-05-16 2022-03-29 华为技术有限公司 一种节点选择方法和装置
US11501233B2 (en) * 2019-05-21 2022-11-15 Hcl Technologies Limited System and method to perform control testing to mitigate risks in an organization
CN110362796B (zh) * 2019-05-29 2024-05-07 平安科技(深圳)有限公司 业务辅助方法、装置、业务自助机及存储介质
US11381651B2 (en) * 2019-05-29 2022-07-05 Adobe Inc. Interpretable user modeling from unstructured user data
CN110399456B (zh) * 2019-06-06 2023-01-06 深思考人工智能机器人科技(北京)有限公司 一种问题对话补全的方法及装置
US11501654B2 (en) * 2019-06-23 2022-11-15 International Business Machines Corporation Automated decision making for selecting scaffolds after a partially correct answer in conversational intelligent tutor systems (ITS)
CN110309422A (zh) * 2019-06-24 2019-10-08 维沃移动通信有限公司 推送方法、服务器及终端
US11485368B2 (en) * 2019-06-27 2022-11-01 Intuition Robotics, Ltd. System and method for real-time customization of presentation features of a vehicle
CA3149002A1 (en) * 2019-08-14 2021-02-18 Liveperson, Inc. Systems and methods for managing interaction invitations
US10972921B2 (en) * 2019-08-27 2021-04-06 Accenture Global Solutions Limited Wireless signal strength optimizer
US20210065019A1 (en) * 2019-08-28 2021-03-04 International Business Machines Corporation Using a dialog system for learning and inferring judgment reasoning knowledge
US10908933B1 (en) * 2019-12-05 2021-02-02 Microsoft Technology Licensing, Llc Brokerage tool for accessing cloud-based services
US11134392B2 (en) * 2020-01-02 2021-09-28 Lenovo (Singapore) Pte. Ltd. Method and device for managing extender nodes for a wireless device
US20210319481A1 (en) * 2020-04-13 2021-10-14 PM Labs, Inc. System and method for summerization of customer interaction
US20210407310A1 (en) * 2020-06-25 2021-12-30 Kamaria Finch Teaching and learning platform
CN112651226B (zh) * 2020-09-21 2022-03-29 深圳前海黑顿科技有限公司 基于依存句法树的知识解析系统及方法
US11074509B1 (en) 2020-10-30 2021-07-27 AstrumU, Inc. Predictive learner score
US11928607B2 (en) * 2020-10-30 2024-03-12 AstrumU, Inc. Predictive learner recommendation platform
WO2022180454A1 (en) * 2021-02-24 2022-09-01 Rab Edutech Private Limited System and method for a double screen electronic book
CN113596920B (zh) * 2021-07-29 2024-04-05 百度在线网络技术(北京)有限公司 流量控制方法、装置、电子设备及存储介质
CA3240912A1 (en) * 2021-12-13 2023-06-22 Edwin GRAPPIN Server and method for generating digital content for users of a recommendation system
CN114363216B (zh) * 2021-12-31 2024-02-27 上海淇玥信息技术有限公司 一种嵌入式系统全渠道流量映射的方法、装置、电子设备
US20230316940A1 (en) * 2022-04-01 2023-10-05 Chegg, Inc. Methods and systems for automatic speech signal processing using natural language processing (nlp) algorithms to provide personalized learning activities during real-time spoken conversations
US20230328332A1 (en) * 2022-04-08 2023-10-12 Safe Kids LLC Methods and systems for counseling a user with respect to identified content
US11847172B2 (en) 2022-04-29 2023-12-19 AstrumU, Inc. Unified graph representation of skills and acumen
WO2024103083A1 (en) 2022-11-14 2024-05-23 Xephor Solutions GmbH Computing system

Family Cites Families (184)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL108330A (en) * 1993-01-15 2004-02-19 Novartis Seeds B V Method for preparing somatic embryos from a medium of suspension culture of plant tissue and preparation of plants from the above embryos
US5850561A (en) 1994-09-23 1998-12-15 Lucent Technologies Inc. Glossary construction tool
US6049777A (en) 1995-06-30 2000-04-11 Microsoft Corporation Computer-implemented collaborative filtering based method for recommending an item to a user
US6112186A (en) 1995-06-30 2000-08-29 Microsoft Corporation Distributed system for facilitating exchange of user information and opinion using automated collaborative filtering
US6427063B1 (en) * 1997-05-22 2002-07-30 Finali Corporation Agent based instruction system and method
US5727950A (en) * 1996-05-22 1998-03-17 Netsage Corporation Agent based instruction system and method
US5945988A (en) * 1996-06-06 1999-08-31 Intel Corporation Method and apparatus for automatically determining and dynamically updating user preferences in an entertainment system
US6542880B2 (en) * 1998-12-22 2003-04-01 Indeliq, Inc. System, method and article of manufacture for a goal based system utilizing a table based architecture
US6023692A (en) 1998-12-22 2000-02-08 Ac Properties B.V. Goal based tutoring system with behavior to control flow of presentation
US7818275B2 (en) * 1999-02-08 2010-10-19 Accenture Global Services Gmbh Runtime program regression analysis tool for a simulation engine
US6202062B1 (en) 1999-02-26 2001-03-13 Ac Properties B.V. System, method and article of manufacture for creating a filtered information summary based on multiple profiles of each single user
US6721697B1 (en) * 1999-10-18 2004-04-13 Sony Corporation Method and system for reducing lexical ambiguity
US7082552B2 (en) * 2000-02-08 2006-07-25 Mips Tech Inc Functional validation of a packet management unit
US6807535B2 (en) 2000-03-08 2004-10-19 Lnk Corporation Intelligent tutoring system
US6470170B1 (en) 2000-05-18 2002-10-22 Hai Xing Chen System and method for interactive distance learning and examination training
US7212985B2 (en) * 2000-10-10 2007-05-01 Intragroup, Inc. Automated system and method for managing a process for the shopping and selection of human entities
US7401125B1 (en) * 2000-10-10 2008-07-15 Ricoh Corporation System, computer program product and method for managing documents
US6904408B1 (en) 2000-10-19 2005-06-07 Mccarthy John Bionet method, system and personalized web content manager responsive to browser viewers' psychological preferences, behavioral responses and physiological stress indicators
US20050060162A1 (en) 2000-11-10 2005-03-17 Farhad Mohit Systems and methods for automatic identification and hyperlinking of words or other data items and for information retrieval using hyperlinked words or data items
JP4336865B2 (ja) 2001-03-13 2009-09-30 日本電気株式会社 音声認識装置
US7356188B2 (en) * 2001-04-24 2008-04-08 Microsoft Corporation Recognizer of text-based work
US7286793B1 (en) * 2001-05-07 2007-10-23 Miele Frank R Method and apparatus for evaluating educational performance
US7409335B1 (en) 2001-06-29 2008-08-05 Microsoft Corporation Inferring informational goals and preferred level of detail of answers based on application being employed by the user
US20030039948A1 (en) * 2001-08-09 2003-02-27 Donahue Steven J. Voice enabled tutorial system and method
US20030044762A1 (en) 2001-08-29 2003-03-06 Assessment Technology Inc. Educational management system
US20030082508A1 (en) * 2001-10-30 2003-05-01 Motorola, Inc. Training method
US6877987B2 (en) 2002-01-02 2005-04-12 International Business Machines Corporation Pervasive educational assistant and study aid for students
US20040076930A1 (en) * 2002-02-22 2004-04-22 Steinberg Linda S. Partal assessment design system for educational testing
US20040153373A1 (en) 2003-01-31 2004-08-05 Docomo Communications Laboratories Usa, Inc. Method and system for pushing services to mobile devices in smart environments using a context-aware recommender
US8750782B2 (en) * 2003-04-02 2014-06-10 Joseph M. Scandura Building and delivering highly adaptive and configurable tutoring systems
AU2003902589A0 (en) 2003-05-26 2003-06-12 Commonwealth Scientific And Industrial Research Organisation A method for identifying a subset of components of a system
US20050208458A1 (en) 2003-10-16 2005-09-22 Leapfrog Enterprises, Inc. Gaming apparatus including platform
US7976311B2 (en) 2003-12-10 2011-07-12 International Business Machines Corporation Automatic determination of E-learning obsolescence
US10325272B2 (en) 2004-02-20 2019-06-18 Information Resources, Inc. Bias reduction using data fusion of household panel data and transaction data
US9407963B2 (en) * 2004-02-27 2016-08-02 Yahoo! Inc. Method and system for managing digital content including streaming media
US20050234761A1 (en) 2004-04-16 2005-10-20 Pinto Stephen K Predictive model development
US7730003B2 (en) 2004-04-16 2010-06-01 Fortelligent, Inc. Predictive model augmentation by variable transformation
US20050267770A1 (en) * 2004-05-26 2005-12-01 International Business Machines Corporation Methods and apparatus for performing task management based on user context
US7941491B2 (en) 2004-06-04 2011-05-10 Messagemind, Inc. System and method for dynamic adaptive user-based prioritization and display of electronic messages
US8501198B2 (en) 2004-06-07 2013-08-06 Qu Biologics Inc. Tissue targeted antigenic activation of the immune response to treat cancers
US7584100B2 (en) * 2004-06-30 2009-09-01 Microsoft Corporation Method and system for clustering using generalized sentence patterns
US7628614B2 (en) 2004-08-23 2009-12-08 Educational Testing Service Method for estimating examinee attribute parameters in cognitive diagnosis models
US7593924B2 (en) 2004-09-20 2009-09-22 Microsoft Corporation Method, system, and apparatus for receiving and responding to knowledge interchange queries
US7885844B1 (en) * 2004-11-16 2011-02-08 Amazon Technologies, Inc. Automatically generating task recommendations for human task performers
US8510737B2 (en) * 2005-01-07 2013-08-13 Samsung Electronics Co., Ltd. Method and system for prioritizing tasks made available by devices in a network
US7828552B2 (en) 2005-02-22 2010-11-09 Educational Testing Service Method and system for designing adaptive, diagnostic assessments
US20060199165A1 (en) 2005-03-03 2006-09-07 Christopher Crowhurst Apparatuses, methods and systems to deploy testing facilities on demand
US7715589B2 (en) 2005-03-07 2010-05-11 Massachusetts Institute Of Technology Occluding contour detection and storage for digital photography
WO2006099492A2 (en) 2005-03-15 2006-09-21 Bridgeforce, Inc. Credit scoring method and system
US20060246411A1 (en) 2005-04-27 2006-11-02 Yang Steven P Learning apparatus and method
US7957363B2 (en) 2005-05-26 2011-06-07 International Business Machines Corporation System, method, and service for dynamically selecting an optimum message pathway
US20060277565A1 (en) 2005-06-06 2006-12-07 Long Jerral A Dynamic content rating in a digital broadcast
US9860599B2 (en) * 2005-06-17 2018-01-02 At&T Intellectual Property I, L.P. Methods, systems, and products for providing sample content
US7738884B2 (en) 2005-06-28 2010-06-15 Microsoft Corporation Positioning service utilizing existing radio base stations
US7409201B2 (en) * 2005-08-11 2008-08-05 At&T Mobility Ii Llc Automated provisioning, maintenance, and information logging of custom access point names in packet-based mobile cellular networks
EP1783593A3 (en) 2005-10-07 2012-12-19 Sony Corporation Information processing apparatus with a user interface comprising a touch panel, method and program
US7747369B2 (en) 2005-12-15 2010-06-29 Caterpillar Trimble Control Technologies, Llc System and method for sharing terrain data among multiple machines
US20070172810A1 (en) 2006-01-26 2007-07-26 Let's Go Learn, Inc. Systems and methods for generating reading diagnostic assessments
US20070172808A1 (en) 2006-01-26 2007-07-26 Let's Go Learn, Inc. Adaptive diagnostic assessment engine
US8149771B2 (en) 2006-01-31 2012-04-03 Roundbox, Inc. Reliable event broadcaster with multiplexing and bandwidth control functions
KR20090013193A (ko) 2006-05-18 2009-02-04 코닌클리케 필립스 일렉트로닉스 엔.브이. Rf 스펙트럼에서 일시적으로 사용되지 않는 대역폭을 검출하기 위한 시스템 및 방법
WO2007140270A2 (en) 2006-05-25 2007-12-06 Vialogy Corp. Analyzing information gathered using multiple analytical techniques
WO2008030991A2 (en) * 2006-09-06 2008-03-13 Agilix Labs, Inc. Security methods for preventing access to educational information by third parties
US8112446B2 (en) * 2006-12-30 2012-02-07 Agilant Learning Services Llc Centralized content repositories for distributed learning management systems
CN101017540A (zh) * 2007-01-24 2007-08-15 华为技术有限公司 智能问卷系统、问卷开发方法及装置
US20080228698A1 (en) 2007-03-16 2008-09-18 Expanse Networks, Inc. Creation of Attribute Combination Databases
US8200527B1 (en) * 2007-04-25 2012-06-12 Convergys Cmg Utah, Inc. Method for prioritizing and presenting recommendations regarding organizaion's customer care capabilities
JP5204217B2 (ja) 2007-05-15 2013-06-05 ティヴォ インク スイベル検索システム
US8108786B2 (en) 2007-09-14 2012-01-31 Victoria Ann Tucci Electronic flashcards
WO2009019671A1 (en) * 2007-08-09 2009-02-12 Markport Limited Network resource management
US20090075246A1 (en) * 2007-09-18 2009-03-19 The Learning Chameleon, Inc. System and method for quantifying student's scientific problem solving efficiency and effectiveness
US9685094B2 (en) 2007-09-26 2017-06-20 Verizon Patent And Licensing Inc. Text to training aid conversion system and service
US8214308B2 (en) 2007-10-23 2012-07-03 Sas Institute Inc. Computer-implemented systems and methods for updating predictive models
US8356997B1 (en) * 2007-12-10 2013-01-22 Accella Learning, LLC Intelligent tutoring system
US20090197238A1 (en) * 2008-02-05 2009-08-06 Microsoft Corporation Educational content presentation system
WO2009102728A1 (en) * 2008-02-11 2009-08-20 Clearshift Corporation Online work management system
US20090276233A1 (en) * 2008-05-05 2009-11-05 Brimhall Jeffrey L Computerized credibility scoring
WO2009149262A1 (en) 2008-06-04 2009-12-10 Us Biomedical Information Systems, Inc. Methods and systems for creating and editing a graph data structure
US8727788B2 (en) 2008-06-27 2014-05-20 Microsoft Corporation Memorization optimization platform
US9152722B2 (en) 2008-07-22 2015-10-06 Yahoo! Inc. Augmenting online content with additional content relevant to user interest
EP4083968A1 (en) * 2008-07-28 2022-11-02 Breakthrough Performancetech, LLC Systems and methods for computerized interactive skill training
WO2010083540A1 (en) * 2009-01-14 2010-07-22 Novolibri Cc Digital electronic tutoring system
US20100190142A1 (en) 2009-01-28 2010-07-29 Time To Know Ltd. Device, system, and method of automatic assessment of pedagogic parameters
US8396952B2 (en) 2009-08-12 2013-03-12 International Business Machines Corporation Provisioning and commissioning a communications network with a virtual network operations center and interface
US20120251985A1 (en) * 2009-10-08 2012-10-04 Sony Corporation Language-tutoring machine and method
WO2011088412A1 (en) 2010-01-15 2011-07-21 Apollo Group, Inc. Dynamically recommending learning content
US8799765B1 (en) 2010-02-01 2014-08-05 Inkling Systems, Inc. Systems for sharing annotations and location references for same for displaying the annotations in context with an electronic document
US20130029300A1 (en) * 2010-03-23 2013-01-31 Jay Shiro Tashiro Method for Competency Assessment of Healthcare Students and Practitioners
US8843548B2 (en) * 2010-03-31 2014-09-23 Prospx, Inc. System for providing information and information experts to a plurality of users
US8396268B2 (en) 2010-03-31 2013-03-12 Isis Innovation Limited System and method for image sequence processing
US20130036076A1 (en) 2010-04-14 2013-02-07 Hewlett-Packard Development Company, L.P. Method for keyword extraction
WO2011134048A1 (en) * 2010-04-26 2011-11-03 Locationary Inc. System, method and computer program for creation or collection of information using crowd sourcing combined with targeted incentives
US8234111B2 (en) 2010-06-14 2012-07-31 Google Inc. Speech and noise models for speech recognition
US10388178B2 (en) * 2010-08-27 2019-08-20 Arthur Carl Graesser Affect-sensitive intelligent tutoring system
US20120072845A1 (en) 2010-09-21 2012-03-22 Avaya Inc. System and method for classifying live media tags into types
US20120150579A1 (en) 2010-12-08 2012-06-14 Exvo.Com Company B.V. Work distribution system and method of distributing work
US20120208166A1 (en) * 2011-02-16 2012-08-16 Steve Ernst System and Method for Adaptive Knowledge Assessment And Learning
WO2012125659A2 (en) 2011-03-13 2012-09-20 Delart Technology Services Llc Method and system for collborative on-line learning management with educational networking
US8774043B2 (en) 2011-06-08 2014-07-08 Citrix Systems, Inc. Methods and apparatus for using a layered gear to analyze and manage real-time network quality of service transmission for mobile devices on public networks
US8768782B1 (en) * 2011-06-10 2014-07-01 Linkedin Corporation Optimized cloud computing fact checking
US20130073343A1 (en) 2011-09-21 2013-03-21 Richard A. Richardson Task Completion Tracking and Management System
US20130095461A1 (en) 2011-10-12 2013-04-18 Satish Menon Course skeleton for adaptive learning
US9805482B2 (en) * 2011-10-13 2017-10-31 Autodesk, Inc. Computer-implemented tutorial for visual manipulation software
US9092428B1 (en) * 2011-12-09 2015-07-28 Guangsheng Zhang System, methods and user interface for discovering and presenting information in text content
US20130173517A1 (en) 2011-12-30 2013-07-04 Nokia Corporation Method and apparatus for coordinating content across devices based on stimuli
US20130266925A1 (en) 2012-01-30 2013-10-10 Arizona Board Of Regents On Behalf Of The University Of Arizona Embedded Conversational Agent-Based Kiosk for Automated Interviewing
US8880439B2 (en) 2012-02-27 2014-11-04 Xerox Corporation Robust Bayesian matrix factorization and recommender systems using same
PT2820616T (pt) 2012-02-29 2019-06-12 Airbnb Inc Determinação de especialistas empíricos e sistema e método de encaminhamento de perguntas
WO2013142493A1 (en) * 2012-03-19 2013-09-26 Mayo Foundation For Medical Education And Research Analyzing and answering questions
US20130262365A1 (en) 2012-03-31 2013-10-03 Sharp Kabushiki Kaisha Educational system, method and program to adapt learning content based on predicted user reaction
EP2845182A1 (en) 2012-04-23 2015-03-11 Universiteit Antwerpen Methods and systems for testing and correcting
US10290221B2 (en) 2012-04-27 2019-05-14 Aptima, Inc. Systems and methods to customize student instruction
KR20130128716A (ko) * 2012-05-17 2013-11-27 포항공과대학교 산학협력단 어학 학습 시스템 및 학습 방법
US20130324201A1 (en) 2012-06-01 2013-12-05 Peter Eberlein Applying gamification techniques to process incidents
US20140006342A1 (en) 2012-06-27 2014-01-02 Thomas Love Systems for the integrated design, operation and modification of databases and associated web applications
US20150161555A1 (en) 2012-07-10 2015-06-11 Google Inc. Scheduling tasks to operators
WO2014062724A2 (en) 2012-10-16 2014-04-24 Plaor, Inc. Methods and systems for using mini-games to form a hierarchical social network
US20160042198A1 (en) * 2012-10-19 2016-02-11 Pearson Education, Inc. Deidentified access of content
US9436911B2 (en) * 2012-10-19 2016-09-06 Pearson Education, Inc. Neural networking system and methods
US9412281B2 (en) 2013-11-25 2016-08-09 Pearson Education, Inc. Learning system self-optimization
US20140130076A1 (en) 2012-11-05 2014-05-08 Immersive Labs, Inc. System and Method of Media Content Selection Using Adaptive Recommendation Engine
WO2014082672A1 (en) * 2012-11-29 2014-06-05 Telefonaktiebolaget L M Ericsson (Publ) Network resource configuration
US9020806B2 (en) * 2012-11-30 2015-04-28 Microsoft Technology Licensing, Llc Generating sentence completion questions
CN105009027B (zh) 2012-12-03 2018-09-04 纳维森斯有限公司 用于估计对象的运动的系统和方法
US9116865B2 (en) 2012-12-05 2015-08-25 Chegg, Inc. Enhancing automated terms listings in HTML document publishing based on user searches
US9483159B2 (en) * 2012-12-12 2016-11-01 Linkedin Corporation Fact checking graphical user interface including fact checking icons
US20140227673A1 (en) * 2013-02-11 2014-08-14 Hani Yousef Method and system for implementing a comprehensive, nation-wide, cloud-based education support platform
US20150371163A1 (en) * 2013-02-14 2015-12-24 Adaptive Spectrum And Signal Alignment, Inc. Churn prediction in a broadband network
MX2015010582A (es) 2013-02-15 2017-01-11 Voxy Inc Sistemas y metodos de aprendizaje de idiomas.
WO2014134592A1 (en) 2013-03-01 2014-09-04 Inteo, Llc System and method for enhanced teaching and learning proficiency assessment and tracking
US20140255889A1 (en) * 2013-03-10 2014-09-11 Edulock, Inc. System and method for a comprehensive integrated education system
US20140272901A1 (en) 2013-03-14 2014-09-18 Alcatel-Lucent Methods and apparatus for providing alternative educational content for personalized learning in a class situation
US10056006B1 (en) 2013-03-14 2018-08-21 Allstate Insurance Company Pre-license development tool
US20140272889A1 (en) 2013-03-15 2014-09-18 Career Education Center Computer implemented learning system and methods of use thereof
US9280908B2 (en) 2013-03-15 2016-03-08 International Business Machines Corporation Results of question and answer systems
AU2014250772A1 (en) 2013-04-12 2015-10-29 Pearson Education, Inc. Evaluation control
US9189968B2 (en) 2013-07-01 2015-11-17 Pearson Education, Inc. Network-probability recommendation system
US20150010895A1 (en) 2013-07-08 2015-01-08 Perform Yard, Inc. Performance management systems and methods
US10068490B2 (en) * 2013-08-21 2018-09-04 Quantum Applied Science And Research, Inc. System and method for improving student learning by monitoring student cognitive state
US10216849B2 (en) 2013-08-26 2019-02-26 Knewton, Inc. Personalized content recommendations
US8879978B1 (en) 2013-11-27 2014-11-04 Pearson Education, Inc. Entropy-based sequences of educational modules
US20150170536A1 (en) * 2013-12-18 2015-06-18 William Marsh Rice University Time-Varying Learning and Content Analytics Via Sparse Factor Analysis
US10534528B2 (en) * 2013-12-31 2020-01-14 Barnes & Noble College Booksellers, Llc Digital flash card techniques
US20150213722A1 (en) 2014-01-08 2015-07-30 John Nypl System and method for mobile and reliable testing, voting, and/or learning
US20150199400A1 (en) * 2014-01-15 2015-07-16 Konica Minolta Laboratory U.S.A., Inc. Automatic generation of verification questions to verify whether a user has read a document
US20150206441A1 (en) 2014-01-18 2015-07-23 Invent.ly LLC Personalized online learning management system and method
US20180197427A9 (en) * 2014-02-12 2018-07-12 Pearson Education, Inc. Dynamic content manipulation engine
US20150243176A1 (en) * 2014-02-24 2015-08-27 Mindojo Ltd. Virtual course boundaries in adaptive e-learning datagraph structures
WO2015129038A1 (ja) * 2014-02-28 2015-09-03 楽天株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
US9472194B2 (en) 2014-03-21 2016-10-18 Wells Fargo Bank, N.A. Enhanced fraud detection
US9911088B2 (en) 2014-05-01 2018-03-06 Microsoft Technology Licensing, Llc Optimizing task recommendations in context-aware mobile crowdsourcing
US20150325133A1 (en) 2014-05-06 2015-11-12 Knowledge Diffusion Inc. Intelligent delivery of educational resources
US9836765B2 (en) 2014-05-19 2017-12-05 Kibo Software, Inc. System and method for context-aware recommendation through user activity change detection
US20150347508A1 (en) 2014-06-02 2015-12-03 Microsoft Corporation Partial result classification
US9740985B2 (en) 2014-06-04 2017-08-22 International Business Machines Corporation Rating difficulty of questions
WO2016003453A1 (en) 2014-07-02 2016-01-07 Hewlett-Packard Development Company, L.P. Digital note manipulation
CA2896037A1 (en) 2014-07-03 2016-01-03 Mentorum Solutions Inc. Adaptive e-learning system and method
US20160034993A1 (en) * 2014-07-30 2016-02-04 Fairtime S.L. Systems and methods to allocate the time of users to online activities
US20160180248A1 (en) 2014-08-21 2016-06-23 Peder Regan Context based learning
US9467743B2 (en) 2014-09-15 2016-10-11 Verizon Patent And Licensing Inc. Personalized content aggregation platform
US9667321B2 (en) 2014-10-31 2017-05-30 Pearson Education, Inc. Predictive recommendation engine
US10027740B2 (en) 2014-10-31 2018-07-17 Pearson Education, Inc. System and method for increasing data transmission rates through a content distribution network with customized aggregations
US10318499B2 (en) 2014-10-30 2019-06-11 Pearson Education, Inc. Content database generation
US10218630B2 (en) 2014-10-30 2019-02-26 Pearson Education, Inc. System and method for increasing data transmission rates through a content distribution network
US20160132213A1 (en) * 2014-11-10 2016-05-12 International Business Machines Corporation Efficient facilitation of human review and computational analysis
CN106464593B (zh) 2014-11-25 2018-08-21 华为技术有限公司 一种优化路由数据流的系统和方法
US20160155345A1 (en) * 2014-12-02 2016-06-02 Yanlin Wang Adaptive learning platform
US10885803B2 (en) * 2015-01-23 2021-01-05 Massachusetts Institute Of Technology System and method for real-time analysis and guidance of learning
US20170278119A1 (en) 2015-01-30 2017-09-28 Ebay Inc. Method and apparatus for content distribution in online marketplace applications
US20160225278A1 (en) 2015-01-31 2016-08-04 Usa Life Nutrition Llc Method and apparatus for incentivization of learning
US10713594B2 (en) 2015-03-20 2020-07-14 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing machine learning model training and deployment with a rollback mechanism
US9135559B1 (en) 2015-03-20 2015-09-15 TappingStone Inc. Methods and systems for predictive engine evaluation, tuning, and replay of engine performance
EP3278319A4 (en) * 2015-04-03 2018-08-29 Kaplan Inc. System and method for adaptive assessment and training
US10235007B2 (en) 2015-05-21 2019-03-19 Gammakite, Llc Guided operation of a language device based on constructed, time-dependent data structures
US9823949B2 (en) 2015-06-29 2017-11-21 Genesys Telecommunications Laboratories, Inc. System and method for intelligent task management and routing
JP2017033457A (ja) 2015-08-05 2017-02-09 富士通株式会社 スケジューリング支援方法、情報処理装置およびスケジューリング支援プログラム
US10614368B2 (en) * 2015-08-28 2020-04-07 Pearson Education, Inc. System and method for content provisioning with dual recommendation engines
US9454584B1 (en) * 2015-09-21 2016-09-27 Pearson Education, Inc. Assessment item generation and scoring
US9854098B2 (en) 2015-11-24 2017-12-26 Avaya Inc. Electronic communication routing based data accuracy
US10949771B2 (en) * 2016-01-28 2021-03-16 Facebook, Inc. Systems and methods for churn prediction
US9654175B1 (en) * 2016-02-26 2017-05-16 Pearson Education, Inc. System and method for remote alert triggering
US10325215B2 (en) * 2016-04-08 2019-06-18 Pearson Education, Inc. System and method for automatic content aggregation generation
US10642848B2 (en) 2016-04-08 2020-05-05 Pearson Education, Inc. Personalized automatic content aggregation generation
US10319255B2 (en) 2016-11-08 2019-06-11 Pearson Education, Inc. Measuring language learning using standardized score scales and adaptive assessment engines

Also Published As

Publication number Publication date
US10997514B1 (en) 2021-05-04
US20170293675A1 (en) 2017-10-12
US20170293845A1 (en) 2017-10-12
EP3440568A1 (en) 2019-02-13
US11093849B2 (en) 2021-08-17
US20190273780A1 (en) 2019-09-05
EP3440656A1 (en) 2019-02-13
EP3440656A4 (en) 2019-12-25
US20190280923A1 (en) 2019-09-12
US10949763B2 (en) 2021-03-16
US10325215B2 (en) 2019-06-18
EP3440599A1 (en) 2019-02-13
US10397323B2 (en) 2019-08-27
US20180341867A1 (en) 2018-11-29
US10528876B1 (en) 2020-01-07
US10783445B2 (en) 2020-09-22
EP3440567A4 (en) 2019-12-11
WO2017177183A1 (en) 2017-10-12
EP3440567A1 (en) 2019-02-13
EP3440568A4 (en) 2020-01-01
US10355924B1 (en) 2019-07-16
US10043133B2 (en) 2018-08-07
US20190347266A1 (en) 2019-11-14
US20190141126A1 (en) 2019-05-09
US10382545B1 (en) 2019-08-13
US10033643B1 (en) 2018-07-24
US10419559B1 (en) 2019-09-17
US11126923B2 (en) 2021-09-21
US10459956B1 (en) 2019-10-29
US11126924B2 (en) 2021-09-21
US10380126B1 (en) 2019-08-13
WO2017177161A1 (en) 2017-10-12
US20190349440A1 (en) 2019-11-14
US20170295256A1 (en) 2017-10-12
US20190251464A1 (en) 2019-08-15
WO2017176493A1 (en) 2017-10-12
US11651239B2 (en) 2023-05-16
EP3440599A4 (en) 2019-12-25
CN109661660A (zh) 2019-04-19
US20170293841A1 (en) 2017-10-12
US20190173973A1 (en) 2019-06-06
US20170295072A1 (en) 2017-10-12

Similar Documents

Publication Publication Date Title
CN109074751A (zh) 用双推荐引擎实现内容提供的系统和方法
US11272026B2 (en) Personalized microservice
US20230196255A1 (en) Systems and methods for automated feature-based risk analysis
US10296841B1 (en) Systems and methods for automatic cohort misconception remediation
US20190272775A1 (en) Systems and methods for ux-based automated content evaluation and delivery
US10872118B2 (en) System and methods for automatic machine-learning based objective recommendation
US11250720B2 (en) Systems and methods for automated and direct network positioning
CN109154939A (zh) 用于自动内容聚合生成的系统和方法
CN107004006A (zh) 内容数据库的生成
CN110235116A (zh) 安全的云管理内容递送计算机生态系统
US20200104959A1 (en) Systems and methods for determining when a student will struggle with homework
US12028433B2 (en) Systems and method for dynamic hybrid content sequencing

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
WW01 Invention patent application withdrawn after publication

Application publication date: 20181221

WW01 Invention patent application withdrawn after publication