Eric Poe Xing (Chinese: 邢波) is an American computer scientist who has been serving as president of Mohamed bin Zayed University of Artificial Intelligence (MBZUAI) since January 2021. He is also a professor in the Carnegie Mellon University School of Computer Science where he founded the SAILING Lab in 2004, and is the co-founder of the AI companies Petuum and GenBio AI. Xing's research focuses on statistical machine learning, probabilistic graphical models, and systems for distributed machine learning. He was elected a Fellow of the Institute of Electrical and Electronics Engineers in 2019 for "contributions to machine learning algorithms and systems" and a Fellow of the Association for Computing Machinery in 2022 for "contributions to algorithms, architectures, and applications in machine learning." == Education == Xing earned a B.Sc. in physics from Tsinghua University in 1993, and an M.Sc. in computer science from Rutgers University in 1998. He earned a Ph.D. in molecular biology and biochemistry from Rutgers in 1999, supervised by molecular cancer researcher Chung S. Yang. His dissertation examined the inactivation of the Rb and p53 pathways in human esophageal squamous cell carcinoma. He earned a second Ph.D. in computer science from the University of California, Berkeley in 2004, supervised by Richard Karp, Michael I. Jordan, and Stuart J. Russell. His thesis applied probabilistic graphical models to motif identification and haplotype inference in genomic data. == Career == Xing joined Carnegie Mellon University (CMU) as a faculty member in 2004, where he created the Statistical Artificial Intelligence and Integrative Genomics (SAILING) Lab. He held visiting appointments from 2010 to 2011, serving as a visiting research professor at Facebook Inc. and as a visiting associate professor in the Department of Statistics at Stanford University. He served as co-Program Chair of the International Conference on Machine Learning (ICML) in 2014 and General Chair in 2019. Xing served as the founding director of CMU’s Center for Machine Learning and Health, established in 2015 as part of the Pittsburgh Health Data Alliance, a collaboration between CMU, the University of Pittsburgh, and the University of Pittsburgh Medical Center. In 2016, Xing co-founded Petuum Inc., a US-based startup. In 2017, Petuum raised $93 million in a round of venture funding from SoftBank. In 2018 Petuum was named a World Economic Forum Technology Pioneer. In 2019, Xing received the Carnegie Science Award for Startup Entrepreneurs in recognition of his leadership of Petuum. On 29 November 2020, Xing was appointed president of the Mohamed bin Zayed University of Artificial Intelligence (MBZUAI), with the appointment taking effect in January 2021. In 2024, Xing co-founded GenBio AI where he is chief scientist. The US-based startup, which he co-founded with David Baker, Ziv Bar-Joseph, Emma Lundberg, Le Song and Fred Hu, aims to create AI-driven digital organisms (AIDO) for the purposes of modeling medical treatments. Xing has overseen the launch of the MBZUAI Institute of Foundation Models (IFM), which focuses on research and development of large-scale foundation models. In 2025–2026, IFM released the open-source reasoning model K2 Think, which was covered internationally as part of the UAE’s push to develop domestically controlled (“sovereign”) AI capabilities. IFM presented PAN as a “world model” research project and demonstrated related systems publicly. MBZUAI also collaborated with G42 and Cerebras Systems on the Jais language model, an open-source Arabic–English large language model released in 2023, according to Reuters. == Awards and honors == Xing is a recipient of the National Science Foundation (NSF) Career Award and the Alfred P. Sloan Research Fellowship. Xing is an elected Fellow of the following institutes and associations: Association for the Advancement of Artificial Intelligence (AAAI) 2016 Institute of Electrical and Electronics Engineers (IEEE) 2019 for "contributions to machine learning algorithms and systems" American Statistical Association (ASA) 2022 Association for Computing Machinery (ACM) 2022 for "contributions to algorithms, architectures, and applications in machine learning" Institute of Mathematical Statistics (IMS) 2023 International Society for Computational Biology (ISCB) 2026 == Selected publications == Eric P. Xing; Michael I. Jordan; Stuart J. Russell; Andrew Y. Ng (2003). "Distance Metric Learning with Application to Clustering with Side-Information" (PDF). Advances in Neural Information Processing Systems 15. Advances in Neural Information Processing Systems. Wikidata Q77691192. Edoardo M. Airoldi; David M. Blei; Stephen E Fienberg; Eric P Xing (1 September 2008). "Mixed Membership Stochastic Blockmodels". Journal of Machine Learning Research. 9: 1981–2014. ISSN 1533-7928. PMC 3119541. PMID 21701698. Wikidata Q35058357. Eric P. Xing; Michael I. Jordan; Richard M. Karp (28 June 2001), Feature selection for high-dimensional genomic microarray data, vol. 18, pp. 601–608, Wikidata Q138678867 Xing EP; Karp RM (1 January 2001). "CLIFF: clustering of high-dimensional microarray data via iterative feature filtering using normalized cuts". Bioinformatics. 17 Suppl 1: S306-15. doi:10.1093/BIOINFORMATICS/17.SUPPL_1.S306. ISSN 1367-4803. PMID 11473022. Wikidata Q30657299.
GeoNetwork opensource
The GeoNetwork opensource (GNOS) project is a free and open source (FOSS) cataloging application for spatially referenced resources. It is a catalog of location-oriented information. == Outline == It is a standardized and decentralized spatial information management environment designed to enable access to geo-referenced databases, cartographic products and related metadata from a variety of sources, enhancing the spatial information exchange and sharing between organizations and their audience, using the capacities of the internet. Using the Z39.50 protocol it both accesses remote catalogs and makes its data available to other catalog services. As of 2007, OGC Web Catalog Service are being implemented. Maps, including those derived from satellite imagery, are effective communicational tools and play an important role in the work of decision makers (e.g., sustainable development planners and humanitarian and emergency managers) in need of quick, reliable and up-to-date user-friendly cartographic products as a basis for action and to better plan and monitor their activities; GIS experts in need of exchanging consistent and updated geographical data; and spatial analysts in need of multidisciplinary data to perform preliminary geographical analysis and make reliable forecasts. == Deployment == The software has been deployed to various organizations, the first being FAO GeoNetwork and WFP VAM-SIE-GeoNetwork, both at their headquarters in Rome, Italy. Furthermore, the WHO, CGIAR, BRGM, ESA, FGDC and the Global Change Information and Research Centre (GCIRC) of China are working on GeoNetwork opensource implementations as their spatial information management capacity. It is used for several risk information systems, in particular in the Gambia. Several related tools are packaged with GeoNetwork, including GeoServer. GeoServer stores geographical data, while GeoNetwork catalogs collections of such data.
Information strategist
An information strategist analyses the information flow within an organisation and directs its information resources to better serve the organisation's strategic goals. They work with information technology or within a corporate library to direct high quality information from a variety of sources to users, based upon their profiles and needs. In warfare, information strategists not only seek to improve information flows for their own side but also try to disrupt the information flows of the enemy in order to demoralize and deceive them.
Super column
A super column is a tuple (a pair) with a binary super column name and a value that maps it to many columns. They consist of a key–value pairs, where the values are columns. Theoretically speaking, super columns are (sorted) associative array of columns. Similar to a regular column family where a row is a sorted map of column names and column values, a row in a super column family is a sorted map of super column names that maps to column names and column values. A super column is part of a keyspace together with other super columns and column families, and columns. == Code example == Written in the JSON-like syntax, a super column definition can be like this: Where: "databases" are keyspace; "Cassandra" and "HBase" are rowKeys; "name" and "address" are super column names; "firstName", "city", "age", etc. are column names.
Iteration
Iteration means repeating a process to generate a (possibly unbounded) sequence of outcomes. Each repetition of the process is a single iteration, and the outcome of each iteration is the starting point of the next iteration. In mathematics and computer science, iteration (along with the related technique of recursion) is a standard element of algorithms. == Mathematics == In mathematics, iteration may refer to the process of iterating a function, i.e. applying a function repeatedly, using the output from one iteration as the input to the next. Iteration of apparently simple functions can produce complex behaviors and difficult problems – for examples, see the Collatz conjecture and juggler sequences. Another use of iteration in mathematics is in iterative methods which are used to produce approximate numerical solutions to certain mathematical problems. Newton's method is an example of an iterative method. Manual calculation of a number's square root is a common use and a well-known example. == Computing == In computing, iteration is a technique that marks out of a block of statements within a computer program for a defined number of repetitions. That block of statements is said to be iterated. A computer programmer might also refer to that block of statements as an iteration. === Implementations === Loops constitute the most common language constructs for performing iterations. The following pseudocode "iterates" three times the line of code between begin & end through a for loop, and uses the values of i as increments. It is permissible, and often necessary, to use values from other parts of the program outside the bracketed block of statements, to perform the desired function. Iterators constitute alternative language constructs to loops, which ensure consistent iterations over specific data structures. They can eventually save time and effort in later coding attempts. In particular, an iterator allows one to repeat the same kind of operation at each node of such a data structure, often in some pre-defined order. Iteratees are purely functional language constructs, which accept or reject data during the iterations. === Relation with recursion === Recursions and iterations have different algorithmic definitions, even though they can generate identical results. The primary difference is that recursion can be a solution without prior knowledge as to how many times the action must repeat, while a successful iteration requires that foreknowledge. Some types of programming languages, known as functional programming languages, are designed such that they do not set up a block of statements for explicit repetition, as with the for loop. Instead, those programming languages exclusively use recursion. Rather than call out a block of code to repeate a pre-defined number of times, the executing code block instead "divides" the work into a number of separate pieces, after which the code block executes itself on each individual piece. Each piece of work is divided repeatedly until the "amount" of work is as small as possible, at which point the algorithm does that work very quickly. The algorithm then "reverses" and reassembles the pieces into a complete whole. The classic example of recursion is in list-sorting algorithms, such as merge sort. The merge sort recursive algorithm first repeatedly divides the list into consecutive pairs. Each pair is then ordered, then each consecutive pair of pairs, and so forth until the elements of the list are in the desired order. The code below is an example of a recursive algorithm in the Scheme programming language that outputs the same result as the pseudocode under the previous heading. == Education == In some schools of pedagogy, iterations are used to describe the process of teaching or guiding students to repeat experiments, assessments, or projects, until more accurate results are found, or the student has mastered the technical skill. This idea is found in the old adage, "Practice makes perfect." In particular, "iterative" is defined as the "process of learning and development that involves cyclical inquiry, enabling multiple opportunities for people to revisit ideas and critically reflect on their implication." Unlike computing and math, educational iterations are not predetermined; instead, the task is repeated until success according to some external criteria (often a test) is achieved.
Keyword extraction
Keyword extraction is tasked with the automatic identification of terms that best describe the subject of a document. Key phrases, key terms, key segments or just keywords are the terminology which is used for defining the terms that represent the most relevant information contained in the document. Although the terminology is different, function is the same: characterization of the topic discussed in a document. The task of keyword extraction is an important problem in text mining, information extraction, information retrieval and natural language processing (NLP). == Keyword assignment vs. extraction == Keyword assignment methods can be roughly divided into: keyword assignment (keywords are chosen from controlled vocabulary or taxonomy) and keyword extraction (keywords are chosen from words that are explicitly mentioned in original text). Methods for automatic keyword extraction can be supervised, semi-supervised, or unsupervised. Unsupervised methods can be further divided into simple statistics, linguistics or graph-based, or ensemble methods that combine some or most of these methods.
Skyline operator
The skyline operator is the subject of an optimization problem and computes the Pareto optimum on tuples with multiple dimensions. This operator is an extension to SQL proposed by Börzsönyi et al. to filter results from a database to keep only those objects that are not dominated by any other point on all dimensions. The name skyline comes from the view on Manhattan from the Hudson River, where those buildings can be seen that are not hidden by any other. A building is visible if it is not dominated by a building that is taller or closer to the river (two dimensions, distance to the river minimized, height maximized). Another application of the skyline operator involves selecting a hotel for a holiday. The user wants the hotel to be both cheap and close to the beach. However, hotels that are close to the beach may also be expensive. In this case, the skyline operator would only present those hotels that are not worse than any other hotel in both price and distance to the beach. == Formal specification == The skyline operator returns tuples that are not dominated by any other tuple. A tuple dominates another if it is at least as good in all dimensions and better in at least one dimension. Formally, we can think of each tuple as a vector p , q ∈ R n {\displaystyle p,q\in \mathbb {R} ^{n}} . p {\displaystyle p} dominates q {\displaystyle q} (written: p ≻ q {\displaystyle p\succ q} ) if p {\displaystyle p} is at least as good as q {\displaystyle q} in every dimension, and superior in at least one: p ≻ q ⇔ ∀ i ∈ [ n ] . p [ i ] ⪰ q [ i ] ∧ ∃ j ∈ [ n ] . p [ j ] ≻ q [ j ] . {\displaystyle p\succ q\Leftrightarrow \forall i\in [n].p[i]\succeq q[i]\wedge \exists j\in [n].p[j]\succ q[j].} Dominance ( p ≻ q {\displaystyle p\succ q} ) can be defined as any strict partial ordering, for example greater (with ≻:=> {\displaystyle \succ :=>} and ⪰:=≥ {\displaystyle \succeq :=\geq } ) or less (with ≻:=< {\displaystyle \succ :=<} and ⪰:=≤ {\displaystyle \succeq :=\leq } ). Assuming two dimensions and defining dominance in both dimensions as greater, we can compute the skyline in SQL-92 as follows: == Proposed syntax == As an extension to SQL, Börzsönyi et al. proposed the following syntax for the skyline operator: where d1, ... dm denote the dimensions of the skyline and MIN, MAX and DIFF specify whether the value in that dimension should be minimised, maximised or simply be different. Without an SQL extension, the SQL query requires an antijoin with not exists: == Implementation == The skyline operator can be implemented directly in SQL using current SQL constructs, but this has been shown to be very slow in disk-based database systems. Other algorithms have been proposed that make use of divide and conquer, indices, MapReduce and general-purpose computing on graphics cards. Skyline queries on data streams (i.e. continuous skyline queries) have been studied in the context of parallel query processing on multicores, owing to their wide diffusion in real-time decision making problems and data streaming analytics. Exasol features a native implementation.