ArticleslgStudy

computer science

Granular computing

Granular computing is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Granular computing rather than just read about it. In short: Granular computing is an emerging computing paradigm of information processing that concerns the processing of complex information entities called "information granules", which arise in the process of data abstraction and derivation of knowledge from information or data. Generally speaking, information granules are collections of entities that usually originate at the numeric level and are arranged together due to t…

Granular computing — main illustration
Granular computing — illustration

Key takeaways

  • Granular computing belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Granular computing to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Granular computing from memory before moving on to harder problems.

Reference excerpt

Granular computing is an emerging computing paradigm of information processing that concerns the processing of complex information entities called "information granules", which arise in the process of data abstraction and derivation of knowledge from information or data. Generally speaking, information granules are collections of entities that usually originate at the numeric level and are arranged together due to their similarity, functional or physical adjacency, indistinguishability, coherency, or the like. At present, granular computing is more a theoretical perspective than a coherent set of methods or principles. As a theoretical perspective, it encourages an approach to data that recognizes and exploits the knowledge present in data at various levels of resolution or scales. In this sense, it encompasses all methods which provide flexibility and adaptability in the resolution at which knowledge or information is extracted and represented.

Types of granulation As mentioned above, granular computing is not an algorithm or process; there is no particular method that is called "granular computing". It is rather an approach to looking at data that recognizes how different and interesting regularities in the data can appear at different levels of granularity, much as different features become salient in satellite images of greater or lesser resolution. On a low-resolution satellite image, for example, one might notice interesting cloud patterns representing cyclones or other large-scale weather phenomena, while in a higher-resolution image, one misses these large-scale atmospheric phenomena but instead notices smaller-scale phenomena, such as the interesting pattern that is the streets of Manhattan. The same is generally true of all data: At different resolutions or granularities, different features and relationships emerge. The aim of granular computing is to try to take advantage of this fact in designing more effective machine-learning and reasoning systems. There are several types of granularity that are often encountered in data mining and machine learning, and we review them below:

Value granulation (discretization/quantization) One type of granulation is the quantization of variables. It is very common that in data mining or machine-learning applications the resolution of variables needs to be decreased in order to extract meaningful regularities. An example of this would be a variable such as "outside temperature" (temp), which in a given application might be recorded to several decimal places of precision (depending on the sensing apparatus). However, for purposes of extracting relationships between "outside temperature" and, say, "number of health-club applications" (club), it will generally be advantageous to quantize "outside temperature" into a smaller number of intervals.

Motivations There are several interrelated reasons for granulating variables in this fashion:

Based on prior domain knowledge, there is no expectation that minute variations in temperature (e.g., the difference between 80–80.7 °F (26.7–27.1 °C)) could have an influence on behaviors driving the number of health-club applications. For this reason, any "regularity" which our learning algorithms might detect at this level of resolution would have to be spurious, as an artifact of overfitting. By coarsening the temperature variable into intervals the difference between which we do anticipate (based on prior domain knowledge) might influence number of health-club applications, we eliminate the possibility of detecting these spurious patterns. Thus, in this case, reducing resolution is a method of controlling overfitting. By reducing the number of intervals in the temperature variable (i.e., increasing its grain size), we increase the amount of sample data indexed by each interval designation. Thus, by coarsening the variable, we increase sample sizes and achieve better statistical estimation. In this sense, increasing granularity provides an antidote to the so-called curse of dimensionality, which relates to the exponential decrease in statistical power with increase in number of dimensions or variable cardinality. Independent of prior domain knowledge, it is often the case that meaningful regularities (i.e., which can be detected by a given learning methodology, representational language, etc.) may exist at one level of resolution and not at another.

… excerpt ends here. Continue reading the full article.

Illustrations

Granular computing: Satellite view of Manhattan.
Satellite view of Manhattan.
Granular computing: Benefits of value granulation: Implications here exist at the resolution of 
  
    
      
        {
        
          X
          
            i
          
        
        ,
        
          Y
          
            j
          
        
        }
      
    
    {\displaystyle \{X_{i},Y_{j}\}}
  
 that do not exist at the higher resolution of 
  
    
      
        {
        
          x
          
            i
          
        
        ,
        
          y
          
            j
          
        
        }
        ;
      
    
    {\displaystyle \{x_{i},y_{j}\};}
  
 in particular, 
  
    
      
        ∀
        
          x
          
            i
          
        
        ,
        
          y
          
            j
          
        
        :
        
          x
          
            i
          
        
        ↛
        
          y
          
            j
          
        
        ,
      
    
    {\displaystyle \forall x_{i},y_{j}:x_{i}\not \to y_{j},}
  
 while at the same time, 
  
    
      
        ∀
        
          X
          
            i
          
        
        ∃
        
          Y
          
            j
          
        
        :
        
          X
          
            i
          
        
        ↔
        
          Y
          
            j
          
        
        .
      
    
    {\displaystyle \forall X_{i}\exists Y_{j}:X_{i}\leftrightarrow Y_{j}.}
Benefits of value granulation: Implications here exist at the resolution of { X i , Y j } {\displaystyle \{X_{i},Y_{j}\}} that do not exist at the higher resolution of { x i , y j } ; {\displaystyle \{x_{i},y_{j}\};} in particular, ∀ x i , y j : x i ↛ y j , {\displaystyle \forall x_{i},y_{j}:x_{i}\not \to y_{j},} while at the same time, ∀ X i ∃ Y j : X i ↔ Y j . {\displaystyle \forall X_{i}\exists Y_{j}:X_{i}\leftrightarrow Y_{j}.}
Granular computing: A Watanabe-Kraskov variable agglomeration tree. Variables are agglomerated (or "unitized") from the bottom-up, with each merge-node representing a (constructed) variable having entropy equal to the joint entropy of the agglomerating variables. Thus, the agglomeration of two m-ary variables 
  
    
      
        
          X
          
            1
          
        
        ,
        
          X
          
            2
          
        
      
    
    {\displaystyle X_{1},X_{2}}
  
 having individual entropies 
  
    
      
        H
        (
        
          X
          
            1
          
        
        )
        ,
        H
        (
        
          X
          
            2
          
        
        )
      
    
    {\displaystyle H(X_{1}),H(X_{2})}
  
 yields a single m2-ary variable 
  
    
      
        
          X
          
            1
            ,
            2
          
        
      
    
    {\displaystyle X_{1,2}}
  
 with entropy 
  
    
      
        H
        (
        
          X
          
            1
            ,
            2
          
        
        )
        =
        H
        (
        
          X
          
            1
          
        
        ,
        
          X
          
            2
          
        
        )
        .
      
    
    {\displaystyle H(X_{1,2})=H(X_{1},X_{2}).}
  
 When 
  
    
      
        
          X
          
            1
          
        
        ,
        
          X
          
            2
          
        
      
    
    {\displaystyle X_{1},X_{2}}
  
 are highly dependent (i.e., redundant) and have large mutual information 
  
    
      
        I
        (
        
          X
          
            1
          
        
        ;
        
          X
          
            2
          
        
        )
        ,
      
    
    {\displaystyle I(X_{1};X_{2}),}
  
 then 
  
    
      
        H
        (
        
          X
          
            1
            ,
            2
          
        
        )
        ≪
        H
        (
        
          X
          
            1
          
        
        )
        +
        H
        (
        
          X
          
            2
          
        
        )
      
    
    {\displaystyle H(X_{1,2})\ll H(X_{1})+H(X_{2})}
  
 because 
  
    
      
        H
        (
        
          X
          
            1
          
        
        ,
        
          X
          
            2
          
        
        )
        =
        H
        (
        
          X
          
            1
          
        
        )
        +
        H
        (
        
          X
          
            2
          
        
        )
        −
        I
        (
        
          X
          
            1
          
        
        ;
        
          X
          
            2
          
        
        )
        ,
      
    
    {\displaystyle H(X_{1},X_{2})=H(X_{1})+H(X_{2})-I(X_{1};X_{2}),}
  
 and this would be considered a parsimonious unitization or aggregation.
A Watanabe-Kraskov variable agglomeration tree. Variables are agglomerated (or "unitized") from the bottom-up, with each merge-node representing a (constructed) variable having entropy equal to the joint entropy of the agglomerating variables. Thus, the agglomeration of two m-ary variables X 1 , X 2 {\displaystyle X_{1},X_{2}} having individual entropies H ( X 1 ) , H ( X 2 ) {\displaystyle H(X_{1}),H(X_{2})} yields a single m2-ary variable X 1 , 2 {\displaystyle X_{1,2}} with entropy H ( X 1 , 2 ) = H ( X 1 , X 2 ) . {\displaystyle H(X_{1,2})=H(X_{1},X_{2}).} When X 1 , X 2 {\displaystyle X_{1},X_{2}} are highly dependent (i.e., redundant) and have large mutual information I ( X 1 ; X 2 ) , {\displaystyle I(X_{1};X_{2}),} then H ( X 1 , 2 ) ≪ H ( X 1 ) + H ( X 2 ) {\displaystyle H(X_{1,2})\ll H(X_{1})+H(X_{2})} because H ( X 1 , X 2 ) = H ( X 1 ) + H ( X 2 ) − I ( X 1 ; X 2 ) , {\displaystyle H(X_{1},X_{2})=H(X_{1})+H(X_{2})-I(X_{1};X_{2}),} and this would be considered a parsimonious unitization or aggregation.

Worked examples

Example 1 — a first encounter with Granular computing

Start with the simplest possible case. Write down what Granular computing claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Granular computing before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Granular computing ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Granular computing

In research
Granular computing appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Granular computing in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Granular computing is common in secondary-school and first-year university syllabi. It links to neighbouring topics Machine learning, Theoretical computer science, so understanding it makes those chapters shorter.
In everyday life
Look for Granular computing outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Granular computing” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Granular computing in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Granular computing means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Granular computing out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Granular computing in simple terms?

Granular computing is an emerging computing paradigm of information processing that concerns the processing of complex information entities called "information granules", which arise in the process of data abstraction and derivation of knowledge from information or data. Generally speaking, informa…

Why does Granular computing matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Granular computing?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Granular computing.

Tags

  • Machine learning
  • Theoretical computer science

Keep exploring