Kernel (image processing)

Kernel (image processing)

In image processing, a kernel, convolution matrix, or mask is a small matrix used for blurring, sharpening, embossing, edge detection, and more. This is accomplished by doing a convolution between the kernel and an image. Or more simply, when each pixel in the output image is a function of the nearby pixels (including itself) in the input image, the kernel is that function. == Details == The general expression of a convolution is g x , y = ω ∗ f x , y = ∑ i = − a a ∑ j = − b b ω i , j f x − i , y − j , {\displaystyle g_{x,y}=\omega f_{x,y}=\sum _{i=-a}^{a}{\sum _{j=-b}^{b}{\omega _{i,j}f_{x-i,y-j}}},} where g ( x , y ) {\displaystyle g(x,y)} is the filtered image, f ( x , y ) {\displaystyle f(x,y)} is the original image, ω {\displaystyle \omega } is the filter kernel. Every element of the filter kernel is considered by − a ≤ i ≤ a {\displaystyle -a\leq i\leq a} and − b ≤ j ≤ b {\displaystyle -b\leq j\leq b} . Depending on the element values, a kernel can cause a wide range of effects: The above are just a few examples of effects achievable by convolving kernels and images. === Origin === The origin is the position of the kernel which is above (conceptually) the current output pixel. This could be outside of the actual kernel, though usually it corresponds to one of the kernel elements. For a symmetric kernel, the origin is usually the center element. == Convolution == Convolution is the process of adding each element of the image to its local neighbors, weighted by the kernel. This is related to a form of mathematical convolution. The matrix operation being performed—convolution—is not traditional matrix multiplication, despite being similarly denoted by . For example, if we have two three-by-three matrices, the first a kernel, and the second an image piece, convolution is the process of flipping both the rows and columns of the kernel and multiplying locally similar entries and summing. The element at coordinates [2, 2] (that is, the central element) of the resulting image would be a weighted combination of all the entries of the image matrix, with weights given by the kernel: ( [ a b c d e f g h i ] ∗ [ 1 2 3 4 5 6 7 8 9 ] ) [ 2 , 2 ] = {\displaystyle \left({\begin{bmatrix}a&b&c\\d&e&f\\g&h&i\end{bmatrix}}{\begin{bmatrix}1&2&3\\4&5&6\\7&8&9\end{bmatrix}}\right)[2,2]=} ( i ⋅ 1 ) + ( h ⋅ 2 ) + ( g ⋅ 3 ) + ( f ⋅ 4 ) + ( e ⋅ 5 ) + ( d ⋅ 6 ) + ( c ⋅ 7 ) + ( b ⋅ 8 ) + ( a ⋅ 9 ) . {\displaystyle (i\cdot 1)+(h\cdot 2)+(g\cdot 3)+(f\cdot 4)+(e\cdot 5)+(d\cdot 6)+(c\cdot 7)+(b\cdot 8)+(a\cdot 9).} The other entries would be similarly weighted, where we position the center of the kernel on each of the boundary points of the image, and compute a weighted sum. The values of a given pixel in the output image are calculated by multiplying each kernel value by the corresponding input image pixel values. This can be described algorithmically with the following pseudo-code: for each image row in input image: for each pixel in image row: set accumulator to zero for each kernel row in kernel: for each element in kernel row: if element position corresponding to pixel position then multiply element value corresponding to pixel value add result to accumulator endif set output image pixel to accumulator corresponding input image pixels are found relative to the kernel's origin. If the kernel is symmetric then place the center (origin) of the kernel on the current pixel. The kernel will overlap the neighboring pixels around the origin. Each kernel element should be multiplied with the pixel value it overlaps with and all of the obtained values should be summed. This resultant sum will be the new value for the current pixel currently overlapped with the center of the kernel. If the kernel is not symmetric, it has to be flipped both around its horizontal and vertical axis before calculating the convolution as above. The general form for matrix convolution is [ x 11 x 12 ⋯ x 1 n x 21 x 22 ⋯ x 2 n ⋮ ⋮ ⋱ ⋮ x m 1 x m 2 ⋯ x m n ] ∗ [ y 11 y 12 ⋯ y 1 n y 21 y 22 ⋯ y 2 n ⋮ ⋮ ⋱ ⋮ y m 1 y m 2 ⋯ y m n ] = ∑ i = 0 m − 1 ∑ j = 0 n − 1 x ( m − i ) ( n − j ) y ( 1 + i ) ( 1 + j ) {\displaystyle {\begin{bmatrix}x_{11}&x_{12}&\cdots &x_{1n}\\x_{21}&x_{22}&\cdots &x_{2n}\\\vdots &\vdots &\ddots &\vdots \\x_{m1}&x_{m2}&\cdots &x_{mn}\\\end{bmatrix}}{\begin{bmatrix}y_{11}&y_{12}&\cdots &y_{1n}\\y_{21}&y_{22}&\cdots &y_{2n}\\\vdots &\vdots &\ddots &\vdots \\y_{m1}&y_{m2}&\cdots &y_{mn}\\\end{bmatrix}}=\sum _{i=0}^{m-1}\sum _{j=0}^{n-1}x_{(m-i)(n-j)}y_{(1+i)(1+j)}} === Edge handling === Kernel convolution usually requires values from pixels outside of the image boundaries. There are a variety of methods for handling image edges. Extend The nearest border pixels are conceptually extended as far as necessary to provide values for the convolution. Corner pixels are extended in 90° wedges. Other edge pixels are extended in lines. Wrap The image is conceptually wrapped (or tiled) and values are taken from the opposite edge or corner. Mirror The image is conceptually mirrored at the edges. For example, attempting to read a pixel 3 units outside an edge reads one 3 units inside the edge instead. Crop / Avoid overlap Any pixel in the output image which would require values from beyond the edge is skipped. This method can result in the output image being slightly smaller, with the edges having been cropped. Move kernel so that values from outside of image is never required. Machine learning mainly uses this approach. Example: Kernel size 10x10, image size 32x32, result image is 23x23. Kernel Crop Any pixel in the kernel that extends past the input image isn't used and the normalizing is adjusted to compensate. Constant Use constant value for pixels outside of image. Usually black or sometimes gray is used. Generally this depends on application. === Normalization === Normalization is defined as the division of each element in the kernel by the sum of all kernel elements, so that the sum of the elements of a normalized kernel is unity. This will ensure the average pixel in the modified image is as bright as the average pixel in the original image. === Optimization === Fast convolution algorithms include: separable convolution ==== Separable convolution ==== 2D convolution with an M × N kernel requires M × N multiplications for each sample (pixel). If the kernel is separable, then the computation can be reduced to M + N multiplications. Using separable convolutions can significantly decrease the computation by doing 1D convolution twice instead of one 2D convolution. === Implementation === Here a concrete convolution implementation done with the GLSL shading language :

Educational robotics

Educational robotics teaches the design, analysis, application and operation of robots. Robots include articulated robots, mobile robots or autonomous vehicles. Educational robotics can be taught from elementary school to graduate programs. Robotics may also be used to motivate and facilitate the instruction other, often foundational, topics such as computer programming, artificial intelligence or engineering design. == Education and training == Robotics engineers design robots, maintain them, develop new applications for them, and conduct research to expand the potential of robotics. Robots have become a popular educational tool in some middle and high schools, as well as in numerous youth summer camps, raising interest in programming, artificial intelligence and robotics among students. First-year computer science courses at several universities now include programming of a robot in addition to traditional software engineering-based coursework. == Category of Educational robotics == The categories of educational robots seen as having more than one category. It can be alienated into different categories based on their physical design and coding method. Generally they are categorised as arm robots, wheeled mobile robots and humanoid robots. Tangibly, coded robots uses a physical means of coding instead of the screens coding. === Initiatives in schools === Leachim, was a robot teacher programmed with the class curricular, as well as certain biographical information on the 40 students whom it was programmed to teach. Leachim could synthesize human speech using Diphone synthesis. It was invented by Michael J. Freeman in 1974 and was tested in a fourth grade classroom in the Bronx, New York. === Post-secondary degree programs === From approximately 1960 through 2005, robotics education at post-secondary institutions took place through elective courses, thesis experiences and design projects offered as part of degree programs in traditional academic disciplines, such as mechanical engineering, electrical engineering, industrial engineering or computer science. Since 2005, more universities have begun granting degrees in robotics as a discipline in its own right, often under the name "Robotic Engineering". Based on a 2015 web-based survey of robotics educators, the degree programs and their estimates annual graduates are listed alphabetically below. Note that only official degree programs where the word "robotics" appears on the transcript or diploma are listed here; whereas degree programs in traditional disciplines with course concentrations or thesis topics related to robotics are deliberately omitted. === Certification === The Robotics Certification Standards Alliance (RCSA) is an international robotics certification authority that confers various industry- and educational-related robotics certifications. === Summer robotics camp === Several summer camp programs include robotics as part of their core curriculum. In addition, youth summer robotics programs are frequently offered by celebrated museums such as the American Museum of Natural History and The Tech Museum of Innovation in Silicon Valley, CA, just to name a few. There are of benefits that come from attending robotics camps. It teaches students how to use teamwork, resilience and motivation, and decision-making. Students learn teamwork because most camps involve exciting activities requiring teamwork. Resilience and motivation is expected because by completing the challenging programs, students feel talented and accomplished after they complete the program. Also students are given unique situations making them make decisions to further their situation. === Educational robotics in special education === Educational robotics can be a useful tool in early and special education. According to a journal on new perspectives in science education, educational robotics can help to develop abilities that promote autonomy and assist their integration into society. Social and personal skills can also be developed through educational robotics. Using Lego Mindstorms NXT, schoolteachers were able to work with middle school aged children in order to develop programs and improve the children's social and personal skills. Additionally, problem solving skills and creativity were utilized through the creation of artwork and scenery to house the robots. Other studies show the benefits of educational robotics in special education as promoting superior cognitive functions, including executive functions. This can lead to an increased ability in "problem solving, reasoning and planning in typically developing preschool children." Through eight weeks of weekly forty-five-minute group sessions using the Bee-Bot, an increase in interest, attention, and interaction between both peers and adults was found in the school and preschool-aged children with Down Syndrome. This study suggests that educational robotics in the classroom can also lead to an improvement in visuo-spatial memory and mental planning. Furthermore, executive functions seemed to be possible in one child during this study.

Partial-order planning

Partial-order planning is an approach to automated planning that maintains a partial ordering between actions and only commits ordering between actions when forced to, that is, ordering of actions is partial. Also this planning doesn't specify which action will come out first when two actions are processed. By contrast, total-order planning maintains a total ordering between all actions at every stage of planning. Given a problem in which some sequence of actions is needed to achieve a goal, a partial-order plan specifies all actions that must be taken, but specifies an ordering between actions only where needed. Consider the following situation: a person must travel from the start to the end of an obstacle course. The course is composed of a bridge, a see-saw, and a swing-set. The bridge must be traversed before the see-saw and swing-set are reachable. Once reachable, the see-saw and swing-set can be traversed in any order, after which the end is reachable. In a partial-order plan, ordering between these obstacles is specified only when needed. The bridge must be traversed first. Second, either the see-saw or swing-set can be traversed. Third, the remaining obstacle can be traversed. Then the end can be traversed. Partial-order planning relies upon the principle of least commitment for its efficiency. == Partial-order plan == A partial-order plan or partial plan is a plan which specifies all actions that must be taken, but only specifies the order between actions when needed. It is the result of a partial-order planner. A partial-order plan consists of four components: A set of actions (also known as operators). A partial order for the actions. It specifies the conditions about the order of some actions. A set of causal links. It specifies which actions meet which preconditions of other actions. Alternatively, a set of bindings between the variables in actions. A set of open preconditions. It specifies which preconditions are not fulfilled by any action in the partial-order plan. To keep the possible orders of the actions as open as possible, the set of order conditions and causal links must be as small as possible. A plan is a solution if the set of open preconditions is empty. A linearization of a partial order plan is a total order plan derived from the particular partial order plan; in other words, both order plans consist of the same actions, with the order in the linearization being a linear extension of the partial order in the original partial order plan. === Example === For example, a plan for baking a cake might start: go to the store get eggs; get flour; get milk pay for all goods go to the kitchen This is a partial plan because the order for finding eggs, flour and milk is not specified, the agent can wander around the store reactively accumulating all the items on its shopping list until the list is complete. == Partial-order planner == A partial-order planner is an algorithm or program which will construct a partial-order plan and search for a solution. The input is the problem description, consisting of descriptions of the initial state, the goal and possible actions. The problem can be interpreted as a search problem where the set of possible partial-order plans is the search space. The initial state would be the plan with the open preconditions equal to the goal conditions. The final state would be any plan with no open preconditions, i.e. a solution. The initial state is the starting conditions, and can be thought of as the preconditions to the task at hand. For a task of setting the table, the initial state could be a clear table. The goal is simply the final action that needs to be accomplished, for example setting the table. The operators of the algorithm are the actions by which the task is accomplished. For this example there may be two operators: lay (tablecloth), and place (glasses, plates, and silverware). === Plan space === The plan space of the algorithm is constrained between its start and finish. The algorithm starts, producing the initial state and finishes when all parts of the goal have been achieved. In the setting a table example, two types of actions exist that must be addressed: the put-out and lay operators. Four unsolved operators also exist: Action 1, lay-tablecloth, Action 2, Put-out (plates), Action 3, Put-out (silverware), and Action 4, Put-out (glasses). However, a threat arises if Action 2, 3, or 4 comes before Action 1. This threat is that the precondition to the start of the algorithm will be unsatisfied as the table will no longer be clear. Thus, constraints exist that must be added to the algorithm that force Actions 2, 3, and 4 to come after Action 1. Once these steps are completed, the algorithm will finish and the goal will have been completed. === Threats === As seen in the algorithm presented above, partial-order planning can encounter certain threats, meaning orderings that threaten to break connected actions, thus potentially destroying the entire plan. There are two ways to resolve threats: Promotion Demotion Promotion orders the possible threat after the connection it threatens. Demotion orders the possible threat before the connection it threatens. Partial-order planning algorithms are known for being both sound and complete, with sound being defined as the total ordering of the algorithm, and complete being defined as the capability to find a solution, given that a solution does in fact exist. == Partial-order vs. total-order planning == Partial-order planning is the opposite of total-order planning, in which actions are sequenced all at once and for the entirety of the task at hand. The question arises when one has two competing processes, which one is better? Anthony Barret and Daniel Weld have argued in their 1993 book, that partial-order planning is superior to total-order planning, as it is faster and thus more efficient. They tested this theory using Korf’s taxonomy of subgoal collections, in which they found that partial-order planning performs better because it produces more trivial serializability than total-order planning. Trivial serializability facilitates a planner’s ability to perform quickly when dealing with goals that contain subgoals. Planners perform more slowly when dealing with laboriously serializable or nonserializable subgoals. The determining factor that makes a subgoal trivially or laboriously serializable is the search space of different plans. They found that partial-order planning is more adept at finding the quickest path, and is therefore the more efficient of these two main types of planning. == The Sussman anomaly == Partial-order plans are known to easily and optimally solve the Sussman anomaly. Using this type of incremental planning system solves this problem quickly and efficiently. This was a result of partial-order planning that solidified its place as an efficient planning system. == Disadvantages to partial-order planning == One drawback of this type of planning system is that it requires a lot more computational power for each node. This higher per-node cost occurs because the algorithm for partial-order planning is more complex than others. This has important artificial intelligence implications. When coding a robot to do a certain task, the creator needs to take into account how much energy is needed. Though a partial-order plan may be quicker it may not be worth the energy cost for the robot. The creator must be aware of and weigh these two options to build an efficient robot.

Hyperion Data Center

The Richland Parish Data Center, nicknamed "Hyperion", is a planned artificial intelligence data center by Meta Platforms under-construction along Highway La. 183 in Richland Parish, Louisiana, just outside of Holly Ridge. It is one of a number of "titan clusters" being built in preparation for the emergence of AI superintelligence. Modern technological researchers disagree as to whether or not superintelligence will ever exist, though Meta CEO Mark Zuckerberg has expressed belief that its creation is inevitable. Current plans allot for the investment of $27 billion, as the structure is built from 2025 to 2030. == History == Meta was considering potential locations for their flagship data center in early 2024. Before being announced later in December, the plan was completely secret; meetings held between involved organisations and even government officials could only refer to it by the codename "Project Sucre" to protect it from potential corporate espionage. The data center was first announced on 04 December 2024, though its full scale was yet to be revealed. At first, Meta would not even claim responsibility for it, channelling all of its investments through the secret shell subsidiary Laidley LLC. We set out looking for a place where we could expand into gigawatts pretty quickly, and really get moving within that community on a large plot of land very quickly. We looked at finding very, very large contiguous plots of land that had access to the infrastructure that we need, the energy that we needed, and could move very, very quickly for us. The Louisiana-based Entergy Corporation, aiming for the facility to be built in its own backyard, negotiated a deal with the government of Louisiana to provide Meta with enormous tax breaks if they agreed to build Hyperion there. The Louisiana legislature responded by passing Act 730, which provides significant tax rebates on the purchase or lease of equipment for building and operating data centers. Meta found the arrangement acceptable, and bought a plot of land from the government. The government also had to further amend its laws to allow Meta to do this, as pre-existing policy forbade purchasing land directly from the government instead of hosting a public auction. The plot of land, originally called Franklin Farms, was purchased from the Franklin family in 2006 by the government, intending for it to be developed into an automotive manufacturing plant. Greater attention was brought to Hyperion it when Zuckerberg posted about the project on 14 July 2025 on Threads. The project subsequently caught media attention for its large size, as Zuckerberg's post portrayed the structure superimposed over Manhattan (pictured). The construction site spans 2,250 acres (9.1 km2) with a planned floor area of 4,000,000 square feet (371612 m2), making it the third largest building in the world by floor area upon completion. Meta initially reported the construction cost to be over $10 billion, but in October 2025, it announced a partnership with Blue Owl Capital providing for at least $27 billion. == Operation == The facility is expected to consume up to 5 gigawatts (GW) of computational power, more electricity than is currently used by the entire State of Louisiana. As part of their deal made with Meta, Entergy plans to be able to produce at least 3.8 GW of electricity for the operation. == Response to the project == Louisiana Governor Jeff Landry thanked Meta for their decision to build Hyperion in Louisiana, stating that it would "create opportunities for Louisiana workers to fill high-paying jobs of the future." and calling it "A New Chapter" for the state. The Louisiana Economic Development (LED) state agency further praised the project, citing Meta's estimate that it would create 1,500 jobs. Additionally, Richland Parish Supervisor Joey Evans stated that he was excited about the project. As part of their agreement with Meta, Energy announced their plan to increase electricity production state-wide. They say that this will result in the cost of energy reducing, though Entergy filings revealed in June 2025 that the cost of electricity would rise and be passed onto consumers. Meta also pledged to match all of Hyperion's power consumption with 100% environmentally friendly electricity production. So far, Entergy has begun building three gas-powered combined-cycle power plants and a substation in response to the project. Delta Community College announced in response to Hyperion's construction that it would expand its construction and trade programs. In January 2025, Business Facilities Magazine selected Hyperion for its annual Deal of the Year Platinum Award for 2024. Much of the initial backlash following Hyperion's announcement centered around the fast-tracked approval of the project by the state government, and scepticism around Meta's various claims (environmental friendliness, 100% renewable energy, local economic stimulation, price reductions). The Sierra Club criticised Meta for gentrifying the surrounding area, and was highly sceptical of their promise to keep it environmentally friendly. Environmental activist group Earthjustice attempted to have a subpoena of Meta approved to determine if they were compliant with environmental protection laws, though they were unsuccessful. Many residents of Holy Ridge have been critical of the construction, complaining about the increased construction vehicle traffic and intense gentrification. Another point of contention is Meta's continued reliance on out-of-state contractors in the facility's construction in spite of their previous commitment to "hire as many local folk as [we] possibly can." In spite of Entergy's continual denial that the facility's construction will not adversely affect the power grid, numerous electrical outages have been reported since construction began.

Linguistic value

In artificial intelligence, fuzzy logic operations research, and related fields, a linguistic value is a natural language term which is derived using quantitative or qualitative reasoning such as with probability and statistics or fuzzy sets and systems. Variables that take linguistic values are called linguistic variables. == Examples of linguistic variables and values == For example, "age" may be a linguistic variable if its values are not numerical, e.g. very young, quite young, not young, old, not very old etc. These values could be derived from the numeric values for age. As another example, if a shuttle heat shield is deemed of having a linguistic value of a "very low" percentage of damage in re-entry, based upon knowledge from experts in the field, that probability would be given a value of say, 5%. From there on out, if it were to be used in an equation, the variable of percentage of damage will be at 5% if it deemed very low percentage.

Concept drift

In predictive analytics, data science, machine learning and related fields, concept drift or drift is an evolution of data that invalidates the data model. It happens when the statistical properties of the target variable, which the model is trying to predict, change over time in unforeseen ways. This causes problems because the predictions become less accurate as time passes. Drift detection and drift adaptation are of paramount importance in the fields that involve dynamically changing data and data models. == Predictive model decay == In machine learning and predictive analytics this drift phenomenon is called concept drift. In machine learning, a common element of a data model are the statistical properties, such as probability distribution of the actual data. If they deviate from the statistical properties of the training data set, then the learned predictions may become invalid, if the drift is not addressed. == Data configuration decay == Another important area is software engineering, where three types of data drift affecting data fidelity may be recognized. Changes in the software environment ("infrastructure drift") may invalidate software infrastructure configuration. "Structural drift" happens when the data schema changes, which may invalidate databases. "Semantic drift" is changes in the meaning of data while the structure does not change. In many cases this may happen in complicated applications when many independent developers introduce changes without proper awareness of the effects of their changes in other areas of the software system. For many application systems, the nature of data on which they operate are subject to changes for various reasons, e.g., due to changes in business model, system updates, or switching the platform on which the system operates. In the case of cloud computing, infrastructure drift that may affect the applications running on cloud may be caused by the updates of cloud software. There are several types of detrimental effects of data drift on data fidelity. Data corrosion is passing the drifted data into the system undetected. Data loss happens when valid data are ignored due to non-conformance with the applied schema. Squandering is the phenomenon when new data fields are introduced upstream in the data processing pipeline, but somewhere downstream these data fields are absent. == Inconsistent data == "Data drift" may refer to the phenomenon when database records fail to match the real-world data due to the changes in the latter over time. This is a common problem with databases involving people, such as customers, employees, citizens, residents, etc. Human data drift may be caused by unrecorded changes in personal data, such as place of residence or name, as well as due to errors during data input. "Data drift" may also refer to inconsistency of data elements between several replicas of a database. The reasons can be difficult to identify. A simple drift detection is to run checksum regularly. However the remedy may be not so easy. == Examples == The behavior of the customers in an online shop may change over time. For example, if weekly merchandise sales are to be predicted, and a predictive model has been developed that works satisfactorily. The model may use inputs such as the amount of money spent on advertising, promotions being run, and other metrics that may affect sales. The model is likely to become less and less accurate over time – this is concept drift. In the merchandise sales application, one reason for concept drift may be seasonality, which means that shopping behavior changes seasonally. Perhaps there will be higher sales in the winter holiday season than during the summer, for example. Concept drift generally occurs when the covariates that comprise the data set begin to explain the variation of your target set less accurately — there may be some confounding variables that have emerged, and that one simply cannot account for, which renders the model accuracy to progressively decrease with time. Generally, it is advised to perform health checks as part of the post-production analysis and to re-train the model with new assumptions upon signs of concept drift. == Possible remedies == To prevent deterioration in prediction accuracy because of concept drift, reactive and tracking solutions can be adopted. Reactive solutions retrain the model in reaction to a triggering mechanism, such as a change-detection test or control charts from statistical process control, to explicitly detect concept drift as a change in the statistics of the data-generating process. When concept drift is detected, the current model is no longer up-to-date and must be replaced by a new one to restore prediction accuracy. A shortcoming of reactive approaches is that performance may decay until the change is detected. Tracking solutions seek to track the changes in the concept by continually updating the model. Methods for achieving this include online machine learning, frequent retraining on the most recently observed samples, and maintaining an ensemble of classifiers where one new classifier is trained on the most recent batch of examples and replaces the oldest classifier in the ensemble. Contextual information, when available, can be used to better explain the causes of the concept drift: for instance, in the sales prediction application, concept drift might be compensated by adding information about the season to the model. By providing information about the time of the year, the rate of deterioration of your model is likely to decrease, but concept drift is unlikely to be eliminated altogether. This is because actual shopping behavior does not follow any static, finite model. New factors may arise at any time that influence shopping behavior, the influence of the known factors or their interactions may change. Concept drift cannot be avoided for complex phenomena that are not governed by fixed laws of nature. All processes that arise from human activity, such as socioeconomic processes, and biological processes are likely to experience concept drift. Therefore, periodic retraining, also known as refreshing, of any model is necessary. === Remedy methods === DDM (Drift Detection Method): detects drift by monitoring the model's error rate over time. When the error rate passes a set threshold, it enters a warning phase, and if it passes another threshold, it enters a drift phase. EDDM (Early Drift Detection Method): improves DDM's detection rate by tracking the average distance between two errors instead of only the error rate. ADWIN (Adaptive Windowing): dynamically stores a window of recent data and warns the user if it detects a significant change between the statistics of the window's earlier data compared to more recent data. KSWIN (Kolmogorov–Smirnov Windowing): detects drift based on the Kolmogorov-Smirnov statistical test. DDM and EDDM: Concept Drift Detection online supervised methods that rely on sequential error monitoring to estimate the evolving error rate. ADWIN and KSWIN: Windowing maintain a "window", a subset of the most recent data, of the data stream, which it checks for statistical differences across the window. == Applications in security == Concept drift is a recurring issue in security analytics, especially in malware and intrusion detection. In these systems, models are often trained on past logs, binaries or network traces, but the behaviour of attackers changes over time as new malware families, obfuscation techniques and campaigns appear. When the data no longer resemble the training set, the decision boundaries learned by classifiers or anomaly detectors can become misaligned with the current threat landscape and detection performance can drop unless the models are updated or replaced. Several studies on Windows malware model detection as an evolving data stream and track how performance changes as time passes. They show that classifiers trained on a fixed time window can perform well on nearby data but deteriorate quickly when evaluated on samples collected months or years later, even when large amounts of training data are available. In order to keep up with this, security systems often use sliding or adaptive windows, which restrict training to the most recent portion of the data so that older, less relevant examples are gradually discarded. They also employ drift detectors such as ADWIN and KSWIN that monitor error rates or changes in the distribution of recent observations and signal when the statistics of the incoming stream differ significantly from the past, prompting retraining or model replacement. Related problems appear in spam filtering, fraud detection and intrusion detection, where adversaries change content, patterns of activity or network behavior to evade models trained on historical data. In these settings drift can be gradual, as new types of spam or fraud emerge, or abrupt, after a sudden shift in attack techniques. Common strategies to remain eff

No Fakes Act

The NO FAKES Act or the Nurture Originals, Foster Art, and Keep Entertainment Safe Act, is proposed United States federal legislation concerning digital replicas. The bill was first introduced in 2023 as a discussion draft, formally introduced in 2024, and reintroduced in 2025. If enacted, the bill would establish a federal right of publicity, giving public figures and private individuals greater control over the creation and use of digital replicas of their likenesses, including artificial intelligence (AI)-generated content. If passed, the NO FAKES Act would create a legal framework for licensing digital replicas, including provisions for liability, safe harbors, and statutory exceptions. The proposal has received broad support from the entertainment and technology industries. However, digital rights organizations have raised concerns that the Act risks chilling protected speech. == Background == === Entertainment industry concerns === Actors’ concerns over studios' use of their digital likeness were one of the primary drivers of the Screen Actors Guild–American Federation of Television and Radio Artists (SAG-AFTRA) strike in 2023. Negotiators for SAG-AFTRA alleged that the Alliance of Motion Picture and Television Producers (AMPTP) sought to use the digital likenesses of actors in perpetuity and would try to replace union members, especially background actors. The AMPTP denied SAG-AFTRA's interpretation of its proposal. In November 2023, AMPTP and SAG-AFTRA reached an agreement on the use of actors’ digital replicas, which included requirements for consent and compensation. Recording labels have also expressed concerns over unauthorized digital replicas of their performers' likeness. In 2023, TikTok user Ghostwriter977 released "Heart on My Sleeve," an AI-produced song in the styles of Drake and the Weeknd. After the song received millions of streams, the Universal Music Group (UMG) initiated takedown requests to TikTok and YouTube, which removed the song from their platforms. The legal arguments attorneys made were not disclosed; however, commentators noted that they likely used the Digital Millennium Copyright Act (DMCA). This presented a novel scenario, since UMG did not have licensing rights to "Heart on My Sleeve." According to The Verge, UMG based its DMCA takedown request on an unauthorized sample used at the start of the song for the producer tag. While legal commentators noted that UMG could have asserted a violation of the artists’ rights of publicity, existing state right of publicity laws do not provide notice-and-takedown mechanisms comparable to those under the DMCA. === Legal landscape === Legal scholars have observed that AI-generated digital replicas raise questions under existing copyright and intellectual property law. U.S. copyright law generally requires that original authorship be attributable to a human; however, the extent of human intervention needed to satisfy this requirement is not clear. Copyright holders have filed lawsuits against AI companies alleging unauthorized usage of copyrighted material to train their models, though many of these cases remain pending. In terms of outputs, record labels often hold rights to artists’ musical works but do not necessarily control the artists’ voice, appearance, or likeness in the same way. As a result, AI-generated recordings such as "Heart on My Sleeve" may fall outside the scope of certain traditional copyright protections. Individuals' likenesses have historically been governed under the Lanham Act, the Federal Trade Commission Act, and right of publicity laws. The right of publicity, recognized in many state-level statutes and common law, allows individuals to bring legal claims against unauthorized commercial use of their identities. It has often, but not exclusively, been applied to celebrities or other recognizable individuals. There is no federal-level right to publicity, and state-level protections vary, especially on issues relating to digital replicas and posthumous rights, which makes it difficult for creators or other individuals to prevent unauthorized use of their likenesses. In July 2024, the U.S. Copyright Office released a report on digital replicas and recommended that Congress create a federal law to protect individuals from unauthorized uses of their digital replicas, noting the inadequacy, narrowness, and inconsistency of existing laws. == Provisions == Under the NO FAKES Act of 2025, a digital replica is defined as "a newly created, computer-generated, highly realistic electronic representation that is readily identifiable as the voice or visual likeness of an individual," living or dead. A digital replica can be embodied in sound recordings, images, or audiovisual works in which the individual did not perform or in which the individual did perform but the "fundamental character of the performance or appearance has been materially altered." The Act specifies that digital replicas do not include reproduced samples of works authorized by the copyright holder. The Act defines a "right holder" as either the individual who is the subject of a digital replica or an entity that has acquired the rights to that individual’s likeness. The Act grants right holders the exclusive right to authorize the use of an individual’s likeness in a digital replica. This right is not assignable during the individual’s lifetime; however, it can be licensed to a living individual for up to 10 years under certain conditions. Postmortem rights The Act provides that the right does not automatically expire upon an individual’s death. It may be transferred to executors, heirs, or other parties designated by the individual. The right is held by the right holder for 10 years following the individual’s death. If the right holder demonstrates active use of the digital replica within the 2 years preceding the end of the 10-year term, the right may be extended for an additional 5-year period. These five-year extensions may be renewed for up to 70 years after the individual’s death. Liability The Act establishes liability for individuals who knowingly distribute a digital replica without authorization from the right holder, as well as for entities that make available a service primarily designed to produce unlawful digital replicas. Safe harbor provisions Similar to the Communications Decency Act and the DMCA, the Act establishes safe harbor provisions for online service providers. Providers are shielded from liability if they adopt and inform users of a policy for terminating accounts that repeatedly violate the Act. The NO FAKES Act does not require online services to proactively monitor content. Instead, it creates a notice-and-takedown mechanism under which providers must promptly respond to notifications seeking the removal of unauthorized digital replicas. These safe harbor protections apply only if the online service provider designates an agent with the U.S. Copyright Office to receive notifications of alleged violations. Remedies The NO FAKES Act provides remedies that are similar to those available under U.S. copyright law. Under the Act, individuals may be held liable for either statutory damages of $5,000 or actual damages for creating or distributing an unauthorized digital replica. The legislation also establishes a tiered liability framework for online service providers. Those that make good faith efforts to comply with the Act may face statutory damages of up to $25,000 per work for violations or actual damages. Providers that do not undertake such compliance efforts may be liable for $5,000 per unauthorized display or transmission of a digital replica, with damages capped at $750,000 per work. Exclusions The Act includes several exceptions to liability that are modeled in part on fair use principles. Digital replicas are excluded from liability when "used in a bona fide news, public affairs, or sports broadcast or account;" in a documentary or historical context; or in a way that is "consistent with the public interest." These exclusions do not apply to de minimis uses or to digital replicas that are sexually explicit in nature. The Act further states that licensing requirements do not apply to licenses established through collective bargaining agreements that contain provisions governing the use of digital replicas. The Act does not impose secondary liability on providers of generative artificial intelligence tools or services whose primary purpose is not the creation of unauthorized digital replicas. Preemption The NO FAKES Act preempts laws that protect "an individual's voice and visual likeness rights in connection with a digital replica, as defined in this Act, in an expressive work." However, the Act preserves state laws governing digital replicas enacted before January 2, 2025, as well as state laws addressing digital replicas that portray sexually explicit conduct. == History == In 2023, Senators Marsha Blackburn, Chris Coons, Amy Klobuchar, and Th