AI Content Improver

AI Content Improver — independent reviews, comparisons, pricing and step-by-step guides on Aizhi.

  • Eigenface

    Eigenface

    An eigenface ( EYE-gən-) is the name given to a set of eigenvectors when used in the computer vision problem of human face recognition. The approach of using eigenfaces for recognition was developed by Sirovich and Kirby and used by Matthew Turk and Alex Pentland in face classification. The eigenvectors are derived from the covariance matrix of the probability distribution over the high-dimensional vector space of face images. The eigenfaces themselves form a basis set of all images used to construct the covariance matrix. This produces dimension reduction by allowing the smaller set of basis images to represent the original training images. Classification can be achieved by comparing how faces are represented by the basis set. == History == The eigenface approach began with a search for a low-dimensional representation of face images. Sirovich and Kirby showed that principal component analysis could be used on a collection of face images to form a set of basis features. These basis images, known as eigenpictures, could be linearly combined to reconstruct images in the original training set. If the training set consists of M images, principal component analysis could form a basis set of N images, where N < M. The reconstruction error is reduced by increasing the number of eigenpictures; however, the number needed is always chosen less than M. For example, if you need to generate a number of N eigenfaces for a training set of M face images, you can say that each face image can be made up of "proportions" of all the K "features" or eigenfaces: Face image1 = (23% of E1) + (2% of E2) + (51% of E3) + ... + (1% En). In 1991 M. Turk and A. Pentland expanded these results and presented the eigenface method of face recognition. In addition to designing a system for automated face recognition using eigenfaces, they showed a way of calculating the eigenvectors of a covariance matrix such that computers of the time could perform eigen-decomposition on a large number of face images. Face images usually occupy a high-dimensional space and conventional principal component analysis was intractable on such data sets. Turk and Pentland's paper demonstrated ways to extract the eigenvectors based on matrices sized by the number of images rather than the number of pixels. Once established, the eigenface method was expanded to include methods of preprocessing to improve accuracy. Multiple manifold approaches were also used to build sets of eigenfaces for different subjects and different features, such as the eyes. == Generation == A set of eigenfaces can be generated by performing a mathematical process called principal component analysis (PCA) on a large set of images depicting different human faces. Informally, eigenfaces can be considered a set of "standardized face ingredients", derived from statistical analysis of many pictures of faces. Any human face can be considered to be a combination of these standard faces. For example, one's face might be composed of the average face plus 10% from eigenface 1, 55% from eigenface 2, and even −3% from eigenface 3. Remarkably, it does not take many eigenfaces combined together to achieve a fair approximation of most faces. Also, because a person's face is not recorded by a digital photograph, but instead as just a list of values (one value for each eigenface in the database used), much less space is taken for each person's face. The eigenfaces that are created will appear as light and dark areas that are arranged in a specific pattern. This pattern is how different features of a face are singled out to be evaluated and scored. There will be a pattern to evaluate symmetry, whether there is any style of facial hair, where the hairline is, or an evaluation of the size of the nose or mouth. Other eigenfaces have patterns that are less simple to identify, and the image of the eigenface may look very little like a face. The technique used in creating eigenfaces and using them for recognition is also used outside of face recognition: handwriting recognition, lip reading, voice recognition, sign language/hand gestures interpretation and medical imaging analysis. Therefore, some do not use the term eigenface, but prefer to use 'eigenimage'. === Practical implementation === To create a set of eigenfaces, one must: Prepare a training set of face images. The pictures constituting the training set should have been taken under the same lighting conditions, and must be normalized to have the eyes and mouths aligned across all images. They must also be all resampled to a common pixel resolution (r × c). Each image is treated as one vector, simply by concatenating the rows of pixels in the original image, resulting in a single column with r × c elements. For this implementation, it is assumed that all images of the training set are stored in a single matrix T, where each column of the matrix is an image. Subtract the mean. The average image a has to be calculated and then subtracted from each original image in T. Calculate the eigenvectors and eigenvalues of the covariance matrix S. Each eigenvector has the same dimensionality (number of components) as the original images, and thus can itself be seen as an image. The eigenvectors of this covariance matrix are therefore called eigenfaces. They are the directions in which the images differ from the mean image. Usually this will be a computationally expensive step (if at all possible), but the practical applicability of eigenfaces stems from the possibility to compute the eigenvectors of S efficiently, without ever computing S explicitly, as detailed below. Choose the principal components. Sort the eigenvalues in descending order and arrange eigenvectors accordingly. The number of principal components k is determined arbitrarily by setting a threshold ε on the total variance. Total variance ⁠ v = ( λ 1 + λ 2 + . . . + λ n ) {\displaystyle v=(\lambda _{1}+\lambda _{2}+...+\lambda _{n})} ⁠, n = number of components, and λ {\displaystyle \lambda } represents component eigenvalue. k is the smallest number that satisfies ( λ 1 + λ 2 + . . . + λ k ) v > ϵ {\displaystyle {\frac {(\lambda _{1}+\lambda _{2}+...+\lambda _{k})}{v}}>\epsilon } These eigenfaces can now be used to represent both existing and new faces: we can project a new (mean-subtracted) image on the eigenfaces and thereby record how that new face differs from the mean face. The eigenvalues associated with each eigenface represent how much the images in the training set vary from the mean image in that direction. Information is lost by projecting the image on a subset of the eigenvectors, but losses are minimized by keeping those eigenfaces with the largest eigenvalues. For instance, working with a 100 × 100 image will produce 10,000 eigenvectors. In practical applications, most faces can typically be identified using a projection on between 100 and 150 eigenfaces, so that most of the 10,000 eigenvectors can be discarded. === Matlab example code === Here is an example of calculating eigenfaces with Extended Yale Face Database B. To evade computational and storage bottleneck, the face images are sampled down by a factor 4×4=16. Note that although the covariance matrix S generates many eigenfaces, only a fraction of those are needed to represent the majority of the faces. For example, to represent 95% of the total variation of all face images, only the first 43 eigenfaces are needed. To calculate this result, implement the following code: === Computing the eigenvectors === Performing PCA directly on the covariance matrix of the images is often computationally infeasible. If small images are used, say 100 × 100 pixels, each image is a point in a 10,000-dimensional space and the covariance matrix S is a matrix of 10,000 × 10,000 = 108 elements. However the rank of the covariance matrix is limited by the number of training examples: if there are N training examples, there will be at most N − 1 eigenvectors with non-zero eigenvalues. If the number of training examples is smaller than the dimensionality of the images, the principal components can be computed more easily as follows. Let T be the matrix of preprocessed training examples, where each column contains one mean-subtracted image. The covariance matrix can then be computed as S = TTT and the eigenvector decomposition of S is given by S v i = T T T v i = λ i v i {\displaystyle \mathbf {Sv} _{i}=\mathbf {T} \mathbf {T} ^{T}\mathbf {v} _{i}=\lambda _{i}\mathbf {v} _{i}} However TTT is a large matrix, and if instead we take the eigenvalue decomposition of T T T u i = λ i u i {\displaystyle \mathbf {T} ^{T}\mathbf {T} \mathbf {u} _{i}=\lambda _{i}\mathbf {u} _{i}} then we notice that by pre-multiplying both sides of the equation with T, we obtain T T T T u i = λ i T u i {\displaystyle \mathbf {T} \mathbf {T} ^{T}\mathbf {T} \mathbf {u} _{i}=\lambda _{i}\mathbf {T} \mathbf {u} _{i}} Meaning that, if ui is an eigenvector of TTT, then vi = Tui is an eigenvector of S. If we have

    Read more →
  • Cooperative coevolution

    Cooperative coevolution

    Cooperative Coevolution (CC) in the field of biological evolution is an evolutionary computation method. It divides a large problem into subcomponents, and solves them independently in order to solve the large problem. The subcomponents are also called species. The subcomponents are implemented as subpopulations and the only interaction between subpopulations is in the cooperative evaluation of each individual of the subpopulations. The general CC framework is nature inspired where the individuals of a particular group of species mate amongst themselves, however, mating in between different species is not feasible. The cooperative evaluation of each individual in a subpopulation is done by concatenating the current individual with the best individuals from the rest of the subpopulations as described by M. Potter. The cooperative coevolution framework has been applied to real world problems such as pedestrian detection systems, large-scale function optimization and neural network training. It has also be further extended into another method, called Constructive cooperative coevolution. == Pseudocode == i := 0 for each subproblem S do Initialise a subpopulation Pop0(S) calculate fitness of each member in Pop0(S) while termination criteria not satisfied do i := i + 1 for each subproblem S do select Popi(S) from Popi-1(S) apply genetic operators to Popi(S) calculate fitness of each member in Popi(S)

    Read more →
  • Ghost in the Shell

    Ghost in the Shell

    Ghost in the Shell is a Japanese cyberpunk military science fiction media franchise that began with the eponymous manga series, written and illustrated by Masamune Shirow. The manga, first serialized from 1989 to 1991, is set in the mid-21st-century and follows the fictional counter-cyberterrorist organization Public Security Section 9, led by protagonist Major Motoko Kusanagi. Animation studio Production I.G has produced several anime adaptations of the series. These include the 1995 film of the same name and its 2004 sequel, Ghost in the Shell 2: Innocence; the 2002 television series Ghost in the Shell: Stand Alone Complex and its 2020 follow-up, Ghost in the Shell: SAC_2045; and the Ghost in the Shell: Arise original video animation series. In addition, an American-produced live-action film was released in March 2017. == Overview == === Title === The original editor Koichi Yuri says: At first, Ghost in the Shell came from Shirow, but when Yuri asked for "something more flashy", Shirow came up with "攻殻機動隊 Koukaku Kidou Tai (Shell Squad)" for Yuri. But Shirow was attached to including "Ghost in the Shell" as well even if in smaller type. === Setting === Primarily set in the mid-twenty-first century in the fictional Japanese city of Niihama, Niihama Prefecture (新浜県新浜市, Niihama-ken Niihama-shi), otherwise known as New Port City (ニューポートシティ, Nyū Pōto Shiti), the manga and the many anime adaptations follow the members of Public Security Section 9, a task-force consisting of various professionals skilled at solving and preventing crime, mostly with some sort of police background. Political intrigue and counter-terrorism operations are standard fare for Section 9, but the various actions of corrupt officials, companies, and cyber-criminals in each scenario are unique and require the diverse skills of Section 9's staff to prevent a series of incidents from escalating. In this post-cyberpunk iteration of a possible future, computer technology has advanced to the point that many members of the public possess cyberbrains, technology that allows them to interface their biological brain with various networks. The level of cyberization varies from simple minimal interfaces to almost complete replacement of the brain with cybernetic parts, in cases of severe trauma. This can also be combined with various levels of prostheses, with a fully prosthetic body enabling a person to become a cyborg. The main character of Ghost in the Shell, Major Motoko Kusanagi, is such a cyborg, having had a terrible accident befall her as a child that ultimately required her to use a full-body prosthesis to house her cyberbrain. This high level of cyberization, however, opens the brain up to attacks from highly skilled hackers, with the most dangerous being those who will hack a person to bend to their whims. == Media == === Literature === ==== Original manga ==== The original Ghost in the Shell manga ran in Japan from April 1989 to November 1990 in Kodansha's manga anthology Young Magazine, and was released in a tankōbon volume on October 2, 1991. Ghost in the Shell 2: Man-Machine Interface followed in 1997 for nine issues in Young Magazine, and was collected in the Ghost in the Shell: Solid Box on December 1, 2000. Then a standard version with modifications and new pages was published on June 26, 2001. Four stories from Man-Machine Interface that were not released in tankobon format from previous releases were later collected in Ghost in the Shell 1.5: Human-Error Processor, and published by Kodansha on July 17, 2003. Several art books have also been published for the manga. === Films === ==== Animated films ==== Two animated films based on the original manga have been released, both directed by Mamoru Oshii and animated by Production I.G. Ghost in the Shell was released in 1995 and follows the "Puppet Master" storyline from the manga. It was re-released in 2008 as Ghost in the Shell 2.0 with new audio and updated 3D computer graphics in certain scenes. Innocence, otherwise known as Ghost in the Shell 2: Innocence, was released in 2004, with its story based on a chapter from the first manga. ==== Live-action film ==== In 2008, DreamWorks and producer Steven Spielberg acquired the rights to a live-action film adaptation of the original Ghost in the Shell manga. On January 24, 2014, Rupert Sanders was announced as director, with a screenplay by William Wheeler. In April 2016, the full cast was announced, which included Juliette Binoche, Chin Han, Lasarus Ratuere and Kaori Momoi, and Scarlett Johansson in the lead role; the casting of Johansson drew accusations of whitewashing. Principal photography on the film began on location in Wellington, New Zealand, on February 1, 2016. Filming wrapped in June 2016. Ghost in the Shell premiered in Tokyo on March 16, 2017, and was released in the United States on March 31, 2017, in 2D, 3D and IMAX 3D. It received mixed reviews, with praise for its visuals and Johansson's performance but criticism for its script. === Television === ==== Stand Alone Complex TV series, film and ONA ==== In 2002, Ghost in the Shell: Stand Alone Complex premiered on Animax, presenting a new telling of Ghost in the Shell independent from the original manga, focusing on Section 9's investigation of the Laughing Man hacker. It was followed in 2004 by a second season titled Ghost in the Shell: S.A.C. 2nd GIG, which focused on the Individual Eleven terrorist group. The primary storylines of both seasons were compressed into OVAs broadcast as Ghost in the Shell: Stand Alone Complex The Laughing Man in 2005 and Ghost in the Shell: Stand Alone Complex Individual Eleven in 2006. Also in 2006, Ghost in the Shell: Stand Alone Complex - Solid State Society, featuring Section 9's confrontation with a hacker known as the Puppeteer, was broadcast, serving as a finale to the anime series. The extensive score for the series and its films was composed by Yoko Kanno. On April 7, 2017, Kodansha and Production I.G announced that Kenji Kamiyama and Shinji Aramaki would be co-directing a new Kōkaku Kidōtai anime production. On December 7, 2018, it was reported by Netflix that they had acquired the worldwide streaming rights to the original net animation (ONA) anime series, titled Ghost in the Shell: SAC_2045, and that it would premiere on April 23, 2020. The series is in 3DCG and Sola Digital Arts collaborated with Production I.G on the project. Ilya Kuvshinov handled character designs. The series had two seasons of 12 episodes each. In addition to the anime, a series of published books, two separate manga adaptations, and several video games for consoles and mobile phones have been released for Stand Alone Complex. ==== Arise OVA, TV series and film ==== In 2013, a new iteration of the series titled Ghost in the Shell: Arise premiered, taking an original look at the Ghost in the Shell world, set before the original manga. It was released as a series of four original video animation (OVA) episodes (with limited theatrical releases) from 2013 to 2014, then recompiled as a 10-episode television series under the title of Kōkaku Kidōtai: Arise - Alternative Architecture. An additional fifth OVA titled Pyrophoric Cult, originally premiering in the Alternative Architecture broadcast as two original episodes, was released on August 26, 2015. Kazuchika Kise served as the chief director of the series, with Tow Ubukata as head writer. Cornelius was brought onto the project to compose the score for the series, with the Major's new voice actress Maaya Sakamoto also providing vocals for certain tracks. Ghost in the Shell: The New Movie, also known as Ghost in the Shell: Arise − The Movie or New Ghost in the Shell, is a 2015 film directed by Kazuya Nomura that serves as a finale to the Ghost in the Shell: Arise story arc. The film is a continuation to the plot of the Pyrophoric Cult episode of Arise, and ties up loose ends from that arc. A manga adaptation was serialized in Kodansha's Young Magazine, which started on March 13 and ended on August 26, 2013. ==== 2026 anime ==== On May 25, 2024, it was announced that a new anime television series adaptation will be produced by Science Saru for a July 2026 premiere. Saru will be in a production committee with Bandai Namco Filmworks, Kodansha and Production I.G. The series will be directed by Monkochan, with a script by EnJoe Toh. === Video games === Ghost in the Shell was developed by Exact and released for the PlayStation on July 17, 1997, in Japan by Sony Computer Entertainment. It is a third-person shooter featuring an original storyline where the character plays a rookie member of Section 9. The video game's soundtrack Megatech Body features various techno artists, such as Takkyu Ishino, Scan X and Mijk Van Dijk. Several video games were also developed to tie into the Stand Alone Complex television series, in addition to a first-person shooter by Nexon and Neople titled Ghost in the Shell: Stand Alone Complex - First Assault Online,

    Read more →
  • Micah Xavier Johnson

    Micah Xavier Johnson

    Micah Xavier Johnson (July 2, 1991 – July 8, 2016) was an American Army reserve Afghan war veteran, black nationalist, and mass murderer who perpetrated the 2016 shooting of Dallas police officers during a Black Lives Matter protest. He ambushed and killed five officers and wounded eleven others in Downtown, Dallas, Texas. He was killed by police during a standoff after expressing anger over police killings of black men. The shootings were the second-deadliest targeted attack on law enforcement officers in U.S. history, surpassed only by the September 11 attacks. == Early life == Micah Xavier Johnson was born in Magee, Mississippi, on July 2, 1991, and he was raised in Mesquite, Texas. When he was four years old, his parents divorced. At 17, Johnson enrolled at John Horn High School, where he joined the Junior Reserve Officers' Training Corps, as reported by the Mesquite Independent school district. He faced academic challenges, graduating in 2009 with a 1.98 GPA and ranking 430th out of 453 students in his class. In Spring 2011, Johnson registered for four courses at Richland college but did not complete any. Evidence suggests his enrollment at Richland gave him access to El Centro College, due to his pre-planned and coordinated movements throughout Building B during his standoff with police in 2016. == Military service == === Enlistment and early service === Micah Xavier Johnson enlisted in the U.S. Army Reserve in March 2009 at the age of 18, shortly after graduating high school in Mesquite, Texas. His initial service was primarily stateside, where he trained as a carpentry and masonry specialist (military occupational specialty 51B). This role involved engineering tasks such as construction and repair in support of military operations. During his reserve tenure, Johnson served part-time while living at home, and he was described by family and friends as initially idealistic about the military, even aspiring to become a police officer. === Deployment to Afghanistan === In September 2013, Johnson was activated for full-time duty and deployed to Afghanistan as part of the 420th Engineer Brigade, a unit based in Seagoville, Texas. His tour began in November 2013 and lasted approximately eight months, ending in July 2014. During this period, he performed non-combat engineering duties, though the stresses of serving in a combat zone were noted by those close to him. Associates from his service later suggested he experienced significant psychological strain, including the loss of friends and general disillusionment with military life, which contrasted with his pre-deployment enthusiasm. His mother later reflected that "the military was not what Micah thought it would be." === Sexual harassment allegation and early return === About six months into his deployment, in May 2014, Johnson faced a serious accusation of sexual harassment from a higher-ranking female soldier. She filed for a military protective order against him, prompting an investigation. As a result, his chain of command recommended an "other than honorable" discharge—the second (more severe is a dishonorable discharge, which does not require a court martial) most severe administrative separation short of a court-martial—and he was sent back to the United States ahead of schedule. Despite this, Johnson was not court-martialed, and the case did not lead to criminal charges. A military lawyer who represented him described the handling as unusual, noting that "someone really screwed up" in allowing him to avoid harsher consequences. === Post-deployment and discharge === Upon returning stateside in August 2014, Johnson resumed reserve duties with his engineering brigade until April 2015. He was honorably discharged at the rank of private first class (E-3), a relatively low junior enlisted rank after six years of service, which military sources attributed partly to the unresolved harassment allegation impacting his promotions and evaluations. Friends and family observed a marked change in his demeanor post-deployment: he became more reclusive, resentful toward the government, and withdrawn, with some speculating that the Afghanistan experience and the scandal contributed to a "small breakdown." In July 2016, following the Dallas shooting, the U.S. Army launched an internal review of his service record, including the harassment claims, to assess whether all misconduct allegations had been fully investigated. == Shootings == On July 7, 2016, a peaceful Black Lives Matter protest marched through downtown Dallas, Texas, drawing about 800 demonstrators. The event responded to the recent police killings of Alton Sterling in Baton Rouge, Louisiana, on July 5, and Philando Castile in Falcon Heights, Minnesota, on July 6—both black men shot during encounters captured on video. Around 100 officers monitored the march, which passed near El Centro College without incident until gunfire erupted around 8:45 p.m. Johnson arrived in a dark SUV, armed with an SKS semi-automatic rifle, a handgun, extra ammunition, and ballistic vests. He parked near the protest's end, chatted briefly with two officers, then opened fire on police from an elevated position on Lamar Street (now Botham Jean Boulevard). He shot from behind barriers, through windows, and while moving, targeting white officers specifically. The ambush killed five officers and wounded seven more, plus two civilians. Gunfire scattered protesters in panic as Johnson used military-style tactics, like quick position changes, to prolong the assault. === Standoff and Johnson's end === Johnson fled into El Centro College's Building C, then Building B, navigating pre-planned routes with familiarity from prior enrollment at nearby Richland College. He barricaded in a parking garage, wounding more officers in close-range fights. During two-hour negotiations, he taunted police via phone—laughing, singing, asking kill counts, and claiming planted bombs (none found). He admitted solo action, rage at White officers, and no group ties. At 2:30 a.m. on July 8, SWAT ended the standoff by detonating a bomb via remote-controlled robot in the garage, killing Johnson. This marked the first U.S. police use of such a tactic. === Victims and investigation findings === The slain officers were: Brent Thompson (Transit Authority, 36), Patrick Zamarripa (Dallas PD, 33), Michael Krol (Dallas PD, 40), Lorne Ahrens (Dallas PD, 48), and Michael Smith (Dallas PD, 55). Wounded officers included Sheik Smith, John Mitchell, and others; civilians She Tamara El-Sobky and Hillary Castro. Searches of Johnson's home revealed bomb-making materials, rifles, vests, and notes on tactics, suggesting plans for a larger attack. He had practiced explosions and honed skills post-discharge, including marksmanship. === Aftermath and impact === Dallas mourned with vigils and memorials, while national protests against police violence continued amid grief. President Barack Obama, the first African American president of the United States, called Johnson a "demented individual" and formed a task force on race and policing. The incident fueled debates on gun control, race relations, and veteran mental health—Johnson had sought VA treatment for stress and anxiety but showed no prior violent signs to friends. El Centro College canceled all classes on July 8. Police barricaded the perimeter and began canvassing the crime scene. The explosion that killed Johnson also destroyed the school's servers, further delaying reopening. The school partially reopened on July 20, with staff returning that day and students on the following day. Buildings A, B, and C remained closed pending the FBI investigation. == Motive == An investigation into his online activities uncovered his interest in black nationalist groups. The Southern Poverty Law Center (SPLC), and news outlets reported that Johnson "liked" the Facebook pages of black nationalist organizations such as the New Black Panther Party (NBPP), Nation of Islam, and Black Riders Liberation Party, three groups which are listed by the SPLC as hate groups. On Facebook, Johnson posted an angry and "disjointed" post against White people on July 2, several days before the attack. NBPP head Quanell X said after the shooting that Johnson had been a member of the NBPP's Houston chapter for about six months, several years before. Quanell X added that Johnson had been "asked to leave" the group for violating the organization's "chain of command" and espousing dangerous rhetoric, such as asking the NBPP why they had not purchased more weapons and ammunition, and expressing his desire to harm black church preachers because he believed they were more interested in money than God. Following the shooting, a national NBPP leader distanced the group from Johnson, saying that he "was not a member of" the party. Further investigation into his digital footprint showed that Johnson visited the sites of Marxist Leninist groups associated with "Revolutionary Black Nationalism",

    Read more →
  • Multi-armed bandit

    Multi-armed bandit

    In probability theory and machine learning, the multi-armed bandit problem (sometimes called the K- or N-armed bandit problem) is named from imagining a gambler at a row of slot machines (sometimes known as "one-armed bandits"), who has to decide which machines to play, how many times to play each machine and in which order to play them, and whether to continue with the current machine or try a different machine. More generally, it is a problem in which a decision maker iteratively selects one of multiple fixed choices (i.e., arms or actions) when the properties of each choice are only partially known at the time of allocation, and may become better understood as time passes. A fundamental aspect of bandit problems is that choosing an arm does not affect the properties of the arm or other arms. Instances of the multi-armed bandit problem include the task of iteratively allocating a fixed, limited set of resources between competing (alternative) choices in a way that minimizes the regret. A notable alternative setup for the multi-armed bandit problem includes the "best arm identification (BAI)" problem where the goal is instead to identify the best choice by the end of a finite number of rounds. The multi-armed bandit problem is a classic reinforcement learning problem that exemplifies the exploration–exploitation tradeoff dilemma. In contrast to general reinforcement learning, the selected actions in bandit problems do not affect the reward distribution of the arms. The multi-armed bandit problem also falls into the broad category of stochastic scheduling. In the problem, each machine provides a random reward from a probability distribution specific to that machine, that is not known a priori. The objective of the gambler is to maximize the sum of rewards earned through a sequence of lever pulls. The crucial tradeoff the gambler faces at each trial is between "exploitation" of the machine that has the highest expected payoff and "exploration" to get more information about the expected payoffs of the other machines. The trade-off between exploration and exploitation is also faced in machine learning. In practice, multi-armed bandits have been used to model problems such as managing research projects in a large organization, like a science foundation or a pharmaceutical company. In early versions of the problem, the gambler begins with no initial knowledge about the machines. Herbert Robbins in 1952, realizing the importance of the problem, constructed convergent population selection strategies in "some aspects of the sequential design of experiments". A theorem, the Gittins index, first published by John C. Gittins, gives an optimal policy for maximizing the expected discounted reward. == Empirical motivation == The multi-armed bandit problem models an agent that simultaneously attempts to acquire new knowledge (called "exploration") and optimize their decisions based on existing knowledge (called "exploitation"). The agent attempts to balance these competing tasks in order to maximize their total value over the period of time considered. There are many practical applications of the bandit model, for example: clinical trials investigating the effects of different experimental treatments while minimizing patient losses, adaptive routing efforts for minimizing delays in a network, financial portfolio design In these practical examples, the problem requires balancing reward maximization based on the knowledge already acquired with attempting new actions to further increase knowledge. This is known as the exploitation vs. exploration tradeoff in machine learning. The model has also been used to control dynamic allocation of resources to different projects, answering the question of which project to work on, given uncertainty about the difficulty and payoff of each possibility. Originally considered by Allied scientists in World War II, it proved so intractable that, according to Peter Whittle, the problem was proposed to be dropped over Germany so that German scientists could also waste their time on it. The version of the problem now commonly analyzed was formulated by Herbert Robbins in 1952. == The multi-armed bandit model == The multi-armed bandit (short: bandit or MAB) can be seen as a set of real distributions B = { R 1 , … , R K } {\displaystyle B=\{R_{1},\dots ,R_{K}\}} , each distribution being associated with the rewards delivered by one of the K ∈ N + {\displaystyle K\in \mathbb {N} ^{+}} levers. Let μ 1 , … , μ K {\displaystyle \mu _{1},\dots ,\mu _{K}} be the mean values associated with these reward distributions. The gambler iteratively plays one lever per round and observes the associated reward. The objective is to maximize the sum of the collected rewards. The horizon H {\displaystyle H} is the number of rounds that remain to be played. The bandit problem is formally equivalent to a one-state Markov decision process. The regret ρ {\displaystyle \rho } after T {\displaystyle T} rounds is defined as the expected difference between the reward sum associated with an optimal strategy and the sum of the collected rewards: ρ = T μ ∗ − ∑ t = 1 T r ^ t {\displaystyle \rho =T\mu ^{}-\sum _{t=1}^{T}{\widehat {r}}_{t}} , where μ ∗ {\displaystyle \mu ^{}} is the maximal reward mean, μ ∗ = max k { μ k } {\displaystyle \mu ^{}=\max _{k}\{\mu _{k}\}} , and r ^ t {\displaystyle {\widehat {r}}_{t}} is the reward in round t {\displaystyle t} . A zero-regret strategy is a strategy whose average regret per round ρ / T {\displaystyle \rho /T} tends to zero with probability 1 when the number of played rounds tends to infinity. Intuitively, zero-regret strategies are guaranteed to converge to a (not necessarily unique) optimal strategy if enough rounds are played. == Variations == A common formulation is the Binary multi-armed bandit or Bernoulli multi-armed bandit, which issues a reward of one with probability p {\displaystyle p} , and otherwise a reward of zero. Another formulation of the multi-armed bandit has each arm representing an independent Markov machine. Each time a particular arm is played, the state of that machine advances to a new one, chosen according to the Markov state evolution probabilities. There is a reward depending on the current state of the machine. In a generalization called the "restless bandit problem", the states of non-played arms can also evolve over time. There has also been discussion of systems where the number of choices (about which arm to play) increases over time. Computer science researchers have studied multi-armed bandits under worst-case assumptions, obtaining algorithms to minimize regret in both finite and infinite (asymptotic) time horizons for both stochastic and non-stochastic arm payoffs. === Best arm identification === An important variation of the classical regret minimization problem in multi-armed bandits is best arm identification (BAI), also known as pure exploration. This problem is crucial in various applications, including clinical trials, adaptive routing, recommendation systems, and A/B testing. In BAI, the objective is to identify the arm having the highest expected reward. An algorithm in this setting is characterized by a sampling rule, a decision rule, and a stopping rule, described as follows: Sampling rule: ( a t ) t ≥ 1 {\displaystyle (a_{t})_{t\geq 1}} is a sequence of actions at each time step Stopping rule: τ {\displaystyle \tau } is a (random) stopping time which suggests when to stop collecting samples Decision rule: a ^ τ {\displaystyle {\hat {a}}_{\tau }} is a guess on the best arm based on the data collected up to time τ {\displaystyle \tau } There are two predominant settings in BAI: Fixed budget setting: Given a time horizon T ≥ 1 {\displaystyle T\geq 1} , the objective is to identify the arm with the highest expected reward a ⋆ ∈ arg ⁡ max k μ k {\displaystyle a^{\star }\in \arg \max _{k}\mu _{k}} minimizing probability of error δ {\displaystyle \delta } . Fixed confidence setting: Given a confidence level δ ∈ ( 0 , 1 ) {\displaystyle \delta \in (0,1)} , the objective is to identify the arm with the highest expected reward a ⋆ ∈ arg ⁡ max k μ k {\displaystyle a^{\star }\in \arg \max _{k}\mu _{k}} with the least possible amount of trials and with probability of error P ( a ^ τ ≠ a ⋆ ) ≤ δ {\displaystyle \mathbb {P} ({\hat {a}}_{\tau }\neq a^{\star })\leq \delta } . For example using a decision rule, we could use m 1 {\displaystyle m_{1}} where m {\displaystyle m} is the machine no.1 (you can use a different variable respectively) and 1 {\displaystyle 1} is the amount for each time an attempt is made at pulling the lever, where ∫ ∑ m 1 , m 2 , ( . . . ) = M {\displaystyle \int \sum m_{1},m_{2},(...)=M} , identify M {\displaystyle M} as the sum of each attempts m 1 + m 2 {\displaystyle m_{1}+m_{2}} , (...) as needed, and from there you can get a ratio, sum or mean as quantitative probability and sample your formulation for each slots. You can also do ∫ ∑ k ∝ i N − (

    Read more →
  • The Machine That Won the War (short story)

    The Machine That Won the War (short story)

    "The Machine That Won the War" is a science fiction short story by American writer Isaac Asimov. The story first appeared in the October 1961 issue of The Magazine of Fantasy & Science Fiction, and was reprinted in the collections Nightfall and Other Stories (1969) and Robot Dreams (1986). It was also printed in a contemporary edition of Reader's Digest, illustrated. It is one of a loosely connected series of such stories concerning a fictional supercomputer called Multivac. == Plot summary == Three influential leaders of the human race meet in the aftermath of a successful war against the Denebians. Discussing how the vast and powerful Multivac computer was a decisive factor in the war, each of the men admits that in fact, he falsified his part of the decision process because he felt that the situation was too complex to follow normal procedures. John Henderson, Multivac's Chief Programmer, admits that he altered the data being fed to Multivac, since the populace could not be trusted to report accurate information in the current situation. Max Jablonski then admits that he altered the data that Multivac produced, since he knew that Multivac was not in good working order due to manpower and spare parts shortage. Finally, Lamar Swift, executive director of the Solar Federation, reveals that he had not trusted the reports produced by Multivac, and had made the final decisions purely on the toss of a coin.

    Read more →
  • Kialo

    Kialo

    Kialo is an online structured debate platform with argument maps in the form of debate trees. It is a collaborative reasoning tool for thoughtful discussion, understanding different points of view, and collaborative decision-making, showing arguments for and against claims underneath user-submitted theses or questions. The deliberative discourse platform is designed to present hundreds of supporting or opposing arguments in a dynamic argument tree and is streamlined for rational civil debate on topics such as philosophical questions, policy deliberations, entertainment, ethics, science questions, and unsolved problems or subjects of disagreement in general. Argument-boxes are structured into hierarchical branches where the root is the main thesis (or theses) of the debate, enabling deliberation and navigable debates between opposing perspectives. A debate is divided into Pro (supporting) and Con (refuting or devaluing) columns where registered users can add arguments and rate the impact on the weight or validity of the parent claim. The arguments are sorted according to the rating average. Its argument tree structure enables detailed scrutiny of claims at all levels of the tree and allows users to for example quickly understand why a decision was made or which of the aggregated arguments swayed it this way. Newcomers can join a debate at any time and look back at the structured discussion history, and then weigh in at the right place with their new argument or their comment on a specific argument. The design presets a structure on debates "that allows participants to easily see, process, and ultimately assess the many facets of competing claims". The word Kialo is Esperanto for "reason". The platform is the world's largest argument mapping and structured debate site. == Overview == Users can comment on every Pro or Con, for example for requesting sources or expansions. Recent activities of a debate are shown in a panel on the right side of the respective debate. Debates can be found through the search or on the Explore page through their descriptions and topic-tags. Mere comments that do not make a constructive point (a self-contained argument backed by reasoning) are not allowed and are picked up by other users and moderators. "Civil language and sensible observations from opposing perspectives" can be seen also in debates about controversial topics. The site by-design incentivizes fair, rigorous, open-minded dialogue. Contributors making claims often also write counterpoints to their own contribution. Claims need to be shorter than 500 characters and can link to external sources. Debate trees can also start off with multiple theses – such as different policy options or hypotheses. Claims can link to related debates or include segments of them. In the discussion tab of each claim, users can make edit proposals (e.g. for accuracy, improving sources, or changing scope), decide if the argument should be moved or copied to another branch, call for archiving a claim, and ask for extra evidence or clarification. Debates can grow large and complex for which a sunburst diagram visualization of the topology of the debate and the search functionality can be useful. Each debate also has a chat-box. In cases where e.g. a "Con" is a point against multiple in the "Pros", users – through moderators – can link these arguments at the respective places to avoid duplication of content and allowing a clean chain for people to understand which points are arguments against each other. Contributions of users are tracked, enabling a board of thought-leaders for every debate. Other gamification elements include a feature to thank users for their contributions. The "Perspectives" feature allows users to see 'Impact' ratings of supporters and opposers of a thesis as well as of the debate's moderators and individual contributors. It thereby enables participants to see a debate from other participants' perspectives and to sort by them. In Kialo Edu, this feature lets teachers view votes for a whole class, individuals, or supporters/opponents of a specific thesis. Users in both versions of Kialo can vote on the overall debate topic as well as on individual claims to express their perspectives or conclusions, with the rationale (i.e. the main causal arguments) why they voted on the veracity of the thesis as they did not being captured. Voting can be done by any registered user while navigating through any debate that has voting enabled or via using the Guided Voting wizard user interface that automatically walks through branches. As of 2021, Kialo doesn't have a mobile app. == Contents == A 2018 report stated the collaborative argument platform hosts more than 10,000 debates in various languages. It also hosts private debates. The website claims that it has over 18,000 public debates as of July 2023, as well as over 1 million votes and over 720,000 claims. Debates can be found via the site's internal search and up to six tags per debate. Preprint studies have scraped public debates on over 1.4K issues with over 130K statements as of October 2019 and 1628 debates, related to over 1120 categories, with 124,312 unique claims as of June 26, 2020. == Kialo Inc. == The site is run by Kialo Inc. It was founded by German-born entrepreneur and London School of Economics and Political Science graduate Errikos Pitsos in August 2017 and is based in Brooklyn and Berlin. According to a 2018 report, the site does not show advertisements and does not sell user's data. The for-profit company was founded in 2011, Pitsos began to develop the concept in 2012 and described various specifics of the system in 2014. In 2018, he stated that they intend to make money by selling the platform to companies as a deliberation and decision-making tool. The site is free to use for the public and in education. According to the site, as of 2023 Kialo.com is a non-revenue generating site with no ads and no reselling of user data. == Applications and adoption == === Adopted applications === Applications of its content or the platform in society include: Teachers and professors, especially in high schools – including the universities Harvard and Princeton, are using Kialo for class discussions and exercises in critical thinking and reasoning, as consolidating understanding of materials covered in recent classes, more useful and engaging learning experiences, for remote/e-learning, for clearing up misconceptions, teaching logical fallacies and rational argumentation, for academic dialogue, teaching media literacy, and for teaching to sufficiently reflect or research before posting online. Like for debaters of the main site, access for schools and universities is free. Kialo Edu is the custom version of Kialo specifically designed for classroom use where debates are private and locked to invited students. Kialo allows teachers to provide feedback to students on their ideas, argument structure, and research quality while it is left to other students to rate the impacts of their peers' arguments. Students can be allowed to contribute anonymously which may be useful for controversial issues as well as for safeguarding privacy in education. Students are or can be encouraged to back up their claims with evidence which can foster digital literacy and research skills. Students and teachers can use it to arrange their thoughts when structuring an essay or project. The site's name was decided on internally using the software. === Prototypical and theoretical applications === Potential, theoretical, prototypical or little-used applications include: Education Improving critical thinking skills of society at large as well as facilitating deep or efficient thinking and deepening research and debates where e.g. discussions are less shallow and the well-known or many arguments have already been made and in many cases aren't unreasonably over- or underrated. Pitsos claimed that "we're training students to be very good test-takers instead of critical thinkers", suggesting teaching people to think things through may be more important or neglected compared to essay writing skills. Many young people and adults are "submerged into a sea of dispersed information", "[b]rowsing and engaging in superficial thinking activities". Kialo could counteract this issue and help people develop good sane reasoning. Academia, R&D and policy Three scholars from three prestigious U.S. universities outlined possible benefits in this domain, including applications beyond higher education such as for academic communication. They suggest the debate platform could be used for structuring the communication of open peer-review by helping those giving feedback to "hone in on[sic] core arguments and pieces of evidence in an even more direct way" than annotated commenting. It could be used to evaluate extracted argument structures and sequences from raw texts, as in a Semantic Web for arguments. Such "argument mining", to which Kialo is the lar

    Read more →
  • Big Mechanism

    Big Mechanism

    Big Mechanism is a $45 million DARPA research program, begun in 2014, aimed at developing software that will read cancer research papers, integrate them into a cancer model and frame new hypotheses by the end of 2017 through the automated collection of big data and integrating across various disciplines such as knowledge-based NLP, curation and ontology, systems and mathematical biology by reading research abstracts and papers to extract pieces of causal mechanisms. == Ras gene == The program focuses on mutations in the Ras gene family, which underlie some one-third of human cancers. Currently, a rough road map shows interaction sequences among proteins affecting cell replication and death. However, the causal relations are poorly understood. == Plan == The program is to occur in three stages. The first is to read literature and convert it into formal representations. Second is to integrate the knowledge into computational models. Third is to produce experimentally testable explanations and predictions. Research teams are developing four separate systems targeting all three tasks. In February 2015, an evaluation meeting reviewed progress on the first stage. Multiple tasks were considered. One was extraction of experimental procedure details and evaluating statements such as "we demonstrate" and "we suggest." Another worked to map sentence meaning and relationships. The best machine-reading system extracted 40% of relevant information from a small corpus and correctly determined how each passage related to the model. The second stage is to become active in summer 2015, when members attempt to produce a single reference model. The third stage is the most challenging, because the artificial intelligence community has had limited success at developing hypothesis generators. Molecular biology may be more amenable, because most domain knowledge is technical and available in written form.

    Read more →
  • Catie Cuan

    Catie Cuan

    Catie Cuan is an artist, entrepeuneur, and innovator in the field of robotic art and human-robot interaction, where she specializes in choreorobotics, an emerging field at the intersection of choreographic dance and robotics. Catie Cuan is currently one of the academic researchers pioneering the field of choreorobotics and currently holds a post-doctoral fellowship at Stanford University. == Career == Catie Cuan earned a bachelor's degree from the University of California, Berkeley. She graduated with a Ph.D. from the Department of Mechanical Engineering at Stanford University, focusing in robotics. Her most cited publication is about how to improve robotic expressive systems using tools from dance theory, such as the Laban/Bartenieff Movement Analysis. In her most recent research projects, she explores a predictive model of imitation learning for robots moving around humans, a project that advances the field of social robotics. Cuan credits her work in robotics to the experience with her father when he had a stroke and was surrounded by many medical machines, which made her think about how people might feel empowered and hopeful rather than afraid. As a ballet dancer and choreographer, she has performed with the Metropolitan Opera Ballet and the Lyric Opera of Chicago. In 2020, she was the dancer and choreographer of the show Output, which was part of a collaboration with ThoughtWorks Arts and the Pratt Institute. In the production, she danced with an ABB IRB 6700 industrial robot. In 2022, she was named as an IF/THEN ambassador for the American Association for the Advancement of Science. The same year, she was appointed Futurist-in-Residence at the Smithsonian Arts and Industries Building, where she performed at the closing ceremonies of the FUTURES exhibit on July 6, 2022. Cuan has also contributed to product designs, working with IDEO and Dutch interior design firm moooi on their Piro project, which launched a dancing scent diffuser robot during Milan Design Week in June 2022. She is a TED speaker with talks about how to teach robots to dance, and what is coming up for dancing robots in the AI era.

    Read more →
  • Evolutionary computation

    Evolutionary computation

    Evolutionary computation (EC) from computer science is a family of algorithms for global optimization inspired by biological evolution, and a subfield of computational intelligence and soft computing studying these algorithms. In technical terms, they are a family of population-based trial and error problem solvers with a metaheuristic or stochastic optimization character. In evolutionary computation, an initial set of candidate solutions is generated and iteratively updated. Each new generation is produced by stochastically removing less desired solutions, and introducing small random changes as well as, depending on the method, mixing parental information. In biological terminology, a population of solutions is subjected to natural selection (or artificial selection), mutation and possibly recombination. These biological functions serve as role models for the genetic operators - mutation, crossover, and selection - used in the EC procedures. As a result, the population will gradually evolve to increase in fitness, in this case the chosen fitness function of the algorithm. Evolutionary computation techniques can produce highly optimized solutions in a wide range of problem settings, making them popular in computer science. Many variants and extensions exist, suited to more specific families of problems and data structures. Evolutionary computation is also sometimes used in evolutionary biology as an in silico experimental procedure to study common aspects of general evolutionary processes. == History == The concept of mimicking evolutionary processes to solve problems originates before the advent of computers, such as when Alan Turing proposed a method of genetic search in 1948 . Turing's B-type u-machines resemble primitive neural networks, and connections between neurons were learnt via a sort of genetic algorithm. His P-type u-machines resemble a method for reinforcement learning, where pleasure and pain signals direct the machine to learn certain behaviors. However, Turing's paper went unpublished until 1968, and he died in 1954, so this early work had little to no effect on the field of evolutionary computation that was to develop. Evolutionary computing as a field began in earnest in the 1950s and 1960s. There were several independent attempts to use the process of evolution in computing at this time, which developed separately for roughly 15 years. Three branches emerged in different places to attain this goal: evolution strategies, evolutionary programming, and genetic algorithms. A fourth branch, genetic programming, eventually emerged in the early 1990s. These approaches differ in the method of selection, the permitted mutations, and the representation of genetic data. By the 1990s, the distinctions between the historic branches had begun to blur, and the term 'evolutionary computing' was coined in 1991 to denote a field that exists over all four paradigms. In 1962, Lawrence J. Fogel initiated the research of Evolutionary Programming in the United States, which was considered an artificial intelligence endeavor. In this system, finite state machines are used to solve a prediction problem: these machines would be mutated (adding or deleting states, or changing the state transition rules), and the best of these mutated machines would be evolved further in future generations. The final finite state machine may be used to generate predictions when needed. The evolutionary programming method was successfully applied to prediction problems, system identification, and automatic control. It was eventually extended to handle time series data and to model the evolution of gaming strategies. In 1964, Ingo Rechenberg and Hans-Paul Schwefel introduce the paradigm of evolution strategies in Germany. Since traditional gradient descent techniques produce results that may get stuck in local minima, Rechenberg and Schwefel proposed that random mutations (applied to all parameters of some solution vector) may be used to escape these minima. Child solutions were generated from parent solutions, and the more successful of the two was kept for future generations. This technique was first used by the two to successfully solve optimization problems in fluid dynamics. Initially, this optimization technique was performed without computers, instead relying on dice to determine random mutations. By 1965, the calculations were performed wholly by machine. John Henry Holland introduced genetic algorithms in the 1960s, and it was further developed at the University of Michigan in the 1970s. While the other approaches were focused on solving problems, Holland primarily aimed to use genetic algorithms to study adaptation and determine how it may be simulated. Populations of chromosomes, represented as bit strings, were transformed by an artificial selection process, selecting for specific 'allele' bits in the bit string. Among other mutation methods, interactions between chromosomes were used to simulate the recombination of DNA between different organisms. While previous methods only tracked a single optimal organism at a time (having children compete with parents), Holland's genetic algorithms tracked large populations (having many organisms compete each generation). By the 1990s, a new approach to evolutionary computation that came to be called genetic programming emerged, advocated for by John Koza among others. In this class of algorithms, the subject of evolution was itself a program written in a high-level programming language (there had been some previous attempts as early as 1958 to use machine code, but they met with little success). For Koza, the programs were Lisp S-expressions, which can be thought of as trees of sub-expressions. This representation permits programs to swap subtrees, representing a sort of genetic mixing. Programs are scored based on how well they complete a certain task, and the score is used for artificial selection. Sequence induction, pattern recognition, and planning were all successful applications of the genetic programming paradigm. Many other figures played a role in the history of evolutionary computing, although their work did not always fit into one of the major historical branches of the field. The earliest computational simulations of evolution using evolutionary algorithms and artificial life techniques were performed by Nils Aall Barricelli in 1953, with first results published in 1954. Another pioneer in the 1950s was Alex Fraser, who published a series of papers on simulation of artificial selection. As academic interest grew, dramatic increases in the power of computers allowed practical applications, including the automatic evolution of computer programs. Evolutionary algorithms are now used to solve multi-dimensional problems more efficiently than software produced by human designers, and also to optimize the design of systems. == Techniques == Evolutionary computing techniques mostly involve metaheuristic optimization algorithms. Broadly speaking, the field includes: Agent-based modeling Ant colony optimization Particle swarm optimization Swarm intelligence Artificial immune systems Artificial life Digital organism Cultural algorithms Differential evolution Dual-phase evolution Estimation of distribution algorithm Evolutionary algorithm Genetic algorithm Evolutionary programming Genetic programming Gene expression programming Grammatical evolution Evolution strategy Learnable evolution model Learning classifier system Memetic algorithms Neuroevolution Self-organization such as self-organizing maps, competitive learning Over recent years many dubious algorithms have been proposed, that are often just copies of existing algorithms (frequently Particle Swarm Optimization), where only the metaphor changed, but the algorithm itself is not new at all. A thorough catalogue with many of these dubious algorithms has been published in the Evolutionary Computation Bestiary. It is also important to note that many of these dubiously 'novel' algorithms have poor experimental validation. == Evolutionary algorithms == Evolutionary algorithms form a subset of evolutionary computation in that they generally only involve techniques implementing mechanisms inspired by biological evolution such as reproduction, mutation, recombination and natural selection. Candidate solutions to the optimization problem play the role of individuals in a population, and the cost function determines the environment within which the solutions "live" (see also fitness function). Evolution of the population then takes place after the repeated application of the above operators. In this process, there are two main forces that form the basis of evolutionary systems: Recombination (e.g. crossover) and mutation create the necessary diversity and thereby facilitate novelty, while selection acts as a force increasing quality. Many aspects of such an evolutionary process are stochastic. Changed pieces of information due to recombination and mutati

    Read more →
  • Whisper (speech recognition system)

    Whisper (speech recognition system)

    Whisper is a machine learning model for speech recognition and transcription, created by OpenAI and first released as open-source software in September 2022. It is capable of transcribing speech in English and multiple other languages, and can translate several non-English languages into English. Whisper is a weakly-supervised deep learning acoustic model, made using an encoder-decoder transformer architecture. OpenAI claims that the combination of different training data and post-training filtering used in its development has led to improved recognition of accents, background noise, and jargon compared to previous approaches. While the model does not outperform larger, more specialized models and still experiences AI hallucination, it has been showed to be useful for general sound recognition and has many applications across different industries. == Background == Speech recognition has had a long history in research; the first approaches made use of statistical methods, such as dynamic time warping, and later hidden Markov models. At around the 2010s, deep neural network approaches became more common for speech recognition models, which were enabled by the availability of large datasets ("big data") and increased computational performance. Early approaches to deep learning in speech recognition included convolutional neural networks, which were limited due to their inability to capture sequential data, which later led to developments of Seq2seq approaches, which include recurrent neural networks, which made use of long short-term memory. Transformers, introduced in 2017 by Google, displaced many prior state-of-the-art approaches across a wide range in machine learning, and started becoming the core neural architecture in fields such as language modeling and computer vision. Weakly-supervised approaches to training acoustic models were recognized in the early 2020s as promising for speech recognition approaches using deep neural networks. According to a NYT report, in 2021 OpenAI believed they exhausted sources of higher-quality data to train their large language models and decided to complement scraped web text with transcriptions of YouTube videos and podcasts, and developed Whisper to solve this task. Whisper Large V2 was released on December 8, 2022, followed by Whisper Large V3 being released in November 2023, during the OpenAI Dev Day. In March 2025, OpenAI released new transcription models based on GPT-4o and GPT-4o mini, both of which have lower error rates than Whisper. == Architecture == The Whisper architecture is based on an encoder-decoder transformer. Input audio is resampled to 16,000 Hertz (Hz) and converted to an 80-channel Log-magnitude Mel spectrogram using 25 ms windows with a 10 ms stride. The spectrogram is then normalized to a [-1, 1] range with near-zero mean. The encoder takes this Mel spectrogram as input and processes it. It first passes through two convolutional layers. Sinusoidal positional embeddings are added. It is then processed by a series of Transformer encoder blocks (with pre-activation residual connections). The encoder's output is layer normalized. The decoder is a standard transformer decoder. It has the same width and Transformer blocks as the encoder. It uses learned positional embeddings and tied input-output token representations (using the same weight matrix for both the input and output embeddings). It uses a byte-pair encoding tokenizer, of the same kind as used in GPT-2. English-only models use the GPT-2 vocabulary, while multilingual models employ a re-trained multilingual vocabulary with the same number of words. Special tokens are used to allow the decoder to perform multiple tasks: Tokens that denote language (one unique token per language). Tokens that specify task (<|transcribe|> or <|translate|>). Tokens that specify if no timestamps are present (<|notimestamps|>). If the token is not present, then the decoder predicts timestamps relative to the segment, and quantized to 20 ms intervals. <|nospeech|> for voice activity detection. <|startoftranscript|>, and <|endoftranscript|> . Any text that appears before <|startoftranscript|> is not generated by the decoder, but given to the decoder as context. Loss is only computed over non-contextual parts of the sequence, i.e. tokens between these two special tokens. == Training data == The training dataset consists of 680,000 hours of labeled audio-transcript pairs sourced from the internet using semi-supervised learning. This includes 117,000 hours in 96 non-English languages and 125,000 hours of X→English translation data, where X stands for any non-English language. Preprocessing involved standardization of transcripts, filtering to remove machine-generated transcripts using heuristics (e.g., punctuation, capitalization), language identification and matching with transcripts, fuzzy deduplication, and deduplication with evaluation datasets to avoid data contamination. Speechless segments were also included to allow voice activity detection training. For the files still remaining after the filtering process, audio files were then broken into 30-second segments paired with the subset of the transcript that occurs within that time. If this predicted spoken language differed from the language of the text transcript associated with the audio, that audio-transcript pair was not used for training the speech recognition models, but instead for training translation. The model was trained using the AdamW optimizer with gradient norm clipping and a linear learning rate decay with warmup, with batch size 256 segments. Training proceeded for 1 million updates (approximately 2-3 epochs). No data augmentation or regularization, except for the Large V2 model, which used SpecAugment, Stochastic Depth, and BPE Dropout. The training used data parallelism with float16, dynamic loss scaling, and activation checkpointing. === Post-training filtering === After training the first model, researchers ran it on different subsets of the training data, each representing a distinct source. Data sources were ranked by a combination of their error rate and size. Manual inspection of the top-ranked sources (high error, large size) helped determine if the source was low quality (e.g., partial transcriptions, inaccurate alignment). After training, it was fine-tuned to suppress the prediction of speaker names and low-quality sources were then removed. == Capacity == While Whisper does not outperform models which specialize in the LibriSpeech dataset, when tested across many datasets, it is more robust and makes 55.2% fewer errors than other models. Whisper has a differing error rate with respect to transcribing different languages, with a higher word error rate in languages not well-represented in the training data. The authors found that multi-task learning improved overall performance compared to models specialized to one task. They conjectured that the best Whisper model trained is still underfitting the dataset, and larger models and longer training can result in better models. Third-party evaluations have found varying levels of AI hallucination. A study of transcripts of public meetings found hallucinations in eight out of every 10 transcripts, while an engineer discovered hallucinations in "about half" of 100 hours of transcriptions and a developer identified them in "nearly every one" of 26,000 transcripts. A study of 13,140 short audio segments (averaging 10 seconds) found 187 hallucinations (1.4%), 38% of which generated text that could be harmful because it inserted false references to things like race, non-existent medications, or violent events that were not in the audio. == Applications == The model has been used as the base for many applications, such as a unified model for speech recognition and more general sound recognition. Whisper has also been integrated into the workflow of biomedical research. In 2025, a study on Alzheimer's disease detection used the model to transcribe spontaneous speech recordings. The transcripts that were generated by the model were combined with LLM vector embeddings and traditional classifiers to help classify the patients' health. Another application is when OVALYTICS incorporated Whisper to transcribe YouTube videos and automate content moderation systems, which improved its detection of offensive content. The model has also been used in academic libraries and cultral heritage institutions to generate transcripts and captions for their digitized audiovisual collections. In a 2025 case study, Emory University Libraries found that Whisper reduced the labor used in transcription by around 30-35%, shifting work from text creation to text correction. However, human review is still necessary to make sure accuracy, formatting, and accessibility are all standard.

    Read more →
  • Akoma Ntoso

    Akoma Ntoso

    Akoma Ntoso (Architecture for Knowledge-Oriented Management of African Normative Texts using Open Standards and Ontologies, AKN) is an international technical standard for representing legal documents (executive, legislative, and judiciary) in a structured manner using a domain specific, legal XML vocabulary. The term akoma ntoso means "linked hearts" in the Akan language of West Africa. Akoma Ntoso is a legal document standard designed to serve as a basis for modern machine-readable and fully digital legislative and judicial processes. This is achieved by providing a coherent syntax and well-defined semantics to represent legal documents in a digital format. It is designed to be suitable as a common exchange format in all parliamentary, legal and judicial systems around the world. Taking advantage of the shared heritage present in all legal systems, Akoma Ntoso has been developed to have ample flexibility to respond to all the differences in texts, languages, and legal practices. Aiming to expand on certain common practices, the standard therefore has a broad scope. It includes a common extensible model for data (the document content) and metadata (such as bibliographic information and annotations). Specifically, as a common legal document standard for the interchange of legal documents it is designed to be highly flexible in its support of documents and functionalities, maintaining a large set of both structural and semantic building blocks (over 500 entities in version 3.0) for representing this wide variety of document types of virtually all legal traditions. It is extensible in order to allow for modifications to address the individual criteria of organizations or unique aspects of various legal practices and languages without sacrificing interoperability with other systems. Akoma Ntoso is as such part of a wider approach to developing open, non-proprietary technical standards for structuring legal documents and information under the name of Legal XML, which also includes formats and standards for, e.g., eContracts, eNotarization, electronic court filings, the technical representation of legal norms and rules (LegalRuleML) or technical standards for the interfaces of, e.g., litigant portal exchange platforms. Akoma Ntoso allows machine-driven processes to operate on the syntactic and semantic components of digital parliamentary, judicial and legislative documents, thus facilitating the development of high-quality information resources. It can substantially enhance the performance, accountability, quality and openness of parliamentary and legislative operations based on best practices and guidance through machine-assisted drafting and machine-assisted (legal) analysis. Embedded in the environment of the semantic web, it forms the basis for a heterogenous yet interoperable ecosystem, with which these tools can operate and communicate, as well as for future applications and use cases based on digital law or rule representation. == Definition == The Akoma Ntoso standard defines a set of machine readable electronic representations in XML format of the building blocks of parliamentary, legislative and judiciary documents. As official self-description, the standard (...) defines a set of simple, technology-neutral electronic representations of parliamentary, legislative and judiciary documents for e-services in a worldwide context and provides an enabling framework for the effective exchange of "machine readable" parliamentary, legislative and judiciary documents such as legislation, debate record, minutes, judgements, etc. Providing access to primary legal materials, parliamentary works and judiciaries documents is not just a matter of giving physical or on-line access to them. "Open access" requires the information to be described and classified in a uniform and organized way so that content is structured into meaningful elements that can be read and understood by software applications, so that the content is made "machine readable" and more sophisticated applications than on-screen display are made possible. The standard is composed of: an XML vocabulary that defines the mapping between the structure of legal documents and their equivalent in XML; specifications of an XML schema that defines the structure of legal documents in XML. They provide rich possibilities of description for several types of parliamentary, legislative and judiciary document, such as bills, acts and parliamentary records, judgments, or gazettes; a recommended naming convention for providing unique identifiers to legal sources based on FRBR model; a MIME type definition. == History and adoption == Akoma Ntoso started as an UNDESA project in 2004 within the initiative "Strengthening Parliaments' Information Systems in Africa". Its core vocabulary was created mostly by Monica Palmirani and Fabio Vitali, two professors from the Centre for Research in the History, Philosophy, and Sociology of Law and in Computer Science and Law (CIRSFID) of the University of Bologna. A first legislative text editor supporting Akoma Ntoso was developed in 2007 on the base of OpenOffice. In 2010 European Parliament developed an open source web-based application called AT4AM based on Akoma Ntoso for facilitating the production and the management of legislative amendments. Thanks to this project, the application of Akoma Ntoso could be extended to new type of documents (e.g. legislative proposal, transcript) and to other scenarios (e.g., multilingual translation process). Akoma Ntoso also was explicitly designed to be compliant with CEN Metalex, one of the other popular legal standards, which is used in the legislation.gov.uk. In 2012, the Akoma Ntoso specifications became the main working base for the activities of the LegalDocML Technical Committee within the LegalXML member section of OASIS. The "United States Legislative Markup" (USLM) schema for the United States Code (the US codified laws), developed in 2013, and the LexML Brasil XML schema for Brazilian legislative and judiciary documents, developed before, in 2008, were both designed to be consistent with Akoma Ntoso. The United States Library of Congress created the Markup of US Legislation in Akoma Ntoso challenge in July 2013 to create representations of selected US bills using the most recent Akoma Ntoso standard within a couple months for a $5000 prize, and the Legislative XML Data Mapping challenge in September 2013 to produce a data map for US bill XML and UK bill XML to the most recent Akoma Ntoso schema within a couple months for a $10000 prize. The National Archives of UK converted all the legislation in AKN in 2014. The availability of bulk legislation "moved the UK's ranking from fourth to first, in the 2014 Global Open Data Index, for legislation". The Senate of Italian Republic provides, since July 2016, all the bills in Akoma Ntoso as bulk in open data repository. The German Federal Ministry of the Interior started the project Elektronische Gesetzgebung ("Electronic Legislation") in 2015/2016 and published Version 1.0 of the German application profile "LegalDocML.de" in March 2020. The projects aim is to digitalize the entire legislative lifecycle from drafting to publication. Germany decided to adopt a model-driven development approach to creating and providing a subschema-based application profile in order to ensure interoperability among organizationally independent actors, each with their respective IT landscapes and tools. In this initial version LegalDocML.de covers draft bills in the form of laws, regulations and general administrative directives. As part of an ongoing development process, the standard could incrementally be expanded in future stages to include all relevant document types of parliamentary, legislative and promulgation processes and tools. The High-Level Committee on Management (HLCM), part of the United Nations System Chief Executives Board for Coordination, set up a Working Group on Document Standards that approved in April 2017 to adopt Akoma Ntoso as standard for modeling its documentation. Akoma Ntoso in its version 1.0 is finally adopted as OASIS standard in the frame of LegalDocML in August 2018.

    Read more →
  • Structural synthesis of programs

    Structural synthesis of programs

    Structural synthesis of programs (SSP) is a special form of (automatic) program synthesis that is based on propositional calculus. More precisely, it uses intuitionistic logic for describing the structure of a program in such a detail that the program can be automatically composed from pieces like subroutines or even computer commands. It is assumed that these pieces have been implemented correctly, hence no correctness verification of these pieces is needed. SSP is well suited for automatic composition of services for service-oriented architectures and for synthesis of large simulation programs. == History == Automatic program synthesis began in the artificial intelligence field, with software intended for automatic problem solving. The first program synthesizer was developed by Cordell Green in 1969. At about the same time, mathematicians including R. Constable, Z. Manna, and R. Waldinger explained the possible use of formal logic for automatic program synthesis. Practically applicable program synthesizers appeared considerably later. The idea of structural synthesis of programs was introduced at a conference on algorithms in modern mathematics and computer science organized by Andrey Ershov and Donald Knuth in 1979. The idea originated from G. Pólya’s well-known book on problem solving. The method for devising a plan for solving a problem in SSP was presented as a formal system. The inference rules of the system were restructured and justified in logic by G. Mints and E. Tyugu in 1982. A programming tool PRIZ that uses SSP was developed in the 1980s. A recent Integrated development environment that supports SSP is CoCoViLa — a model-based software development platform for implementing domain specific languages and developing large Java programs. == The logic of SSP == Structural synthesis of programs is a method for composing programs from already implemented components (e.g. from computer commands or software object methods) that can be considered as functions. A specification for synthesis is given in intuitionistic propositional logic by writing axioms about the applicability of functions. An axiom about the applicability of a function f is a logical implication X1 ∧ X2 ∧ ... ∧ Xm → Y1 ∧ Y2 ... Yn, where X1, X2, ... Xm are preconditions and Y1, Y2, ... Yn are postconditions of the application of the function f. In intuitionistic logic, the function f is called a realization of this formula. A precondition can be a proposition stating that input data exists, e.g. Xi may have the meaning “variable xi has received a value”, but it may denote also some other condition, e.g. that resources needed for using the function f are available, etc. A precondition may also be an implication of the same form as the axiom given above; then it is called a subtask. A subtask denotes a function that must be available as an input when the function f is applied. This function itself must be synthesized in the process of SSP. In this case, realization of the axiom is a higher order function, i.e., a function that uses another function as an input. For instance, the formula (state → nextState) ∧ initialState → result can specify a higher order function with two inputs and an output result. The first input is a function that has to be synthesized for computing nextState from state, and the second input is initialState. Higher order functions give generality to the SSP – any control structure needed in a synthesized program can be preprogrammed and used then automatically with a respective specification. In particular, the last axiom presented here is a specification of a complex program – a simulation engine for simulating dynamic systems on models where nextState can be computed from state of the system.

    Read more →
  • Legal expert system

    Legal expert system

    A legal expert system is a domain-specific expert system that uses artificial intelligence to emulate the decision-making abilities of a human expert in the field of law. Legal expert systems employ a rule base or knowledge base and an inference engine to accumulate, reference and produce expert knowledge on specific subjects within the legal domain. == Purpose == It has been suggested that legal expert systems could help to manage the rapid expansion of legal information and decisions that began to intensify in the late 1960s. Many of the first legal expert systems were created in the 1970s and 1980s. Lawyers were originally identified as primary target users of legal expert systems. Potential motivations for this work included: quicker delivery of legal advice; reduced time spent in repetitive, labour-intensive legal tasks; development of knowledge management techniques that were not dependent on staff; reduced overhead and labour costs and higher profitability for law firms; and reduced fees for clients. Some early development work was oriented toward the creation of automated judges. One of the first use cases was the encoding of the British Nationality Act at Imperial College carried out under the supervision of Marek Sergot and Robert Kowalski. Lance Elliot wrote: "The British Nationality Act was passed in 1981 and shortly thereafter was used as a means of showcasing the efficacy of using Artificial Intelligence (AI) techniques and technologies, doing so to explore how the at-the-time newly enacted statutory law might be encoded into a computerized logic-based formalization." The authors’ seminal article, "The British Nationality Act as a Logic Program," published in 1986 in the Communications of the ACM journal, is one of the first and best-known works in computational law, and one of the most widely cited papers in the field. In 2021, the Inaugural CodeX Prize was awarded to Robert Kowalski, Fariba Sadri, and Marek Sergot in acknowledgment of their groundbreaking work on the application of logic programming to the formalization and analysis of the British Nationality Act. Later work on legal expert systems has identified potential benefits to non-lawyers as a means to increase access to legal knowledge. Legal expert systems can also support administrative processes, facilitate decision-making processes, automate rule-based analyses, and exchange information directly with citizen-users. == Types == === Architectural variations === Rule-based expert systems rely on a model of deductive reasoning that utilizes "If A, then B" rules. In a rule-based legal expert system, information is represented in the form of deductive rules within the knowledge base. In rule-based legal expert systems, logic programming has historically been applied to automate complex compliance paperwork. A notable early example designed for high-volume regulatory filings was the 1999 Intelligent Filing Manager (INTELLIFM), which utilized Prolog rules as its core inference engine to automate the generation, publishing, and population of structured forms via distributed COM interfaces. Case-based reasoning models, which store and manipulate examples or cases, hold the potential to emulate an analogical reasoning process thought to be well-suited for the legal domain. This model effectively draws on known experiences our outcomes for similar problems. A neural net relies on a computer model that mimics that structure of a human brain, and operates in a very similar way to the case-based reasoning model. This expert system model is capable of recognizing and classifying patterns within the realm of legal knowledge and dealing with imprecise inputs. Fuzzy logic models attempt to create 'fuzzy' concepts or objects that can then be converted into quantitative terms or rules that are indexed and retrieved by the system. In the legal domain, fuzzy logic can be used for rule-based and case-based reasoning models. === Theoretical variations === Some legal expert system architects have adopted a very practical approach, employing scientific modes of reasoning within a given set of rules or cases. Others have opted for a broader philosophical approach inspired by jurisprudential reasoning modes emanating from established legal theoreticians. === Functional variations === Some legal expert systems aim to arrive at a particular conclusion in law, while others are designed to predict a particular outcome. An example of a predictive system is one that predicts the outcome of judicial decisions, the value of a case, or the outcome of litigation. == Reception == Many forms of legal expert systems have become widely used and accepted by both the legal community and the users of legal services. == Challenges == === Domain-related problems === The inherent complexity of law as a discipline raises immediate challenges for legal expert system knowledge engineers. Legal matters often involve interrelated facts and issues, which further compound the complexity. Factual uncertainty may also arise when there are disputed versions of factual representations that must be input into an expert system to begin the reasoning process. === Computerized problem solving === The limitations of most computerized problem solving techniques inhibit the success of many expert systems in the legal domain. Expert systems typically rely on deductive reasoning models that have difficulty according degrees of weight to certain principles of law or importance to previously decided cases that may or may not influence a decision in an immediate case or context. === Representation of legal knowledge === Expert legal knowledge can be difficult to represent or formalize within the structure of an expert system. For knowledge engineers, challenges include: Open texture: Law is rarely applied in an exact way to specific facts, and exact outcomes are rarely a certainty. Statutes may be interpreted according to different linguistic interpretations, reliance on precedent cases or other contextual factors including a particular judge's conception of fairness. The balancing of reasons: Many arguments involve considerations or reasons that are not easily represented in a logical way. For instance, many constitutional legal issues are said to balance independently well-established considerations for state interests against individual rights. Such balancing may draw on extra-legal considerations that would be difficult to represent logically in an expert system. Indeterminacy of legal reasoning: In the adversarial arena of law, it is common to have two strong arguments on a single point. Determining the 'right' answer may depend on a majority vote among expert judges, as in the case of an appeal. === Time and cost effectiveness === Creating a functioning expert system requires significant investments in software architecture, subject matter expertise and knowledge engineering. Faced with these challenges, many system architects restrict the domain in terms of subject matter and jurisdiction. The consequence of this approach is the creation of narrowly focused and geographically restricted legal expert systems that are difficult to justify on a cost-benefit basis. Current applications of AI in the legal field utilize machines to review documents, particularly when a high level of completeness and confidence in the quality of document analysis is depended upon, such as in instances of litigation and where due diligence play a role. Among the numerically most quantifiable advantages of AI in the legal field are the time and money saving impact by freeing lawyers from having to spend inordinate amounts of their valuable time on routine tasks, aiding in setting free lawyers’ creative energy by reducing stress. This in turn increases the rate of case load reduction by accomplishing better results in less time, which unlocks potential additional revenue per unit of time spend on a case. The cost of setting up and maintaining AI systems in law is more than offset by the attained savings through increased efficacy; unbalanced cost can be assigned to clients. === Lack of correctness in results or decisions === Legal expert systems may lead non-expert users to incorrect or inaccurate results and decisions. This problem could be compounded by the fact that users may rely heavily on the correctness or trustworthiness of results or decisions generated by these systems. == Examples == ASHSD-II is a hybrid legal expert system that blends rule-based and case-based reasoning models in the area of matrimonial property disputes under English law. CHIRON is a hybrid legal expert system that blends rule-based and case-based reasoning models to support tax planning activities under United States tax law and codes. JUDGE is a rule-based legal expert system that deals with sentencing in the criminal legal domain for offences relating to murder, assault and manslaughter. Legislate is a knowledge graph powered contract management platform whi

    Read more →
  • Fuzzy finite element

    Fuzzy finite element

    The fuzzy finite element method combines the well-established finite element method with the concept of fuzzy numbers, the latter being a special case of a fuzzy set. The advantage of using fuzzy numbers instead of real numbers lies in the incorporation of uncertainty (on material properties, parameters, geometry, initial conditions, etc.) in the finite element analysis. One way to establish a fuzzy finite element (FE) analysis is to use existing FE software (in-house or commercial) as an inner-level module to compute a deterministic result, and to add an outer-level loop to handle the fuzziness (uncertainty). This outer-level loop comes down to solving an optimization problem. If the inner-level deterministic module produces monotonic behavior with respect to the input variables, then the outer-level optimization problem is greatly simplified, since in this case the extrema will be located at the vertices of the domain.

    Read more →