CN116745786A - 基于内容的相关视图推荐 - Google Patents
基于内容的相关视图推荐 Download PDFInfo
- Publication number
- CN116745786A CN116745786A CN202280009205.9A CN202280009205A CN116745786A CN 116745786 A CN116745786 A CN 116745786A CN 202280009205 A CN202280009205 A CN 202280009205A CN 116745786 A CN116745786 A CN 116745786A
- Authority
- CN
- China
- Prior art keywords
- recommendation
- metadata fields
- community
- visualization
- visualizations
- 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.)
- Pending
Links
- 238000012800 visualization Methods 0.000 claims abstract description 337
- 230000008520 organization Effects 0.000 claims abstract description 43
- 230000009471 action Effects 0.000 claims description 54
- 238000000034 method Methods 0.000 claims description 53
- 238000010801 machine learning Methods 0.000 claims description 21
- 238000013499 data model Methods 0.000 claims description 20
- 238000004458 analytical method Methods 0.000 claims description 15
- 230000008859 change Effects 0.000 claims description 13
- 238000003860 storage Methods 0.000 claims description 13
- 230000000007 visual effect Effects 0.000 claims description 10
- 238000012544 monitoring process Methods 0.000 claims description 9
- 238000003066 decision tree Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 35
- 238000004891 communication Methods 0.000 description 20
- 230000000694 effects Effects 0.000 description 17
- 238000012549 training Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 14
- 230000002093 peripheral effect Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000004807 localization Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000001556 precipitation Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000010897 surface acoustic wave method Methods 0.000 description 2
- 230000002730 additional effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000009529 body temperature measurement Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/904—Browsing; Visualisation therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90332—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9035—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/907—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/908—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/907—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/909—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Library & Information Science (AREA)
- Mathematical Physics (AREA)
- Business, Economics & Management (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Human Resources & Organizations (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- General Business, Economics & Management (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Development Economics (AREA)
- Tourism & Hospitality (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
实施方案旨在管理数据的可视化。可以显示与一个或多个社区可视化相关联的可视化,该一个或多个社区可视化与组织相关联。可以基于元数据字段的比较为每个社区可视化生成推荐分数。可以基于与每个社区可视化相关联的推荐分数来确定排名靠前的社区可视化。可以基于每个元数据字段对相应排名靠前的社区可视化的推荐分数的贡献的值的比例来确定元数据字段的影响分数。可以向用户提供包括排名靠前的社区可视化和排名靠前的其他元数据字段的排名顺序列表的报告。
Description
技术领域
本发明总体涉及数据可视化,并且更具体地但不排他地涉及向用户推荐可视化。
背景技术
组织正在生成和收集越来越多的数据。该数据可以与组织的不同部分(诸如消费者活动、制造活动、客户服务、服务器日志等)相关联。由于各种原因,这类组织可能不方便有效地利用其庞大的数据收集。在某些情况下,数据量可能使有效利用所收集的数据来改进业务实践变得困难。在某些情况下,组织采用各种工具来生成部分或全部数据的可视化。采用可视化来表示该数据可以使组织改进对关键业务操作的理解,并帮助他们监测关键的性能指标。然而,在某些情况下,组织可能有许多可用于各种目的的可视化。在某些情况下,为给定的分析选择适当的可视化可能对非创作用户(他们可能不熟悉创建可视化的作者的动机或假设)具有挑战性。同样,在某些情况下,组织可能有许多用户可能不知道的有用或流行的可视化。因此,本发明是针对这些考虑和其他考虑而做出的。
附图说明
参照以下附图描述本发明的非限制性和非穷尽性实施方案。在附图中,除非另有说明,否则相同的参考数字指的是贯穿于各个图中的相同的部件。为了更好地理解所描述的创新,将参考将结合附图阅读的以下具体实施方式,其中,
图1示出了可以实现各种实施方案的系统环境;
图2示出了客户端计算机的示意性实施方案;
图3示出了网络计算机的示意性实施方案;
图4示出了根据各种实施方案中的一个或多个的用于基于内容的相关视图推荐的系统的逻辑架构;
图5示出了根据各种实施方案中的一个或多个的示出用于基于内容的相关视图推荐的一些元数据的系统的一部分的逻辑示意图;
图6示出了根据各种实施方案中的一个或多个的用于基于内容的相关视图推荐的用户界面的一部分的逻辑表示;
图7示出了根据各种实施方案中的一个或多个的用于基于内容的相关视图推荐的过程的概述流程图;
图8示出了根据各种实施方案中的一个或多个的用于生成基于内容的相关视图推荐的推荐模型的过程的流程图;
图9示出了根据各种实施方案中的一个或多个的用于基于内容的相关视图推荐的过程的流程图;
图10示出了根据各种实施方案中的一个或多个的用于基于内容的相关视图推荐的过程的流程图;
图11示出了根据各种实施方案中的一个或多个的用于基于基线模型提供初始推荐模型的过程的流程图;
图12示出了根据各种实施方案中的一个或多个的用于评估元数据字段以提供与推荐的可视化相关联的概要叙事的过程的流程图;以及
图13示出了根据各种实施方案中的一个或多个的用于评估所选推荐的可视化之间的元数据字段影响的过程的流程图。
具体实施方式
下面将参考附图更全面地描述各种实施方案,附图构成本发明的一部分,并且通过说明示出了可实施本文发明的特定示例性实施方案。然而,实施方案可以以许多不同的形式实施,并且不应被解释为限于本文所述的实施方案;相反,提供这些实施方案使得公开文本将是彻底和完整的,并且将向本领域技术人员完全传达实施方案的范围。除其他外,各种实施方案可以是方法、系统、介质或设备。因此,各种实施方案可以采取完全硬件实施方案、完全软件实施方案或结合软件和硬件方面的实施方案的形式。因此,下面的详细描述不应被理解为限制性的。
在整个说明书和权利要求书中,除非上下文另有明确规定,否则以下术语具有本文明确关联的含义。本文中使用的短语“在各种实施方案中的一个或多个中”、“在一些实施方案中”、“对于一些实施方案”、“在一个实施方案中”不必指相同的实施方案,尽管它们可以。此外,本文中使用的短语“在各种实施方案中的一个或多个中”、“在一些实施方案中”、“对于一些实施方案”、“在一个实施方案中”不必指不同的实施方案,尽管它们可以。因此,如下所述,在不脱离本文所述创新的范围或精神的情况下,各种实施方案可以容易地组合。
此外,如本文所用,除非上下文明确另有规定,否则术语“或”是包含的“或”运算符,并且等效于术语“和/或”。除非上下文另有明确规定术语,“基于”并非排他性的,并允许基于未描述的其他因素。此外,在整个说明书中,“一种”、“一个”和“该”的含义包括复数引用。“在…里”的含义包括“在…里”和“在…上”。
对于示例性实施方案,除非上下文另有明确规定,否则以下术语也根据相应的含义在此使用。
本文所使用的术语“引擎”是指包含在硬件或软件指令中的逻辑,这些指令可以用编程语言(诸如C、C++、Objective-C、COBOL、JavaTM、PHP、Perl、JavaScript、Ruby、VBScript、Microsoft.NETTM语言(诸如C#)等)编写。引擎可以编译成可执行程序或用解释编程语言编写。软件引擎可以从其他引擎或从自身调用。本文描述的引擎指的是一个或多个逻辑模块,其可以与其他引擎或应用程序合并,或者可以被划分为子引擎。引擎可以存储在非暂时的计算机可读介质或计算机存储设备中,并且存储在一个或多个通用计算机上并由其执行,从而创建配置为提供引擎的专用计算机。
如本文所使用的,术语“数据源”指的是为组织存储或提供信息的数据库、应用程序、服务、文件系统等。数据源的实施例可以包括RDBMS数据库、图形数据库、电子表格、文件系统、文档管理系统、本地或远程数据流等。在某些情况下,数据源是围绕一个或多个表或类似表的结构组织的。在其他情况下,数据源被组织为图或类似图的结构。
如本文所使用的,术语“数据模型”指的是提供底层数据源的表示的一个或多个数据结构。在某些情况下,数据模型可以为特定应用程序提供数据源的视图。数据模型可以被认为是底层数据源的视图或接口。在某些情况下,数据模型可以直接映射到数据源(例如,实际上是逻辑传递)。此外,在某些情况下,数据模型可以由数据源提供。在某些情况下,数据模型可以被视为数据源的接口。数据模型使组织能够以更方便、更有意义(例如,更容易推理)、更安全等方式组织或呈现来自数据源的信息。
如本文所使用的,术语“数据对象”指的是包括数据模型的一个或多个实体或数据结构。在某些情况下,数据对象可以被视为数据模型的一部分。数据对象可以表示项或项的类或种类的单个实例。
如本文所使用的,术语“面板”指的是图形用户界面(GUI)内的区域,该区域在GUI内具有定义的几何形状(例如,x、y、z顺序)。面板可以被布置为向用户显示信息或承载一个或多个交互控件。可以使用包括动态规则的配置信息来定义与面板相关联的几何形状或样式。此外,在某些情况下,用户可以在一个或多个面板上进行动作,诸如移动、显示、隐藏、重新调整大小、重新排序等。
作为本文的用户,“可视化模型”指的是表示数据模型(其可以适合于在显示在一个或多个硬件显示器上的可视化中使用)的一个或多个表示的一个或多个数据结构。可视化模型可以定义样式或用户界面特性,其可供非创作用户使用。
如本文所使用的,术语“显示对象”是指包括可视化模型的一个或多个数据结构。在某些情况下,显示对象可能被视为可视化模型的一部分。显示对象可以表示可以在可视化中显示的项的单个实例或整个类或种类的项。在一些实施方案中,显示对象可以被认为或称为视图,因为它们提供数据模型的某些部分的视图。
如本文所使用的,术语“推荐模型”指的是包括基于机器学习的模型(可以被安排为预测用户的可视化)的一个或多个数据结构。在某些情况下,可能存在不同类型的可能基于不同类型的机器学习的推荐模型。同样,在一些实施方案中,可以安排不同的推荐模型以基于不同的标准或用于不同的目的来推荐可视化。在某些情况下,推荐模型可以包括与一个或多个机器学习子模型协同工作的一个或多个启发式、过滤器等。
如本文所使用的,术语“基线模型”指的是已经基于与一般用户群体而不是与组织相关联的用户的公共或共同使用历史相关联的训练数据来训练或调优的推荐模型。基线模型可用于引导初始推荐模型,该初始推荐模型可以使用到收集足够的训练数据来为单个组织中的用户训练个性化模型。
如本文所使用的,术语“用户简档”指的是包括基于单个用户的一个或多个特征或与之相关联的信息或数据的数据结构。例如,用户简档可以包括表示诸如用户标识、组成员资格、角色、访问权限、以前的活动、首选可视化、用户首选项等信息的信息。在某些情况下,用户简档可以包括对附加信息(包括历史活动日志、遥测信息等)的引用或暗示。在一些实施方案中,包括在用户简档中的一些或所有值可以被归一化、加权、弯曲、成形等,以使建模引擎能够训练推荐模型或供推荐引擎使用以基于用户简档推荐可视化。
如本文所使用的,术语“可视化元数据”、“元数据字段”或“元数据”指的是从与可视化相关联的字段提供的值,这些字段可以描述可视化的各种特征,或者与可与用户或作者所查看的可视化分离或可区分的可视化相关联。元数据对于描述可视化的一个或多个特征可能是重要的,但是它们不是可视化的创作部分。然而,在某些情况下,可视化中显示的信息可能包括从元数据导出的信息。然而,元数据可以与可视化相关联,无论它在可视化中是显示的还是以其他方式可见的。元数据有多种形式,且本文讨论几个实施例。元数据的一些实施例可以包括作者姓名、表名称(来自数据源)、列名称(来自数据源表)等。
如本文所使用的,术语“社区可视化”指的是可以与组织或其他更大的公共社区相关联的一个或多个可视化。社区可视化可以被认为是用户有权访问或查看的其他可视化。在某些情况下,一些社区可视化可能是由组织中的相同或其他用户生成的可视化。在其他情况下,一个或多个社区可视化可以被布置为可以在公共领域中或者公众可以以其他方式访问的可视化。为了清晰和简洁,除非上下文明确指出,否则不同类别的社区可视化被简单地称为社区可视化。可以从社区可视化中提供推荐的可视化。
如本文所使用的,术语“推荐分数”指的是与可视化相关联的分数、度量或测量,其根据提供分数的推荐模型的标准指示推荐的质量。在大多数情况下,推荐分数可以是可以组合成一个值的一个或多个部分分数的组合。
如本文所使用的,术语“影响分数”指的是与单个元数据字段相关联的分数、度量或测量,该单个元数据字段与推荐的可视化相关联。影响分数表示单个元数据字段对推荐的可视化的推荐分数的贡献程度。影响分数有助于回答为什么推荐特定的可视化的问题。
如所使用的,术语“元属性”指的是用于表示至少用于生成元数据字段的影响分数的元数据字段的数据结构,元属性将元数据字段及其值组合成一个值或一个元组。例如,如果元数据字段“字段名称(fieldname)”的值为“客户(customers)”,则其对应的元属性可以是“字段名称_客户(fieldname_customers)”或(“字段名称”、“客户”)。
如本文所使用的,术语“锚可视化”指的是用户可以正在观看或以其他方式与之交互的可视化。典型地,用户可以采用一个或多个用户界面特征来选择或“聚焦”于一个或多个可视化,这些可视化可以被认为是锚可视化。
如本文所使用的,术语“配置信息”指的是可以包括基于规则的策略、模式匹配、脚本(例如,计算机可读指令)等的信息,这些信息可以从各种来源提供,包括配置文件、数据库、用户输入、内置默认值等或者它们的组合。
下面简要描述本文的创新的实施方案,以提供对本发明的一些方面的基本理解。这个简短的描述并不旨在作为一个广泛的概述。它不是旨在完全识别关键或关键要素,也不是完全为了划定或以其他方式缩小范围。它的目的仅仅是以简化的形式提出一些概念,作为后面提出的更详细描述的前奏。
简而言之,各种实施方案涉及管理可视化。在各种实施方案中的一个或多个中,可以为与组织相关联的用户显示与一个或多个社区可视化相关联的可视化,该一个或多个社区可视化与组织相关联。
在各种实施方案中的一个或多个中,可以确定与显示的可视化相关联的一个或多个元数据的字段,使得一个或多个元数据字段可以在显示的可视化中隐藏而不可见。在一些实施方案中,确定一个或多个元数据字段可以包括基于推荐模型中包括的一个或多个过滤器或规则从多个元数据字段确定一个或多个元数据字段,其中,多个元数据字段包括作者姓名、标题栏、可视化名称、列名称、表名称、数据源名称、作者角色、作者位置、作者组织、对另一个表的引用、数据模型对象名称、创建日期、最后访问日期等中的一个或多个。
在各种实施方案中的一个或多个中,可以基于推荐模型和一个或多个元数据字段为每个社区可视化生成推荐分数,使得推荐分数可以基于一个或多个元数据字段和与一个或多个社区可视化相关联的一个或多个其他元数据字段的比较。在一些实施方案中,为每个社区可视化字段生成推荐分数可以包括采用一个或多个机器学习动作生成推荐分数,其中,一个或多个机器学习动作包括潜在语义分析(LSA)、因式分解机(FM)、余弦相似性、梯度提升决策树(GBDT)、词频-逆文档频率(TF-IDF)、判别分析等中的一个或多个。
在各种实施方案中的一个或多个中,可以确定一个或多个社区可视化的靠前排名,使得靠前排名可以基于与一个或多个社区可视化中的每个相关联的推荐分数。
在各种实施方案中的一个或多个中,一个或多个其他元数据字段中的每个的影响分数可以基于每个其他元数据字段对相应排名靠前的社区可视化的推荐分数的贡献的值的比例来确定,使得每个排名靠前的社区可视化的一个或多个排名靠前的其他元数据字段可以基于一个或多个其他元数据字段中的每个的影响分数。在一些实施方案中,确定一个或多个其他元数据字段中的每个的影响分数可以包括采用推荐模型中包括的一个或多个影响模型来基于由主题模型确定的一个或多个主导主题、一个或多个其他元数据字段的包括共同值的一个或多个计数、或者对推荐分数和临时推荐分数(基于从临时推荐分数的生成临时省略一个或多个其他元数据字段中的一个而生成)的改变幅度中的一个或多个而确定影响分数,使得每个其他元数据字段的影响分数可以基于与其省略相对应的改变幅度。
在各种实施方案中的一个或多个中,可以向用户提供包括排名靠前的社区可视化和一个或多个排名靠前的其他元数据字段的排名顺序列表的报告。
在各种实施方案中的一个或多个中,可以提供包括一个或多个试探法、一个或多个训练机器学习模型或一个或多个过滤器中的一个或多个的一个或多个子模型,使得一个或多个子模型可以包括在推荐模型中。在一些实施方案中,可以基于一个或多个子模型、一个或多个元数据字段或一个或多个其他元数据字段来生成一个或多个部分分数。此外,在一些实施方案中,可以基于一个或多个部分分数的组合来确定每个社区可视化的推荐分数,使得该组合可以由推荐模型提供。
在各种实施方案中的一个或多个中,可以监测可以与一个或多个排名靠前的社区可视化相关联的用户的一个或多个动作。在一些实施方案中,与一个或多个动作相关联的信息可以存储在数据存储中。此外,在一些实施方案中,可以基于存储在数据存储中的信息来更新推荐模型。
在各种实施方案中的一个或多个中,叙事可以基于其排名靠前的其他元数据字段与每个排名靠前的社区可视化相关联,使得叙事包括基于与每个排名靠前的社区可视化相关联的一个或多个排名靠前的其他元数据字段对每个排名靠前的社区可视化的排名进行的自然语言说明。
图示操作环境
图1示出了可以实践本发明的实施方案的环境的一个实施方案的组件。实践这些发明可能不需要所有的组件,并且可以在不脱离这些发明的精神或范围的情况下改变组件的布置和类型。如图所示,图1的系统100包括局域网(LAN)/广域网(WAN)-(网络)110、无线网络108、客户端计算机102-105、可视化服务器计算机116、数据源服务器计算机118等。
下面结合图2更详细地描述客户端计算机102-105的至少一个实施方案。在一个实施方案中,客户端计算机102-105中的至少一些可以在一个或多个有线或无线网络(诸如网络108或110)上操作。通常,客户端计算机102-105可以包括能够通过网络通信以发送和接收信息、进行各种在线活动、离线动作等的几乎任何计算机。在一个实施方案中,客户端计算机102-105中的一个或多个可以配置为在企业或其他实体内操作以为该企业或其他实体进行各种服务。例如,客户端计算机102-105可以配置为作为web服务器、防火墙、客户端应用程序、媒体播放器、移动电话、游戏控制台、台式计算机等操作。然而,客户端计算机102-105不局限于这些服务,并且还可以例如用于其他实施方案中的终端用户计算。应当认识到,或多或少的客户端计算机(如图1所示)可以包括在诸如本文所述的系统中,并且实施方案因此不受所采用的客户端计算机的数量或类型的限制。
可作为客户端计算机102操作的计算机可包括通常使用有线或无线通信介质连接的计算机,诸如个人计算机、多处理器系统、基于微处理器或可编程电子设备、网络PC等。在一些实施方案中,客户端计算机102-105可以包括能够连接到另一计算机并接收信息的几乎任何便携式计算机,例如膝上型计算机103、移动计算机104、平板计算机105等。然而,便携式计算机不受此限制,并且还可以包括其他便携式计算机,诸如蜂窝电话、显示寻呼机、射频(RF)设备、红外(IR)设备、个人数字助理(PDA)、手持计算机、可穿戴计算机、组合一个或多个前面的计算机的集成设备等。因此,客户端计算机102-105通常在能力和特征方面范围很广。此外,客户端计算机102-105可以访问各种计算应用程序,包括浏览器或其他基于web的应用程序。
启用web的客户端计算机可以包括配置为通过web发送请求和接收响应的浏览器应用程序。浏览器应用程序可以配置为采用几乎任何基于web的语言来接收和显示图形、文本、多介质等。在一个实施方案中,使浏览器应用程序能够采用JavaScript、超文本标记语言(HTML)、可扩展标记语言(XML)、JavaScript对象表示法(JSON)、级联样式表(CSS)等或其组合来显示和发送消息。在一个实施方案中,客户端计算机的用户可以采用浏览器应用程序通过网络(在线)进行各种活动。然而,另一应用程序也可能用于进行各种联机活动。
客户端计算机102-105还可以包括配置为在另一计算机之间接收或发送内容的至少一个其他客户端应用程序。客户端应用程序可以包括发送或接收内容等的能力。客户端应用程序可以进一步提供识别自身的信息,包括类型、功能、名称等。在一个实施方案中,客户端计算机102-105可以通过各种机制(包括因特网协议(IP)地址、电话号码、移动识别号码(MIN)、电子序列号(ESN)、客户端证书或其他设备标识符)中的任何一种唯一地识别自己。这样的信息可以在一个或多个网络分组等中提供,在其他客户端计算机、可视化服务器计算机116、数据源服务器计算机118或其他计算机之间发送。
客户端计算机102-105可以进一步配置为包括客户端应用程序,其使终端用户能够登录到终端用户帐户,该帐户可以由另一计算机(诸如可视化服务器计算机116、数据源服务器计算机118等)管理。在一个非限制性实施例中,这种终端用户帐户可以配置为使终端用户能够管理一个或多个在线活动,包括在一个非限制性实施例中的项目管理、软件开发、系统管理、配置管理、搜索活动、社交网络活动、浏览各种网站、与其他用户通信等。此外,客户端计算机可以被布置为使用户能够显示由可视化服务器计算机116、数据源服务器计算机118提供的报告、交互式用户界面或结果。
无线网络108配置为将客户端计算机103-105及其组件与网络110联接。无线网络108可以包括各种无线子网络中的任何一个,其可以进一步覆盖独立的ad-hoc网络等,以为客户端计算机103-105提供面向基础设施的连接。这样的子网络可以包括网状网络、无线LAN(WLAN)网络、蜂窝网络等。在一个实施方案中,该系统可以包括多于一个无线网络。
无线网络108可以还包括通过无线无线电链路等连接的终端、网关、路由器等的自治系统。这些连接器可以配置为自由和随机地移动并且任意地组织它们自己,使得无线网络108的拓扑可以快速改变。
无线网络108可以进一步采用多个接入技术,包括用于蜂窝系统的第二(2G)、第三(3G)、第四(4G)、第五(5G)代无线接入、WLAN、无线路由器(WR)网状网等。诸如2G、3G、4G、5G和未来接入网的接入技术可以使移动计算机(诸如具有各种移动度的客户端计算机103-105)能够广域覆盖。在一个非限制性实施例中,无线网络108可以通过无线电网络接入(诸如全球移动通信系统(GSM)、通用分组无线服务(GPRS)、增强型数据GSM环境(EDGE)、码分多址(CDMA)、时分多址(TDMA)、宽带码分多址(WCDMA)、高速下行链路分组接入(HSDPA)、长期演进(LTE)等)来实现无线电连接。实质上,无线网络108可以包括几乎任何无线通信机制,通过该机制,信息可以在客户端计算机103-105与另一计算机、网络、基于云的网络、云实例等之间传输。
网络110配置为通过无线网络108等将网络计算机与包括可视化服务器计算机116、数据源服务器计算机118、客户端计算机102和客户端计算机103-105的其他计算机联接。网络110能够采用任何形式的计算机可读介质来将信息从一个电子设备传送到另一电子设备。此外,除了局域网(LAN)、广域网(WAN)、诸如通过通用串行总线(USB)端口、以太网端口、其他形式的计算机可读介质或其任何组合的直接连接之外,网络110还可以包括因特网。在一组相互连接的LAN上,包括那些基于不同体系结构和协议的LAN上,路由器充当LAN之间的链接,使消息能够从一个LAN发送到另一LAN。此外,LAN内的通信链路通常包括双绞线对或同轴电缆,而网络之间的通信链路可以利用模拟电话线、包括T1、T2、T3和T4的全部或部分专用数字线路或其他载波机制,包括例如电子载波、综合业务数字网络(ISDN)、数字用户线(DSL)、包括卫星链路的无线链路或本领域技术人员已知的其他通信链路。此外,通信链路可进一步采用各种数字信令技术中的任何一种,包括但不限于例如DS-0、DS-1、DS-2、DS-3、DS-4、OC-3、OC-12、OC-48等。此外,远程计算机和其他相关电子设备可以经由调制解调器和临时电话链路远程连接到LAN或WAN。在一个实施方案中,网络110可配置为传输因特网协议(IP)的信息。
此外,通信介质通常包含计算机可读指令、数据结构、程序模块或其他传输机制,并包括任何信息非瞬时传递介质或瞬时传递介质。例如,通信介质包括有线介质(诸如双绞线、同轴电缆、光纤、波导和其他有线介质),以及无线介质(诸如声学、RF、红外和其他无线介质)。
此外,下面结合图3更详细地描述可视化服务器计算机116、数据源服务器计算机118的一个实施方案。尽管图1示出了可视化服务器计算机116、数据源服务器计算机118等,每个作为单个计算机,但创新或实施方案不限于此。例如,可视化服务器计算机116、数据源服务器计算机118等的一个或多个功能可以跨一个或多个不同的网络计算机分布。此外,在一个或多个实施方案中,可视化服务器计算机116、数据源服务器计算机118可以使用多个网络计算机来实现。此外,在各种实施方案中的一个或多个中,可视化服务器计算机116、数据源服务器计算机118等可以使用一个或多个云网络中的一个或多个云实例来实现。因此,这些创新和实施方案不应被解释为限于单个环境,并且还设想了其他配置和其他架构。
说明性客户端计算机
图2示出了客户端计算机200的一个实施方案,其可包括比所示组件更多或更少的组件。客户端计算机200可以表示例如图1所示的移动计算机或客户端计算机的一个或多个实施方案。
客户端计算机200可以包括经由总线228与存储器204通信的处理器202。客户端计算机200还可以包括电源230、网络接口232、音频接口256、显示器250、小键盘252、照明器254、视频接口242、输入/输出接口238、触觉接口264、全球定位系统(GPS)接收器258、露天手势接口260、温度接口262、相机240、投影仪246、定位设备接口(pointing deviceinterface)266、处理器可读固定存储设备234和处理器可读可移动存储设备236。客户端计算机200可选地与基站(未示出)通信,或直接与另一计算机通信。此外,在一个实施方案中,尽管未示出,但是可以在客户端计算机200内采用陀螺仪来测量或维持客户端计算机200的方位。
电源230可以向客户端计算机200提供电力。可充电电池或不可充电电池可用于提供电力。电源也可以由外部电源(诸如AC适配器或对电池进行补充或再充电的动力对接支架)提供。
网络接口232包括用于将客户端计算机200联接到一个或多个网络的电路,并且被构造为与一个或多个通信协议和技术一起使用,该通信协议和技术包括但不限于实现OSI模型的任何部分的协议和技术,用于移动通信(GSM)、CDMA、时分多址(TDMA)、UDP、TCP/IP、SMS、MMS、GPRS、WAP、UWB、WiMax、SIP/RTP、GPRS、EDGE、WCDMA、LTE、UMTS、OFDM、CDMA2000、EV-DO、HSDPA或各种其他无线通信协议中的任何一个。网络接口232有时被称为收发器、收发器设备或网络接口卡(NIC)。
音频接口256可以被布置为产生和接收音频信号,诸如人声的声音。例如,音频接口256可以联接到扬声器和麦克风(未示出),以使得能够与其他人进行通信或生成针对某些动作的音频确认。音频接口256中的麦克风还可用于对客户端计算机200进行输入或控制,例如,使用语音识别、基于声音检测触摸等。
显示器250可以是液晶显示器(LCD)、气体等离子体、电子墨水、发光二极管(LED)、有机LED(OLED)或可与计算机一起使用的任何其他类型的光反射或光透射显示器。显示器250还可以包括触摸接口244,其被布置为从诸如手写笔或来自人手的数字的对象接收输入,并且可以使用电阻、电容、声表面波(SAW)、红外、雷达或其他技术来感测触摸或手势。
投影仪246可以是远程手持投影仪或集成投影仪,其能够将图像投影在远程墙壁或诸如远程屏幕的任何其他反射对象上。
视频接口242可以被布置为捕获视频图像,诸如静态照片、视频片段、红外视频等。例如,视频接口242可以联接到数字摄像机、web相机等。视频接口242可以包括镜头、图像传感器和其他电子设备。图像传感器可以包括互补金属氧化物半导体(CMOS)集成电路、电荷耦合器件(CCD)或用于感测光的任何其他集成电路。
小键盘252可以包括被布置为从用户接收输入的任何输入设备。例如,小键盘252可以包括按钮数字拨号或键盘。小键盘252还可以包括与选择和发送图像相关联的命令按钮。
照明器254可以提供状态指示或提供光。照明器254可以在特定时间段或响应于事件消息而保持活动。例如,当照明器254激活时,它可以背光小键盘252上的按钮,并且在客户端计算机被供电时保持接通。此外,当进行特定动作时,照明器254可以以各种模式背光这些按钮,诸如拨号另一客户端计算机。照明器254还可以响应于动作使定位在客户端计算机的透明或半透明壳体内的光源照明。
此外,客户端计算机200还可以包括硬件安全模块(HSM)268,用于提供用于生成、存储或使用诸如密钥、数字证书、密码、密码短语、双因素认证信息等的安全/密码信息的附加防篡改保障。在一些实施方案中,硬件安全模块可用于支持一个或多个标准公钥基础设施(PKI),并可用于生成、管理或存储密钥对等。在一些实施方案中,HSM 268可以是独立计算机,在其他情况下,HSM 268可以被布置为可以添加到客户端计算机的硬件卡。
客户端计算机200还可以包括用于与外部外围设备或诸如其他客户端计算机和网络计算机的其他计算机通信的输入/输出接口238。外围设备可以包括音频耳机、虚拟现实耳机、显示屏眼镜、远程扬声器系统、远程扬声器和麦克风系统等。输入/输出接口238可以利用一种或多种技术,诸如通用串行总线(USB)、红外、WiFi、WiMax、蓝牙TM等。
输入/输出接口238还可以包括一个或多个传感器,用于确定地理定位信息(例如,GPS)、监测电力状况(例如,电压传感器、电流传感器、频率传感器等)、监测天气(例如,恒温器、气压计、风速计、湿度检测器、降水量尺度等)等。传感器可以是收集或测量客户端计算机200外部的数据的一个或多个硬件传感器。
触觉接口264可以被布置为向客户端计算机的用户提供触觉反馈。例如,触觉接口264可用于在计算机的另一用户正在呼叫时以特定方式振动客户端计算机200。温度接口262可用于向客户端计算机200的用户提供温度测量输入或温度变化输出。露天手势接口260可以例如通过使用单个或立体声摄像机、雷达、由用户持有或佩戴的计算机内的陀螺仪传感器等来感测客户端计算机200的用户的物理手势。相机240可用于跟踪客户端计算机200的用户的物理眼部运动。
GPS收发器258可以确定客户端计算机200在地球表面上的物理坐标,其通常将位置输出为纬度和经度值。GPS收发器258还可以采用其他地理定位机制,包括但不限于三角测量、辅助GPS(AGPS)、增强观测时差(E-OTD)、小区标识符(Cl)、服务区标识符(SAI)、增强定时提前(ETA)、基站子系统(BSS)等,以进一步确定客户端计算机200在地球表面上的物理位置。应当理解,在不同的条件下,GPS收发器258可以确定客户端计算机200的物理位置。然而,在一个或多个实施方案中,客户端计算机200可通过其他组件提供可用于确定客户端计算机的物理位置的其他信息,包括例如介质访问控制(MAC)地址、IP地址等。
在各种实施方案中的至少一个中,诸如操作系统206、其他客户端应用程序224、web浏览器226等的应用程序可以被布置为采用地理位置信息来选择一个或多个本地化特征,诸如时区、语言、货币、日历格式等。本地化功能可用于显示对象、数据模型、数据对象、用户界面、报告以及内部流程或数据库。在各种实施方案中的至少一个中,用于选择定位信息的地理位置信息可以由GPS 258提供。此外,在一些实施方案中,地理位置信息可以包括通过诸如无线网络108或网络111的网络使用一个或多个地理定位协议提供的信息。
人机接口组件可以是物理上与客户端计算机200分离的外围设备,允许远程输入或输出到客户端计算机200。例如,如这里所描述的通过诸如显示器250或键盘252的人机接口组件路由的信息可以替代地通过网络接口232路由到位于远程的适当的人机接口组件。可以是远程的人机接口外围组件的实施例包括但不限于音频设备、定位设备、小键盘、显示器、相机、投影仪等。这些外围组件可以通过诸如蓝牙TM、ZigBeeTM等的微型网络进行通信。具有这样的外围人机接口组件的客户端计算机的一个非限制性实施例是可穿戴计算机,其可包括远程微型投影仪以及与单独定位的客户端计算机远程通信以感测用户朝向由微型投影仪投影到反射表面(诸如墙壁或用户的手)上的图像部分的手势的一个或多个相机。
客户端计算机可以包括web浏览器应用程序226,其配置为接收和发送web页面、基于web的消息、图形、文本、多介质等。客户端计算机的浏览器应用程序可以采用几乎任何编程语言,包括无线应用程序协议消息(WAP)等。在一个或多个实施方案中,使浏览器应用程序能够采用手持设备标记语言(HDML)、无线标记语言(WML)、WMLScript、JavaScript、标准通用标记语言(SGML)、超文本标记语言(HTML)、可扩展标记语言(XML)、HTML5等。
存储器204可以包括RAM、ROM或其他类型的存储器。存储器204示出用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的计算机可读存储介质(设备)的实施例。存储器204可以存储用于控制客户端计算机200的低级操作的BIOS 208。存储器还可以存储用于控制客户端计算机200的操作的操作系统206。应当理解,该组件可以包括通用操作系统,诸如UNIX或的版本,或者专用客户端计算机通信操作系统,诸如Windows、iOS、macOS等。操作系统可以包括Java虚拟机模块或与其接口,其能够经由Java应用程序控制硬件组件或操作系统操作。
存储器204可以还包括一个或多个数据存储210,客户端计算机200可利用其存储应用程序220或其他数据等。例如,数据存储210还可用于存储描述客户端计算机200的各种能力的信息。然后可以基于各种方法中的任何一种将信息提供给另一设备或计算机,包括在通信期间作为报头的一部分发送、根据请求发送等。数据存储210还可用于存储包括地址簿、好友列表、别名、用户简档信息等的社交网络信息。数据存储210可还包括程序代码、数据、算法等,以供诸如处理器202的处理器使用以执行和进行动作。在一个实施方案中,数据存储210中的至少一些还可以存储在客户端计算机200的另一组件上,包括但不限于非暂时处理器可读可移动存储设备236、处理器可读固定存储设备234,或甚至在客户端计算机外部。
应用程序220可以包括计算机可执行指令,当由客户端计算机200执行时,计算机可执行指令发送、接收或以其他方式处理指令和数据。应用程序220可以包括例如客户端可视化引擎222、其他客户端应用程序224、web浏览器226等。客户端计算机可以被布置为交换一个或多个服务器的通信。
应用程序的其他实施例包括日历、搜索程序、电子邮件客户端应用程序、IM应用程序、SMS应用程序、因特网协议语音(VOIP)应用程序、联系人管理器、任务管理器、代码转换器、数据库程序、字处理程序、安全应用程序、电子表格程序、游戏、搜索程序、可视化应用程序等。
另外,在一个或多个实施方案(图中未示出)中,客户端计算机200可包括嵌入式逻辑硬件设备而不是CPU,诸如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程阵列逻辑(PAL)等或其组合。嵌入式逻辑硬件设备可以直接执行其嵌入式逻辑以进行动作。此外,在一个或多个实施方案(图中未示出)中,客户端计算机200可包括一个或多个硬件微控制器而不是CPU。在一个或多个实施方案中,一个或多个微控制器可以直接执行它们自己的嵌入式逻辑以进行动作,并访问它们自己的内部存储器和它们自己的外部输入和输出接口(例如,硬件引脚或无线收发器)以进行动作,诸如片上系统(SOC)等。
说明性网络计算机
图3示出了网络计算机300的一个实施方案,其可以包括在实现各种实施方案中的一个或多个的系统中。网络计算机300可以包括比图3中所示的组件更多或更少的组件。然而,所示的组件足以公开用于实践这些创新的说明性实施方案。网络计算机300可以表示例如图1的可视化服务器计算机116、数据源服务器计算机118等中的至少一个的一个实施方案。
网络计算机(诸如网络计算机300)可以包括处理器302,其可以经由总线328与存储器304通信。在一些实施方案中,处理器302可以由一个或多个硬件处理器,或者一个或多个处理器核组成。在一些情况下,一个或多个处理器中的一个或多个可以是被设计为进行一个或多个专用动作的专用处理器,诸如本文描述的那些。网络计算机300还包括电源330、网络接口332、音频接口356、显示器350、键盘352、输入/输出接口338、处理器可读固定存储设备334和处理器可读可移动存储设备336。电源330向网络计算机300提供电力。
网络接口332包括用于将网络计算机300联接到一个或多个网络的电路,并且构造用于一个或多个通信协议和技术,包括但不限于,实现开放系统互连模型(OSI模型)、全球移动通信系统(GSM)、码分多址(CDMA)、时分多址(TDMA)、用户数据报协议(UDP)、传输控制协议/因特网协议(TCP/IP)、短消息服务(SMS)、多介质消息服务(MMS)、通用分组无线电服务(GPRS)、WAP、超宽带(UWB)、IEEE 802.16全球微波接入互操作性(WiMax)、会话发起协议/实时传输协议(SIP/RTP)或各种其他有线和无线通信协议的任何部分的协议和技术。网络接口332有时被称为收发器、收发设备或网络接口卡(NIC)。网络计算机300可选地与基站(未示出)通信,或直接与另一计算机通信。
音频接口356被布置为产生和接收音频信号,诸如人声的声音。例如,音频接口356可以联接到扬声器和麦克风(未示出),以使得能够与其他人进行通信或生成针对某些动作的音频确认。音频接口356中的麦克风也可用于例如使用语音识别对网络计算机300的输入或控制。
显示器350可以是液晶显示器(LCD)、气体等离子体、电子墨水、发光二极管(LED)、有机LED(OLED)或可与计算机一起使用的任何其他类型的光反射或光透射显示器。在一些实施方案中,显示器350可以是能够将图像投影在墙壁上或其他对象上的手持投影仪或微型投影仪。
网络计算机300还可以包括用于与图3中未示出的外部设备或计算机通信的输入/输出接口338。输入/输出接口338可以利用一种或多种有线或无线通信技术,诸如USBTM、FirewireTM、WiFi、WiMax、ThunderboltTM、红外、蓝牙TM、ZigBeeTM、串行端口、并行端口等。
此外,输入/输出接口338还可以包括一个或多个传感器,用于确定地理位置信息(例如,GPS)、监测电力状况(例如,电压传感器、电流传感器、频率传感器等)、监测天气(例如,恒温器、气压计、风速计、湿度检测器、降水量尺度等)等。传感器可以是收集或测量网络计算机300外部的数据的一个或多个硬件传感器。人机接口组件可以在物理上与网络计算机300分离,允许远程输入或输出到网络计算机300。例如,如本文所述通过诸如显示器350或键盘352的人机接口组件路由的信息可以替代地通过网络接口332路由到位于网络上其他地方的适当人机接口组件。人机接口组件包括允许计算机从计算机的人类用户获取输入或向其发送输出的任何组件。因此,诸如鼠标、笔针、轨迹球等的定位设备可以通过定位设备接口358通信以接收用户输入。
GPS收发器340可以确定网络计算机300在地球表面上的物理坐标,其通常将位置输出为纬度和经度值。GPS收发器340还可以采用其他地理定位机制,包括但不限于三角测量、辅助GPS(AGPS)、增强观测时差(E-OTD)、小区标识符(CI)、服务区标识符(SAI)、增强定时提前(ETA)、基站子系统(BSS)等,以进一步确定网络计算机300在地球表面上的物理位置。应当理解,在不同的条件下,GPS收发器340可以确定网络计算机300的物理位置。然而,在一个或多个实施方案中,网络计算机300可通过其他组件提供可用于确定客户端计算机的物理位置的其他信息,包括例如介质访问控制(MAC)地址、IP地址等。
在各种实施方案中的至少一个中,诸如操作系统306、推荐引擎322、可视化引擎324、建模引擎326、其他应用程序329等的应用程序可被布置为采用地理位置信息来选择一个或多个定位特征,诸如时区、语言、货币、货币格式、日历格式等。本地化特征可用于用户界面、仪表板、可视化、报告以及内部流程或数据库。在各种实施方案中的至少一个中,用于选择定位信息的地理位置信息可以由GPS 340提供。此外,在一些实施方案中,地理位置信息可以包括通过诸如无线网络108或网络111的网络使用一个或多个地理定位协议提供的信息。
存储器304可以包括随机存取存储器(RAM)、只读存储器(ROM)或其他类型的存储器。存储器304示出用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的计算机可读存储介质(设备)的实施例。存储器304存储用于控制网络计算机300的低级操作的基本输入/输出系统(BIOS)308。存储器还存储用于控制网络计算机300的操作的操作系统306。应当理解,该组件可以包括通用操作系统,诸如UNIX或的版本,或者专用操作系统,诸如微软公司(Microsoft Corporation)的Windows操作系统,或者苹果公司(Apple Corporation)的/>操作系统。该操作系统可以包括一个或多个虚拟机模块或者与其接口,诸如允许经由Java应用程序控制硬件组件或操作系统操作的Java虚拟机模块。同样,也可以包括其他运行时环境。
存储器304可以还包括一个或多个数据存储310,其可由网络计算机300用来存储应用程序320或其他数据等。例如,数据存储310也可用于存储描述网络计算机300的各种能力的信息。然后可以基于各种方法中的任何一种将信息提供给另一设备或计算机,包括在通信期间作为报头的一部分发送、根据请求发送等。数据存储310还可用于存储包括地址簿、好友列表、别名、用户简档信息等的社交网络信息。数据存储310可还包括程序代码、数据、算法等,以供诸如处理器302的处理器使用以执行和进行诸如下面描述的那些动作的动作。在一个实施方案中,数据存储310中的至少一些还可以存储在网络计算机300的另一组件上,包括但不限于处理器可读可移动存储设备336、处理器可读固定存储设备334或网络计算机300内或甚至网络计算机300外部的任何其他计算机可读存储设备内的非暂时性介质。数据存储310可以包括例如数据模型314、数据源316、可视化模型318、推荐模型319等。
应用程序320可以包括计算机可执行指令,当由网络计算机300执行时,该计算机可执行指令发送、接收或以其他方式处理消息(例如,SMS、多介质消息服务(MMS)、即时消息(IM)、电子邮件或其他消息)、音频、视频,并使得能够与另一移动计算机的另一用户进行电信。应用程序的其他实施例包括日历、搜索程序、电子邮件客户端应用程序、IM应用程序、SMS应用程序、因特网协议语音(VOIP)应用程序、联系人管理器、任务管理器、代码转换器、数据库程序、字处理程序、安全应用程序、电子表格程序、游戏、搜索程序等。应用程序320可包括推荐引擎322、可视化引擎324、建模引擎326、其他应用程序329等,其可被布置为进行用于下面描述的实施方案的动作。在各种实施方案中的一个或多个中,一个或多个应用程序可以被实现为另一应用程序的模块或组件。此外,在各种实施方案中的一个或多个中,应用程序可以被实现为操作系统扩展、模块、插件等。
此外,在各种实施方案中的一个或多个中,推荐引擎322、可视化引擎324、建模引擎326、其他应用程序329等可以在基于云的计算环境中操作。在各种实施方案中的一个或多个中,包括可视化平台的这些应用和其他应用可以在虚拟机或虚拟服务器(其可以在基于云的计算环境中管理)内执行。在各种实施方案中的一个或多个中,在这种情况下,根据由云计算环境自动管理的性能和可伸缩性考虑,应用程序可以从基于云的环境内的一个物理网络计算机流到另一个。同样,在各种实施方案中的一个或多个中,专用于推荐引擎322、可视化引擎324、建模引擎326、其他应用程序329等的虚拟机或虚拟服务器可以自动地被供应和解除委托。
此外,在各种实施方案中的一个或多个中,推荐引擎322、可视化引擎324、建模引擎326、其他应用程序329等可以位于运行在基于云的计算环境中的虚拟服务器中,而不是绑定到一个或多个特定物理网络计算机。
此外,网络计算机300还可以包括硬件安全模块(HSM)360,用于提供用于生成、存储或使用诸如密钥、数字证书、密码、密码短语、双因素认证信息等的安全/密码信息的附加防篡改保障。在一些实施方案中,硬件安全模块可用于支持一个或多个标准公钥基础设施(PKI),并可用于生成、管理或存储密钥对等。在一些实施方案中,HSM 360可以是独立的网络计算机,在其他情况下,HSM 360可以被布置为可以安装在网络计算机中的硬件卡。
另外,在一个或多个实施方案(图中未示出)中,网络计算机300可包括嵌入式逻辑硬件设备而不是CPU,诸如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程阵列逻辑(PAL)等或其组合。嵌入式逻辑硬件设备可以直接执行其嵌入式逻辑以进行动作。此外,在一个或多个实施方案(图中未示出)中,网络计算机可以包括一个或多个硬件微控制器而不是CPU。在一个或多个实施方案中,一个或多个微控制器可直接执行它们自己的嵌入式逻辑以进行动作,并访问它们自己的内部存储器和它们自己的外部输入和输出接口(例如,硬件引脚或无线收发器)以进行动作,诸如片上系统(SOC)等。
说明性逻辑系统架构
图4示出了根据各种实施方案中的一个或多个的用于基于内容的相关视图推荐的系统400的逻辑架构。在各种实施方案中的一个或多个中,系统400可以由各种组件组成,该组件包括一个或多个建模引擎,诸如建模引擎402。
在各种实施方案中的一个或多个中,系统400可以被布置为包括各种组件,包括建模引擎402、训练数据存储404、推荐模型数据存储406、推荐引擎408、数据源410、社区可视化412、用户可视化414、可视化引擎416、一个或多个推荐的可视化418等。
在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于与用户正在采用的可视化相关联的一个或多个元数据字段,采用一个或多个推荐模型来向用户推荐一个或多个可视化。此外,在一些实施方案中,可视化引擎可被布置为监测用户与推荐的可视化的交互以生成度量或遥测信息,该信息可用于基于用户与推荐的可视化的交互来评估推荐模型的功效。
在各种实施方案中的一个或多个中,推荐模型可以被布置为基于可以与可视化相关联的元数据的相似性来推荐一个或多个可视化。在一些实施方案中,元数据可以包括文本信息,其可以被认为不同于可视化中包括或显示的内容。例如,在一些实施方案中,元数据可以包括作者名称、标题栏、可视化名称、列名称、表名称、数据源名称、作者角色、作者位置、作者组织/部门、数据模型对象名称等。注意,本领域普通技术人员将理解,元数据可以根据本地要求或本地环境而变化。因此,这里描述的或贯穿该具体实施方式的元数据的实施例应该被认为是至少足以公开本文包括的创新的元数据的非限制性实施例。
在各种实施方案中的一个或多个中,推荐模型可以被布置为模块化的,使得各种试探法、机器学习模型、过滤器等可以包括在推荐模型中。在各种实施方案中的一个或多个中,模块可以被修改、替换或添加到推荐模型。因此,在一些实施方案中,推荐模型可以针对本地环境或本地要求进行定制。同样,在一些实施方案中,如果额外的试探法或机器学习方法在离线实验中或通过对生产环境的观察被证明或发现是有效的,则它们可以被包括在推荐模型中。
在各种实施方案中的一个或多个中,推荐模型的一个或多个部分可以集中于采用元数据字段中包括的文本内容的自然语言处理。在一些实施方案中,不同的推荐模型或推荐模型的部分可以被布置为采用用于基于内容的相关视图推荐的技术,诸如潜在语义分析(LSA)、因式分解机(FM)、余弦相似性、梯度提升决策树(GBDT)、词频-逆文档频率(TF-IDF)、判别分析等。在一些实施方案中,可以针对不同的环境训练或测试推荐模型的不同类型或实例。对于一些实施方案,本领域普通技术人员将理解,推荐模型在被组织使用时可以经受连续的测试、调整或改进。在一些情况下,现有的推荐模型可能会失宠,而可能会部署可能包括新的建模方法、试探法、参数等的新推荐模型。因此,本领域普通技术人员将理解,这些创新不限于固定的推荐模型集,而是可以预期它们在给定组织或接入组织内随着时间的推移而改变或演进。
在各种实施方案中的一个或多个中,因为推荐模型可以被布置为支持单个组织或单个组织的用户,因此每个组织可以具有不同的训练数据。因此,在一些实施方案中,训练数据可以在数量或特征上广泛变化。在某些情况下,在启用基于内容的相关视图推荐之前,组织可能已经积累了许多可视化效果。相反,在一些实施方案中,其他组织可能在它们已经创建足够的可视化来训练它们的推荐模型之前已经激活了可视化推荐。
因此,在一些实施方案中,可以提供一个或多个基线模型来实现对可能没有足够训练数据的组织的有意义的推荐。在一些实施方案中,基线模型可以基于公共共享数据的训练数据来训练。在一些实施方案中,共享数据可以由自愿为训练基线模型提供它们的一些或所有可视化的其他用户或组织提供。
因此,在一些实施方案中,可以向缺乏用于训练其自己的推荐模型的足够数据的组织提供一个或多个基于基线模型的推荐模型。当它们生成它们自己的训练数据时,可以用于基于它们自己的数据的训练推荐模型。
图5示出了根据各种实施方案中的一个或多个的示出用于基于内容的相关视图推荐的一些元数据的系统200的一部分的逻辑示意图。在一些实施方案中,可视化系统可以被布置为定义用于可视化的各种元数据。此外,在各种实施方案中的一个或多个中,可视化系统可以被布置为定义可视化系统的其他部分的元数据,诸如用户、数据源、项目、注释、与系统中的对象相关联的标签、与对象或用户相关联的权限/特权等。在一些实施方案中,根据本地环境或本地要求,可以包括或省略一个或多个元数据字段。因此,在一些实施方案中,可以基于配置信息来确定被确定为与基于内容的相关视图推荐相关或以其他方式有用的元数据字段。
在各种实施方案中的一个或多个中,元数据可以与不同的范围或上下文相关联。在该实施例中,表502表示可以为数据库模式等定义的表名称列表。
此外,在该实施例中,对于一些实施方案,表504表示元数据字段及其数据类型的列表。在该实施例中,表504可以被认为包括为存储与可视化相关联的元数据的表定义的列。
最后,在该实施例中,表506表示具有用于可视化的元数据字段值的表,使得每一行表示用于单独可视化的元数据字段值。
本领域普通技术人员将理解,在生产环境中,可能存在比这里描述的更多或不同的元数据字段。然而,本领域普通技术人员将理解,这里描述的元数据至少足以公开本文描述的创新。类似地,虽然该实施例使用表来表示元数据,但是用于表示元数据字段或元数据字段的集合的一个或多个数据结构可以使用各种数据结构,包括列表、数组、字典、向量、稀疏数组、树等,而不脱离这些创新的范围。
图6示出了根据各种实施方案中的一个或多个的用于基于内容的相关视图推荐的用户界面600的一部分的逻辑表示。在一些实施方案中,用户界面600可以被布置为包括一个或多个面板,诸如面板602、面板604等。
在各种实施方案中的一个或多个中,用户界面600可以被布置为向用户显示一个或多个推荐的可视化。在一些实施方案中,诸如面板604的面板可以显示推荐的可视化的紧凑表示(例如,缩略图等)。在该实施例中,子面板606可以表示推荐的可视化的紧凑可视化表示。此外,在一些实施方案中,可以显示(或经由诸如子面板608的子面板访问)包括解释性自然语言说明叙事的附加信息。例如,在一些实施方案中,子面板608可以包括解释哪些元数据字段在推荐子面板606中示出的可视化时具有最大影响的叙事。
在各种实施方案中的一个或多个中,与推荐的可视化相关联的面板可以基于与给定推荐的质量或强度相关联的推荐分数以等级顺序显示。
因此,在一些实施方案中,可以使用户能够从显示的推荐的可视化的集合中选择可视化。
在各种实施方案中的一个或多个中,诸如面板604的面板可以与其他用户界面元素相关联,它们可以使用户能够提供表示它们同意或不同意推荐的分数。因此,在一些实施方案中,建模引擎可以采用这些分数来修改或分级同一组织中的用户或其他用户的推荐模型。
在各种实施方案中的一个或多个中,与推荐的可视化相关联的解释性叙事可以描述为什么推荐给定的可视化的原因。在一些实施方案中,叙事性文本可以与一个或多个元数据字段相关联。例如,对于一些实施方案,如果用于推荐可视化的最强信号可以是其字幕字段的内容,则与推荐相关联的叙事性信息可以包括说明已经基于字幕与用户使用的其他可视化的字幕的相似性做出推荐的叙事性文本。
在各种实施方案中的一个或多个中,用户界面600可以被布置为使用户能够向下钻取(例如,通过子面板608)以探索与给定推荐相关联的附加细节。
广义运算
图7-图13表示根据各种实施方案中的一个或多个的基于内容的相关视图推荐的通用操作。在各种实施方案中的一个或多个中,结合图7-图13描述的过程700、800、900、1000、1100、1200和1300可以由单个网络计算机(或网络监测计算机)(诸如图3的网络计算机300)上的一个或多个处理器实现或执行。在其他实施方案中,这些过程或其部分可以由多个网络计算机(诸如图3的网络计算机300)实现或在其上执行。在又一其他实施方案中,这些过程或其部分可以由一个或多个虚拟化计算机(诸如基于云的环境中的那些)实现或在其上执行。然而,实施方案不限于此,并且可以利用网络计算机、客户端计算机等的各种组合。此外,在各种实施方案中的一个或多个中,根据诸如结合图4-图6描述的那些的各种实施方案或架构中的至少一个,结合图7-图11描述的过程可以用于基于内容的相关视图推荐。此外,在各种实施方案中的一个或多个中,由过程700、800、900、1000、1100、1200和1300进行的一些或所有动作可以由推荐引擎322、可视化引擎324、建模引擎326、一个或多个网络计算机的一个或多个处理器部分执行。
图7示出了根据各种实施方案中的一个或多个的用于基于内容的相关视图推荐的过程700的概述流程图。在开始框之后,在框702,在各种实施方案中的一个或多个中,可以显示与社区可视化的集合相关联的可视化。通常,该可视化可以是用户可以经由用户界面或交互式报告与其交互的可视化。在一些实施方案中,如果用户可能正在观看一个以上的可视化,则可以为一个或多个显示可视化生成推荐。
在框704,在各种实施方案中的一个或多个中,推荐引擎可以被布置为确定与显示的可视化相关联的一个或多个元数据字段。在框706,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于与每个社区可视化相关联的元数据字段与同显示的可视化相关联的元数据字段的相似性来对一个或多个社区可视化进行排名。
在各种实施方案中的一个或多个中,推荐引擎可以被布置为采用推荐模型来为每个社区可视化生成推荐分数。在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于与每个社区可视化相关联的推荐分数来对社区可视化进行排名。
在框708,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于它们对推荐分数的贡献来确定推荐的可视化的每个元数据字段的影响分数。
在框710,在各种实施方案中的一个或多个中,推荐引擎可以被布置为提供可以在向用户示出一个或多个推荐的可视化的用户界面或交互式报告中提供的信息。接下来,在各种实施方案中的一个或多个中,控制可以返回到调用过程。
图8示出了根据各种实施方案中的一个或多个的用于生成基于内容的相关视图推荐的推荐模型的过程800的流程图。在开始框之后,在框802,在各种实施方案中的一个或多个中,建模引擎可以被布置为确定一个或多个社区可视化中的一个或多个元数据字段。在各种实施方案中的一个或多个中,可以确定一个或多个元数据字段不适合用于基于内容的相关视图推荐。因此,在一些实施方案中,推荐引擎可以被布置为从更大的元数据字段集合中选择性地确定要考虑的元数据字段。在一些实施方案中,推荐引擎可以被布置为采用经由配置信息提供的规则、列表、过滤器等来确定提供推荐的元数据字段考虑。
此外,在各种实施方案中的一个或多个中,一个或多个推荐模型可以被布置为提供定义元数据字段(对于推荐模型生成推荐的可视化的推荐分数可能是必需的(或可选的))的接口。
在框804,在各种实施方案中的一个或多个中,建模引擎可以被布置为使用一个或多个启发式方法来准备元数据,以修改或过滤一个或多个元数据字段。在各种实施方案中的一个或多个中,一个或多个常规数据准备方法可以应用于一个或多个元数据字段的值,诸如标记化、移除停用词、标准化大写、拼写校正等。在一些实施方案中,可以采用语义分析来折叠一个或多个元数据字段值,或者以其他方式识别可能具有相同含义的不同内容。
在各种实施方案中的一个或多个中,一个或多个元数据字段可以与过滤器的特定试探法相关联。例如,可以与通常包括单词的句子或段落的元数据字段不同地处理可以被限制为单个单词值的元数据字段。
在框806,在各种实施方案中的一个或多个中,建模引擎可以被布置为基于准备好的元数据来训练一个或多个推荐模型。在各种实施方案中的一个或多个中,推荐模型可以被布置为包括需要训练的一个或多个子模型或模块。因此,在一些实施方案中,推荐引擎可以被布置为执行为给定推荐模型定义的所需训练。
在框808,在各种实施方案中的一个或多个中,推荐引擎可以被布置为采用一个或多个推荐模型来基于元数据的相似性推荐一个或多个可视化。接下来,在各种实施方案中的一个或多个中,控制可以返回到调用过程。
图9示出了根据各种实施方案中的一个或多个的用于基于内容的相关视图推荐的过程900的流程图。在开始框之后,在框902,在各种实施方案中的一个或多个中,推荐引擎可以被布置为确定与输入可视化相关联的一个或多个元数据字段。在一些实施方案中,输入可视化可以是当前正在向用户显示的可视化。
在各种实施方案中的一个或多个中,可以基于用户可以与之交互的当前可视化来选择输入可视化。在一些实施方案中,推荐引擎可以被布置为自动采用用户可以作为输入可视化而主动查看的可视化。在一些实施方案中,用户界面可以包括使用户能够激活推荐特征或选择性地请求接收推荐报告的一个或多个用户界面控件。
在各种实施方案中的一个或多个中,推荐引擎可以被布置为跨各种元数据源迭代,以确定可以被用作用于确定一个或多个推荐的可视化的输入值的元数据字段。如上所述,在一些实施方案中,推荐引擎可以被布置为从数据源、数据库表、可视化模型、数据模型等中的一个或多个确定元数据字段。此外,在各种实施方案中的一个或多个中,推荐引擎可以被布置为从遥测信息(诸如观看计数、最后使用日期、其他流行度度量等)确定一个或多个元数据字段。
在各种实施方案中的一个或多个中,推荐引擎可以被布置为过滤、格式化、合并、修改等元数据字段或元数据字段值,以符合一个或多个推荐模型的输入规范。例如,在一些情况下,诸如“表_名称(table_name)”的元数据字段可以与诸如“最后_访问(last_accessed)”的列名称连接,以提供元数据字段“表_名称.最后_访问(table_name.last_accessed)”,从而将其与其他类似命名的列区分开。
在一些实施方案中,推荐引擎可以被布置为使用完全限定的标识符(可以将它们与其他类似命名的元数据字段区分开)来存储一个或多个元数据字段。
此外,在各种实施方案中的一个或多个中,推荐引擎可以被布置为在将它们提供给推荐模型之前进行一个或多个动作来清理、规范化或以其他方式准备元数据字段值。在一些实施方案中,这可以包括纠正拼写、标准化大写、舍入或截断数值、单词替换(例如,将语义相似的单词映射为公共单词)、截断长字符串、从短语中移除所谓的停用词等。
此外,在各种实施方案中的一个或多个中,推荐引擎可以被布置为进行额外的动作来预处理或预先计算与元数据字段或元数据字段值相关联的一个或多个属性、统计、度量等。例如,在一些实施方案中,推荐引擎可以被布置为针对包括在一个或多个元数据字段中的(自然语言)文本短语或文本块计算一个或多个度量,诸如熵、困惑度等。在一些实施方案中,推荐引擎可以被布置为计算或生成一个或多个合成元数据字段,其可以包括有从其他源提取的一个或多个元数据字段。
因此,在一些实施方案中,推荐引擎可以被布置为确定规则、位置等,用于基于配置信息来确定元数据字段源、元数据字段、元数据字段格式等,以考虑本地环境或本地要求。
在框904,在一些实施方案中,推荐引擎可以被布置为确定要考虑推荐的一个或多个社区可视化。在各种实施方案中的一个或多个中,用户可用的社区可视化可以包括一个或多个社区可视化,其可以由于各种原因而被排除在考虑之外。在一些实施方案中,可以基于用户偏好、组织偏好等排除一个或多个社区可视化。此外,在一些实施方案中,推荐模型可以包括将一个或多个社区可视化排除在考虑之外的一个或多个前端试探法。例如,在一些实施方案中,用户可能更喜欢排除可能与某些业务单元等相关联的社区可视化。此外,例如,对于一些实施方案,用户可以被允许出于各种原因(诸如各种元数据字段值(例如,年龄、最后访问日期、用户等)、语言(例如,英语、西班牙语等)、可视化的类型等)排除可视化。
此外,在各种实施方案中的一个或多个中,推荐引擎可以被布置为使得用户或组织能够基于一个或多个元数据字段值(指示可以与可能不适合推荐的可视化相关联)来排除被考虑推荐的一个或多个可视化。例如,在一些实施方案中,用户可以观察到,与特定标签/状态元数据字段值(诸如“测试”、“损坏”、“私有”、“不完整”等)相关联的可视化应该被排除在推荐的考虑之外。
类似地,在一些实施方案中,建模引擎可以被布置为识别一个或多个元数据字段值,其指示某些可视化可能是推荐的不合适考虑。例如,在一些实施方案中,在推荐模型训练期间,与标签/状态元数据字段值(诸如“测试”、“损坏”、“私有”、“不完整”等)相关联的可视化可以被确定为从考虑中排除。
此外,在一些实施方案中,一个或多个特定推荐模型在为一个或多个类别或分类的可视化提供推荐时可能无效,而同时对其他类别或分类的可视化有效。因此,在一些实施方案中,取决于所使用的推荐模型,一个或多个社区可视化可以被排除在考虑之外。
在框906,在各种实施方案中的一个或多个中,推荐引擎可以被布置为采用一个或多个内容聚焦分类器等,以基于元数据字段与输入可视化的相似性来确定一个或多个社区可视化的一个或多个部分推荐分数。
在各种实施方案中的一个或多个中,建模引擎可以被布置为生成推荐模型,其包括一个或多个部分或一个或多个子模型,其可以被训练或以其他方式被引导以采用元数据字段的内容或值来生成与元数据字段内容与可能可用的社区可视化的相似性相关联的推荐分数。
因此,在各种实施方案中的一个或多个中,推荐引擎可以被布置为将来自输入可视化的元数据字段值与来自一个或多个社区可视化的元数据字段值进行比较。
在各种实施方案中的一个或多个中,包括推荐模型的一个或多个子模型可以被引导来评估或比较包括文本值的一个或多个元数据字段。此外,在一些实施方案中,可以引导包括推荐模型的一个或多个子模型来评估包括数值的元数据字段。
在各种实施方案中的一个或多个中,一个或多个社区可视化可以与一个或多个像差(诸如一个或多个缺失/省略的元数据字段、一个或多个空元数据字段等)相关联。因此,在一些实施方案中,一个或多个推荐模型可以被布置为根据需要提供默认值。可替代地,在一些实施方案中,推荐引擎或推荐模型可以被布置为基于一个或多个缺失的元数据字段值从考虑中排除一个或多个社区可视化。
在框908,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于新近性、流行度、本地偏好、规则等中的一个或多个来生成一个或多个其他部分推荐分数。
在各种实施方案中的一个或多个中,推荐模型可以被布置为包括一个或多个子模型,其基于试探法,或者其可以不基于机器学习训练等来确定。在一些实施方案中,这些可以包括健全性检查,其可以针对可能是异常值或以其他方式明显异常的一个或多个可视化进行去排名。例如,在一些实施方案中,比定义的年龄阈值更老的可视化可以被去排名。此外,例如,省略一个或多个元数据字段的可视化可以被去排名,以说明可以与强信号元数据字段等相关联的所分配的默认值的影响。
在各种实施方案中的一个或多个中,推荐模型可以被布置为定义一个或多个条件、规则、阈值等,用于基于与社区可视化相关联的一个或多个度量来生成部分分数。在一些实施方案中,这些度量中的一个或多个可以依赖于可以由可视化引擎收集的与其他用户相关联的遥测信息,诸如其他用户的观看次数、向其他用户推荐可视化的次数、其他用户从推荐列表中选择可视化的次数等。同样,在一些实施方案中,用于当前用户的类似遥测度量可以在规则、条件等中使用,用于对社区可视化进行评分。
在框910,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于一个或多个部分推荐分数、一个或多个其他部分推荐分数等的组合来生成一个或多个推荐分数。
在各种实施方案中的一个或多个中,推荐模型可以被布置为包括用于从一个或多个部分分数计算推荐分数的一个或多个公式。在一些实施方案中,推荐模型可以被布置为基于部分分数的线性组合来计算推荐分数。在一些实施方案中,一些部分分数的和可以除以其他分数的和等。因此,在一些实施方案中,特定组合公式可以被定义为推荐模型的一部分。
在各种实施方案中的一个或多个中,如果部分分数可以基于多于推荐模型,则单个推荐模型可以与影响它们对与每个社区可视化相关联的总体推荐分数的贡献的权重或系数相关联。
此外,在一些实施方案中,推荐引擎可以被布置为考虑附加分数,诸如置信度分数等,如果部分分数被组合,则可以与一个或多个部分分数相关联。
在框912,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于推荐分数对一个或多个社区可视化进行排名。在各种实施方案中的一个或多个中,推荐引擎可以被布置为采用与被评估以对一个或多个社区可视化进行排名的每个社区可视化相关联的推荐分数。
在框914,在各种实施方案中的一个或多个中,推荐引擎可被布置为过滤推荐的可视化的排名顺序列表。在各种实施方案中的一个或多个中,推荐引擎可以被布置为应用一个或多个过滤器来减少排名顺序列表中的社区可视化的数量。可替代地,在一些实施方案中,推荐引擎可被布置为向可视化引擎(可确定在用户界面中显示多少)提供所有排名可视化。
此外,在各种实施方案中的一个或多个中,推荐模型可以被布置为包括一个或多个过滤器,其可以在排名有序的社区可视化的集合上执行。在各种实施方案中的一个或多个中,这些后侧过滤器可以用于修改排名或从集合中丢弃一个或多个社区可视化。在各种实施方案中的一个或多个中,推荐模型可以被布置为降级已排名的可视化,因为其位置可能看起来异常或虚假。例如,对于一些实施方案,如果可视化可以比其他可视化排名更高,因为它具有与历史上可能与用户偏好相关性差的一个或多个元数据字段相关联的极高的部分分数,则该可视化可以降低排名以与其与更有影响力的元数据字段相关联的部分分数更一致。
在各种实施方案中的一个或多个中,推荐引擎可以被布置为存储包括推荐/排名以及其他相关信息的信息,诸如使用的推荐模型、用户、组织、做出推荐的时间/日期等。因此,在一些实施方案中,可以稍后评估推荐或推荐模型的功效。
接下来,在各种实施方案中的一个或多个中,控制可以返回到调用过程。
图10示出了根据各种实施方案中的一个或多个的用于基于内容的相关视图推荐的过程1000的流程图。在开始框之后,在框1002,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于推荐模型或推荐分数来确定一个或多个排名靠前的推荐的可视化。
此外,在一些实施方案中,推荐引擎可以被布置为评估单个元数据字段对确定每个推荐的可视化的推荐分数的贡献。
因此,在一些实施方案中,推荐模型可以包括一个或多个模块,其可以被引导来确定用于确定一个或多个推荐的可视化的一个或多个元数据字段的影响分数。
在框1004,在各种实施方案中的一个或多个中,推荐引擎可以被布置为确定与排名靠前的推荐的可视化中的每个相关联的一个或多个元数据字段的一个或多个影响分数。
在各种实施方案中的一个或多个中,推荐引擎可以被布置为采用一个或多个推荐模型,其可以定义不同的策略、标准等,用于识别元数据字段对与可视化相关联的推荐模型的贡献。然而,在一些实施方案中,元数据字段的相对贡献可以由本文称为影响分数的一个或多个值来表示。
因此,在各种实施方案中的一个或多个中,下面列出的实施例可以基于推荐模型中包括的指令、规则、子模型等。为了清楚或简洁,推荐模型中与确定元数据字段的影响分数相关联的部分可以被称为影响模型。
在各种实施方案中的一个或多个中,一个或多个影响模型可以被布置为基于给定元数据字段的值在排名的可视化中的评估共性来对元数据字段进行排名。因此,在一些实施方案中,元数据字段的影响分数(或部分分数)可以基于共享相同值的排名靠前的可视化的数量的计数。在一些实施方案中,推荐引擎可以被布置为一个或多个比较或评估,以确定用于可视化的元数据字段是否具有共同值。在一些实施方案中,可视化中的元数据字段值可以在与来自其他可视化的值进行比较之前被标记化。此外,在各种实施方案中的一个或多个中,可视化中的元数据字段值可以直接与来自其他可视化的值进行比较。此外,在一些实施方案中,可以采用一个或多个模糊匹配策略来跨可视化比较元数据字段值。
在一些实施方案中,可以布置一个或多个影响模型,如果从考虑中移除单个元数据字段,则通过计算对推荐分数的影响来确定影响分数(或部分分数)。因此,在各种实施方案中的一个或多个中,如果在确定推荐分数期间省略给定元数据字段,则可以基于推荐分数或可视化的等级顺序改变多少来评估单个元数据字段的影响。因此,在一些实施方案中,对与单个省略的元数据字段相关联的推荐分数的改变可以被测量或以其他方式映射到影响分数或部分影响分数。
在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于潜在语义分析(LSA)等来训练一个或多个训练一个或多个主题模型,以基于元数据字段来确定用于排名可视化的主导主题。因此,在一些实施方案中,可以使用主题模型来评估元数据字段中包括的值,以识别主导主题。因此,在一些实施方案中,主导主题可被映射回其相关联的元数据字段以评估每个元数据字段的影响。
在一些实施方案中,一个或多个元数据字段可以基于各种考虑(诸如隐私、功效、相关性、提供误导信号的经验证据等)从一个或多个评估中排除。在一些实施方案中,推荐引擎可以被布置为结合用户反馈或遥测信息来评估影响分数的功效或质量。在一些实施方案中,可能与误导性结果相关联的元数据字段可能被降低权重或从考虑中移除。
此外,在一些实施方案中,推荐模型可以被布置为基于性能、用户偏好、遥测信息等对由影响模型提供的部分影响分数进行加权。此外,在一些实施方案中,可以基于一个或多个考虑因素(诸如元数据字段的数量、推荐分数的分布等)来选择不同的影响模型。此外,在一些实施方案中,可以逐步应用影响模型,使得先前执行的影响模型的结果可以影响后续影响模型的选择。例如,对于一些实施方案,如果第一影响模型提供了具有超过阈值的置信度值的结果,则可以停止影响分数的确定。相反,对于一些实施方案,如果第一影响模型提供不确定的结果,则可以选择并执行另一影响模型。
在各种实施方案中的一个或多个中,推荐引擎可以被布置为组合与不同影响模型相关联的两个或多个部分影响分数,以提供一个或多个元数据字段的单个影响分数。在各种实施方案中的一个或多个中,推荐模型可以包括规则、公式、指令等,用于将部分影响分数组合成可以与元数据字段相关联的单个分数。
在框1006,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于一个或多个影响分数对每个排名靠前的推荐的可视化的一个或多个元数据字段进行排名。
在一些实施方案中,推荐引擎可以被布置为提供元数据字段的总体排名以及在每个可视化内对元数据字段进行排名。例如,在一些实施方案中,可以考虑跨可视化的每个元数据字段的排名/分数来确定给定元数据字段的总体排名。
在框1008,在各种实施方案中的一个或多个中,推荐引擎可以被布置为针对一个或多个排名靠前的推荐的可视化生成叙事。
在各种实施方案中的一个或多个中,推荐模型可以包括模块或子模型,用于将解释性文本叙事映射到排名靠前的元数据字段以显示给用户。在一些实施方案中,可以为一个或多个不同的元数据字段预先生成一个或多个模板。因此,在一些实施方案中,一个或多个元数据字段可以与叙事相关联,其可以提供元数据字段或其对推荐的影响的人类可读描述。
在框1010,在各种实施方案中的一个或多个中,推荐引擎可以被布置为包括与一个或多个排名靠前的推荐的可视化相关联的报告信息中的一个或多个排名靠前的元数据字段的叙事。
在各种实施方案中的一个或多个中,推荐引擎可以被布置为向可视化引擎提供推荐的可视化的排名列表,以在用户界面或交互式报告中显示给用户。
接下来,在各种实施方案中的一个或多个中,控制可以返回到调用过程。
图11示出了根据各种实施方案中的一个或多个的用于基于基线模型提供初始推荐模型的过程1100的流程图。在开始框之后,在框1102,在各种实施方案中的一个或多个中,推荐引擎可以被布置为提供一个或多个基线模型,其可以基于公共或通用训练数据。
在各种实施方案中的一个或多个中,如果组织开始使用可视化系统,定制或个性化推荐模型可能不可用。因此,可以提供基于公共、共享或通用数据的一个或多个基线模型。在一些实施方案中,基线模型可以使用社区数据来训练。在一些实施方案中,社区数据可以基于与其他组织相关联的真实数据。因此,在一些实施方案中,社区数据可以是已经去除了敏感信息的真实数据。在一些实施方案中,组织可以被允许选择加入以将它们的一些或全部历史交互信息包括在社区数据程序中。
此外,在一些实施方案中,可视化系统可以提供可用于收集可用于训练基线模型的交互信息的免费或公共服务。
在各种实施方案中的一个或多个中,基线模型可以直接从一个或多个现有推荐模型导出。在一些实施方案中,推荐模型的不太复杂或不太详细的版本可以用作基线模型。在一些情况下,对于一些实施方案,为一个或多个组织明确训练的推荐模型可以用作新组织的基线模型。
在各种实施方案中的一个或多个中,可以提供不同的基线模型用于不同类型的组织或用户。在一些实施方案中,可以为不同类型的行业、问题领域、国家等维护基线模型。因此,在各种实施方案中的一个或多个中,可以在一个或多个基线模型中表示可能存在于行业、问题领域、国家等内的共性。
在框1104,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于一个或多个基线模型和组织的一个或多个特征来生成一个或多个推荐模型。
在各种实施方案中的一个或多个中,可以基于已知或提供的信息来开发初始组织简档。在各种实施方案中的一个或多个中,组织简档可以包括信息,诸如行业、问题领域、国家、雇员数量、企业规模、收入等。
因此,在一些实施方案中,推荐引擎可以被布置为基于一个或多个映射规则将一个或多个基线模型映射到组织。在一些实施方案中,推荐引擎可以被布置为基于配置信息来确定用于将基线模型映射到组织的规则。
在框1106,在各种实施方案中的一个或多个中,推荐引擎可被布置为基于元数据字段相似性向用户推荐一个或多个可视化。在各种实施方案中的一个或多个中,推荐引擎可以被布置为采用显示的可视化的元数据字段作为一个或多个推荐模型的输入,以生成一个或多个社区可视化的推荐分数。因此,在一些实施方案中,可以基于由一个或多个推荐模型生成的推荐分数来推荐一个或多个可视化。
在框1108,在各种实施方案中的一个或多个中,推荐引擎可被布置为收集与推荐的可视化相关联的用户遥测或用户反馈。在各种实施方案中的一个或多个中,如果向用户呈现推荐的可视化,则推荐引擎可以请求用户关于同意或不同意推荐或推荐的可视化的排名的反馈。
此外,在各种实施方案中的一个或多个中,可视化引擎可被布置为监测用户如何与推荐的可视化交互,以提供可用于评估确定推荐的可视化的推荐模型的有效性的度量。
在框1110,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于对组织信息、用户反馈、用户遥测、可用社区可视化的数量等的改变来逐步更新一个或多个推荐模型。在各种实施方案中的一个或多个中,如果与为组织或用户收集的信息相关联的一个或多个度量可以超过一个或多个阈值,则建模引擎可以被布置为重新训练或丢弃一个或多个相关联的推荐模型。此外,在一些实施方案中,所收集的度量或信息可以被存储以包括在组织的训练数据中。
接下来,在各种实施方案中的一个或多个中,控制可以返回到调用过程。
图12示出了根据各种实施方案中的一个或多个的用于评估元数据字段以提供与推荐的可视化相关联的概要叙事或解释的过程1200的流程图。在开始框之后,在框1202,在如上所述的各种实施方案中的一个或多个中,推荐引擎可以被布置为确定一个或多个推荐的可视化。在各种实施方案中的一个或多个中,推荐可以基于用户可以与之交互的可视化。
因此,在一些实施方案中,推荐引擎可以被布置为评估与推荐的可视化相关联的元数据字段,以确定哪些元数据字段对确定推荐具有最大影响。
在框1204,在各种实施方案中的一个或多个中,可选地,推荐引擎可以被布置为基于与锚可视化和一个或多个推荐的可视化相关联的元数据字段来生成元属性。
在各种实施方案中的一个或多个中,可以通过将元数据字段标签与其相应的元数据字段值组合来生成元属性。例如,在一些实施方案中,如果可视化具有值为“销售额(sales)”的元数据字段“字段名称(fieldname)”,则可以生成元属性“字段名称_销售额(fieldname_sales)”。同样,例如,具有值为“活动名称(campaign name)”的元数据字段“字段名称(fieldname)”可以产生“字段名称_活动名称(fieldname_campaign name)”的元属性。
可替代地,在一些实施方案中,元属性可以使用元组(诸如参考上面的两个实施例,(“字段名称”、“销售额”)或(“字段名称”、“活动名称”)等)来表示。类似地,本领域普通技术人员将理解,在不脱离这些创新的范围的情况下,可以使用其他数据结构或格式来表示元属性。
在一些实施方案中,元属性的对应于元数据字段值的部分可以被认为是元属性值或者仅仅是元数据字段值。
注意,该框被标记为可选的,因为在一些实施方案中,元属性可以在过程1200的执行之前生成。例如,推荐引擎可以被布置为在处理与社区可视化相关联的元数据字段信息时生成元属性。
在框1206,在各种实施方案中的一个或多个中,推荐引擎可以被布置为确定对于锚可视化和一个或多个推荐的可视化可能是公共的一个或多个元属性。在一些实施方案中,公共元属性可以是跨所有推荐的可视化和锚可视化相同的元属性。
在一些实施方案中,推荐引擎可以被布置为采用不同的“相同性”规则,诸如相等、模式匹配、模糊匹配等来确定公共元属性。因此,在一些实施方案中,推荐模型或其他配置信息可以包括用于确定给定元数据字段的相同性的规则或指令。
在框1208,在各种实施方案中的一个或多个中,推荐引擎可以被布置为令牌化一个或多个公共元属性值(或与公共元属性相关联的元数据字段值)并确定每个令牌的频率。
例如,在一些实施方案中,如果“字段名称_区域(fieldname_region)”、“字段名称_活动(fieldname_campaign)”、“字段名称_利润(fieldname__profit)”、“字段名称_活动名称(fieldname_campaign name)”、“数据源_营销(datasource_marketing)”等被确定为公共元属性,则令牌化它们可以产生令牌,诸如区域、活动、利润、活动、名称、营销等。
在一些实施方案中,如果可以生成令牌,则推荐引擎可以被布置为确定每个令牌的出现频率。在上面的实施例中,频率确定将提供(区域,1)、(活动,2)、(名称,1)、(营销,1)等、与给定令牌相关联的每个令牌的出现次数。注意,本领域普通技术人员将理解,推荐引擎可以采用其他数据结构或数据表示来表示令牌频率信息,而不是局限于使用对或元组。
在框1210,在各种实施方案中的一个或多个中,推荐引擎可以被布置为进行令牌的许可/敏感性评估。在各种实施方案中的一个或多个中,推荐引擎可以被布置为根据用户访问权限来限制用户查看一个或多个元数据字段。因此,在一些实施方案中,可以限制一些用户查看一个或多个元属性、元数据字段、令牌等。因此,在各种实施方案中的一个或多个中,推荐引擎可以被布置为根据配置信息或推荐模型过滤元数据字段、元属性、令牌等中的一个或多个。
在框1212,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于一个或多个令牌出现的频率对它们进行排名。在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于剩余的(在过滤许可/隐私之后)令牌的出现频率对其进行排序。因此,在一些实施方案中,在这种情况下,出现频率可以被认为是元数据字段的影响分数。
在框1214,在各种实施方案中的一个或多个中,推荐引擎可以被布置为用户界面的排名靠前的令牌,以显示给用户。在各种实施方案中的一个或多个中,可以向用户提供这些排名靠前的令牌,以向他们提供为什么选择推荐的可视化的解释。例如,如果排名靠前的令牌是销售、利润和收入,则说明性叙事,诸如“根据销售、利润或收入向您推荐这些可视化。”
接下来,在各种实施方案中的一个或多个中,控制可以返回到调用过程。
图13示出了根据各种实施方案中的一个或多个的用于评估所选可视化之间的元数据字段影响的过程1300的流程图。在开始框之后,在框1302,在各种实施方案中的一个或多个中,可以使用户能够选择两个或多个可视化。在一些实施方案中,用户可以经由可以显示或引用多个可视化的用户界面来选择两个或多个可视化。在一些实施方案中,两个或多个可视化可以包括锚可视化或一个或多个推荐的可视化。
在框1304,在各种实施方案中的一个或多个中,可选地,推荐引擎可以被布置为基于与锚可视化和一个或多个推荐的可视化相关联的元数据字段来生成元属性。
在各种实施方案中的一个或多个中,可以类似于在过程1200中针对框1204所描述的那样生成元属性。
注意,该框被标记为可选的,因为在一些实施方案中,元属性可以在过程1300的执行之前生成。例如,推荐引擎可以被布置为在处理与社区可视化相关联的元数据字段信息时生成元属性。
在框1306,在各种实施方案中的一个或多个中,推荐引擎可被布置为确定两个或多个所选可视化中的公共元属性。在一些实施方案中,公共元属性可以是跨所有两个或多个所选可视化相同的元属性。
在一些实施方案中,推荐引擎可以被布置为采用不同的“相同性”规则,诸如相等、模式匹配、模糊匹配等来确定公共元属性。因此,在一些实施方案中,推荐模型或其他配置信息可以包括用于确定给定元数据字段的相同性的规则或指令。
在框1308,在各种实施方案中的一个或多个中,推荐引擎可被布置为基于两个或多个所选可视化中的元属性的出现来确定公共元属性的一个或多个权重因子。在各种实施方案中的一个或多个中,推荐引擎可以被布置为确定每个公共元属性的出现计数。
在框1310,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于元属性权重因子的乘积来生成元数据字段的影响分数。
例如,如果锚可视化的元属性出现计数是(字段名称_a,2)、(字段名称_b,2)、(字段名称_c,1)和(字段名称_d,1),并且所选可视化的元属性出现计数是(字段名称_a,1)、字段名称_b,1)、(字段名称_c,3)和(字段名称_d,1),则元属性影响分数可以是(字段名称_c,1*3=3)、(字段名称_a,2*1=2)、(字段名称_b,2*1=2)和(字段名称_d,1*1=1)。
在框1312,在各种实施方案中的一个或多个中,推荐引擎可以被布置为基于它的对应元数据字段对元数据字段进行排名。
在框1314,在各种实施方案中的一个或多个中,推荐引擎可以被布置为向用户界面提供排名元数据字段以显示给用户。在各种实施方案中的一个或多个中,排名靠前的元数据字段可以用于解释为什么两个或多个可视化被认为与基于锚可视化的推荐相关。
接下来,在各种实施方案中的一个或多个中,控制可以返回到调用过程。
应当理解,每个流程图图示中的每个框以及每个流程图图示中的框的组合可以通过计算机程序指令来实现。这些程序指令可以提供给处理器以产生机器,使得在处理器上执行的指令创建用于实现每个流程图框中指定的动作的装置。计算机程序指令可由处理器执行以使处理器执行一系列操作步骤以产生计算机实现的处理,使得在处理器上执行的指令提供用于实现每个流程图框中指定的动作的步骤。计算机程序指令还可以使每个流程图的框中所示的操作步骤中的至少一些并行执行。此外,步骤中的一些也可以跨一个以上的处理器执行,诸如可能出现在多处理器计算机系统中。此外,在不脱离这些发明的范围或精神的情况下,每个流程图图示中的一个或多个框或框的组合也可以与其他框或框的组合同时执行,或者甚至以与图示不同的顺序执行。
因此,每个流程图图示中的每个框支持用于进行指定动作的装置的组合、用于进行指定动作的步骤的组合和用于进行指定动作的程序指令装置。还将理解,每个流程图图示中的每个框和每个流程图图示中的框的组合可以由进行指定动作或步骤的基于特殊目的硬件的系统或特殊目的硬件和计算机指令的组合来实现。前述实施例不应被解释为限制性或穷尽性,而是说明性用例,以示出本发明的各种实施方案中的至少一个的实现。
此外,在一个或多个实施方案(图中未示出)中,可以使用嵌入式逻辑硬件设备代替CPU,诸如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程阵列逻辑(PAL)等或其组合来执行说明性流程图中的逻辑。嵌入式逻辑硬件设备可以直接执行其嵌入式逻辑以进行动作。在一个或多个实施方案中,微控制器可被布置为直接执行其自身的嵌入式逻辑以进行动作,并访问其自身的内部存储器和其自身的外部输入和输出接口(例如,硬件引脚或无线收发器)以进行动作,诸如片上系统(SOC)等。
Claims (28)
1.一种使用一个或多个处理器而管理数据的可视化的方法,所述一个或多个处理器执行指令以进行动作,所述方法包括:
显示与一个或多个社区可视化相关联的可视化,所述一个或多个社区可视化与组织相关联,其中用户与所述组织相关联;
确定与显示的可视化相关联的元数据的一个或多个字段,其中所述一个或多个元数据字段在所述显示的可视化中隐藏而不可见;
基于推荐模型和所述一个或多个元数据字段,针对所述社区可视化中的每个生成推荐分数,其中所述推荐分数基于所述一个或多个元数据字段和与所述一个或多个社区可视化相关联的一个或多个其他元数据字段的比较;
确定所述一个或多个社区可视化的靠前排名,其中所述靠前排名基于与所述一个或多个社区可视化中的每个相关联的所述推荐分数;
基于每个其他元数据字段对相应排名靠前的社区可视化的所述推荐分数的贡献的值的比例,确定所述一个或多个其他元数据字段中的每个的影响分数,其中每个排名靠前的社区可视化的一个或多个排名靠前的其他元数据字段基于所述一个或多个其他元数据字段中的每个的所述影响分数;和
提供包括所述排名靠前的社区可视化和所述一个或多个排名靠前的其他元数据字段的排名顺序列表的报告。
2.根据权利要求1所述的方法,其中确定所述一个或多个元数据字段还包括:基于包括在所述推荐模型中的过滤器或规则中的一个或多个,从多个元数据字段确定所述一个或多个元数据字段,其中所述多个元数据字段包括作者姓名、标题栏、可视化名称、列名称、表名称、数据源名称、作者角色、作者位置、作者组织、对另一个表的引用、数据模型对象名称、创建日期或最后访问日期中的一个或多个。
3.根据权利要求1所述的方法,还包括:
提供一个或多个子模型,其包括一个或多个试探法、一个或多个训练机器学习模型或一个或多个过滤器中的一个或多个,其中所述一个或多个子模型被包括在所述推荐模型中;
基于所述一个或多个子模型、所述一个或多个元数据字段和所述一个或多个其他元数据字段,生成一个或多个部分分数;和
基于所述一个或多个部分分数的组合,确定每个社区可视化的所述推荐分数,其中所述组合由所述推荐模型提供。
4.根据权利要求1所述的方法,还包括:
监测所述用户的与所述一个或多个排名靠前的社区可视化相关联的一个或多个动作;
将与所述一个或多个动作相关联的信息存储在数据存储中;和
基于存储在所述数据存储中的所述信息,更新所述推荐模型。
5.根据权利要求1所述的方法,还包括:基于其排名靠前的其他元数据字段,将叙事与每个排名靠前的社区可视化相关联,其中所述叙事包括基于与每个排名靠前的社区可视化相关联的所述一个或多个排名靠前的其他元数据字段对每个排名靠前的社区可视化的排名进行的自然语言说明。
6.根据权利要求1所述的方法,其中确定所述一个或多个其他元数据字段中的每个的所述影响分数还包括:采用包括在所述推荐模型中的一个或多个影响模型,以基于由主题模型确定的一个或多个主导主题、所述一个或多个其他元数据字段的包括共同值的一个或多个计数或对所述推荐分数和临时推荐分数的改变幅度中的一个或多个而确定所述影响分数,基于从所述临时推荐分数的生成临时省略所述一个或多个其他元数据字段中的一个而生成所述临时推荐分数,其中每个其他元数据字段的所述影响分数基于与其省略相对应的改变幅度。
7.根据权利要求1所述的方法,其中基于所述推荐模型和所述一个或多个元数据字段针对所述社区可视化中的每个生成所述推荐分数还包括:采用一个或多个机器学习动作生成所述推荐分数,其中所述一个或多个机器学习动作包括潜在语义分析(LSA)、因式分解机(FM)、余弦相似性、梯度提升决策树(GBDT)、词频-逆文档频率(TF-IDF)或判别分析中的一个或多个。
8.一种处理器可读非暂时性存储介质,包括用于管理数据的可视化的指令,其中由一个或多个处理器执行所述指令进行动作,包括:
显示与一个或多个社区可视化相关联的可视化,所述一个或多个社区可视化与组织相关联,其中用户与所述组织相关联;
确定与显示的可视化相关联的元数据的一个或多个字段,其中所述一个或多个元数据字段在显示的可视化中隐藏而不可见;
基于推荐模型和所述一个或多个元数据字段,针对所述社区可视化中的每个生成推荐分数,其中所述推荐分数基于所述一个或多个元数据字段和与所述一个或多个社区可视化相关联的一个或多个其他元数据字段的比较;
确定所述一个或多个社区可视化的靠前排名,其中所述靠前排名基于与所述一个或多个社区可视化中的每个相关联的所述推荐分数;
基于每个其他元数据字段对相应排名靠前的社区可视化的所述推荐分数的贡献的值的比例,确定所述一个或多个其他元数据字段的每个的影响分数,其中每个排名靠前的社区可视化的一个或多个排名靠前的其他元数据字段基于所述一个或多个其他元数据字段中的每个的所述影响分数;和
提供包括所述排名靠前的社区可视化和所述一个或多个排名靠前的其他元数据字段的排名顺序列表的报告。
9.根据权利要求8所述的介质,其中确定所述一个或多个元数据字段还包括:基于包括在所述推荐模型中的过滤器或规则中的一个或多个,从多个元数据字段确定所述一个或多个元数据字段,其中所述多个元数据字段包括作者姓名、标题栏、可视化名称、列名称、表名称、数据源名称、作者角色、作者位置、作者组织、对另一个表的引用、数据模型对象名称、创建日期或最后访问日期中的一个或多个。
10.根据权利要求8所述的介质,还包括:
提供一个或多个子模型,其包括一个或多个试探法、一个或多个训练机器学习模型或一个或多个过滤器中的一个或多个,其中所述一个或多个子模型被包括在所述推荐模型中;
基于所述一个或多个子模型、所述一个或多个元数据字段和所述一个或多个其他元数据字段,生成一个或多个部分分数;和
基于所述一个或多个部分分数的组合,确定每个社区可视化的所述推荐分数,其中所述组合由所述推荐模型提供。
11.根据权利要求8所述的介质,还包括:
监测所述用户的与所述一个或多个排名靠前的社区可视化相关联的一个或多个动作;
将与所述一个或多个动作相关联的信息存储在数据存储中;和
基于存储在所述数据存储中的所述信息,更新所述推荐模型。
12.根据权利要求8所述的介质,还包括基于其排名靠前的其他元数据字段将叙事与每个排名靠前的社区可视化相关联,其中所述叙事包括基于与每个排名靠前的社区可视化相关联的所述一个或多个排名靠前的其他元数据字段对每个排名靠前的社区可视化的排名进行的自然语言说明。
13.根据权利要求8所述的介质,其中确定所述一个或多个其他元数据字段中的每个的所述影响分数还包括:采用包括在所述推荐模型中的一个或多个影响模型,以基于由主题模型确定的一个或多个主导主题、所述一个或多个其他元数据字段的包括共同值的一个或多个计数或对所述推荐分数和临时推荐分数的改变幅度中的一个或多个而确定所述影响分数,基于从所述临时推荐分数的生成临时省略所述一个或多个其他元数据字段中的一个而生成所述临时推荐分数,其中每个其他元数据字段的所述影响分数基于与其省略相对应的改变幅度。
14.根据权利要求8所述的介质,基于所述推荐模型和所述一个或多个元数据字段针对所述社区可视化中的每个生成所述推荐分数还包括:采用一个或多个机器学习动作生成所述推荐分数,其中所述一个或多个机器学习动作包括潜在语义分析(LSA)、因式分解机(FM)、余弦相似性、梯度提升决策树(GBDT)、词频-逆文档频率(TF-IDF)或判别分析中的一个或多个。
15.一种用于管理数据的可视化的系统:
网络计算机,所述网络计算机包括:
存储器,其至少存储指令;和
一个或多个处理器,其执行进行动作的指令,包括:
显示与一个或多个社区可视化相关联的可视化,所述一个或多个社区可视化与组织相关联,其中用户与所述组织相关联;
确定与显示的可视化相关联的元数据的一个或多个字段,其中所述一个或多个元数据字段在显示的可视化中隐藏而不可见;
基于推荐模型和所述一个或多个元数据字段,针对所述社区可视化中的每个生成推荐分数,其中所述推荐分数基于所述一个或多个元数据字段和与所述一个或多个社区可视化相关联的一个或多个其他元数据字段的比较;
确定所述一个或多个社区可视化的靠前排名,其中所述靠前排名基于与所述一个或多个社区可视化中的每个相关联的所述推荐分数;
基于每个其他元数据字段对相应排名靠前的社区可视化的所述推荐分数的贡献的值的比例,确定所述一个或多个其他元数据字段的每个的影响分数,其中每个排名靠前的社区可视化的一个或多个排名靠前的其他元数据字段基于所述一个或多个其他元数据字段中的每个的所述影响分数;和
提供包括所述排名靠前的社区可视化和所述一个或多个排名靠前的其他元数据字段的排名顺序列表的报告;和
客户端计算机,所述客户端计算机包括:
存储器,其至少存储指令;和
一个或多个处理器,其执行进行动作的指令,包括:
接收所述报告。
16.根据权利要求15所述的系统,其中确定所述一个或多个元数据字段还包括:基于包括在所述推荐模型中的过滤器或规则中的一个或多个,从多个元数据字段确定所述一个或多个元数据字段,其中所述多个元数据字段包括作者姓名、标题栏、可视化名称、列名称、表名称、数据源名称、作者角色、作者位置、作者组织、对另一个表的引用、数据模型对象名称、创建日期或最后访问日期中的一个或多个。
17.根据权利要求15所述的系统,其中所述网络计算机的所述一个或多个处理器执行进行动作的指令,还包括:
提供一个或多个子模型,其包括一个或多个试探法、一个或多个训练机器学习模型或一个或多个过滤器中的一个或多个,其中所述一个或多个子模型被包括在所述推荐模型中;
基于所述一个或多个子模型、所述一个或多个元数据字段和所述一个或多个其他元数据字段,生成一个或多个部分分数;和
基于所述一个或多个部分分数的组合,确定每个社区可视化的所述推荐分数,其中所述组合由所述推荐模型提供。
18.根据权利要求15所述的系统,其中所述网络计算机的所述一个或多个处理器执行进行动作的指令,还包括:
监测所述用户的与所述一个或多个排名靠前的社区可视化相关联的一个或多个动作;
将与所述一个或多个动作相关联的信息存储在数据存储中;和
基于存储在所述数据存储中的所述信息,更新所述推荐模型。
19.根据权利要求15所述的系统,其中所述网络计算机的所述一个或多个处理器执行进行动作的指令,还包括:基于其排名靠前的其他元数据字段将叙事与每个排名靠前的社区可视化相关联,其中所述叙事包括基于与每个排名靠前的社区可视化相关联的所述一个或多个排名靠前的其他元数据字段对每个排名靠前的社区可视化的排名进行的自然语言说明。
20.根据权利要求15所述的系统,其中确定所述一个或多个其他元数据字段中的每个的所述影响分数还包括:采用包括在所述推荐模型中的一个或多个影响模型,以基于由主题模型确定的一个或多个主导主题、所述一个或多个其他元数据字段的包括共同值的一个或多个计数或对所述推荐分数和临时推荐分数的改变幅度中的一个或多个而确定所述影响分数,基于从所述临时推荐分数的生成临时省略所述一个或多个其他元数据字段中的一个而生成所述临时推荐分数,其中每个其他元数据字段的所述影响分数基于与其省略相对应的改变幅度。
21.根据权利要求15所述的系统,其中基于所述推荐模型和所述一个或多个元数据字段针对所述社区可视化中的每个生成所述推荐分数还包括:采用一个或多个机器学习动作生成所述推荐分数,其中所述一个或多个机器学习动作包括潜在语义分析(LSA)、因式分解机(FM)、余弦相似性、梯度提升决策树(GBDT)、词频-逆文档频率(TF-IDF)或判别分析中的一个或多个。
22.一种用于管理数据的可视化的网络计算机,包括:
存储器,其至少存储指令;和
一个或多个处理器,其执行进行动作的指令,包括:
显示与一个或多个社区可视化相关联的可视化,所述一个或多个社区可视化与组织相关联,其中用户与所述组织相关联;
确定与显示的可视化相关联的元数据的一个或多个字段,其中所述一个或多个元数据字段在显示的可视化中隐藏而不可见;
基于推荐模型和所述一个或多个元数据字段,针对所述社区可视化中的每个生成推荐分数,其中所述推荐分数基于所述一个或多个元数据字段和与所述一个或多个社区可视化相关联的一个或多个其他元数据字段的比较;
确定所述一个或多个社区可视化的靠前排名,其中所述靠前排名基于与所述一个或多个社区可视化中的每个相关联的所述推荐分数;
基于每个其他元数据字段对相应排名靠前的社区可视化的所述推荐分数的贡献的值的比例,确定所述一个或多个其他元数据字段的每个的影响分数,其中每个排名靠前的社区可视化的一个或多个排名靠前的其他元数据字段基于所述一个或多个其他元数据字段中的每个的所述影响分数;和
提供包括所述排名靠前的社区可视化和所述一个或多个排名靠前的其他元数据字段的排名顺序列表的报告。
23.根据权利要求22所述的网络计算机,其中确定所述一个或多个元数据字段还包括:基于包括在所述推荐模型中的过滤器或规则中的一个或多个,从多个元数据字段确定所述一个或多个元数据字段,其中所述多个元数据字段包括作者姓名、标题栏、可视化名称、列名称、表名称、数据源名称、作者角色、作者位置、作者组织、对另一个表的引用、数据模型对象名称、创建日期或最后访问日期中的一个或多个。
24.根据权利要求22所述的网络计算机,其中所述一个或多个处理器执行进行动作的指令,还包括:
提供一个或多个子模型,其包括一个或多个试探法、一个或多个训练机器学习模型或一个或多个过滤器中的一个或多个,其中所述一个或多个子模型被包括在所述推荐模型中;
基于所述一个或多个子模型、所述一个或多个元数据字段和所述一个或多个其他元数据字段,生成一个或多个部分分数;和
基于所述一个或多个部分分数的组合,确定每个社区可视化的所述推荐分数,其中所述组合由所述推荐模型提供。
25.根据权利要求22所述的网络计算机,其中所述一个或多个处理器执行进行动作的指令,还包括:
监测所述用户的与所述一个或多个排名靠前的社区可视化相关联的一个或多个动作;
将与所述一个或多个动作相关联的信息存储在数据存储中;和
基于存储在所述数据存储中的所述信息,更新所述推荐模型。
26.根据权利要求22所述的网络计算机,其中所述一个或多个处理器执行进行动作的指令,还包括:基于其排名靠前的其他元数据字段将叙事与每个排名靠前的社区可视化相关联,其中所述叙事包括基于与每个排名靠前的社区可视化相关联的所述一个或多个排名靠前的其他元数据字段对每个排名靠前的社区可视化的排名进行的自然语言说明。
27.根据权利要求22所述的网络计算机,其中确定所述一个或多个其他元数据字段中的每个的所述影响分数还包括:采用包括在所述推荐模型中的一个或多个影响模型,以基于由主题模型确定的一个或多个主导主题、所述一个或多个其他元数据字段的包括共同值的一个或多个计数或对所述推荐分数和临时推荐分数的改变幅度中的一个或多个而确定所述影响分数,基于从所述临时推荐分数的生成临时省略所述一个或多个其他元数据字段中的一个而生成所述临时推荐分数,其中每个其他元数据字段的所述影响分数基于与其省略相对应的改变幅度。
28.根据权利要求22所述的网络计算机,其中基于所述推荐模型和所述一个或多个元数据字段针对所述社区可视化中的每个生成所述推荐分数还包括:采用一个或多个机器学习动作生成所述推荐分数,其中所述一个或多个机器学习动作包括潜在语义分析(LSA)、因式分解机(FM)、余弦相似性、梯度提升决策树(GBDT)、词频-逆文档频率(TF-IDF)或判别分析中的一个或多个。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/158,911 | 2021-01-26 | ||
US17/158,911 US20220237229A1 (en) | 2021-01-26 | 2021-01-26 | Content based related view recommendations |
PCT/US2022/012907 WO2022164691A1 (en) | 2021-01-26 | 2022-01-19 | Content based related view recommendations |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116745786A true CN116745786A (zh) | 2023-09-12 |
Family
ID=80442690
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280009205.9A Pending CN116745786A (zh) | 2021-01-26 | 2022-01-19 | 基于内容的相关视图推荐 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20220237229A1 (zh) |
EP (1) | EP4232980A1 (zh) |
JP (1) | JP2024504376A (zh) |
CN (1) | CN116745786A (zh) |
WO (1) | WO2022164691A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11763240B2 (en) * | 2020-10-12 | 2023-09-19 | Business Objects Software Ltd | Alerting system for software applications |
CN116055442A (zh) * | 2021-10-28 | 2023-05-02 | 脸萌有限公司 | 视频处理方法、视频处理装置和计算机可读存储介质 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9747383B2 (en) * | 2015-06-08 | 2017-08-29 | Blue Goji Llc | Multi-factor prioritization and visualization tool |
US10565750B2 (en) * | 2015-08-31 | 2020-02-18 | Accenture Global Solutions Limited | Intelligent visualization munging |
US20190339688A1 (en) * | 2016-05-09 | 2019-11-07 | Strong Force Iot Portfolio 2016, Llc | Methods and systems for data collection, learning, and streaming of machine signals for analytics and maintenance using the industrial internet of things |
US11151472B2 (en) * | 2017-03-31 | 2021-10-19 | At&T Intellectual Property I, L.P. | Dynamic updating of machine learning models |
WO2019183371A1 (en) * | 2018-03-22 | 2019-09-26 | Apomatix Inc. | Networked computer-system management and control |
US11126957B2 (en) * | 2018-10-31 | 2021-09-21 | International Business Machines Corporation | Supply chain forecasting system |
US11574026B2 (en) * | 2019-07-17 | 2023-02-07 | Avanade Holdings Llc | Analytics-driven recommendation engine |
US11556862B2 (en) * | 2019-09-14 | 2023-01-17 | Oracle International Corporation | Techniques for adaptive and context-aware automated service composition for machine learning (ML) |
WO2021091918A1 (en) * | 2019-11-04 | 2021-05-14 | Domino Data Lab, Inc. | Systems and methods for model monitoring |
US20210365856A1 (en) * | 2020-05-21 | 2021-11-25 | Bank Of America Corporation | Machine Learning Platform for Dynamic Resource Management |
-
2021
- 2021-01-26 US US17/158,911 patent/US20220237229A1/en not_active Abandoned
-
2022
- 2022-01-19 CN CN202280009205.9A patent/CN116745786A/zh active Pending
- 2022-01-19 JP JP2023544320A patent/JP2024504376A/ja active Pending
- 2022-01-19 EP EP22704054.0A patent/EP4232980A1/en active Pending
- 2022-01-19 WO PCT/US2022/012907 patent/WO2022164691A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
US20220237229A1 (en) | 2022-07-28 |
JP2024504376A (ja) | 2024-01-31 |
EP4232980A1 (en) | 2023-08-30 |
WO2022164691A1 (en) | 2022-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9881053B2 (en) | Machine-assisted object matching | |
US10242320B1 (en) | Machine assisted learning of entities | |
US11593566B2 (en) | Determining topics and action items from conversations | |
KR20220016059A (ko) | 데이터 자산들에 대한 대화형 계보 분석기 | |
US11494863B2 (en) | Correlating education programs and employment objectives | |
CN116097205A (zh) | 为可视化提供和呈现度量 | |
US11392608B2 (en) | Analyzing marks in visualizations based on dataset characteristics | |
US11893039B2 (en) | Interactive interface for data analysis and report generation | |
CN116745786A (zh) | 基于内容的相关视图推荐 | |
US20230273715A1 (en) | Automatic data model generation | |
US11829421B2 (en) | Dynamic graph generation for interactive data analysis | |
JP7313553B2 (ja) | パーソナライズされた推奨に基づいたデータ可視化の提供 | |
US20240134914A1 (en) | Content based related view recommendations | |
US20230244701A1 (en) | Analyzing data based on visualization features | |
US20230273941A1 (en) | User interface for analyzing data based on visualization features | |
US11361034B1 (en) | Representing documents using document keys | |
US11422985B2 (en) | Interactive data modeling | |
CN117716352A (zh) | 数据资产的元数据继承 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |