AI Code Model Ranking

AI Code Model Ranking — independent reviews, comparisons, pricing and step-by-step guides on Aizhi.

  • Point distribution model

    Point distribution model

    The point distribution model is a model for representing the mean geometry of a shape and some statistical modes of geometric variation inferred from a training set of shapes. == Background == The point distribution model concept has been developed by Cootes, Taylor et al. and became a standard in computer vision for the statistical study of shape and for segmentation of medical images where shape priors really help interpretation of noisy and low-contrasted pixels/voxels. The latter point leads to active shape models (ASM) and active appearance models (AAM). Point distribution models rely on landmark points. A landmark is an annotating point posed by an anatomist onto a given locus for every shape instance across the training set population. For instance, the same landmark will designate the tip of the index finger in a training set of 2D hands outlines. Principal component analysis (PCA), for instance, is a relevant tool for studying correlations of movement between groups of landmarks among the training set population. Typically, it might detect that all the landmarks located along the same finger move exactly together across the training set examples showing different finger spacing for a flat-posed hands collection. == Details == First, a set of training images are manually landmarked with enough corresponding landmarks to sufficiently approximate the geometry of the original shapes. These landmarks are aligned using the generalized procrustes analysis, which minimizes the least squared error between the points. k {\displaystyle k} aligned landmarks in two dimensions are given as X = ( x 1 , y 1 , … , x k , y k ) {\displaystyle \mathbf {X} =(x_{1},y_{1},\ldots ,x_{k},y_{k})} . It's important to note that each landmark i ∈ { 1 , … k } {\displaystyle i\in \lbrace 1,\ldots k\rbrace } should represent the same anatomical location. For example, landmark #3, ( x 3 , y 3 ) {\displaystyle (x_{3},y_{3})} might represent the tip of the ring finger across all training images. Now the shape outlines are reduced to sequences of k {\displaystyle k} landmarks, so that a given training shape is defined as the vector X ∈ R 2 k {\displaystyle \mathbf {X} \in \mathbb {R} ^{2k}} . Assuming the scattering is gaussian in this space, PCA is used to compute normalized eigenvectors and eigenvalues of the covariance matrix across all training shapes. The matrix of the top d {\displaystyle d} eigenvectors is given as P ∈ R 2 k × d {\displaystyle \mathbf {P} \in \mathbb {R} ^{2k\times d}} , and each eigenvector describes a principal mode of variation along the set. Finally, a linear combination of the eigenvectors is used to define a new shape X ′ {\displaystyle \mathbf {X} '} , mathematically defined as: X ′ = X ¯ + P b {\displaystyle \mathbf {X} '={\overline {\mathbf {X} }}+\mathbf {P} \mathbf {b} } where X ¯ {\displaystyle {\overline {\mathbf {X} }}} is defined as the mean shape across all training images, and b {\displaystyle \mathbf {b} } is a vector of scaling values for each principal component. Therefore, by modifying the variable b {\displaystyle \mathbf {b} } an infinite number of shapes can be defined. To ensure that the new shapes are all within the variation seen in the training set, it is common to only allow each element of b {\displaystyle \mathbf {b} } to be within ± {\displaystyle \pm } 3 standard deviations, where the standard deviation of a given principal component is defined as the square root of its corresponding eigenvalue. PDM's can be extended to any arbitrary number of dimensions, but are typically used in 2D image and 3D volume applications (where each landmark point is R 2 {\displaystyle \mathbb {R} ^{2}} or R 3 {\displaystyle \mathbb {R} ^{3}} ). == Discussion == An eigenvector, interpreted in euclidean space, can be seen as a sequence of k {\displaystyle k} euclidean vectors associated to corresponding landmark and designating a compound move for the whole shape. Global nonlinear variation is usually well handled provided nonlinear variation is kept to a reasonable level. Typically, a twisting nematode worm is used as an example in the teaching of kernel PCA-based methods. Due to the PCA properties: eigenvectors are mutually orthogonal, form a basis of the training set cloud in the shape space, and cross at the 0 in this space, which represents the mean shape. Also, PCA is a traditional way of fitting a closed ellipsoid to a Gaussian cloud of points (whatever their dimension): this suggests the concept of bounded variation. The idea behind PDMs is that eigenvectors can be linearly combined to create an infinity of new shape instances that will 'look like' the one in the training set. The coefficients are bounded alike the values of the corresponding eigenvalues, so as to ensure the generated 2n/3n-dimensional dot will remain into the hyper-ellipsoidal allowed domain—allowable shape domain (ASD).

    Read more →
  • Repertory grid

    Repertory grid

    The repertory grid is an interviewing technique which uses nonparametric factor analysis to determine an idiographic measure of personality. It was devised by George Kelly in around 1955 and is based on his personal construct theory of personality. == Introduction == The repertory grid is a technique for identifying the ways that a person construes (interprets or gives meaning to) his or her experience. It provides information from which inferences about personality can be made, but it is not a personality test in the conventional sense. It is underpinned by the personal construct theory developed by George Kelly, first published in 1955. A grid consists of four parts: A topic: it is about some part of the person's experience. A set of elements, which are examples or instances of the topic. Working as a clinical psychologist, Kelly was interested in how his clients construed people in the roles they adopted towards the client, and so, originally, such terms as "my father", "my mother", "an admired friend" and so forth were used. Since then, the grid has been used in much wider settings (educational, occupational, organisational) and so any well-defined set of words, phrases, or even brief behavioral vignettes can be used as elements. For example, to see how a person construes the purchase of a car, a list of vehicles within that person's price range could be a set of elements. A set of constructs. These are the basic terms that the client uses to make sense of the elements, and are always expressed as a contrast. Thus the meaning of "good" depends on whether you intend to say "good versus poor", as if you were construing a theatrical performance, or "good versus evil", as if you were construing the moral or ontological status of some more fundamental experience. A set of ratings of elements on constructs. Each element is positioned between the two extremes of the construct using a 5- or 7-point rating scale system; this is done repeatedly for all the constructs that apply; and thus its meaning to the client is modeled, and statistical analysis varying from simple counting, to more complex multivariate analysis of meaning, is made possible. Constructs are regarded as personal to the client, who is psychologically similar to other people depending on the extent to which they would tend to use similar constructs, and similar ratings, in relating to a particular set of elements. The client is asked to consider the elements three at a time, and to identify a way in which two of the elements might be seen as alike, but distinct from, contrasted to, the third. For example, in considering a set of people as part of a topic dealing with personal relationships, a client might say that the element "my father" and the element "my boss" are similar because they are both fairly tense individuals, whereas the element "my wife" is different because she is "relaxed". And so we identify one construct that the individual uses when thinking about people: whether they are "tense as distinct from relaxed". In practice, good grid interview technique would delve a little deeper and identify some more behaviorally explicit description of "tense versus relaxed". All the elements are rated on the construct, further triads of elements are compared and further constructs elicited, and the interview would continue until no further constructs are obtained. == Using the repertory grid == Careful interviewing to identify what the individual means by the words initially proposed, using a 5-point rating system could be used to characterize the way in which a group of fellow-employees are viewed on the construct "keen and committed versus energies elsewhere", a 1 indicating that the left pole of the construct applies ("keen and committed") and a 5 indicating that the right pole of the construct applies ("energies elsewhere"). On being asked to rate all of the elements, our interviewee might reply that Tom merits a 2 (fairly keen and committed), Mary a 1 (very keen and committed), and Peter a 5 (his energies are very much outside the place of employment). The remaining elements (another five people, for example) are then rated on this construct. Typically (and depending on the topic) people have a limited number of genuinely different constructs for any one topic: 6 to 16 are common when they talk about their job or their occupation, for example. The richness of people's meaning structures comes from the many different ways in which a limited number of constructs can be applied to individual elements. A person may indicate that Tom is fairly keen, very experienced, lacks social skills, is a good technical supervisor, can be trusted to follow complex instructions accurately, has no sense of humour, will always return a favour but only sometimes help his co-workers, while Mary is very keen, fairly experienced, has good social and technical supervisory skills, needs complex instructions explained to her, appreciates a joke, always returns favours, and is very helpful to her co-workers: these are two very different and complex pictures, using just 8 constructs about a person's co-workers. Important information can be obtained by including self-elements such as "Myself as I am now"; "Myself as I would like to be" among other elements, where the topic permits. == Analysis of results == A single grid can be analysed for both content (eyeball inspection) and structure (cluster analysis, principal component analysis, and a variety of structural indices relating to the complexity and range of the ratings being the chief techniques used). Sets of grids are dealt with using one or other of a variety of content analysis techniques. A range of associated techniques can be used to provide precise, operationally defined expressions of an interviewee's constructs, or a detailed expression of the interviewee's personal values, and all of these techniques are used in a collaborative way. The repertory grid is emphatically not a standardized "psychological test"; it is an exercise in the mutual negotiation of a person's meanings. The repertory grid has found favour among both academics and practitioners in a great variety of fields because it provides a way of describing people's construct systems (loosely, understanding people's perceptions) without prejudging the terms of reference—a kind of personalized grounded theory. Unlike a conventional rating-scale questionnaire, it is not the investigator but the interviewee who provides the constructs on which a topic is rated. Market researchers, trainers, teachers, guidance counsellors, new product developers, sports scientists, and knowledge capture specialists are among the users who find the technique (originally developed for use in clinical psychology) helpful. == Relationship to other tools == In the book Personal Construct Methodology, researchers Brian R. Gaines and Mildred L.G. Shaw noted that they "have also found concept mapping and semantic network tools to be complementary to repertory grid tools and generally use both in most studies" but that they "see less use of network representations in PCP [personal construct psychology] studies than is appropriate". They encouraged practitioners to use semantic network techniques in addition to the repertory grid.

    Read more →
  • Linde–Buzo–Gray algorithm

    Linde–Buzo–Gray algorithm

    The Linde–Buzo–Gray algorithm (named after its creators Yoseph Linde, Andrés Buzo and Robert M. Gray, who designed it in 1980) is an iterative vector quantization algorithm to improve a small set of vectors (codebook) to represent a larger set of vectors (training set), such that it will be locally optimal. It combines Lloyd's Algorithm with a splitting technique in which larger codebooks are built from smaller codebooks by splitting each code vector in two. The core idea of the algorithm is that by splitting the codebook such that all code vectors from the previous codebook are present, the new codebook must be as good as the previous one or better. == Description == The Linde–Buzo–Gray algorithm may be implemented as follows: algorithm linde-buzo-gray is input: set of training vectors training, codebook to improve old-codebook output: codebook that is twice the size and better or as good as old-codebook new-codebook ← {} for each old-codevector in old-codebook do insert old-codevector into new-codebook insert old-codevector + 𝜖 into new-codebook where 𝜖 is a small vector return lloyd(new-codebook, training) algorithm lloyd is input: codebook to improve, set of training vectors training output: improved codebook do previous-codebook ← codebook clusters ← divide training into |codebook| clusters, where each cluster contains all vectors in training who are best represented by the corresponding vector in codebook for each cluster cluster in clusters do the corresponding code vector in codebook ← the centroid of all training vectors in cluster while difference in error representing training between codebook and previous-codebook > 𝜖 return codebook

    Read more →
  • Planner (programming language)

    Planner (programming language)

    Planner (often seen in publications as "PLANNER" although it is not an acronym) is a programming language designed by Carl Hewitt at MIT, and first published in 1969. First, subsets such as Micro-Planner and Pico-Planner were implemented, and then essentially the whole language was implemented as Popler by Julian Davies at the University of Edinburgh in the POP-2 programming language. Derivations such as QA4, Conniver, QLISP and Ether (see scientific community metaphor) were important tools in artificial intelligence research in the 1970s, which influenced commercial developments such as Knowledge Engineering Environment (KEE) and Automated Reasoning Tool (ART). == Procedural approach versus logical approach == The two major paradigms for constructing semantic software systems were procedural and logical. The procedural paradigm was epitomized by Lisp which featured recursive procedures that operated on list structures. The logical paradigm was epitomized by uniform proof procedure resolution-based derivation (proof) finders. According to the logical paradigm it was “cheating” to incorporate procedural knowledge. == Procedural embedding of knowledge == Planner was invented for the purposes of the procedural embedding of knowledge and was a rejection of the resolution uniform proof procedure paradigm, which Converted everything to clausal form. Converting all information to clausal form is problematic because it hides the underlying structure of the information. Then used resolution to attempt to obtain a proof by contradiction by adding the clausal form of the negation of the theorem to be proved. Using only resolution as the rule of inference is problematical because it hides the underlying structure of proofs. Also, using proof by contradiction is problematical because the axiomatizations of all practical domains of knowledge are inconsistent in practice. Planner was a kind of hybrid between the procedural and logical paradigms because it combined programmability with logical reasoning. Planner featured a procedural interpretation of logical sentences where an implication of the form (P implies Q) can be procedurally interpreted in the following ways using pattern-directed invocation: Forward chaining (antecedently): If assert P, assert Q If assert not Q, assert not P Backward chaining (consequently) If goal Q, goal P If goal not P, goal not Q In this respect, the development of Planner was influenced by natural deductive logical systems (especially the one by Frederic Fitch [1952]). == Micro-planner implementation == A subset called Micro-Planner was implemented by Gerry Sussman, Eugene Charniak and Terry Winograd and was used in Winograd's natural-language understanding program SHRDLU, Eugene Charniak's story understanding work, Thorne McCarty's work on legal reasoning, and some other projects. This generated a great deal of excitement in the field of AI. It also generated controversy because it proposed an alternative to the logic approach that had been one of the mainstay paradigms for AI. At SRI International, Jeff Rulifson, Jan Derksen, and Richard Waldinger developed QA4 which built on the constructs in Planner and introduced a context mechanism to provide modularity for expressions in the database. Earl Sacerdoti and Rene Reboh developed QLISP, an extension of QA4 embedded in INTERLISP, providing Planner-like reasoning embedded in a procedural language and developed in its rich programming environment. QLISP was used by Richard Waldinger and Karl Levitt for program verification, by Earl Sacerdoti for planning and execution monitoring, by Jean-Claude Latombe for computer-aided design, by Nachum Dershowitz for program synthesis, by Richard Fikes for deductive retrieval, and by Steven Coles for an early expert system that guided use of an econometric model. Computers were expensive. They had only a single slow processor and their memories were very small by comparison with today. So Planner adopted some efficiency expedients including the following: Backtracking was adopted to economize on the use of time and storage by working on and storing only one possibility at a time in exploring alternatives. A unique name assumption was adopted to save space and time by assuming that different names referred to different objects. For example, names like Peking (previous PRC capital name) and Beijing (current PRC capital transliteration) were assumed to refer to different objects. A closed-world assumption could be implemented by conditionally testing whether an attempt to prove a goal exhaustively failed. Later this capability was given the misleading name "negation as failure" because for a goal G it was possible to say: "if attempting to achieve G exhaustively fails then assert (Not G)." == The genesis of Prolog == Gerry Sussman, Eugene Charniak, Seymour Papert and Terry Winograd visited the University of Edinburgh in 1971, spreading the news about Micro-Planner and SHRDLU and casting doubt on the resolution uniform proof procedure approach that had been the mainstay of the Edinburgh Logicists. At the University of Edinburgh, Bruce Anderson implemented a subset of Micro-Planner called PICO-PLANNER, and Julian Davies (1973) implemented essentially all of Planner. According to Donald MacKenzie, Pat Hayes recalled the impact of a visit from Papert to Edinburgh, which had become the "heart of artificial intelligence's Logicland," according to Papert's MIT colleague, Carl Hewitt. Papert eloquently voiced his critique of the resolution approach dominant at Edinburgh "…and at least one person upped sticks and left because of Papert." The above developments generated tension among the Logicists at Edinburgh. These tensions were exacerbated when the UK Science Research Council commissioned Sir James Lighthill to write a report on the AI research situation in the UK. The resulting report [Lighthill 1973; McCarthy 1973] was highly critical although SHRDLU was favorably mentioned. Pat Hayes visited Stanford where he learned about Planner. When he returned to Edinburgh, he tried to influence his friend Bob Kowalski to take Planner into account in their joint work on automated theorem proving. "Resolution theorem-proving was demoted from a hot topic to a relic of the misguided past. Bob Kowalski doggedly stuck to his faith in the potential of resolution theorem proving. He carefully studied Planner.”. Kowalski [1988] states "I can recall trying to convince Hewitt that Planner was similar to SL-resolution." But Planner was invented for the purposes of the procedural embedding of knowledge and was a rejection of the resolution uniform proof procedure paradigm. Colmerauer and Roussel recalled their reaction to learning about Planner in the following way: "While attending an IJCAI convention in September ‘71 with Jean Trudel, we met Robert Kowalski again and heard a lecture by Terry Winograd on natural language processing. The fact that he did not use a unified formalism left us puzzled. It was at this time that we learned of the existence of Carl Hewitt’s programming language, Planner. The lack of formalization of this language, our ignorance of Lisp and, above all, the fact that we were absolutely devoted to logic meant that this work had little influence on our later research." In the fall of 1972, Philippe Roussel implemented a language called Prolog (an abbreviation for PROgrammation en LOGique – French for "programming in logic"). Prolog programs are generically of the following form (which is a special case of the backward-chaining in Planner): When goal Q, goal P1 and ... and goal Pn Prolog duplicated the following aspects of Micro-Planner: Pattern directed invocation of procedures from goals (i.e. backward chaining) An indexed data base of pattern-directed procedures and ground sentences. Giving up on the completeness paradigm that had characterized previous work on theorem proving and replacing it with the programming language procedural embedding of knowledge paradigm. Prolog also duplicated the following capabilities of Micro-Planner which were pragmatically useful for the computers of the era because they saved space and time: Backtracking control structure Unique Name Assumption by which different names are assumed to refer to distinct entities, e.g., Peking and Beijing are assumed to be different. Reification of Failure. The way that Planner established that something was provable was to successfully attempt it as a goal and the way that it establish that something was unprovable was to attempt it as a goal and explicitly fail. Of course the other possibility is that the attempt to prove the goal runs forever and never returns any value. Planner also had a (not expression) construct which succeeded if expression failed, which gave rise to the “Negation as Failure” terminology in Planner. Use of the Unique Name Assumption and Negation as Failure became more questionable when attention turned to Open Systems. The following capabiliti

    Read more →
  • Tessellation (computer graphics)

    Tessellation (computer graphics)

    In computer graphics, tessellation is the dividing of datasets of polygons (sometimes called vertex sets) presenting objects in a scene into suitable structures for rendering. Especially for real-time rendering, data is tessellated into triangles, for example in OpenGL 4.0 and Direct3D 11. == In graphics rendering == A key advantage of tessellation for realtime graphics is that it allows detail to be dynamically added and subtracted from a 3D polygon mesh and its silhouette edges based on control parameters (often camera distance). In previously leading realtime techniques such as parallax mapping and bump mapping, surface details could be simulated at the pixel level, but silhouette edge detail was fundamentally limited by the quality of the original dataset. In Direct3D 11 pipeline (a part of DirectX 11), the graphics primitive is the patch. The tessellator generates a triangle-based tessellation of the patch according to tessellation parameters such as the TessFactor, which controls the degree of fineness of the mesh. The tessellation, along with shaders such as a Phong shader, allows for producing smoother surfaces than would be generated by the original mesh. By offloading the tessellation process onto the GPU hardware, smoothing can be performed in real time. Tessellation can also be used for implementing subdivision surfaces, level of detail scaling and fine displacement mapping. OpenGL 4.0 uses a similar pipeline, where tessellation into triangles is controlled by the Tessellation Control Shader and a set of four tessellation parameters. == In computer-aided design == In computer-aided design the constructed design is represented by a boundary representation topological model, where analytical 3D surfaces and curves, limited to faces, edges, and vertices, constitute a continuous boundary of a 3D body. Arbitrary 3D bodies are often too complicated to analyze directly. So they are approximated (tessellated) with a mesh of small, easy-to-analyze pieces of 3D volume—usually either irregular tetrahedra, or irregular hexahedra. The mesh is used for finite element analysis. The mesh of a surface is usually generated per individual faces and edges (approximated to polylines) so that original limit vertices are included into mesh. To ensure that approximation of the original surface suits the needs of further processing, three basic parameters are usually defined for the surface mesh generator: The maximum allowed distance between the planar approximation polygon and the surface (known as "sag"). This parameter ensures that mesh is similar enough to the original analytical surface (or the polyline is similar to the original curve). The maximum allowed size of the approximation polygon (for triangulations it can be maximum allowed length of triangle sides). This parameter ensures enough detail for further analysis. The maximum allowed angle between two adjacent approximation polygons (on the same face). This parameter ensures that even very small humps or hollows that can have significant effect to analysis will not disappear in mesh. An algorithm generating a mesh is typically controlled by the above three and other parameters. Some types of computer analysis of a constructed design require an adaptive mesh refinement, which is a mesh made finer (using stronger parameters) in regions where the analysis needs more detail.

    Read more →
  • Thinking Machines Lab

    Thinking Machines Lab

    Thinking Machines Lab Inc. is an American artificial intelligence (AI) startup founded by Mira Murati, the former chief technology officer of OpenAI. The company was founded in February 2025, and by July had completed an early-stage funding round led by Andreessen Horowitz, raising $2 billion at a valuation of $12 billion overall from investors such as Nvidia, AMD, Cisco, and Jane Street. The company is based in San Francisco and structured as a public benefit corporation. == History == By its launch in February 2025, Thinking Machines Lab was reported to have hired about 30 researchers and engineers from competitors including OpenAI, Meta AI, and Mistral AI. Its founding team members include Barret Zoph, former OpenAI VP of Research (Post-Training), Lilian Weng, former OpenAI VP, and OpenAI cofounder John Schulman, who joined after a brief stint at the lab's competitor Anthropic. In January 2026, it was reported that Barret Zoph and Luke Metz, departed the startup to return to OpenAI. Other former OpenAI employees who have been hired include Jonathan Lachman and Andrew Tulloch (although Tulloch departed after getting recruited for Meta Superintelligence Labs). Thinking Machines Lab's advisers include Bob McGrew, previously OpenAI's chief research officer, and Alec Radford, who was a lead researcher for OpenAI. On October 1, 2025, it announced Tinker, an API for fine-tuning language models. Users would submit jobs through the API for fine-tuning one of the various open-weight models supported. The Lab would run the jobs on its internal clusters and training infrastructure. == Business structure == Thinking Machines Lab grants Mira Murati a deciding vote on board matters, weighted to provide her with a majority decision-making capability. Additionally, founding shareholders possess votes weighted 100 times greater than those of regular shareholders. In July 2025, Andreessen Horowitz was reported to have led the company's initial funding round, raising "about $2 billion at a valuation of $12 billion". The government of Albania (Murati's country of origin) was also included in this round, making a $10 million investment which required an amendment to the country's 2025 budget. == Partnership == In March 2026, Thinking Machines Lab announced a strategic partnership with NVIDIA involving an undisclosed investment and a multi-year agreement to deploy one gigawatt of Vera Rubin computing capacity.

    Read more →
  • Mental mapping

    Mental mapping

    In behavioral geography, a mental map is a person's point-of-view perception of their area of interaction. Although this kind of subject matter would seem most likely to be studied by fields in the social sciences, this particular subject is most often studied by modern-day geographers. Researchers have also applied mental mapping to understand and define cognitive regions. They study it to determine subjective qualities from the public such as personal preference and practical uses of geography like driving directions. Mass media also have a virtually direct effect on a person's mental map of the geographical world. The perceived geographical dimensions of a foreign nation (relative to one's own nation) may often be heavily influenced by the amount of time and relative news coverage that the news media may spend covering news events from that foreign region. For instance, a person might perceive a small island to be nearly the size of a continent, merely based on the amount of news coverage that they are exposed to on a regular basis. In psychology, the term names the information maintained in the mind of an organism by means of which it may plan activities, select routes over previously traveled territories, etc. The rapid traversal of a familiar maze depends on this kind of mental map if scents or other markers laid down by the subject are eliminated before the maze is re-run. == Background == Mental maps are an outcome of the field of behavioral geography. The imagined maps are considered one of the first studies that intersected geographical settings with human action. The most prominent contribution and study of mental maps was in the writings of Kevin Lynch. In The Image of the City, Lynch used simple sketches of maps created from memory of an urban area to reveal five elements of the city; nodes, edges, districts, paths and landmarks. Lynch claimed that “Most often our perception of the city is not sustained, but rather partial, fragmentary, mixed with other concerns. Nearly every sense is in operation, and the image is the composite of them all.” (Lynch, 1960, p 2.) The creation of a mental map relies on memory as opposed to being copied from a preexisting map or image. In The Image of the City, Lynch asks a participant to create a map as follows: “Make it just as if you were making a rapid description of the city to a stranger, covering all the main features. We don’t expect an accurate drawing- just a rough sketch.” (Lynch 1960, p 141) In the field of human geography mental maps have led to an emphasizing of social factors and the use of social methods versus quantitative or positivist methods. Mental maps have often led to revelations regarding social conditions of a particular space or area. Haken and Portugali (2003) developed an information view, which argued that the face of the city is its information . Bin Jiang (2012) argued that the image of the city (or mental map) arises out of the scaling of city artifacts and locations. He addressed that why the image of city can be formed , and he even suggested ways of computing the image of the city, or more precisely the kind of collective image of the city, using increasingly available geographic information such as Flickr and Twitter . Using mental maps, we will be able to predict individual decision making and spatial selection, as well as evaluate their routing and navigation. A cognitive maps utility as a mnemonic and metaphorical device is precisely one of its other benefits as a shaper of the world and local attitudes. The first major field of study within the domain of memory maps is geography, spatial cognition and neurophysiology. This aims to understand how routes are drawn by subject from their set of subjects out into space which lead to memorization and internal representations. Overall these representations take the form of drawings, positioning in a graph, or oral/textual narratives, but are reflected as behavior is space that can be recorded as tracking items. == Research applications == Mental maps have been used in a collection of spatial research. Many studies have been performed that focus on the quality of an environment in terms of feelings such as fear, desire and stress. A study by Matei et al. in 2001 used mental maps to reveal the role of media in shaping urban space in Los Angeles. The study used Geographic Information Systems (GIS) to process 215 mental maps taken from seven neighborhoods across the city. The results showed that people's fear perceptions in Los Angeles are not associated with high crime rates but are instead associated with a concentration of certain ethnicities in a given area. The mental maps recorded in the study draw attention to these areas of concentrated ethnicities as parts of the urban space to avoid or stay away from. Mental maps have also been used to describe the urban experience of children. In a 2008 study by Olga den Besten mental maps were used to map out the fears and dislikes of children in Berlin and Paris. The study looked into the absence of children in today's cities and the urban environment from a child's perspective of safety, stress and fear. Peter Gould and Rodney White have performed prominent analyses in the book “Mental Maps.” This book is an investigation into people's spatial desires. The book asks of its participants: “Suppose you were suddenly given the chance to choose where you would like to live- an entirely free choice that you could make quite independently of the usual constraints of income or job availability. Where would you choose to go?” (Gould, 1974, p 15) Gould and White use their findings to create a surface of desire for various areas of the world. The surface of desire is meant to show people's environmental preferences and regional biases. In an experiment done by Edward C. Tolman, the development of a mental map was seen in rats. A rat was placed in a cross shaped maze and allowed to explore it. After this initial exploration, the rat was placed at one arm of the cross and food was placed at the next arm to the immediate right. The rat was conditioned to this layout and learned to turn right at the intersection in order to get to the food. When placed at different arms of the cross maze however, the rat still went in the correct direction to obtain the food because of the initial mental map it had created of the maze. Rather than just deciding to turn right at the intersection no matter what, the rat was able to determine the correct way to the food no matter where in the maze it was placed. The idea of mental maps is also used in strategic analysis. David Brewster, an Australian strategic analyst, has applied the concept to strategic conceptions of South Asia and Southeast Asia. He argues that popular mental maps of where regions begin and end can have a significant impact on the strategic behaviour of states. A collection of essays, documenting current geographical and historical research in mental maps is published by the Journal of Cultural Geography in 2018.

    Read more →
  • Fei-Fei Li

    Fei-Fei Li

    Fei-Fei Li (Chinese: 李飞飞; pinyin: Lǐ Fēifēi; born July 3, 1976) is a Chinese-born American computer scientist best known for establishing ImageNet, the dataset that enabled rapid advances in computer vision in the 2010s. She is a professor of computer science at Stanford University, with research expertise in artificial intelligence, machine learning, deep learning, computer vision, and cognitive neuroscience. Li is a co-director of the Stanford Institute for Human-Centered Artificial Intelligence and a co-director of the Stanford Vision and Learning Lab, and served as Chief Scientist of AI/ML at Google Cloud and the director of the Stanford Artificial Intelligence Laboratory from 2013 to 2018. In 2017, she co-founded AI4ALL, a nonprofit organization working to increase diversity in the field of artificial intelligence. In 2023, Li was named one of the Time 100 AI Most Influential People. Li received the Intel Lifetime Achievements Innovation Award in 2017 for her contributions to artificial intelligence, and was elected member of the National Academy of Engineering, the National Academy of Medicine in 2020 and the American Academy of Arts and Sciences in 2021. In 2025, she was named as one of the "Architects of AI" for Time's Person of the Year. On August 3, 2023, Li was appointed to the United Nations Scientific Advisory Board, established by Secretary-General Antonio Guterres. In 2024, Li was included on the Gold House's most influential Asian A100 list. In 2024, she raised $230 million for a startup called World Labs, which she and three colleagues founded to develop a "spatial intelligence" AI technology that can understand how the three-dimensional physical world works. In 2026, World Labs raised $1 Billion. == Early life and education == Li was born in Beijing, China, in 1976 and grew up in Chengdu, Sichuan. She studied at Sichuan Chengdu No.7 High School. When she was 12, her father immigrated to Parsippany, New Jersey. When she was 16, Li and her mother joined him in the United States. While attending Parsippany High School, Li worked weekends at her family's dry-cleaning shop. She graduated from Parsippany High School in 1995. She was inducted into the hall of fame at Parsippany High School in 2017. Li pursued undergraduate study at Princeton University, where she received a Bachelor of Arts with a major in physics in 1999. Li completed her senior thesis, "Auditory binaural correlogram difference: a new computational model for Huggins dichotic pitch", under the supervision of Bradley Dickinson, professor of electrical engineering. During her years at Princeton, Li returned home most weekends to help run her family's dry cleaning business and worked as a dishwasher to supplement the family income. Li pursued graduate study at the California Institute of Technology, where she received a Master of Science in electrical engineering in 2001 and a Doctor of Philosophy in electrical engineering in 2005. Li completed her dissertation, "Visual Recognition: Computational Models and Human Psychophysics", under the primary supervision of Pietro Perona and secondary supervision of Christof Koch. Her graduate studies were supported by the National Science Foundation Graduate Research Fellowship and The Paul & Daisy Soros Fellowships for New Americans. == Career and research == From 2005 to 2006, Li was an assistant professor in the Electrical and Computer Engineering Department at the University of Illinois Urbana-Champaign, and from 2007 to 2009, she was an assistant professor in the Computer Science Department at Princeton University. She joined Stanford in 2009 as an assistant professor, and was promoted to associate professor with tenure in 2012, and then full professor in 2018. At Stanford, Li served as the director of Stanford Artificial Intelligence Lab (SAIL) from 2013 to 2018. Her research has focused on computer vision, deep learning, and cognitive neuroscience, with over 300 peer-reviewed publications. She became the founding co-director of Stanford's University-level initiative - the Human-Centered AI Institute, along with co-director Dr. John Etchemendy, former provost of Stanford University. The institute aligns with Li's aims to advance AI research, education, policy, and practice to improve the human condition. While at Princeton in 2007, Li led the development of ImageNet, a massive visual database designed to advance object recognition in AI. The project involved labeling over 14 million images using Amazon Mechanical Turk and inspired the ImageNet Large Scale Visual Recognition Challenge (ILSVRC), which catalyzed progress in deep learning and led to dramatic improvements in image classification performance. The database addressed a key bottleneck in computer vision: the lack of large, annotated datasets for training machine learning models. Today, ImageNet is credited as a cornerstone innovation that underpins advancements in autonomous vehicles, facial recognition, and medical imaging. On her sabbatical from Stanford University from January 2017 to fall of 2018, Li joined Google Cloud as its Chief Scientist of AI/ML and Vice President. At Google, her team focused on democratizing AI technology and lowering the barrier for entrance to businesses and developers, including the developments of products like AutoML. In September 2017, Google secured a contract from the Department of Defense called Project Maven, which aimed to use AI techniques to interpret images captured by drone cameras. Google told employees who protested the company's work on Project Maven that their role was "specifically scoped to be for non-offensive purposes". In June 2018, Google told employees it would not seek renewal of the contract. In internal emails which were later leaked to reporters, Li expressed enthusiasm for the Google Cloud role in Project Maven, but warned against mentioning its AI component, saying that military AI is linked in the public mind with the danger of autonomous weapons. Asked about those leaked emails, Li told The New York Times, "I believe in human-centered AI to benefit people in positive and benevolent ways. It is deeply against my principles to work on any project that I think is to weaponize AI." In the fall of 2018, Li left Google and returned to Stanford University to continue her professorship. In 2023, Li co-led the launch of the RAISE-Health (Responsible AI for Safe and Equitable Health) initiative at Stanford University in collaboration with Stanford medicine. The initiative aims to develop frameworks for the responsible use of artificial intelligence in healthcare, including clinical care, biomedical research, and patient safety. According to her Stanford profile, she has been on partial academic leave from January 2024 through the end of 2025 to focus on entrepreneurial ventures. In 2024, Li said there was a disparity between private-sector investment in AI and support for academic and government research, and called for greater public funding for scientific uses of the technology and for studying its risks. Li is also known for her non-profit work as the co-founder and chairperson of nonprofit organization AI4ALL, whose mission is to educate the next generation of AI technologists, thinkers and leaders by promoting diversity and inclusion through human-centered AI principles. The program was created in collaboration with Melinda French Gates and Jensen Huang. Prior to establishing AI4ALL in 2017, Li and her former student Olga Russakovsky, currently an assistant professor in Princeton University, co-founded and co-directed the precursor program at Stanford called SAILORS (Stanford AI Lab OutReach Summers). SAILORS was an annual summer camp at Stanford dedicated to 9th grade high school girls in AI education and research, established in 2015 till it changed its name to AI4ALL @Stanford in 2017. In 2018, AI4ALL has successfully launched five more summer programs in addition to Stanford, including Princeton University, Carnegie Mellon University, Boston University, University of California Berkeley, and Canada's Simon Fraser University. We are at a turning point. AI's influence continues to grow, but representation and inclusion of a diversity of researchers in the field does not. It's critical that we seize this moment to create structures that will support long-term, positive changes. This won't happen via a single mechanism or quick fix. It starts with early education and extends to the existing structures of power within academia, work cultures among current AI researchers, and gatekeeping functions of research publishing, to name a few levers of change. Li has been described as a "researcher bringing humanity to AI". Li was elected as a member of the American Academy of Arts and Sciences in 2021, the National Academy of Engineering in 2020, and the National Academy of Medicine in 2020. In a November 2023 interview with The Guardian, Li said that while she would not refer to herself as the "godmother

    Read more →
  • PagedAttention

    PagedAttention

    PagedAttention is an attention algorithm for efficient serving of large language models (LLMs). It was introduced in 2023 by Woosuk Kwon and colleagues in the paper Efficient Memory Management for Large Language Model Serving with PagedAttention, alongside the vLLM serving engine. The method stores the key–value cache used during autoregressive decoding in fixed-size blocks that can be mapped to non-contiguous physical memory, borrowing ideas from virtual memory, paging, and operating system design. == Background == In transformer inference, the key–value cache grows with sequence length and the number of concurrent requests. Kwon et al. argued that earlier serving systems typically reserved contiguous cache regions in advance, which caused reserved space, internal fragmentation, and external fragmentation. In their experiments, the paper reported that the effective memory utilization of previous systems could fall as low as 20.4%. == Description == PagedAttention partitions the cache of each sequence into fixed-size KV blocks. A request's cache is represented as a sequence of logical blocks, while a block table maps those logical blocks to physical GPU-memory blocks. As a result, neighboring logical blocks do not need to be contiguous in physical memory, and new blocks can be allocated on demand as generation proceeds. The design also makes it easier to share cache state across related decoding paths. In vLLM, physical blocks can be reference-counted and shared among requests or branches, with block-granularity copy-on-write used when a shared block must be modified. The original paper applied this design to parallel sampling, beam search, and prompts with shared prefixes. == Mathematical formulation == For a query token i {\displaystyle i} in causal self-attention, the standard attention output can be written as a i j = exp ⁡ ( q i ⊤ k j / d ) ∑ t = 1 i exp ⁡ ( q i ⊤ k t / d ) , o i = ∑ j = 1 i a i j v j {\displaystyle a_{ij}={\frac {\exp(\mathbf {q} _{i}^{\top }\mathbf {k} _{j}/{\sqrt {d}})}{\sum _{t=1}^{i}\exp(\mathbf {q} _{i}^{\top }\mathbf {k} _{t}/{\sqrt {d}})}},\;\mathbf {o} _{i}=\sum _{j=1}^{i}a_{ij}\mathbf {v} _{j}} where q i {\displaystyle \mathbf {q} _{i}} , k j {\displaystyle \mathbf {k} _{j}} , and v j {\displaystyle \mathbf {v} _{j}} are the query, key, and value vectors, and d {\displaystyle d} is the attention dimension. If the cache is partitioned into blocks of size B {\displaystyle B} , the key and value blocks may be written as K j = ( k ( j − 1 ) B + 1 , … , k j B ) , V j = ( v ( j − 1 ) B + 1 , … , v j B ) {\displaystyle \mathbf {K} _{j}=(\mathbf {k} _{(j-1)B+1},\ldots ,\mathbf {k} _{jB}),\;\mathbf {V} _{j}=(\mathbf {v} _{(j-1)B+1},\ldots ,\mathbf {v} _{jB})} PagedAttention then performs the computation blockwise: A i j = exp ⁡ ( q i ⊤ K j / d ) ∑ t = 1 ⌈ i / B ⌉ exp ⁡ ( q i ⊤ K t / d ) , o i = ∑ j = 1 ⌈ i / B ⌉ V j A i j ⊤ {\displaystyle \mathbf {A} _{ij}={\frac {\exp(\mathbf {q} _{i}^{\top }\mathbf {K} _{j}/{\sqrt {d}})}{\sum _{t=1}^{\lceil i/B\rceil }\exp(\mathbf {q} _{i}^{\top }\mathbf {K} _{t}/{\sqrt {d}})}},\;\mathbf {o} _{i}=\sum _{j=1}^{\lceil i/B\rceil }\mathbf {V} _{j}\mathbf {A} _{ij}^{\top }} where A i j {\displaystyle \mathbf {A} _{ij}} is the vector of attention scores for the j {\displaystyle j} -th KV block. In the formulation given by Kwon et al., this preserves the causal attention calculation while allowing the key and value blocks to reside in non-contiguous physical memory. == Performance and use == The vLLM paper reported that, on its evaluated workloads, the use of PagedAttention and the associated memory-management design improved serving throughput by 2–4× over the compared baselines, including FasterTransformer and Orca, while preserving model outputs. In experiments on OPT-13B with the Alpaca trace, the paper also reported memory savings of 6.1–9.8% for parallel sampling and 37.6–55.2% for beam search through KV-block sharing. A 2024 survey of LLM serving systems described PagedAttention as having become an industry norm in LLM serving frameworks, citing support in TGI, vLLM, and TensorRT-LLM. == Limitations and alternatives == Subsequent work has described trade-offs in the approach. The 2025 vAttention paper argued that PagedAttention requires attention kernels to be rewritten to support paging and increases software complexity, portability issues, redundancy, and execution overhead, proposing instead a memory manager that keeps the cache contiguous in virtual memory while relying on demand paging for physical allocation. === vAttention === Unlike PagedAttention, vAttention does not introduce a different attention rule; it retains the standard attention computation Attention ⁡ ( q i , K , V ) = softmax ⁡ ( q i K ⊤ s c a l e ) V . {\displaystyle \operatorname {Attention} (q_{i},K,V)=\operatorname {softmax} \left({\frac {q_{i}K^{\top }}{\mathrm {scale} }}\right)V.} In the notation of Prabhu et al., the key and value tensors for a request seen so far are K , V ∈ R L ′ × ( H × D ) {\displaystyle K,V\in \mathbb {R} ^{L'\times (H\times D)}} , where L ′ {\displaystyle L'} is the context length seen so far, H {\displaystyle H} is the number of KV heads on a worker, and D {\displaystyle D} is the dimension of each KV head. In systems prior to PagedAttention, the K cache (or V cache) at each layer of a worker is typically allocated as a 4D tensor of shape [ B , L , H , D ] , {\displaystyle [B,L,H,D],} where B {\displaystyle B} is batch size and L {\displaystyle L} is the maximum context length supported by the model. vAttention preserves this contiguous virtual-memory view while deferring physical-memory allocation to runtime. A serving framework maintains separate K and V tensors for each layer, so vAttention reserves 2 N {\displaystyle 2N} virtual-memory buffers on a worker, where N {\displaystyle N} is the number of layers managed by that worker. The maximum size of one virtual-memory buffer is B S = B × S , {\displaystyle BS=B\times S,} where S {\displaystyle S} is the maximum size of a single request's per-layer K cache (or V cache) on a worker. The paper defines S = L × H × D × P , {\displaystyle S=L\times H\times D\times P,} where P {\displaystyle P} is the number of bytes needed to store one element. In this formulation, vAttention keeps the KV cache contiguous in virtual memory and relies on demand paging for physical allocation, rather than modifying the attention kernel to operate over non-contiguous KV-cache blocks.

    Read more →
  • InRule Technology

    InRule Technology

    InRule Technology is a software company that offers Business Rule Management System (BRMS) enterprise software products. == History == InRule Technology's Chief Executive Officer Rik Chomko and Chief Technology Officer Loren Goodman founded InRule Technology in Chicago in 2002. Paul Hessinger joined InRule Technology in 2004 as chief executive officer and chairman of the board and served until his retirement in 2015. They work with companies in several markets, including financial services, public sector, healthcare, and insurance. In 2007, InRule Technology became a charter member of the Microsoft Business Process Alliance. In August 2019, InRule was acquired by Open Gate Capital. == Products == On October 29, 2012, InRule Technology launched InRule for Microsoft Dynamics CRM. The program provides components to enable creation and update of rules within Microsoft Dynamics CRM, InRule for Microsoft Dynamics CRM provides a platform for shops that prefer to work with Microsoft's platforms. With the availability of InRule 4.6 in 2014, the company introduced deployment of InRule through REST services and allowed REST services to be called from InRule. This enables access to data exposed as a REST service and to package up a rule service for RESTful access. The product launch reflected the move of the company's core audience to use a broader array of technologies despite an earlier focus on .NET. In 2017, InRule introduced InRule for the Salesforce Platform, as well as a technology partnership with Work-Relay, a Business Process Management (BPM) application built on the Salesforce Platform. One year earlier the company introduced InRule for JavaScript, allowing enterprises to run rules on the client-side, server-side or both. The software architecture includes multiple components, including irAuthor, the primary authoring tool for creating and maintaining rules; irVerify, a real-time test environment to run and debug rule applications; and irSDK, a set of APIs that allows developers to integrate inRule into their applications. Additionally, irSOA allows users to access the InRule rule engine as a service. irSOA is now called the irServer Execution Service.

    Read more →
  • Artificial intelligence in Wikimedia projects

    Artificial intelligence in Wikimedia projects

    Some editors of Wikimedia projects use artificial intelligence (AI) and machine learning programs to edit existing articles or create new ones. Some applications of artificial intelligence, like using large language models (LLMs) to create new articles from scratch, have been more controversial than others for the Wikipedia community. In August 2025, English Wikipedia adopted a policy that allowed editors to nominate suspected LLM-generated articles for speedy deletion. This was followed by a March 2026 decision to prohibit the use of LLMs to generate or rewrite article content, with exceptions for copyediting one's own writing and machine translation from another language's Wikipedia. Wikipedia has also been a significant source of training data for some of the earliest artificial intelligence projects. This has received mixed reactions including concern about companies not citing Wikipedia when relying on it to answer a question as well as Wikipedia's increased costs from data scraping. == AI usage == === Earliest use of automated tools, machine learning and AI === Since 2002, bots have been allowed to run on Wikipedia but must be approved and supervised by a human. A bot created in 2002, rambot, transformed census data into short new articles about towns in the United States; the vast majority of town, city, and county articles were started by it. Fighting vandalism has been a major focus of machine learning and AI bots and tools. The 2007 ClueBot relied on simple heuristics to identify likely vandalism, while its 2010 successor, ClueBot NG, uses machine learning through an artificial neural network. Machine translation software has also been used by Wikimedia contributors for a number of years. Aaron Halfaker's Objective Revision Evaluation Service (ORES) project was launched in late 2015 as an artificial intelligence service for grading the quality of Wikipedia edits. === Generative AI and LLMs === In 2022, the public release of ChatGPT inspired more experimentation with AI and writing Wikipedia articles. A debate was sparked about whether and to what extent such large language models are suitable for such purposes in light of their tendency to generate plausible-sounding misinformation, including fake references; to generate prose that is not encyclopedic in tone; and to reproduce biases. An early experiment on December 6, 2022 by a Wikipedia contributor named Pharos occurred when he created the article "Artwork title" using ChatGPT for the initial draft. Another editor who experimented with this early version of ChatGPT said that ChatGPT's overview of "Weaponized incompetence" was decent, but that the citations were fabricated. Since 2023, work has been done to draft an English Wikipedia policy regarding ChatGPT and similar LLMs, at times recommending that users who are unfamiliar with LLMs should avoid using them due to the aforementioned risks, as well as noting the potential for libel or copyright infringement. In early 2023, the Wiki Education Foundation reported that some experienced editors found AI to be useful in starting drafts or creating new articles. It said that ChatGPT "knows" what Wikipedia articles look like and can easily generate one that is written in the style of Wikipedia, but warned that ChatGPT had a tendency to use promotional language, among other issues. In 2023, a ban on AI was deemed "too harsh" by the community given the productivity benefits it offered editors. In 2023, members of the English Wikipedia community created a WikiProject named AI Cleanup to assist in the removal of poor quality AI content from Wikipedia. Miguel García, a former Wikimedia member from Spain, said in 2024 that when ChatGPT was originally launched, the number of AI-generated articles on the site peaked. He added that the rate of AI articles has now stabilized due to the community's efforts to combat it. He said that majority of the articles that have no sources are deleted instantly or are nominated for deletion. In October 2024, a study by Princeton University found that about 5% of 3,000 newly created articles (created in August 2024) on English Wikipedia were created using AI. The study said that some of the AI articles were on innocuous topics and that AI had likely only been used to assist in writing. For some other articles, AI had been used to promote businesses or political interests. In October 2024, Ilyas Lebleu, founder of WikiProject AI Cleanup, said that they and their fellow editors noticed a pattern of unnatural writing that could be connected to ChatGPT. They added that AI is able to mass-produce content that sounds real while being completely fake, leading to the creation of hoax articles on Wikipedia that they were tasked to delete. In June 2025, the Wikimedia Foundation started testing a "Simple Article Summaries" feature which would provide AI-generated summaries of Wikipedia articles, similar to Google Search's AI Overviews. The decision was met with immediate and harsh criticism from some Wikipedia editors, who called the feature a "ghastly idea" and a "PR hype stunt." They criticized a perceived loss of trust in the site due to AI's tendency to hallucinate and questioned the necessity of the feature. The criticism led the Wikimedia Foundation to halt the rollout of Simple Article Summaries that same month while still expressing interest in integrating generative AI more into Wikipedia. The project hints at tensions within the community and with the Foundation over when to use AI.In August 2025, the English Wikipedia community created a policy that allowed users to nominate suspected AI-generated articles for speedy deletion. Editors might recognize AI-generated articles because they use citations that are not related to the subject of the article or fabricated citations or the wording has particular quirks. If an article uses language that reads like an LLM response to a user, such as "Here is your Wikipedia article on" or "Up to my last training update", the article is typically tagged for speedy deletion. Other signs of AI use include excessive use of em dashes, overuse of the word "moreover", promotional material in articles that describes something as "breathtaking" and formatting issues like using curly quotation marks instead of straight versions. During the discussion on implementing the speedy deletion policy, one user, who is an article reviewer, said that he is "flooded non-stop with horrendous drafts" created using AI. Other users said that AI articles have a large amount of "lies and fake references" and that it takes a significant amount of time to fix the issues. English Wikipedia created a guide on how to spot signs of AI-generated writing in August 2025, titled "Signs of AI writing". In January 2026, the Wiki Education Foundation continued to caution against copying and pasting outputs from generative AI into Wikipedia and to avoid it for creating new articles explaining that the text often failed verification with the sources provided. The foundation created a training module that encourages editors to use AI for identifying gaps in articles, finding access to sources and finding relevant sources. In March 2026, the English Wikipedia community prohibited the use of AI to add content to articles, with exceptions for copy editing and machine translation from another language's Wikipedia. The English Wikipedia community holds the position that LLMs often violate core content policies. == Using Wikipedia for artificial intelligence == A 2017 paper described Wikipedia as the mother lode for human-generated text available for machine learning. In the development of the Google's Perspective API that identifies toxic comments in online forums, a dataset containing hundreds of thousands of Wikipedia talk page comments with human-labelled toxicity levels was used. As of 2023, subsets of the Wikipedia corpus were considered one of the largest well-curated data sets available for AI training, used to train every LLM to-date according to Stephen Harrison. This use of Wikipedia was divisive as of 2023. The Wikimedia Foundation and many of its projects supporters worry that attribution to Wikipedia articles is missing in many large-language models like ChatGPT (as well as AI like Siri and Alexa). While Wikipedia's licensing policy lets anyone use its texts, including in modified forms, it does have the condition that credit is given, implying that using its contents in answers by AI models without clarifying the sourcing may violate its terms of use. The Foundation expressed concern that without attribution, people will not visit the site as much or be as motivated to donate to support the project if they do not know when they are benefiting from it. They also noticed an 8% decrease in visitors to Wikipedia in 2025 which they attributed both to the increased popularity of generative AI and social media. In 2025, the Wikimedia Foundation has cited absorbing increased costs associated with scra

    Read more →
  • VoID

    VoID

    The Vocabulary of Interlinked Datasets (VoID) is a vocabulary for providing concise summaries (metadata) of Resource Description Framework (RDF) datasets—meaningful collections of semantic triples—using the syntax of RDF Schema. It can be used for general metadata (such as information about the license of the dataset), access metadata (information about how to access the dataset), structural metadata (information about how the dataset is structured), and linking metadata (information about links between datasets). A linked dataset is a collection of data, published and maintained by a single provider, available as RDF on the Web, where at least some of the resources in the dataset are identified by dereferencable Uniform Resource Identifiers (URIs). VoID is used to provide metadata on RDF datasets to facilitate query processing on a graph of interlinked datasets in the Semantic Web.

    Read more →
  • Attention (machine learning)

    Attention (machine learning)

    In machine learning, attention is a method that determines the importance of each component in a sequence relative to the other components in that sequence. In natural language processing, importance is represented by "soft" weights assigned to each word in a sentence. More generally, attention encodes vectors called token embeddings across a fixed-width sequence that can range from tens to millions of tokens in size. Unlike "hard" weights, which are computed during the backwards training pass, "soft" weights exist only in the forward pass and therefore change with every step of the input. Earlier designs implemented the attention mechanism in a serial recurrent neural network (RNN) language translation system, but a more recent design, namely the transformer, removed the slower sequential RNN and relied more heavily on the faster parallel attention scheme. Inspired by ideas about attention in humans, the attention mechanism was developed to address the weaknesses of using information from the hidden layers of recurrent neural networks. Recurrent neural networks favor information contained in words at the end of a sentence and thus deemed more recent, thereby tending to attenuate the significance and associated predictive weight assigned to information earlier in the sentence. Attention allows a token equal access to any part of a sentence directly, rather than only through the previous state. == History == Additional surveys of the attention mechanism in deep learning are provided by Niu et al. and Soydaner. The major breakthrough came with self-attention, where each element in the input sequence attends to all others, enabling the model to capture global dependencies. This idea was central to the Transformer architecture, which replaced recurrence with attention mechanisms. As a result, Transformers became the foundation for models like BERT, T5 and generative pre-trained transformers (GPT). == Overview == The modern era of machine attention was revitalized by grafting an attention mechanism (Fig 1. orange) to an Encoder-Decoder. Figure 2 shows the internal step-by-step operation of the attention block (A) in Fig 1. === Interpreting attention weights === In translating between languages, alignment is the process of matching words from the source sentence to words of the translated sentence. Networks that perform verbatim translation without regard to word order would show the highest scores along the (dominant) diagonal of the matrix. The off-diagonal dominance shows that the attention mechanism is more nuanced. Consider an example of translating I love you to French. On the first pass through the decoder, 94% of the attention weight is on the first English word I, so the network offers the word je. On the second pass of the decoder, 88% of the attention weight is on the third English word you, so it offers t'. On the last pass, 95% of the attention weight is on the second English word love, so it offers aime. In the I love you example, the second word love is aligned with the third word aime. Stacking soft row vectors together for je, t', and aime yields an alignment matrix: Sometimes, alignment can be multiple-to-multiple. For example, the English phrase look it up corresponds to cherchez-le. Thus, "soft" attention weights work better than "hard" attention weights (setting one attention weight to 1, and the others to 0), as we would like the model to make a context vector consisting of a weighted sum of the hidden vectors, rather than "the best one", as there may not be a best hidden vector. == Variants == Many variants of attention implement soft weights, such as fast weight programmers, or fast weight controllers (1992). A "slow" neural network outputs the "fast" weights of another neural network through outer products. The slow network learns by gradient descent. It was later renamed as "linearized self-attention". Bahdanau-style attention, also referred to as additive attention, Luong-style attention, which is known as multiplicative attention, Early attention mechanisms similar to modern self-attention were proposed using recurrent neural networks. However, the highly parallelizable self-attention was introduced in 2017 and successfully used in the Transformer model, positional attention and factorized positional attention. For convolutional neural networks, attention mechanisms can be distinguished by the dimension on which they operate, namely: spatial attention, channel attention, or combinations. These variants recombine the encoder-side inputs to redistribute those effects to each target output. Often, a correlation-style matrix of dot products provides the re-weighting coefficients. In the figures below, W is the matrix of context attention weights, similar to the formula in Overview section above. == Optimizations == === Flash attention === The size of the attention matrix is proportional to the square of the number of input tokens. Therefore, when the input is long, calculating the attention matrix requires a lot of GPU memory. Flash attention is an implementation that reduces the memory needs and increases efficiency without sacrificing accuracy. It achieves this by partitioning the attention computation into smaller blocks that fit into the GPU's faster on-chip memory, reducing the need to store large intermediate matrices and thus lowering memory usage while increasing computational efficiency. === FlexAttention === FlexAttention is an attention kernel developed by Meta that allows users to modify attention scores prior to softmax and dynamically chooses the optimal attention algorithm. == Applications == Attention is widely used in natural language processing, computer vision, and speech recognition. In NLP, it improves context understanding in tasks like question answering and summarization. In vision, visual attention helps models focus on relevant image regions, enhancing object detection and image captioning. === Attention maps as explanations for vision transformers === From the original paper on vision transformers (ViT), visualizing attention scores as a heat map (called saliency maps or attention maps) has become an important and routine way to inspect the decision making process of ViT models. One can compute the attention maps with respect to any attention head at any layer, while the deeper layers tend to show more semantically meaningful visualization. Attention rollout is a recursive algorithm to combine attention scores across all layers, by computing the dot product of successive attention maps. Because vision transformers are typically trained in a self-supervised manner, attention maps are generally not class-sensitive. When a classification head is attached to the ViT backbone, class-discriminative attention maps (CDAM) combines attention maps and gradients with respect to the class [CLS] token. Some class-sensitive interpretability methods originally developed for convolutional neural networks can be also applied to ViT, such as GradCAM, which back-propagates the gradients to the outputs of the final attention layer. Using attention as basis of explanation for the transformers in language and vision is not without debate. While some pioneering papers analyzed and framed attention scores as explanations, higher attention scores do not always correlate with greater impact on model performances. == Mathematical representation == === Standard scaled dot-product attention === For matrices: Q ∈ R m × d k , K ∈ R n × d k {\displaystyle Q\in \mathbb {R} ^{m\times d_{k}},K\in \mathbb {R} ^{n\times d_{k}}} and V ∈ R n × d v {\displaystyle V\in \mathbb {R} ^{n\times d_{v}}} , the scaled dot-product, or QKV attention, is defined as: Attention ( Q , K , V ) = softmax ( Q K T d k ) V ∈ R m × d v {\displaystyle {\text{Attention}}(Q,K,V)={\text{softmax}}\left({\frac {QK^{T}}{\sqrt {d_{k}}}}\right)V\in \mathbb {R} ^{m\times d_{v}}} where T {\displaystyle {}^{T}} denotes transpose and the softmax function is applied independently to every row of its argument. The matrix Q {\displaystyle Q} contains m {\displaystyle m} queries, while matrices K , V {\displaystyle K,V} jointly contain an unordered set of n {\displaystyle n} key-value pairs. Value vectors in matrix V {\displaystyle V} are weighted using the weights resulting from the softmax operation, so that the rows of the m {\displaystyle m} -by- d v {\displaystyle d_{v}} output matrix are confined to the convex hull of the points in R d v {\displaystyle \mathbb {R} ^{d_{v}}} given by the rows of V {\displaystyle V} . To understand the permutation invariance and permutation equivariance properties of QKV attention, let A ∈ R m × m {\displaystyle A\in \mathbb {R} ^{m\times m}} and B ∈ R n × n {\displaystyle B\in \mathbb {R} ^{n\times n}} be permutation matrices; and D ∈ R m × n {\displaystyle D\in \mathbb {R} ^{m\times n}} an arbitrary matrix. The softmax function is permutation equivariant in the sense that: softmax ( A D B ) = A softmax ( D ) B {\displays

    Read more →
  • Rnn (software)

    Rnn (software)

    rnn is an open-source machine learning framework that implements recurrent neural network architectures, such as LSTM and GRU, natively in the R programming language, that has been downloaded over 100,000 times (from the RStudio servers alone). The rnn package is distributed through the Comprehensive R Archive Network under the open-source GPL v3 license. == Workflow == The below example from the rnn documentation show how to train a recurrent neural network to solve the problem of bit-by-bit binary addition. == sigmoid == The sigmoid functions and derivatives used in the package were originally included in the package, from version 0.8.0 onwards, these were released in a separate R package sigmoid, with the intention to enable more general use. The sigmoid package is a dependency of the rnn package and therefore automatically installed with it. == Reception == With the release of version 0.3.0 in April 2016 the use in production and research environments became more widespread. The package was reviewed several months later on the R blog The Beginner Programmer as "R provides a simple and very user friendly package named rnn for working with recurrent neural networks.", which further increased usage. The book Neural Networks in R by Balaji Venkateswaran and Giuseppe Ciaburro uses rnn to demonstrate recurrent neural networks to R users. It is also used in the r-exercises.com course "Neural network exercises". The RStudio CRAN mirror download logs show that the package is downloaded on average about 2,000 per month from those servers , with a total of over 100,000 downloads since the first release, according to RDocumentation.org, this puts the package in the 15th percentile of most popular R packages .

    Read more →
  • Portable Format for Analytics

    Portable Format for Analytics

    The Portable Format for Analytics (PFA) is a JSON-based predictive model interchange format conceived and developed by Jim Pivarski. PFA provides a way for analytic applications to describe and exchange predictive models produced by analytics and machine learning algorithms. It supports common models such as logistic regression and decision trees. Version 0.8 was published in 2015. Subsequent versions have been developed by the Data Mining Group. As a predictive model interchange format developed by the Data Mining Group, PFA is complementary to the DMG's XML-based standard called the Predictive Model Markup Language or PMML. == Release history == == Data Mining Group == The Data Mining Group is a consortium managed by the Center for Computational Science Research, Inc., a nonprofit founded in 2008. == Examples == reverse array: # reverse input array of doubles input: {"type": "array", "items": "double"} output: {"type": "array", "items": "double"} action: - let: { x : input} - let: { z : input} - let: { l : {a.len: [x]}} - let: { i : l} - while : { ">=" : [i,0]} do: - set : {z : {attr: z, path : [i] , to: {attr : x ,path : [ {"-":[{"-" : [l ,i]},1]}] } } } - set : {i : {-:[i,1]}} - z Bubblesort input: {"type": "array", "items": "double"} output: {"type": "array", "items": "double"} action: - let: { A : input} - let: { N : {a.len: [A]}} - let: { n : {-:[N,1]}} - let: { i : 0} - let: { s : 0.0} - while : { ">=" : [n,0]} do : - set : { i : 0 } - while : { "<=" : [i,{-:[n,1]}]} do : - if: {">": [ {attr: A, path : [i]} , {attr: A, path:[{+:[i,1]}]} ]} then : - set : {s : {attr: A, path: [i]}} - set : {A : {attr: A, path: [i], to: {attr: A, path:[{+:[i,1]}]} } } - set : {A : {attr: A, path: [{+:[i,1]}], to: s }} - set : {i : {+:[i,1]}} - set : {n : {-:[n,1]}} - A == Implementations == Hadrian (Java/Scala/JVM) - Hadrian is a complete implementation of PFA in Scala, which can be accessed through any JVM language, principally Java. It focuses on model deployment, so it is flexible (can run in restricted environments) and fast. Titus (Python 2.x) - Titus is a complete, independent implementation of PFA in pure Python. It focuses on model development, so it includes model producers and PFA manipulation tools in addition to runtime execution. Currently, it works for Python 2. Titus 2 (Python 3.x) - Titus 2 is a fork of Titus which supports PFA implementation for Python 3. Aurelius (R) - Aurelius is a toolkit for generating PFA in the R programming language. It focuses on porting models to PFA from their R equivalents. To validate or execute scoring engines, Aurelius sends them to Titus through rPython (so both must be installed). Antinous (Model development in Jython) - Antinous is a model-producer plugin for Hadrian that allows Jython code to be executed anywhere a PFA scoring engine would go. It also has a library of model producing algorithms.

    Read more →