Transact-SQL
Reinforcement Learning
R Programming
React Native
Python Design Patterns
Python Pillow
Python Turtle
Verbal Ability
Interview Questions
Company Questions
Artificial Intelligence
Cloud Computing
Data Science
Machine Learning
Data Structures
Operating System
Computer Network
Compiler Design
Computer Organization
Discrete Mathematics
Ethical Hacking
Computer Graphics
Software Engineering
Web Technology
Cyber Security
C Programming
Control System
Data Mining
Data Warehouse
Simple array sum easy problem solving (basic) max score: 10 success rate: 94.54%, compare the triplets easy problem solving (basic) max score: 10 success rate: 95.84%, a very big sum easy problem solving (basic) max score: 10 success rate: 98.82%, diagonal difference easy problem solving (basic) max score: 10 success rate: 96.03%, plus minus easy problem solving (basic) max score: 10 success rate: 98.39%, staircase easy problem solving (basic) max score: 10 success rate: 98.37%, mini-max sum easy problem solving (basic) max score: 10 success rate: 94.46%, birthday cake candles easy problem solving (basic) max score: 10 success rate: 97.15%, time conversion easy problem solving (basic) max score: 15 success rate: 92.38%, cookie support is required to access hackerrank.
Seems like cookies are disabled on this browser, please enable them to open this website
By Brad Miller and David Ranum, Luther College, and Jan Pearce, Berea College
We are very grateful to Franklin Beedle Publishers for allowing us to make the original Python version of this interactive textbook freely available. The original online version was dedicated to the memory of our first editor, Jim Leisy, who wanted us to “change the world.”
Module Index
Search Page
C is a general-purpose, imperative computer programming language, supporting structured programming, lexical variable scope and recursion, while a static type system prevents many unintended operations. C was originally developed by Dennis Ritchie between 1969 and 1973 at Bell Labs. It has since become one of the most widely used programming languages of all time, with C compilers from various vendors available for the majority of existing computer architectures and operating systems.
The best way we learn anything is by practice and exercise questions. We have started this section for those (beginner to intermediate) who are familiar with C programming.
Hope, these exercises help you to improve your C programming coding skills. Currently, following sections are available, we are working hard to add more exercises. Please refer to this page for important C snippets, code, and examples before starting the exercises. Happy Coding!
List of C Programming Exercises :
[ Want to contribute to C exercises? Send your code (attached with a .zip file) to us at w3resource[at]yahoo[dot]com. Please avoid copyrighted materials.]
Do not submit any solution of the above exercises at here, if you want to contribute go to the appropriate exercise page.
List of Exercises with Solutions :
Follow us on Facebook and Twitter for latest update.
The best way to learn C programming language is by hands-on practice. This C Exercise page contains the top 30 C exercise questions with solutions that are designed for both beginners and advanced programmers. It covers all major concepts like arrays, pointers, for-loop, and many more.
So, Keep it Up! Solve topic-wise C exercise questions to strengthen your weak topics.
The following are the top 30 programming exercises with solutions to help you practice online and improve your coding efficiency in the C language. You can solve these questions online in GeeksforGeeks IDE.
In this problem, you have to write a simple program that prints “Hello World!” on the console screen.
For Example,
Q2: write a program to find the sum of two numbers entered by the user..
In this problem, you have to write a program that adds two numbers and prints their sum on the console screen.
In this problem, you have to write a program to print the size of the variable.
In this problem, you have to write a program that swaps the values of two variables that are entered by the user.
Swap two numbers
In this problem, you have to write a program that takes principal, time, and rate as user input and calculates the compound interest.
In this problem, you have to write a program to check whether the given number is even or odd.
In this problem, you have to write a program to take three numbers from the user as input and print the largest number among them.
In this problem, you have to write a program to make a simple calculator that accepts two operands and an operator to perform the calculation and prints the result.
In this problem, you have to write a program to calculate the factorial (product of all the natural numbers less than or equal to the given number n) of a number entered by the user.
In this problem, you have to write a program to convert the given binary number entered by the user into an equivalent decimal number.
In this problem, you have to write a program to print the Fibonacci series(the sequence where each number is the sum of the previous two numbers of the sequence) till the number entered by the user using recursion.
Fibonacci Series
In this problem, you have to write a program to calculate the sum of natural numbers up to a given number n.
In this problem, you have to write a program to find the maximum and the minimum element of the array of size N given by the user.
In this problem, you have to write a program to reverse an array of size n entered by the user. Reversing an array means changing the order of elements so that the first element becomes the last element and the second element becomes the second last element and so on.
Reverse an array
In this problem, you have to write a program that takes an array arr[] of size N from the user and rotates the array to the left (counter-clockwise direction) by D steps, where D is a positive integer.
In this problem, you have to write a program that takes a sorted array arr[] of size N from the user and removes the duplicate elements from the array.
In this problem, you have to write a program that takes an array arr[] of size N and a target value to be searched by the user. Search the target value using binary search if the target value is found print its index else print ‘element is not present in array ‘.
In this problem, you have to write a program that takes a pointer to the head node of a linked list, you have to reverse the linked list and print the reversed linked list.
In this problem, you have to write a program to create an array of size n dynamically then take n elements of an array one by one by the user. Print the array elements.
In this problem, you have to write a program to find the transpose of a matrix for a given matrix A with dimensions m x n and print the transposed matrix. The transpose of a matrix is formed by interchanging its rows with columns.
In this problem, you have to write a program to read two strings str1 and str2 entered by the user and concatenate these two strings. Print the concatenated string.
In this problem, you have to write a program to read a string str entered by the user and check whether the string is palindrome or not. If the str is palindrome print ‘str is a palindrome’ else print ‘str is not a palindrome’. A string is said to be palindrome if the reverse of the string is the same as the string.
In this problem, you have to write a simple program to read a string str entered by the user and print the first letter of each word in a string.
In this problem, you have to write a program to read a string str entered by the user, and reverse that string means changing the order of characters in the string so that the last character becomes the first character of the string using recursion.
reverse a string
In this problem, you have to write a simple program to read the number of rows (n) entered by the user and print the half-pyramid pattern of numbers. Half pyramid pattern looks like a right-angle triangle of numbers having a hypotenuse on the right side.
In this problem, you have to write a simple program to read the number of rows (n) entered by the user and print Pascal’s triangle pattern. Pascal’s Triangle is a pattern in which the first row has a single number 1 all rows begin and end with the number 1. The numbers in between are obtained by adding the two numbers directly above them in the previous row.
Pascal’s Triangle
In this problem, you have to write a program that takes an array arr[] of size N from the user and sorts the array elements in ascending or descending order using insertion sort.
In this problem, you have to write a program that takes an array arr[] of size N from the user and sorts the array elements in ascending order using quick sort.
In this problem, you have to write a program that reads an array of strings in which all characters are of the same case entered by the user and sort them alphabetically.
In this problem, you have to write a program that takes user input to enter the filenames for reading and writing. Read the contents of one file and copy the content to another file. If the file specified for reading does not exist or cannot be opened, display an error message “Cannot open file: file_name” and terminate the program else print “Content copied to file_name”
In this problem, you have to write a program that stores information about students using structure. The program should create various structures, each representing a student’s record. Initialize the records with sample data having data members’ Names, Roll Numbers, Ages, and Total Marks. Print the information for each student.
We hope after completing these C exercises you have gained a better understanding of C concepts. Learning C language is made easier with this exercise sheet as it helps you practice all major C concepts. Solving these C exercise questions will take you a step closer to becoming a C programmer.
Q1. what are some common mistakes to avoid while doing c programming exercises.
Some of the most common mistakes made by beginners doing C programming exercises can include missing semicolons, bad logic loops, uninitialized pointers, and forgotten memory frees etc.
Best practices for beginners starting with C programming exercises: Start with easy codes Practice consistently Be creative Think before you code Learn from mistakes Repeat!
You can use the following methods to debug a code in C programming exercises Read the error message carefully Read code line by line Try isolating the error code Look for Missing elements, loops, pointers, etc Check error online
Similar reads, improve your coding skills with practice.
MSC : 68T20, 90-08, 90-10, 90Bxx, 90B36
A fundamental assumption in addressing real-world problems is acknowledging the presence of uncertainty and dynamism. Dismissing these factors can lead to the formulation of an optimal solution for an entirely different problem. This paper presents a novel variant of the capacitated dispersion problem (CDP) referred to as the stochastic and non-static CDP. The main objective of this problem is to strategically position facilities to achieve maximum dispersion while meeting the capacity demand constraint. The proposed approach combines stochastic and non-static elements, introducing a new paradigm to address the problem. This innovation allows us to consider more realistic and flexible environments. To solve this challenging problem, a novel sim-learnheuristic algorithm is proposed. This algorithm combines a biased-randomized metaheuristic (optimization component) with a simulation component (to model the uncertainty) and a machine learning component (to model non-static behavior). The non-static part works by using black box and white box mechanisms to learn the uncertainty with some related facilities' variables. Based on an extended set of traditional benchmarks for the CDP, a series of computational experiments were carried out. The results demonstrate the effectiveness of the proposed sim-learnheuristic approach for solving the CDP under non-static and stochastic scenarios.
Citation: Elnaz Ghorbani, Juan F. Gomez, Javier Panadero, Angel A. Juan. A sim-learnheuristic algorithm for solving a capacitated dispersion problem under stochastic and non-static conditions[J]. AIMS Mathematics, 2024, 9(9): 24247-24270. doi: 10.3934/math.20241180
[1] | , (2024), 100954. https://doi.org/10.1016/j.suscom.2023.100954 --> A. Ala, M. Deveci, E. A. Bani, A. H. Sadeghi, Dynamic capacitated facility location problem in mobile renewable energy charging stations under sustainability consideration, , (2024), 100954. https://doi.org/10.1016/j.suscom.2023.100954 doi: |
[2] | , (2024), 135. --> N. Aydin, A. Murat, B. S. Mordukhovich, Sample intelligence-based progressive hedging algorithms for the stochastic capacitated reliable facility location problem, , (2024), 135. |
[3] | , (2015), 53–60. https://doi.org/10.1016/j.omega.2015.02.006 --> M. Bieniek, A note on the facility location problem with stochastic demands, , (2015), 53–60. https://doi.org/10.1016/j.omega.2015.02.006 doi: |
[4] | , (2020), 311–334. --> M. Chica, A. A. Juan, C. Bayliss, O. Cordón, W. D. Kelton, Why simheuristics? benefits, limitations, and best practices when combining metaheuristics with simulation, , (2020), 311–334. |
[5] | , (2013), 1842–1851. https://doi.org/10.1016/j.cor.2013.01.017 --> B. R. Cobb, R. Rumí, A. Salmerón, Inventory management with log-normal demand per unit time, , (2013), 1842–1851. https://doi.org/10.1016/j.cor.2013.01.017 doi: |
[6] | , (2021), 106964. --> P. B. de Oliveira, R. S. de Camargo, G. de Miranda Júnior, A. X. Martins, A computational study of a decomposition approach for the dynamic two-level uncapacitated facility location problem with single and multiple allocation, , (2021), 106964. |
[7] | , (2007), 71–84. https://doi.org/10.1016/j.ejor.2006.01.021 --> A. Duarte, R. Marti, Tabu search and grasp for the maximum diversity problem, , (2007), 71–84. https://doi.org/10.1016/j.ejor.2006.01.021 doi: |
[8] | , (2023). --> E. Ghorbani, T. Fluechter, L. Calvet, M. Ammouriova, J. Panadero, A. A. Juan, Optimizing energy consumption in smart cities' mobility: Electric vehicles, algorithms, and collaborative economy, , (2023). |
[9] | , (1995), 696–701. https://doi.org/10.1016/0307-904X(95)00083-V --> F. Glover, K. Ching-Chung, K. S. Dhir, A discrete optimization model for preserving biological diversity, , (1995), 696–701. https://doi.org/10.1016/0307-904X(95)00083-V doi: |
[10] | , 1998, 19. --> F. Glover, C. C. Kuo, K. Dhir, Heuristic algorithms for the maximum diversity problem, , 1998, 19. |
[11] | , (2024), 909. https://doi.org/10.3390/math12060909 --> J. F. Gomez, A. Martínez-Gavara, J. Panadero, A. A. Juan, R. Martí, A forward-backward simheuristic for the stochastic capacitated dispersion problem, , (2024), 909. https://doi.org/10.3390/math12060909 doi: |
[12] | , (2022). --> J. F. Gomez, J. Panadero, R. D. Tordecilla, J. Castaneda, A. A. Juan, A multi-start biased-randomized algorithm for the capacitated dispersion problem, , (2022). |
[13] | , (2023), 532. https://doi.org/10.3390/a16120532 --> J. F. Gomez, A. R. Uguina, J. Panadero, A. A. Juan, A learnheuristic algorithm for the capacitated dispersion problem under dynamic conditions, , (2023), 532. https://doi.org/10.3390/a16120532 doi: |
[14] | , (2017), 216–228. https://doi.org/10.1016/j.cie.2017.06.019 --> A. Grasas, A. A. Juan, J. Faulin, J. de Armas, H. Ramalhinho, Biased randomization of heuristics using skewed probability distributions: A survey and some applications, , (2017), 216–228. https://doi.org/10.1016/j.cie.2017.06.019 doi: |
[15] | , (2016), 143–154. https://doi.org/10.1016/j.cor.2015.10.011 --> S. D. Jena, J. F. Cordeau, B. Gendron, Solving a dynamic facility location problem with partial closing and reopening, , (2016), 143–154. https://doi.org/10.1016/j.cor.2015.10.011 doi: |
[16] | , (2023), 294–315. https://doi.org/10.1002/net.22132 --> M. Landete, J. Peiró, H. Yaman, Formulations and valid inequalities for the capacitated dispersion problem, , (2023), 294–315. https://doi.org/10.1002/net.22132 doi: |
[17] | , (2023), 119856. --> Z. Lu, A. Martínez-Gavara, J. K. Hao, X. Lai, Solution-based tabu search for the capacitated dispersion problem, , (2023), 119856. |
[18] | , (2016), 369–383. https://doi.org/10.21914/anziamj.v57i0.8910 --> J. Maisano, A. Radchik, T. Ling, A log-normal model for demand forecasting in the national electricity market, , (2016), 369–383. https://doi.org/10.21914/anziamj.v57i0.8910 doi: |
[19] | , (2021), 131–146. https://doi.org/10.1007/s12293-020-00318-1 --> R. Marti, A. Martinez-Gavara, J. Sanchez-Oro, The capacitated dispersion problem: An optimization model and a memetic algorithm, , (2021), 131–146. https://doi.org/10.1007/s12293-020-00318-1 doi: |
[20] | , (2021), 114703. https://doi.org/10.1016/j.eswa.2021.114703 --> A. Martinez-Gavara, T. Corberan, R. Marti, Grasp and tabu search for the generalized dispersion problem, , (2021), 114703. https://doi.org/10.1016/j.eswa.2021.114703 doi: |
[21] | , (2010), 36–44. https://doi.org/10.1016/j.ejor.2008.12.023 --> R. Martí, M. Gallego, A. Duarte, A branch and bound algorithm for the maximum diversity problem, , (2010), 36–44. https://doi.org/10.1016/j.ejor.2008.12.023 doi: |
[22] | , (2016), 462–469. https://doi.org/10.1016/j.cie.2016.06.029 --> M. Marufuzzaman, R. Gedik, M. S. Roni, A benders based rolling horizon algorithm for a dynamic facility location problem, , (2016), 462–469. https://doi.org/10.1016/j.cie.2016.06.029 doi: |
[23] | , (2015), 261–268. https://doi.org/10.1016/j.endm.2014.11.034 --> S. Mišković, Z. Stanimirović, I. Grujičić, An efficient variable neighborhood search for solving a robust dynamic facility location problem in emergency service network, , (2015), 261–268. https://doi.org/10.1016/j.endm.2014.11.034 doi: |
[24] | , (2022), 105622. https://doi.org/10.1016/j.cor.2021.105622 --> N. Mladenović, R. Todosijević, D. Urošević, M. Ratli, Solving the capacitated dispersion problem with variable neighborhood search approaches: From basic to skewed vns, , (2022), 105622. https://doi.org/10.1016/j.cor.2021.105622 doi: |
[25] | , (2018), 78–88. --> R. H. Pearce, M. Forbes, Disaggregated benders decomposition and branch-and-cut for solving the budget-constrained dynamic uncapacitated facility location and network design problem, , (2018), 78–88. |
[26] | , (2021), 119–141. https://doi.org/10.1111/itor.12799 --> J. Peiró, I. Jiménez, J. Laguardia, R. Martí, Heuristics for the capacitated dispersion problem, , (2021), 119–141. https://doi.org/10.1111/itor.12799 doi: |
[27] | , (2013), 139–149. https://doi.org/10.1016/j.ijpe.2013.01.019 --> B. S. Pimentel, G. R. Mateus, F. A. Almeida, Stochastic capacity planning and dynamic network design, , (2013), 139–149. https://doi.org/10.1016/j.ijpe.2013.01.019 doi: |
[28] | , (2024), 124484. https://doi.org/10.1016/j.eswa.2024.124484 --> R. M. Rosati, A. Schaerf, Multi-neighborhood simulated annealing for the capacitated dispersion problem, , (2024), 124484. https://doi.org/10.1016/j.eswa.2024.124484 doi: |
[29] | , {\bf4 } (2000), 7–33. --> D. J. Rosenkrantz, G. K. Tayi, S. Ravi, Facility dispersion problems under capacity and cost constraints, , {\bf4 } (2000), 7–33. |
[30] | , (2021), 435–452. https://doi.org/10.1016/j.ejor.2020.08.018 --> A. Silva, D. Aloise, L. C. Coelho, C. Rocha, Heuristics for the dynamic facility location problem with modular capacities, , (2021), 435–452. https://doi.org/10.1016/j.ejor.2020.08.018 doi: |
[31] | , (2021), 43–56. --> L. Wang, Z. Zhang, C. Wu, D. Xu, X. Zhang, Approximation algorithms for the dynamic k-level facility location problems, , (2021), 43–56. |
[32] | , (2024), 587–599. https://doi.org/10.1287/ijoc.2021.0324 --> J. Xu, S. Sen, Ensemble variance reduction methods for stochastic mixed-integer programming and their application to the stochastic facility location problem, , (2024), 587–599. https://doi.org/10.1287/ijoc.2021.0324 doi: |
沈阳化工大学材料科学与工程学院 沈阳 110142
Article views( 83 ) PDF downloads( 6 ) Cited by( 0 )
Figures( 7 ) / Tables( 4 )
Other articles by authors.
Thank you for visiting nature.com. You are using a browser version with limited support for CSS. To obtain the best experience, we recommend you use a more up to date browser (or turn off compatibility mode in Internet Explorer). In the meantime, to ensure continued support, we are displaying the site without styles and JavaScript.
Scientific Reports volume 14 , Article number: 19070 ( 2024 ) Cite this article
64 Accesses
Metrics details
Independent component analysis (ICA) and dictionary learning (DL) are the most successful blind source separation (BSS) methods for functional magnetic resonance imaging (fMRI) data analysis. However, ICA to higher and DL to lower extent may suffer from performance degradation by the presence of anomalous observations in the recovered time courses (TCs) and high overlaps among spatial maps (SMs). This paper addressed both problems using a novel three-layered sparse DL (TLSDL) algorithm that incorporated prior information in the dictionary update process and recovered full-rank outlier-free TCs from highly corrupted measurements. The associated sequential DL model involved factorizing each subject’s data into a multi-subject (MS) dictionary and MS sparse code while imposing a low-rank and a sparse matrix decomposition restriction on the dictionary matrix. It is derived by solving three layers of feature extraction and component estimation. The first and second layers captured brain regions with low and moderate spatial overlaps, respectively. The third layer that segregated regions with significant spatial overlaps solved a sequence of vector decomposition problems using the proximal alternating linearized minimization (PALM) method and solved a decomposition restriction using the alternating directions method (ALM). It learned outlier-free dynamics that integrate spatiotemporal diversities across brains and external information. It differs from existing DL methods owing to its unique optimization model, which incorporates prior knowledge, subject-wise/multi-subject representation matrices, and outlier handling. The TLSDL algorithm was compared with existing dictionary learning algorithms using experimental and synthetic fMRI datasets to verify its performance. Overall, the mean correlation value was found to be \(26\%\) higher for the TLSDL than for the state-of-the-art subject-wise sequential DL (swsDL) technique.
Introduction.
During cognition or rest, fMRI measurements capture brain activity dynamics that are renowned for being noisy, which makes drawing statistical inferences a significant challenge 1 . Despite eliminating the noise sources due to machine, head motion, and physiology, the anatomical localization of neuronal responses triggered by the same stimulus might differ across brains 2 . This is further exacerbated by the experimental response’s divergence from the expected response due to variations in hemodynamics response (HR) across brains 3 . This makes hypothesis-driven univariate methodology such as the general linear model (GLM) in statistical parametric mapping (SPM) toolbox 4 an inferior approach. Mainly, the regressors for the design matrix of GLM constructed by convolving the HR function (HRF) with stimulus are incapable of adapting to variations across brains and their regions.
In contrast, a multivariate data-driven approach, for instance, blind source separation based matrix factorization, that recovers an approximation of the original signals, is fully adaptable without requiring prior knowledge about the mixing process of the training data. Diversity measures such as probabilistic distribution 5 , statistical attributes 6 , geometrical structures 7 , and sparse representation 8 have yielded several successful outcomes for fMRI analysis by unmasking hidden brain structures 9 , 10 , 11 . In particular, multivariate data matrix decomposition approaches have proven very beneficial for resting state functional connectivity studies and task-based activation identification 12 , 13 , 14 , 15 , 16 , 17 , 18 . Despite accounting for the idiosyncrasy, these constraint signal separation problems lack the estimation power for subject-wise analysis due to limited training data and the mathematical model’s inadequacy to take into consideration functional–anatomical brain differences and complexities, which other brains in group studies may offer 19 .
While group ICA 20 , multi-subject DL 21 , compressed online DL 22 , hybrid concatenation scheme for DL 23 , shared and subject-specific DL 24 , sparse group bases for DL 25 , and low-rank Tucker 2 model (LRT-2) 26 offer excellent analysis for group studies, some of them are irrelevant for resting state data or unable to yield subject-wise unique brain activity. Their model design endeavours to either (i) extract shared/individual dynamics where resting state data is complex to model due to the absence of shared temporal dynamics or (ii) aggregate dynamics to retrieve common variations where subject-wise analysis is exasperating to achieve because the model itself is ineffective.
A flowchart describing the proposed multi-tier approach. The details of the mathematical notations that appeared in this figure are given in the method section.
Motivated by the shared neural response modeling 2 , 27 , the aforementioned problems were addressed and resolved in the recently proposed swsDL algorithm and its block variant swbDL 19 , which consisted of extracting the spatiotemporal components across brains using computationally efficient sparse spatiotemporal BSS (ssBSS) 28 method and integrating them through the multi-subject base dictionary, base sparse code, and sparse representation matrices (RMs). Combining common variations and separating unique ones from multiple subjects via sparse RMs provide statistical strength to subject-wise dictionary learning. However, due to minor segregation offered by ssBSS spatial components and the presence of background noise (outliers) in TCs, this approach may result in poor subject-wise discrimination potential for both swsDL and swbDL. One procedure to resolve these problems is to provide these algorithms with (i) atleast moderately segregated spatial activations, (ii) spatial and temporal prior information, and (iii) an outlier elimination scheme with automated suppression capability that down-weighs all those data points that are distant from the bulk of the data.
To address the inherent limitations of the BSS techniques compared to model-driven GLM, some data-driven approaches have allowed incorporating prior information 29 , 30 , 31 . Previous research has provided much evidence and discussion supporting the validity of the sparse assumption for the separation of fMRI signals 32 , 33 , 34 , 35 , and the benefits gained by including the prior information in the learning process in the form of modeled hemodynamic response functions (MHRs) and intrinsic brain networks (IBNs) 36 , 37 , 38 .
In this paper, instead of fixing the model-driven dictionary atoms to extract highly overlapped spatial maps as in the case of supervised dictionary learning 36 , a different approach is adopted where at the first two levels, multi-subject components from the ssBSS method are fed into the block-wise dictionary learning algorithm to extract subject-wise dictionary and sparse codes with moderate spatial overlaps, which are then concatenated with the normalized MHRs and IBNs, respectively. At the third level, sequential learning is performed using these concatenated dynamics. Moreover, the imposition of dictionary atom decomposition at the third level assures decomposition stability when facing variations (anomaly) from the Gaussian noise model. Here, we define the anomaly in the fMRI time series as time points showing increased noise levels, artifacts, and outliers. Anomalies may occur due to magnetic field instabilities, head movement, physiological influences, and various preprocessing steps involved in managing fMRI data.
It is noteworthy that only this three-level learning strategy can accommodate the proposed model for sequential learning given by equation ( 8 ) to perform (i) the decomposition of subject-wise data into multi-subject TCs and SMs, (ii) the incorporation of prior TCs and SMs information, and (iii) the elimination of outliers in the TCs. Analytically, it is observed that the three-level strategy enhances the separation of brain regions with high spatial overlaps. Overall, there is an increase in the likelihood of extracting source signals more closely resembling the ground truth. The three-level strategy is explained with the help of a block diagram in Fig. 1 .
Our proposed multi-factor matrix factorization approach is somewhat similar to the adaptive distribution modeling-based collaborative clustering approach (ADCoC) in regards to mathematical formulation; for instance, it decomposes the feature matrix into a pair of semi-orthogonal dictionaries and their corresponding coefficient matrix. However, there is a significant difference as our approach aims to decompose each subject’s whole-brain fMRI data into multi-subject dictionary/sparse and their corresponding representation matrices, whereas the ADCoC focuses on clustering subjects and features through non-negative matrix factorization 39 .
Scalar values are indicated by lowercase or uppercase italic letters, vectors are designated by lowercase letters, and matrices are represented by uppercase letters. Vectors with subscripts and superscripts denote the particular column and row of the matrix, accordingly. Subscript m attached to a matrix/vector indicates the m th subject whose values are in this range \(m=\{1,\hdots ,M\}\) . Superscripts a , b , and c attached to a matrix/vector signify the first, second, and third level dictionary/sparse code/RMs, respectively. Subscript q attached to a matrix/vector defines a base dictionary/sparse code. Matrices \(\text {S} \in \mathbb {R}^{N\times K_3}\) and \(\text {T} \in \mathbb {R}^{N\times K_2}\) contain the IBNs and MHRs, respectively.
There is no redundancy for decomposing each subject’s data using a three-level approach, as we are constantly adding features to both second and third-tier learning. In the second layer, the gain is derived from the multi-subject dynamics learned in the previous level. In the third tier, the gain is derived from preexisting neuroscience knowledge.
Why not add multi-subject features and prior information at the second level and replace three-level learning with two? This could have resulted in an inferior approach because spatial features obtained from ssBSS are not mature enough in terms of spatial localization to be on equal footing with the prior information. Dynamics that have been atleast moderately segregated would gain more by adding the prior information.
Using ssBSS at the first tier can also not be avoided due to the requirement of constructing a multi-subject base dictionary/sparse code while keeping the numerical cost minimal.
Another valid question is why not use sequential learning on both the second and third levels. The main reason to avoid this is the computing burden of sequential learning.
Utilizing robust function through \(l_1\) data fidelity term 40 , a capped \(l_1\) norm loss function 41 , \(\alpha \) -divergence based data fidelity term 42 results in a computationally intensive weighted least squares (WLS) operation. Therefore, an alternative approach based on robust principal component analysis is considered and achieved using principal component pursuit (PCP).
Conventional robust learning using WLS may not work well when there is a base matrix involved because instead of the dictionary getting updated, only the representation matrix gets updated while the base dictionary keeps retaining the outliers.
Using PCP, all samples in the dictionary atoms away from the bulk of the data are automatically clipped based on a threshold value during each iteration of the sequential learning.
Specifically, (i) at the first layer, the ssBSS method, for each subject, solved using alternating minimization optimization, produced preliminary spatiotemporal components that had minor spatial overlaps, (ii) at the second layer, solved using alternating minimization optimization, the swbDL algorithm exploited multi-subject bases assembled by the previous layer to produce intermediary spatial bases that were moderately but not entirely separated, and iii) at the third layer, the sequential learning algorithm solved using coordinate descent optimization first constructed the base dictionary and sparse code by concatenating subject-wise temporal and spatial components from the previous layer with MHRs and IBNs, respectively, then utilized this base dictionary to produce segregated spatial maps and outlier free temporal dynamics via alternating directions method for each subject.
The ssBSS method 28 was chosen at the first tier for its computational efficiency in constructing the multi-subject base dictionary for second-level learning. The first tier decomposition of fMRI data matrix \(\text {Y}_m \in \mathbb {R}^{N\times V}\) from m th subject into temporal source matrix \(\text {D}^a_m \in \mathbb {R}^{N\times P}\) and spatial source matrix \(\text {X}_m^a \in \mathbb {R}^{P\times V}\) was accomplished by considering the following dictionary learning optimization model with double sparsity 28 , 43
The smoothness of the blood-oxygen-level-dependent (BOLD) signal is explained by \(\text {D}_m^a=\text {D}_q^a\text {A}^a_m\) , which stores discrete cosine transform (DCT) bases in \(\text {D}_q^a \in \mathbb {R}^{N\times K_p}\) . The p -th column of the sparse representation matrix \(\text {A}^a_m\) , \(P<K_p<N\) , is given by \(\text {a}^a_{m,p}\) . The \(l_0\) norm, denoted as \(\left\Vert .\right\Vert _0\) , induced sparsity by quantifying the number of non-zero elements. The \(l_1\) norm on \(\text {X}^a_m\) is specified as \(\left\Vert \text {X}^a_m\right\Vert _1\) , and defined as \(\sum _{p=1}^{P} \sum _{j=1}^{V}|x^{a,p}_{m,j}|\) . Its associated sparsity hyperparameter \(\lambda _1\) controlled the values of the coefficients. The numerical burden associated with equation ( 1 ) became a significant concern when it had to be availed for second-level learning. To circumvent this issue, the blind source separation theory was used to decompose equation ( 1 ) into two distinct spatial and temporal source separation problems, enabling a computationally efficient solution as
where the matrices \(\text {F}_{m}^t \in \mathbb {R}^{N\times K}\) and \(\text {F}_{m}^s \in \mathbb {R}^{K\times V}\) obtained using principal component analysis (PCA) represented the temporal and spatial features in the reduced dimension, respectively. The mixing matrices \(\text {Q}_m \in \mathbb {R}^{P\times K}\) and \(\text {Z}_m \in \mathbb {R}^{K\times P}\) were unknowns. The sparsity regularization parameter \(\lambda _1\) was estimated using brute force with reference to correlation strength. However, cross-validation could have also been availed to fine-tune this parameter 44 . Equation ( 2 ) was solved until convergence using an alternating minimization approach for the unknown model variables via Neumann’s alternating projection lemma 45 .
At this tier, the block design dictionary learning technique extracted subject-wise TCs and SMs using multi-subject dictionary/sparse codes as described in novel subject-wise learning method 19 . In the present situation, using the first tier components, the second tier base dictionary and sparse code were constructed as \(\text {D}_q^b = [\text {D}_1^a, \text {D}_2^a, \hdots , \text {D}_M^a] \in \mathbb {R}^{N\times MP}\) , and \(\text {X}_q^b = [\text {X}_1^{a^\top }, \text {X}_2^{a^\top }, \hdots , \text {X}_M^{a^\top }]^\top \in \mathbb {R}^{MP\times V}\) and their respective non-sparse representation matrices \(\text {A}_m^b \in \mathbb {R}^{MP\times K_1}\) and \(\text {B}_m^b \in \mathbb {R}^{K_1\times MP}\) were estimated using the following minimization
where tuning parameter \(\alpha \) is used to penalize the temporal correlation structure between the current \(\text {D}_m^b=\text {D}_q^b\text {A}_m^b\) and the lagged dictionary \(\text {D}_0\) , and \(\lambda _2\) is the sparsity tuning parameter. A combination of soft thresholding and least squares was used to estimate \(\text {B}_m^b\) as
Using a relaxation variable \(\text {U}\) , Eq. ( 3 ) can be reformulated as
The alternating directions method of multipliers (ADMM) technique was used to tackle this problem. It offered a closed-form solution for both \(\text {D}^b_m\) and \(\text {U}\) , required only one tuning parameter, and converged for all possible values 46 . The augmented Lagrangian for Eq. ( 5 ) lead us to the following closed-form solution for all unknown variables
where \(\beta _1\) is the tuning parameter and \(\mathscr {W}_1\) is the Lagrangian multiplier. Due to a dictionary-wide normalization restriction, every iteration involved normalizing every column in \(\text {D}^b_m\) and \(\text {U}\) . After initializing \(\text {U}\) and \(\mathscr {W}_1\) to zero, the above expressions were computed till convergence. Overall, Eq. ( 2 ) was solved using Eqs. ( 4 ) and ( 6 ) until convergence in an alternating minimization manner 19 .
At third tier, the base dictionary and the base sparse code were constructed by the concatenation of subject-wise dictionary/sparse code from the previous tier and MHRs/IBNs as \(\text {D}^c_{q,m} = [\text {D}^b_m, \text {T}] \in \mathbb {R}^{N\times (K_1+K_2)}\) , and \(\text {X}^c_{q,m} = [\text {X}_m^{b^\top },\text {S}^\top ]^\top \in \mathbb {R}^{(K_1+K_3)\times V}\) . Their respective representation matrices were denoted as \(\text {A}_m^c \in \mathbb {R}^{(K_1+K_2)\times K_1}\) and \(\text {B}_m^c \in \mathbb {R}^{K_1\times (K_1+K_3)}\) . From Fig. 1 , the m th subject fMRI dataset can be decomposed as
Although \(\text {B}_m^a\) did not exist for our model, it could if we consider the point spread functions 47 along with the pre-defined network templates 48 . If there existed inverse matrices \(\text {Q}_m^{-1}\) and \(\text {Z}_m^{-1}\) that could factorize PCA features to spatial and temporal components (source matrices) such that \(K>P\) , then the above equation can be further decomposed to
From the above equation, one can draw an analogy between PCA+ICA, PCA+Canonical correlation analysis and dictionary learning. We decomposed each subject’s data into principal components, prior information, and representation (mixing) matrices using the proposed approach. Equations ( 2 ), ( 4 ), and ( 6 ) can be used to learn some of these mixing matrices, and the remaining can be learned by considering the proposed model for sequential learning. It decomposed each subject’s data into a dictionary (a superposition of a low-rank and a sparse matrix \(\text {H}_m+\Psi _m\) ) and a sparse code. This is presented as
This model may lead to redundant decomposition because we are not interested in the respective spatial maps of the sparse matrix \(\Psi _m\) , which only contains background noise. Moreover, it has been observed that the least absolute shrinkage and selection operator (LASSO) method may not be entirely efficient 49 , and its outcomes for model selection may lack consistency 50 . To resolve this, an analogous matrix version of the adaptive LASSO penalty 50 was introduced in the above equation where a data-driven regularization parameter \(\lambda ^{k_1}_{3,j}\) was allocated to each entry of \(\text {x}^{c,k_1}_{m,j}\) . This would allow the application of a more significant amount of shrinkage to entries near zero and a lesser amount to entries with substantial values, resulting in improved outcomes. In terms of sparse representation matrices, dictionary decomposition constraint in the form of \(\text {D}_m^c = \text {H}_m+\Psi _m\) , and adaptive sparse penalty for a fairer assignment of penalty to each entry in \(\text {X}_m^c\) , the above model can be reformulated as
where \(\text {D}^c_m=\text {D}^c_{q,m}\text {A}_{m}^c\) and \(\text {X}^c_m=\text {B}_{m}^c\text {X}^c_{q,m}\) . This objective function decomposed each subject’s data into third tier dictionary, sparse code, and their associated RMs, while imposing sparsity constraint on the sparse code, sparsity constraint on the RMs, and a low-rank and a sparse matrix decomposition constraint on \(\text {D}^c_m\) . This approach allowed us to remove outliers from the recovered TCs and enhance the segregation of highly overlapped spatial maps. However, Eq. ( 8 ) is not convex with respect to unknown matrices \(\text {A}_{m}^c\) , \(\text {B}_{m}^c\) , \(\text {H}_{m}\) , and \(\Psi _{m}\) but convex with respect to each of them when the others are fixed. Also, solving this problem is intractable because the unknowns \(\text {H}_m\) and \(\Psi _m\) do not appear in the cost function. Therefore, we split this objective function into two separate optimization problems by exploiting their relationship through \(\text {D}^c_m=\text {D}^c_{q,m}\text {A}_{m}^c\) given as
The PALM algorithm 51 is a classical optimization method used in sparse BSS, which iteratively updates both the dictionary and the sparse code using proximal gradient steps. It can be deployed to solve Eq. ( 9 ). It was preferred in our case due to the non-convexity (the overall optimization problem is nonconvex) and non-smoothness (contains absolute value function) of Eq. ( 9 ). Its fast convergence was guaranteed because it was shown that the sequence generated by PALM has a finite length property due to Kurdyka-Lojasiewicz (KL) inequality 51 . Whereas, the ALM algorithm, which in fewer iterations achieved higher accuracy than accelerated proximal gradient 52 can be used to solve the convex PCP problem for robust PCA given by Eq. ( 10 ) by repeatedly updating the low rank (full rank in our case, the rank can be ensured by carefully selecting the threshold value), sparse matrix and the Lagrange multiplier matrix. Specifically, ignoring the constraints on the mixing matrices, Eq. ( 9 ) according to PALM can be solved as
where \(\mathscr {S}_{\tau }(\text {x})\) denotes the shrinkage operator given as \({\textrm sgn}(\text {x})\circ (|\text {x}|-\tau )_+\) , and \(\Pi _{\left\Vert .\right\Vert _2\le 1}\) is the proximal operator of the oblique constraint given as a normalization constraint on each dictionary atom. However, for a sequential atom-wise update above equations can be re-written as
where the data-driven tuning parameters \(\lambda ^{k_1}_{3,j}\) are obtained as \(\lambda _3^{\dagger }=\lambda _3\text {1}/\Big (\text {d}_{m,k_1}^{c^\top }(\text {Y}_m-\text {D}_{m}^c\text {X}_m^{c}+\text {d}_{m,k_1}^c\text {x}_m^{c,k_1})\Big )\) . Here \(\text {1}\) is the vector of ones. On the other hand Eq. ( 10 ), which is the principal component pursuit comprising the minimization of \(l_1\) and nuclear norm 52 can be solved by considering the augmented Lagrangian as
which boils down to the following closed-form solution
where \(\mathscr {D}_{\beta }(\mathscr {M})=\text {U}\mathscr {S}_{\beta }(\Sigma )\text {V}^\top \) is a singular value thresholding operator, while \(\mathscr {M} = \text {U}\Sigma \text {V}^\top \) is the SVD of \(\mathscr {M}\) , and \(\mathscr {S}_{\tau }(x)\) denotes the shrinkage operator given as \(\textrm{sgn}(x)\circ (|x|-\tau )_+\) . This strategy would allow to decompose \(\text {D}^c_m\) during each iteration of the algorithm into low-rank and sparse components to remove gross corruptions from each of its recovered time courses.
A block diagram of the multi-tier dictionary where first and second-tier learning extracted preliminary and intermediary components at low computational cost, enabling the third-tier learning to reconstruct the ground truth with high precision.
Since the proposed model (Eq. 8 ) was applied to many subjects, group-level analysis was also performed in addition to the subject-level data decomposition. This was accomplished by using neuroscience knowledge, which consisted of convolving task stimuli and the canonical HRF to construct modelled HRFs (MHRs) for task-related analysis, and acquiring resting-state network templates (RSNs) for resting-state analysis 53 . Firstly, the task-related group components were assembled by concatenating dictionary atoms/sparse codes using MHRs as \(\text {D}^c_r = [\text {d}^c_{1,j_1(r)}, \text {d}^c_{2,j_2(r)},\hdots ,\text {d}^c_{M,j_M(r)}]\) and \(\text {X}^c_r = \Big [\text {x}_1^{c,j_1(r)^\top }, \text {x}_2^{c,j_2(r)^\top },\hdots ,\text {x}_M^{c,j_M(r)^\top }\Big ]^\top \) . Secondly, the concatenated dictionary atoms and sparse codes were subjected to rank-1 decomposition, which was expressed as \( \frac{1}{M}[\text {D}^c_{r}\text {X}^c_r]=\omega _r\delta _r\gamma _r^\top \) , \(\text {d}^c_{g,r} = \omega _r\) , and \(\text {x}_{g}^{c,r} = \delta _r\gamma _r^\top \) .
Here \(r =\{1,\hdots ,R\}\) , the number of MHRs is denoted by R , the indices of the most associated atom in the m -th dictionary with the r -th MHR are indicated by \(j_m(r)\) , \(m=\{1,\hdots ,M\}\) , the group-level dictionary is \(\text {D}^c_g\) , the group-level sparse code is \(\text {X}^c_g\) , and the number of subjects is M . Alternatively, for the resting-state components, only sparse code is built as \(\Pi _r=\Big [\text {x}_1^{c,j_1(r)^\top }, \text {x}_2^{c,j_1(r)^\top }, \hdots , \text {x}_M^{c,j_M(r)^\top }\Big ]^\top \) and \(\text {x}_g^{c,r}=\frac{1}{M}\sum _{m=1}^{M} \pi _r^m\) .
Summing it all up, the TLSDL algorithm to solve the three-layered dictionary learning framework is presented in Fig. 2 . The third tier of the TLSDL algorithm for estimating robust dictionary and sparse code sequentially is described in Table 1 . In order to keep both recovered dynamics and prior information on equal footing, the MHRs, TCs, IBNs, and SMs were normalized, and the absolute values of IBNs and SMs were considered.
In the top row, spatial sources with moderate to significant overlaps are created by varying the size of twelve distinct activation blobs using seven different values of the spread parameter \(\rho \) , of which only five are shown, the first subfigure of the second row displays the SMs of the first subject and all unique sources from other subjects, while the other subfigures illustrate the position, shape, and variability of common spatial sources among subjects, as well as distinct spatial sources, and the first subfigure of the bottom row displays the respective TCs of the first subject and all unique sources from other subjects, while the other subfigures demonstrate the temporal variability of common sources, each with its own distinct temporal pattern, and unique temporal sources in the last subfigure.
This section evaluated and validated the proposed algorithm by comparing it to the existing state-of-the-art source retrieval data-driven algorithms. This was accomplished by means of fMRI based data analysis, for which, two different fMRI datasets were considered, (i) simulated fMRI dataset for six subjects created using Simtb toolbox 54 , and (ii) block design experimental fMRI dataset for eight participants acquired from quarter 3 release of the Human Connectome Project (HCP) 55 , 56 . Notably, the proposed algorithm is applicable to task-related and resting state fMRI data, but only task-related dataset results have been provided in the paper to avoid increasing its length. The results of the resting state dataset are submitted as part of the Supplementary Material .
The sparse group independent component analysis (sgICA) 20 , 57 , compressed online dictionary learning (CODL) 22 , adaptive consistent sequential dictionary (ACSD) 58 , sparse spatiotemporal blind source separation (ssBSS) method 28 , subject-wise sequential dictionary learning (swsDL) 19 , and subject-wise block dictionary learning (swbDL) 19 are incorporated along with the proposed three-layered sparse dictionary learning (TLSDL) in the comparison study. The effectiveness of each algorithm was assessed based on how successfully it retrieved the spatial and temporal ground truth using the synthetic and experimental fMRI datasets. All algorithms were implemented in Matlab.
In line with earlier fMRI research investigations 19 , 28 , a dataset of six individuals was generated in MATLAB using the Simtb toolbox to replicate the experimental fMRI data. The synthetic fMRI dataset was produced for six individuals, using twelve distinct temporal sources, each comprising 300 timepoints with a repetition time (TR) of 1 second and twelve different spatial sources, each containing a grid of 50 by 50 voxels. The synthetic brain was mapped using the source IDs \(\{3, 6, 8, 10, 22, 23, 26, 30, 4, 12, 5, 29\}\) to produce spatial components. For each individual, a total of seven spatiotemporal sources were used to generate the fMRI data from the source signals. As elaborated in 25 , the first six spatiotemporal sources were universally seen in all six subjects, although with some degree of intersubject variability. Conversely, the last six sources were distinct, with each subject being assigned one.
Correlation values shown with respect to GT-SMs for ( a,b ) subject-wise analysis computed over 7 source components, 6 subjects, 30 realizations, and 3 temporal noise variance cases, and ( c,d ) group-level analysis computed over 7 components, 30 realizations and 3 temporal noise variance case. In both cases, the deviation from the mean values has been plotted as error bars. \(\rho \) values along the x-axis indicate the extent of spatial overlap.
The HRF parameters, including delay, response dispersion, and undershoot, were modified with respect to shared temporal sources to introduce variability across subjects. Similarly, the variability across subjects for the common spatial maps was created by adjusting the parameters of the Gaussian distribution, namely the mean ( \(\mu \) ) and the deviation from the mean ( \(\sigma \) ). These parameters allowed for manipulation of the activations’ direction, position, and spread. This was achieved by applying a random translation with a mean of 0 and a standard deviation of 1 in both the x and y axes, a random rotation with a mean of 0 and a standard deviation of 0.9, and a random scaling with a mean of \(\rho \) and a standard deviation of 0.05, as seen in the middle row of Fig. 3 . The spread parameter, denoted by \(\rho \) , determines the structural range of the activations and generates seven unique instances of spatial overlaps. The values of \(\rho \) are \(\{3,6,9,12,15,18,21\}\) , representing the Gaussian distribution’s mean. The top row of Fig. 3 shows the spatial sources range, demonstrating a degree of interdependence from moderate to large.
The first subject contributes to the six common and one distinct sources, while the next five subjects each provide one distinct spatiotemporal sources. These sources were concatenated to create the ground truth time courses (TCs) and spatial maps (SMs) for group-level analysis, as seen in the left most column and bottom two rows of Fig. 3 serving as the primary case for the ground truth. The following subfigures illustrate the temporal and spatial sources used to generate each of the six datasets, represented by the equation \(\text {Y}_m=\sum _{i=1}^{7}(\text {tc}_i+\psi _i)(\text {sm}^i+\phi ^i)\) . The noise-generating matrices, \(\Psi \in \mathbb {R}^{300\times 7}\) and \(\Phi \in \mathbb {R}^{7\times 2500}\) , were created using Laplacian distributions with parameters \(\mathscr {L}(0,\,n_t)\) and \(\mathscr {L}(0,\,0.01)\) , respectively. All datasets were generated using Laplacian noise and some outliers were manually added at time points 60, 120, 180, 240. Subsequently, the datasets \(\text {Y}_{m=1}^M\) (with \(M=6\) ) were created and used by all source retrieval methods, contingent upon the values of \(\rho \) , \(n_t\) , and trial number.
( A ) Spatial and temporal sources that were artificially generated, ( B ) spatial and temporal sources retrieved using swsDL, and ( C ) spatial and temporal sources restored using TLSDL. The absolute temporal and spatial correlation ( \(\gamma \) ) are shown for each source, with the total sum of correlation values on the left side. The red circles on the temporal sources derived from swsDL indicate the outliers that were effectively suppressed by TLSDL but were not reduced in intensity by swsDL.
The same parameter values were used across all algorithms to provide an impartial comparison wherever feasible. In the case of sgICA and CODL, the desired number of components to be obtained was determined as 12 since they were applied to the grouped/concatenated data where 18 components were retained using the subject-wise PCA. However, in the case of other algorithms, it was acknowledged that the exact number of underlying sources for experimental fMRI data is unknown. Consequently, more components were allowed to be trained for the simulated dataset instead of learning an equal number of components as the number of generating sources. The components were configured to a value of 12 for ACSD, ssBSS, swsDL, and TLSDL, and these values were applied on a per-subject basis. These algorithms, including CODL, were executed for a total of 30 iterations. The optimal initialization for each method was determined by evaluating the initialization scenario utilizing the data, random number generator, and DCT bases separately. The ssBSS method used random numbers generated from the standard normal distribution, whereas the ACSD, swsDL, and TLSDL algorithms employed DCT bases, and CODL utilized initialization from the concatenated data.
We conducted several trials with various tuning parameter configurations. We selected the ones that produced the most favourable outcomes in terms of the similarity between the ground truth and the estimated sources. In the case of sgICA, twelve components were preserved after the second PCA reduction, although the first PCA yielded 18 components for each participant. The best values for sparsity and smoothing in the case of sgICA were found to be 3 and 50000, respectively. The tuning parameters for ssBSS were set as \(\zeta _1=60\) , \(\lambda _1=3\) , \(K_p=150\) , \(K=14\) , and \(P=7\) . The best sparsity parameter for ACSD was found to be 12. The best tuning parameters for swbDL were found to be \(\lambda _2=8\) , \(\alpha =100\) and \(K_1=12\) . The optimal tuning parameters for swsDL were determined to be \(\zeta _2=\zeta _3=24\) , \(\lambda _2=16\) , and \(K=12\) . The optimal parameters for TLSDL were found to be \(\zeta _2=\zeta _3=8\) , \(\lambda _3=8\) , \(\lambda _4=0.1\) , \(\alpha =150\) , and \(K_1=12\) .
The process of generating the synthetic dataset and learning from it using the participating algorithms was done several times for various instances of noise and spatial overlap to showcase the resilience and reliability of the proposed algorithm. In order to accomplish this, the experiment was repeated under the following conditions: (i) three different variance values (the square of the standard deviation) of the temporal noise, denoted as \(n_t=\{0.6, 0.9, 1.2\}\) , (ii) seven values of \(\rho \) ranging from 3 to 21, which were gradually increased to enlarge the activation overlaps as depicted in the top row of Fig. 3 , and (iii) a total of 30 trials.
Furthermore, the source recovery was conducted for both subject-level and group-level analysis. The underlying source TCs/SMs were acquired by selecting the indices with the greatest correlation values after correlating each algorithm’s trained dictionary atoms/sparse code rows with the ground truth TCs/SMs. The correlation values were calculated based on the ground truth SMs (GT-SMs) and were stored as cTC/sSM. For each of the participating algorithms and seven instances of spatial overlap, we calculated and saved mcTC/mcSM, which is the average of the cTC/cSM values over all seven spatiotemporal sources, three realizations of temporal noise, and thirty trials of the experiment. For both temporal and spatial sources, the mean of mcTC/mcSM values over 6 subjects is plotted in Fig. 4 a, b in the case of subject-wise analysis, and just the mcTC/mcSM values in the case of group-level analysis, because there was no need for the calculation of mean of correlation values over the subjects. Figure 5 shows the results of component-wise analysis related to the experiment that was repeated for \(\rho =8\) and \(n_t=0.6\) using swsDL and TLSDL to highlight the strength of the proposed algorithm. Figure 6 displays the pace at which the suggested algorithms converge and the evolution of average correlation values as a function of the number of algorithm iterations. It also shows the values recovered by the sparse matrix \(\Psi _m\) during the tenth iteration for the first subject.
Based on the number of times the algorithm is run, the average of the ( a ) correlation values for all spatiotemporal sources and ( b ) convergence rate. The deviation from the mean values has also been plotted as error bars. Temporal background noise recovered by the sparse matrix during the tenth iteration of the algorithm is shown in subfigure ( c ).
Based on the results shown in Fig. 4 , it can be inferred that the proposed TLSDL repeatedly achieved better results than all other algorithms in various source recovery situations comprising spatial/temporal features, subject-wise/group-level analysis, and instances involving different spatial overlaps. By also taking Table 2 into account, it was revealed that TLSDL had superior recovery performance for all spatiotemporal sources without exception. Despite the rise in noise intensity and spatial overlaps, its performance remained superior to all other competing algorithms. Its competitor swsDL came in second place for the subject-wise analysis. It retained its place as the runner-up for both subject-wise and group-level analysis. Surprisingly, ssBSS, in the case of spatial source recovery, outperformed ACSD, CODL, and sgICA when spatial overlaps started to increase. Furthermore, it is worth noting that the proposed algorithm consistently exhibited a considerably higher level of performance for both subject-wise and group-level analysis without exception.
Figure 4 further revealed that the TLSDL algorithm consistently outperformed all other algorithms when it came to source recovery circumstances for both spatial/temporal feature instances and spatial overlap cases. It had the highest recovery rate, despite the fact that there was a significant degree of spatial dependency among sources and a high amount of temporal noise. It is important to note that despite the fact that its retrieval capability reduced as the number of spatial overlaps increased, it continued to retain its greater recovery performance. In contrast, the swsDL method came out on top as a runner-up, despite the fact that it had relatively lower deviations from the mean correlation value for both the spatial and temporal recovery scenarios than TLSDL. The ssBSS method, much like the swsDL algorithm, displayed reduced standard deviations; nonetheless, the findings of its mean correlation were not very spectacular. Overall, as spatial overlaps kept increasing, the TLSDL algorithm performance stayed relatively better.
The visual cue ( A ), left toe ( B ), left finger ( C ), right toe ( D ), right finger ( E ), and tongue ( F ) movement tasks of the block design dataset were analyzed using five different methods: ( a ) CODL, ( b ) ACSD, ( c ) swbDL, ( d ) swsDL, and ( e ) TLSDL. The extracted common activation maps were thresholded at a significance level of \(p<0.001\) using random field correction. The correlation values that correspond to these spatial maps are provided in Table 3 .
Based on the information provided in Fig. 5 C, it can be inferred that TLSDL effectively eliminated all outliers and, as a result, achieved a better overall temporal correlation strength compared to swsDL. In addition to this, one can also observe that SMs recovered by TLSDL had better correlation strength because of its higher capability of segregating spatial maps.
Figure 6 c shows the background noise eliminated from dictionary atoms during the tenth iteration of the algorithm. It clearly clipped the outliers from the TCs. It can be deduced from the data shown in Fig. 6 b that both the TLSDL algorithm and the swsDL approach converged at an equal pace. This tendency was also seen in Fig. 6 a, where it was observed that the correlation strength for both TLSDL and swsDL practically stopped rising after the tenth iteration. On the other hand, when the number of iterations increased, both ACSD and ssBSS continued to demonstrate progress in source recovery, although the ssBSS technique converged slowly.
A source-wise group-level analysis was performed using 30 trials, 3 temporal noise instances, and 7 spatial dependence situations on 6 algorithms, and the findings are shown in Table 2 . In general, it is clear from this data that TLSDL emerged as the victor in the source recovery of each spatiotemporal component, with swsDL coming in as the runner-up.
The motor task’s 3T MRI raw block design dataset was acquired from the HCP’s quarter 3 release. The experimental specifics may be found in the reference 19 , 55 , 56 . The dataset, which depicts the brain’s motor cortex, was obtained during a 204-second experiment. The experiment provided the participants with instructions to react to visual stimuli by tapping either their right or left fingers, pinching their right or left toes, or moving their tongues. Participants performed a specific motor task lasting 12 seconds after a three-second visual cue. A total of ten movement tasks were taken into account, including two tongue motions, movements of the left and right fingers, and movements of the left and right toes. There were a total of 13 blocks, three of which were fixation blocks lasting for 15 seconds each. Six simulated MHRs were generated using the standard hemodynamic response function and task stimuli associated with five distinct forms of movement: tongue (T), left toe (LT), right toe (RT), left finger (LF), right finger (RF), and visual type cue (VC). The purpose was to get accurate ground truth time courses (TCs). After normalisation, these six MHRs were also stored in the matrix \(\text {T}\) to be used by the propose method.
The fMRI scan for each individual was acquired using a Siemens 3 Tesla (3T) scanner. The following were the acquisition parameters: The data acquisition parameters for the MRI scan are as follows: there were 72 consecutive slices with isotropic voxels measuring \(2 \ \textrm{mm}\) each. The echo time (TE) is \(33.1 \ \textrm{ms}\) , the repetition time (TR) is \(0.72 \ \textrm{s}\) , and the field of view (FOV) is \(208 \times 180 \ \textrm{mm}\) . The flip angle (FA) is 52 \(^\circ \) , and the matrix size is 104 by 90. The slice thickness is 2 mm, and the echo spacing is \(0.58 \ \textrm{ms}\) . A total of 284 EPI volumes were collected, and the first five scans were discarded. The dataset used in our analysis comprised eight people, ages spanning from 22 to 35.
The block design dataset was preprocessed using the SPM-12 toolbox 4 , as mentioned in the paper 19 . The dataset’s preparation processes, which include masking, realignment, normalizing, and spatial smoothing, are extensively described in 25 , 59 . To mitigate motion artifacts, functional images were aligned with the first image. Subsequently, all images were subjected to spatial smoothing using a Gaussian kernel with a full-width at half-maximum (FWHM) of \(6\times 6 \times 6\) \(\textrm{mm}^3\) . This was done after spatial normalization to a Tailarach template and resampling to \(2 \times 2 \times 2\) \(\textrm{mm}^3\) voxels. Next, an endeavour was made to exclude data beyond the scalp during the masking phase. The dataset with four dimensions was then transformed and saved as a two-dimensional matrix called \(\text {Y}\) for each subject to be regarded as a complete brain dataset.
After completing this phase, a dataset \(\text {Y}\) was generated with a size of \(279 \times 236115\) for the m -th subject, where m ranges from 1 to 8. Subsequently, temporal filtering was implemented on the \(\text {Y}\) matrix derived from all individuals. This included the implementation of a low-pass filter using FWHM to eliminate high-frequency physiological noise and a high-pass filter utilizing DCT to eliminate low-frequency trends. An FWHM cutoff of 1 second and a DCT filter cutoff of 1/150 Hz were used. Following the previously explained methodology, the variable \(\text {Y}\) was normalized to have a mean of zero and a variance of one.
The group-level activation maps using five different methods: ( a ) CODL, ( b ) ACSD, ( c ) swbDL, ( d ) swsDL, and ( e ) TLSDL that were threshold using a random field correction with a significance level of \(p<0.001\) . The activation maps were derived for six different templates: ( A ) medial visual, ( B ) occipital pole visual, ( C ) lateral visual, ( D ) default mode network, ( E ) frontoparietal right, and ( F ) frontoparietal left.The correlation values corresponding to these spatial maps are reported in Table 3 .
We experimented with a diverse array of tuning parameter combinations. The ones that yielded the most accurate results in terms of the degree of similarity between the recovered sources and the ground truth were considered. The dictionary initialization process used concatenated data, random numbers, and DCT bases for CODL, ssBSS, and ACSD/swbDL/swsDL/TLSDL, respectively. These initializations were agreed upon after testing each for the competing algorithms. The dictionary learning algorithms were executed for 15 iterations, except for the CODL and ssBSS algorithms, which were executed for 30 iterations due to their slow convergence.
During the process of dimensionality reduction for sgICA, a total of 100 components were preserved after using PCA for the first time. Subsequently, when PCA was used for the second time, only 60 components were maintained. The exact number of components was also retrieved using sgICA. The sparsity parameter for sgICA was set to 5, while the smoothing value was set at 50000. For the ssBSS algorithm, a total of 60 components were selected from the PCA, and 40 of them were retained, and its remaining parameters were assigned the values of \(\lambda _1=16\) , \(\zeta _1=50\) , \(K_p=60\) , \(K=60\) , \(P=40\) . The CODL training process included training 70 dictionary atoms, with a sparsity parameter set to 6 and a batch size set to the data dimension. The ACSD algorithm was used to train 40 dictionary atoms for each subject, with a sparsity parameter set to 60. Both swbDL and swsDL were trained using a total of 40 atoms. The tuning parameters for swbDL were set as \(\lambda _2=12\) and \(\alpha =3000\) , while for swsDL, the tuning parameters were set as \(\zeta _2=\zeta _3=48\) and \(\lambda _2=25\) . The optimal parameters for TLSDL were found to be \(\lambda _4=0.15\) , \(\alpha =150\) , \(\lambda _3=12\) , \(\zeta _2=\zeta _3=8\) , and \(K_1=40\) .
In this section, the unavailability of task-related activation maps prompted us to use temporal analysis with six created MHRs as our chosen method of investigation. Similarly, we used Smith’s templates because resting state networks (RSNs) do not include temporal profiles. These MHRs and RSNs also became the entries of matrices \(\text {T}\) and \(\text {S}\) , respectively. Both subject-wise and group-level techniques served as the basis for the study; however, for the sake of this article, we will only be discussing group-level analysis. When doing the subject-wise analysis, the TCs and SMs for each subject obtained from ACSD, swbDL, swsDL, and TLSDL were considered. Meanwhile, group-level TCs and SMs were trained for CODL and sgICA, and the individual TCs/SMs were obtained through back reconstruction. On the other hand, the group-level TCs and SMs produced by each competing algorithm were used as a reference for the group-level evaluation. The common TCs and SMs for ACSD, swbDL, swsDL, and TLSDL were extracted for the purpose of group-level analysis. The discussions in the subsection on group-level TLSDL were used to extract these TCs and SMs. Ultimately, these common TCs were correlated with MHRs and averaged SMs were correlated with RSNs. We retained the atoms and sparse codes with the most significant correlation values. One may consult the ideas mentioned in 25 to get further information on this extraction.
Only a limited number of activation maps and temporal dynamics have been shown to avoid prolonging the study, even though there were quite a few of them for the block design dataset. Figure 7 shows a series of two-dimensional images blended to illustrate three-dimensional volume for various group-level movement activities. Similarly, the results of the resting-state study, in this instance, only represent a subset of the total. For example, refer to Fig. 8 , which presents the SMs for the first four and last two resting state network templates. According to the data shown in Table 3 , the proposed TLSDL algorithm surpassed all other algorithms in terms of overall performance. It generated atoms and sparse codes with the greatest correlation with the ground truth, while the swsDL algorithm came in second place. The TLSDL algorithm successfully recovered all task-related and resting-state networks with highest specificity.
The spatial maps shown in Fig. 7 make it abundantly evident that, in comparison to the activations discovered by other approaches, the activations discovered by swbDL, swsDL, and TLSDL are more exclusively confined to the motor area. According to Table 3 , it is possible to assert that, when considering correlation values, TLSDL yielded superior results compared to the other approaches. This was also supported graphically by Fig. 8 , demonstrating that the resting state networks recovered by TLSDL were more specific and consistent in terms of sensitivity than those generated by other methods.
The correlation strength accumulation and convergence rate of the CODL, ACSD, swbDL, swsDL, and TLSDL algorithms are shown in Fig. 9 , which is presented in terms of algorithm iterations. From this vantage point, it is clear that the TLSDL algorithm gradually gained an advantage over its contenders. The outliers recovered by the TLSDL in the sparse matrix for the first subject during the fifteenth iteration are also shown in this figure.
The mean ( a ) correlation values, and ( b ) convergence rate for subject-wise dictionary learning calculated as a function of algorithm iterations. Temporal background noise recovered by the sparse matrix during the fifteenth iteration of the algorithm is shown in subfigure ( c ).
A novel multi-tier semi-blind (hypothesis and data-driven) approach that ameliorates subject-wise dictionary learning has been presented in this paper. Using sparse assumption, three types of learning approaches that are (i) reduced dimension, (ii) block-wise, and (iii) sequential, realized in a multi-tier framework, allowed the extraction of spatial and temporal components that were more comparable to the ground truth and produced better group-level and subject-wise atoms/sparse codes. This is probably because components with significant spatial overlaps have higher chances of segregation when the prior information and outliers removal scheme, in addition to sparse assumption, are incorporated into the model. The primary advantage of this proposed strategy is that, in contrast to swsDL, it recovers very localized fMRI networks and produces noise-free dictionary atoms. It achieves this at the cost of slightly more computational complexity. Like swsDL, it can be used for both resting-state connectivity analysis and task-related activation detection of fMRI datasets. However, this paper has not considered resting-state experimental data to avoid increasing the paper length.
Moreover, the proposed algorithm deploys a unique technique for subject-wise BSS by using the underlying spatiotemporal dynamics from several subjects and prior information in a multi-tier manner while avoiding redundancy at every level. This approach allows for the inclusion of comparable components from the reduced-dimension space in order to exploit the spatiotemporal heterogeneity offered by other subjects, resulting in increased statistical power of the recovered components, which are adequately separated from each other. When combined with prior information, these components result in even better segregation in the presence of high spatial dependence. When integrated with outlier removal scheme, the recovered TCs show promising resemblance with the ground truth. The proposed model draws an analogy between PCA+ICA and dictionary learning (PCA+RMs), emphasising the training of spatiotemporal representation matrices at three layers using PCA based components. The efficacy of the suggested approach has been shown using both synthetic and experimental fMRI datasets, and its performance is found to be robust and consistent across datasets. Empirically, it is shown that the TLSDL algorithm achieved convergence for all cases, and can be considered a plausible alternative to swsDL.
The experimental fMRI datasets used in this study are open-access and shared on the human connectome website. The Matlab code implemented for this study will be available from the corresponding author upon reasonable request.
Friston, K. J. Modalities, modes, and models in functional neuroimaging. Science 326 , 399–403. https://doi.org/10.1126/science.1174521 (2009).
Article ADS PubMed Google Scholar
Huang, J. et al. Learning shared neural manifolds from multi-subject FMRI data. In EEE International Workshop on Machine Learning for Signal Processing (MLSP) . 01–06 (2022).
Aguirre, G. K., Zarahn, E. & D’esposito, M. The variability of human, BOLD hemodynamic responses. Neuroimage 8 , 360–369. https://doi.org/10.1006/nimg.1998.0369 (1998).
Article PubMed Google Scholar
Penny, W., Friston, K., Ashburner, J., Kiebel, S. & Nichols, T. Statistical Parametric Mapping: The Analysis of Functional Brain Images (Academic Press, 2007).
Moussaoui, S., Brie, D., Caspary, O. & Mohammad-Djafari, A. A Bayesian method for positive source separation. In IEEE International Conference on Acoustics, Speech, and Signal Processing . vol. 5. V-485 (2004).
Hyvärinen, A. & Oja, E. Independent component analysis: Algorithms and applications. Neural Netw. 13 , 411–430. https://doi.org/10.1016/S0893-6080(00)00026-5 (2000).
Zhuang, X., Yang, Z. & Cordes, D. A technical review of canonical correlation analysis for neuroscience applications. Human Brain Mapp. 41 , 3807–3833. https://doi.org/10.1002/hbm.25090 (2020).
Article Google Scholar
Aharon, M., Elad, M. & Bruckstein, A. K-SVD: An algorithm for designing overcomplete dictionaries for sparse representation. IEEE Trans. Signal Process. 54 , 4311–4322. https://doi.org/10.1109/TSP.2006.881199 (2006).
Article ADS Google Scholar
Khalid, M. U. & Seghouane, A.-K. Constrained maximum likelihood based efficient dictionary learning for fMRI analysis. In IEEE International Symposium on Biomedical Imaging (ISBI) . 45–48 (2014).
Khalid, M. U. & Seghouane, A.-K. Unsupervised detrending technique using sparse dictionary learning for fMRI preprocessing and analysis. In 2015 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) . 917–921 (2015).
Khalid, M. U. & Seghouane, A.-K. Multi-subject fMRI connectivity analysis using sparse dictionary learning and multiset canonical correlation analysis. In IEEE International Symposium on Biomedical Imaging (ISBI) . 683–686 (2015).
McKeown, M. J. et al. Spatially independent activity patterns in functional MRI data during the stroop color-naming task. Proc. Natl. Acad. Sci. USA 95 , 803–810. https://doi.org/10.1073/pnas.95.3.803 (1998).
Article ADS PubMed PubMed Central Google Scholar
Friman, O., Borga, M., Lundberg, P. & Knutsson, H. Exploratory fMRI analysis by autocorrelation maximization. Neuroimage 16 , 454–464. https://doi.org/10.1006/nimg.2002.1067 (2002).
Khalid, M. U., Shah, A. & Seghouane, A.-K. Adaptive 2DCCA based approach for improving spatial specificity of activation detection in functional MRI. In International Conference on Digital Image Computing Techniques and Applications (DICTA) . 1–6 (2012).
Khalid, M. U. & Seghouane, A.-K. Improving functional connectivity detection in fMRI by combining sparse dictionary learning and canonical correlation analysis. In IEEE International Symposium on Biomedical Imaging . 286–289 (2013).
Shah, A., Khalid, M. U. & Seghouane, A.-K. Comparing causality measures of fMRI data using PCA, CCA and vector autoregressive modelling. In International Conference of the IEEE Engineering in Medicine and Biology Society . 6184–6187 (2012).
Khalid, M. U., Shah, A. & Seghouane, A.-K. Sparse dictionary learning for fMRI analysis using autocorrelation maximization. In Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC) . 4286–4289 (2015).
Lin, W., Wu, H., Liu, Y., Lv, D. & Yang, L. A CCA and ICA-based mixture model for identifying major depression disorder. IEEE Trans. Med. Imaging 36 , 745–756. https://doi.org/10.1109/TMI.2016.2631001 (2017).
Khalid, M. U. & Nauman, M. M. A novel subject-wise dictionary learning approach using multi-subject fMRI spatial and temporal components. Sci. Rep. 13 , 20201. https://doi.org/10.1038/s41598-023-47420-1 (2023).
Calhoun, V. D., Adali, T., Pearlson, G. D. & Pekar, J. J. A method for making group inferences from functional MRI data using independent component analysis. Hum. Brain Mapp. 14 , 140–151. https://doi.org/10.1002/hbm.1048 (2001).
Article PubMed PubMed Central Google Scholar
Varoquaux, G., Gramfort, A., Pedregosa, F., Michel, V. & Thirion, B. Multi-subject dictionary learning to segment an atlas of brain spontaneous activity. Inf. Process Med. Imaging 22 , 562–573. https://doi.org/10.1007/978-3-642-22092-0_46 (2011).
Mensch, A., Varoquaux, G. & Thirion, B. Compressed online dictionary learning for fast resting-state fMRI decomposition. In 2016 IEEE 13th International Symposium on Biomedical Imaging (ISBI) . 1282–1285 (2016).
Iqbal, A. & Seghouane, A.-K. A dictionary learning algorithm for multi-subject fMRI analysis based on a hybrid concatenation scheme. Digital Signal Process. 83 , 249–260. https://doi.org/10.1016/j.dsp.2018.09.007 (2018).
Iqbal, A., Seghouane, A.-K. & Adali, T. Shared and subject-specific dictionary learning (ShSSDL) algorithm for multisubject fMRI data analysis. IEEE Trans. Biomed. Eng. 65 , 2519–2528. https://doi.org/10.1109/TBME.2018.2806958 (2018).
Khalid, M. U. Sparse group bases for multisubject fMRI data. IEEE Access 10 , 83379–83397. https://doi.org/10.1109/ACCESS.2022.3194651 (2022).
Han, Y. et al. Low-rank Tucker-2 model for multi-subject fMRI data decomposition with spatial sparsity constraint. IEEE Trans. Med. Imag. 41 , 667–679. https://doi.org/10.1109/TMI.2021.3122226 (2022).
Chen, P.-H. C. et al. A reduced-dimension fMRI shared response model. In Advances in Neural Information Processing Systems . Vol. 28 (Curran Associates, Inc., 2015).
Khalid, M. U., Khawaja, B. A. & Nauman, M. M. Efficient blind source separation method for fMRI using autoencoder and spatiotemporal sparsity constraints. IEEE Access 11 , 50364–50381. https://doi.org/10.1109/ACCESS.2023.3277543 (2023).
Hu, D. et al. Unified SPM-ICA for fMRI analysis. Neuroimage 25 , 746–755. https://doi.org/10.1016/j.neuroimage.2004.12.031 (2005).
Calhoun, V. D., Adali, T., Stevens, M. C., Kiehl, K. A. & Pekar, J. J. Semi-blind ICA of fMRI: A method for utilizing hypothesis-derived time courses in a spatial ICA analysis. Neuroimage 25 , 527–538. https://doi.org/10.1016/j.neuroimage.2004.12.012 (2005).
Wang, Z., Xia, M., Jin, Z., Yao, L. & Long, Z. Temporally and spatially constrained ICA of fMRI data analysis. PLoS One 9 , e94211. https://doi.org/10.1371/journal.pone.0094211 (2014).
Daubechies, I. et al. Independent component analysis for brain fMRI does not select for independence. Proc. Natl. Acad. Sci. USA 106 , 10415–10422. https://doi.org/10.1073/pnas.0903525106 (2009).
Lee, K., Tak, S. & Ye, J.C. A data-driven sparse GLM for fMRI analysis using sparse dictionary learning with MDL criterion. IEEE Trans. Med. Imaging 30 , 1076–1089 https://doi.org/10.1109/TMI.2010.2097275 (2011).
Seghouane, A.-K. & Khalid, M. U. Hierarchical sparse brain network estimation. In 2012 IEEE International Workshop on Machine Learning for Signal Processing . 1–6 (2012).
Seghouane, A.-K. & Khalid, M. U. Learning dictionaries from correlated data: Application to fMRI data analysis. In IEEE International Conference on Image Processing (ICIP) . 2340–2344 (2016).
Zhao, S. et al. Supervised dictionary learning for inferring concurrent brain networks. IEEE Trans. Med. Imaging 34 , 2036–2045. https://doi.org/10.1109/TMI.2015.2418734 (2015).
Long, Z., Liu, L., Gao, Z., Chen, M. & Yao, L. A semi-blind online dictionary learning approach for fMRI data. J. Neurosci. Methods 323 , 1–12. https://doi.org/10.1016/j.jneumeth.2019.03.014 (2019).
Morante, M., Kopsinis, Y., Theodoridis, S. & Protopapas, A. Information assisted dictionary learning for fMRI data analysis. IEEE Access 8 , 90052–90068. https://doi.org/10.1109/ACCESS.2020.2994276 (2020).
Liu, H. et al. ADCoC: Adaptive distribution modeling based collaborative clustering for disentangling disease heterogeneity from neuroimaging data. IEEE Trans. Emerg. Top. Comput. Intell. 7 , 308–318. https://doi.org/10.1109/TETCI.2021.3136587 (2023).
Lu, C., Shi, J. & Jia, J. Online robust dictionary learning. In 2013 IEEE Conference on Computer Vision and Pattern Recognition . 415–422 https://doi.org/10.1109/CVPR.2013.60 (2013).
Jiang, W., Nie, F. & Huang, H. Robust dictionary learning with capped l1-norm. In Proceedings of the 24th International Conference on Artificial Intelligence , IJCAI’15. 3590–3596 (AAAI Press, 2015).
Iqbal, A. & Seghouane, A.-K. Robust dictionary learning using \(\alpha \) -divergence. In ICASSP 2019—2019 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP) . 2972–2976 https://doi.org/10.1109/ICASSP.2019.8683210 (2019).
Seghouane, A.-K. & Iqbal, A. Basis expansion approaches for regularized sequential dictionary learning algorithms with enforced sparsity for fMRI data analysis. IEEE Trans. Med. Imaging 36 , 1796–1807. https://doi.org/10.1109/TMI.2017.2699225 (2017).
Stone, M. An asymptotic equivalence of choice of model by cross-validation and Akaike’s criterion. J. R. Stat. Soc. Ser. B (Methodol.) 39 , 44–47 (1977).
von Neumann, J. Functional Operators Volume 2: The Geometry of Orthogonal Spaces. (Princeton University Press, 1951).
Lin, Z., Chen, M. & Ma, Y. The augmented Lagrange multiplier method for exact recovery of corrupted low-rank matrices. J. Struct. Biol. 181 , 116–127 https://doi.org/10.1016/j.jsb.2012.10.010 (2013).
Progress in Optics (Elsevier, 2008).
Vanasse, T. J. et al. BrainMap VBM: An environment for structural meta-analysis. Hum. Brain Mapp. 39 , 3308–3325. https://doi.org/10.1002/hbm.24078 (2018).
Fan, J. & Li, R. Variable selection via nonconcave penalized likelihood and its oracle properties. J. Am. Stat. Assoc. 96 (1348–1360), 3085904 (2001).
MathSciNet Google Scholar
Zou, H. The adaptive Lasso and its oracle properties. J. Am. Stat. Assoc. 101 , 1418–1429. https://doi.org/10.1198/016214506000000735 (2006).
Article MathSciNet Google Scholar
Bolte, J., Sabach, S. & Teboulle, M. Proximal alternating linearized minimization for nonconvex and nonsmooth problems. Math. Prog. 146 , 459–494. https://doi.org/10.1007/s10107-013-0701-9 (2014).
Candes, E. J., Li, X., Ma, Y. & Wright, J. Robust Principal Component Analysis? https://doi.org/10.48550/arXiv.0912.3599 (2009).
Smith, S. M. et al. Correspondence of the brain’s functional architecture during activation and rest. Proc. Natl. Acad. Sci. 106 , 13040–13045. https://doi.org/10.1073/pnas.0905267106 (2009).
Erhardt, E., Allen, E., Wei, Y., Eichele, T. & Calhoun, V. SimTB, a simulation toolbox for fMRI data under a model of spatiotemporal separability. NeuroImage 59 , 4160–7. https://doi.org/10.1016/j.neuroimage.2011.11.088 (2011).
Van Essen, D. C. et al. The human connectome project: A data acquisition perspective. Neuroimage 62 , 2222–2231 (2012).
Barch, D. M. et al. Function in the human connectome: Task-fMRI and individual differences in behavior. Neuroimage 80 , 169–189. https://doi.org/10.1016/j.neuroimage.2013.05.033 (2013).
Boukouvalas, Z., Levin-Schwartz, Y., Calhoun, V. D. & Adalı, T. Sparsity and independence: Balancing two objectives in optimization for source separation with application to fMRI analysis. J. Franklin Inst. 355 , 1873–1887. https://doi.org/10.1016/j.jfranklin.2017.07.003 (2018).
Seghouane, A.-K. & Iqbal, A. Consistent adaptive sequential dictionary learning. Signal Process. 153 , 300–310. https://doi.org/10.1016/j.sigpro.2018.07.018 (2018).
Khalid, M. U. Dictionary Learning Algorithms for Functional Magnetic Resonance Imaging . Ph.D. thesis, Australian National University (2015).
Download references
The work presented in the article is financially supported by Universiti Brunei Darussalam, Brunei Darussalam, through its University Research Grant scheme (grant number: UBD/RSCH/1.3/FICBF(b)/2022/019) The block design fMRI data was provided [in part] by the Human Connectome Project, WU-Minn Consortium (Principal Investigators: David Van Essen and Kamil Ugurbil; 1U54MH091657) funded by the 16 NIH Institutes and Centers that support the NIH Blueprint for Neuroscience Research; and by the McDonnell Center for Systems Neuroscience at Washington University.
Authors and affiliations.
College of Computer and Information Sciences, Imam Mohammad Ibn Saud Islamic University, 11564, Riyadh, Saudi Arabia
Muhammad Usman Khalid & Sheeraz Akram
Faculty of Integrated Technologies, Universiti Brunei Darussalam, Bandar Seri Begawan, BE1410, Brunei
Malik Muhammad Nauman & Kamran Ali
You can also search for this author in PubMed Google Scholar
Idea, Conception, Methods, Implementation: Muhammad Usman Khalid Experiments: Sheeraz Akram Supervision, Management: Malik Muhammad Nauman Funding, Management: Kamran Ali All authors reviewed the manuscript.
Correspondence to Kamran Ali .
Competing interests.
The authors declare no competing interests.
Publisher's note.
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Supplementary information., rights and permissions.
Open Access This article is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License, which permits any non-commercial use, sharing, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if you modified the licensed material. You do not have permission under this licence to share adapted material derived from this article or parts of it. The images or other third party material in this article are included in the article’s Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article’s Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by-nc-nd/4.0/ .
Reprints and permissions
Cite this article.
Khalid, M.U., Nauman, M.M., Akram, S. et al. Three layered sparse dictionary learning algorithm for enhancing the subject wise segregation of brain networks. Sci Rep 14 , 19070 (2024). https://doi.org/10.1038/s41598-024-69647-2
Download citation
Received : 14 March 2024
Accepted : 07 August 2024
Published : 17 August 2024
DOI : https://doi.org/10.1038/s41598-024-69647-2
Anyone you share the following link with will be able to read this content:
Sorry, a shareable link is not currently available for this article.
Provided by the Springer Nature SharedIt content-sharing initiative
By submitting a comment you agree to abide by our Terms and Community Guidelines . If you find something abusive or that does not comply with our terms or guidelines please flag it as inappropriate.
Sign up for the Nature Briefing: AI and Robotics newsletter — what matters in AI and robotics research, free to your inbox weekly.
The utility and impact of this technology depends on the data that goes into it.
AI does not need to fail on a global scale to cause enormous damage — to individuals, companies, and societies. Models frequently get things wrong, hallucinate, drift, and can collapse. Good AI comes from good data, but data quality is an enormous organization-wide issue (and opportunity), yet most companies have neglected it. Companies need to understand the nuances of the problem they’re trying to solve, get the data right (both by having the right data for that problem and by ensuring that the data is error-free), assign responsibility for data quality in the short term, and then push quality efforts upstream in the longer-term.
Twenty years ago, mortgage-backed securities and collateralized debt obligations were all the rage. These new financial products were, initially, a wonder: they helped put millions of people into homes and make billions for banks. Then things went horribly wrong, and they nearly tanked the global economy.
Aiming at the existing semantic segmentation process due to the loss of pixel features and the complexity of calculating too many parameters, which leads to unsatisfactory segmentation results and too long time, this paper proposes a lightweight semantic segmentation algorithm based on the fusion of multiple modules. The algorithm is based on the pyramid scene parsing network (PSPNet). Firstly, MobileNetV2 network is chosen as the feature extraction network to construct the lightweight network structure. In the training of the network, a freeze and thaw method is used, and the Focal Loss function is added to balance the proportion of positive and negative samples. After that, spatial and channel reconstruction convolution (SCConv) is introduced in the pyramid pooling module to reduce the segmentation task. The computational cost due to redundant feature extraction is reduced. Finally, the coordinate attention (CA) and the efficient channel attention network (ECA-Net) are incorporated to make the multi-modules integrate with each other to enhance the salient features and improve the segmentation accuracy. Through the ablation and comparison experiments, the average pixel accuracy on PASCAL VOC 2012 dataset reaches 85.23%, the computation amount is reduced by 45.79%, and the training speed is improved by 68.69%. The average pixel accuracy on Cityscapes dataset reaches 86.75%, the average intersection and merger ratio reaches 73.86%, and the interaction of multiple modules with correlation performance makes the algorithm improved and optimized, effectively solving the problems of low segmentation accuracy and slow training speed in the algorithm, which has a significant accuracy advantage in the lightweight model, and can generally improve the efficiency of image semantic segmentation.
This is a preview of subscription content, log in via an institution to check access.
Subscribe and save.
Price includes VAT (Russian Federation)
Instant access to the full article PDF.
Rent this article via DeepDyve
Institutional subscriptions
ASGARI T S, ABHISHEK K, COHEN J P, et al. Deep semantic segmentation of natural and medical images: a review[J]. Artificial intelligence review, 2021, 54(1): 137–178.
Article Google Scholar
YU H, YANG Z, TAN L. Methods and datasets on semantic segmentation: a review[J]. Neurocomputing, 2018, 304: 82–103.
BI L, KIM J, AHN E. Dermoscopic image segmentation via multistage fully convolutional networks[J]. IEEE transactions on biomedical engineering, 2017, 64(9): 2065–2074.
SIDDIQUE N, PAHEDING S, ELKIN C P. U-Net and its variants for medical image segmentation: a review of theory and applications[J]. IEEE access, 2021, 9: 82031–82057.
YUAN W, WANG J, XU W. Shift pooling PSPNet: rethinking PSPNet for building extraction in remote sensing images from entire local feature pooling[J]. Remote sensing, 2022, 14(19): 4889.
Article ADS Google Scholar
YU D, XU Q, GUO H. An efficient and lightweight convolutional neural network for remote sensing image scene classification[J]. Sensors, 2020, 20(7): 1999.
CAO J, TIAN X, CHEN Z. Ancient mural segmentation based on a deep separable convolution network[J]. Heritage science, 2022, 10(1): 11.
ÖZTÜRK C, TAŞYÜREK M, TÜRKDAMAR M U. Transfer learning and fine-tuned transfer learning methods’ effectiveness analyse in the CNN-based deep learning models[J]. Concurrency and computation: practice and experience, 2023, 35(4): e7542.
LIN T Y, GOYAL P, GIRSHICK R. Focal loss for dense object detection[J]. IEEE transactions on pattern analysis and machine intelligence, 2020, 42(2): 318–327.
HOU Q, ZHOU D, FENG J. Coordinate attention for efficient mobile network design[C]//2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), June 20–25, 2021, Nashville, TN, USA. New York: IEEE, 2021: 9577301.
Google Scholar
HAN G, ZHANG M, WU W. Improved U-Net based insulator image segmentation method based on attention mechanism[J]. Energy reports, 2021, 7: 210–217.
YANG Q, KU T, HU K. Efficient attention pyramid network for semantic segmentation[J]. IEEE access, 2021, 9: 18867–18875.
WEI H B, YUN J, JIA X L, et al. In-situ detection method of Jellyfish based on improved faster R-CNN and FP16[J]. IEEE access, 2023, 11: 81803–81814.
LI H, LU H, LI X. Mortar-FP8: morphing the existing FP32 infrastructure for high performance deep learning acceleration[J]. IEEE transactions on computer-aided design of integrated circuits and systems, 2023: 1–1.
CORDTS M, OMRAN M, RAMOS S, et al. The Cityscapes dataset for semantic urban scene understanding[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27–30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016: 7780719.
YONG L, MA L, SUN D, et al. Application of MobileNetV2 to waste classification[J]. PLOS one, 2023, 18(3): e0282336.
LU J, LEE S H, KIM I W, et al. Small foreign object detection in automated sugar dispensing processes based on lightweight deep learning networks[J]. Electronics, 2023, 12(22): 4621.
WANG C, ZHONG C. Adaptive feature pyramid networks for object detection[J]. IEEE access, 2021, 9: 107024–107032.
Download references
Authors and affiliations.
School of Physics and Electronic Engineering, Northwest Normal University, Lanzhou, 730070, China
Zhihao Guo, Dongmei Ma & Xiaoyun Luo
You can also search for this author in PubMed Google Scholar
Correspondence to Dongmei Ma .
Conflicts of interest.
The authors declare no conflict of interest.
This work has been supported by the National Natural Science Foundation of China (No. 61961037).
MA Dongmei is an associate professor in the School of Physics and Electronic Engineering at Northwest Normal University. She received her Ph.D. degree in Optical Engineering from Xi’an Institute of Optical Precision Machinery, Chinese Academy of Sciences in 2009. Her research interests are mainly in image processing and optoelectronic signaling.
Reprints and permissions
Guo, Z., Ma, D. & Luo, X. A lightweight semantic segmentation algorithm integrating CA and ECA-Net modules. Optoelectron. Lett. 20 , 568–576 (2024). https://doi.org/10.1007/s11801-024-3241-z
Download citation
Received : 04 November 2023
Revised : 08 April 2024
Published : 19 August 2024
Issue Date : September 2024
DOI : https://doi.org/10.1007/s11801-024-3241-z
Anyone you share the following link with will be able to read this content:
Sorry, a shareable link is not currently available for this article.
Provided by the Springer Nature SharedIt content-sharing initiative
IMAGES
COMMENTS
End - End the execution. Let's take some examples of algorithms for computer science problems. Example 1. Swap two numbers with a third variable. Step 1: Start. Step 2: Take 2 numbers as input. Step 3: Declare another variable as "temp". Step 4: Store the first variable to "temp". Step 5: Store the second variable to the First variable.
Go to the editor] 1. Write a C program to compute the sum of the two input values. If the two values are the same, then return triple their sum. Expected Output: 3 12. Click me to see the solution. 2. Write a C program that will take a number as input and find the absolute difference between the input number and 51.
algorithmic problem solving rose in popularity with the largest competitions attracting tens of thousands of programmers. While its mathematical coun-terpart has a rich literature, there are only a few books on algorithms with a strong problem solving focus. The purpose of this book is to contribute to the literature of algorithmic prob-
Table of Contents. Introduction to Problem Solving Through Programming in C. Problem Solving Through Programming in C. Steps to Solve a Problem With the Computer. Step 1: Understanding the Problem: Step 2: Analyzing the Problem: Step 3: Developing the solution: Step 4: Coding and Implementation: Problem Solving Steps.
Algorithms Tutorial. Algorithm is a step-by-step procedure for solving a problem or accomplishing a task. In the context of data structures and algorithms, it is a set of well-defined instructions for performing a specific computational task. Algorithms are fundamental to computer science and play a very important role in designing efficient ...
What is Algorithm? An algorithm is a set of well-defined instructions to solve a particular problem. It is a step-by-step procedure to execute some instructions in a certain order to get the required output. Software Engineer commonly uses an algorithm for planning and solving problems. Following are the characteristics of an Algorithm:
This C code demonstrates an iterative algorithm for calculating the factorial of a non-negative integer. It initializes a result variable to 1 and uses a loop to multiply the result by each integer from 1 to n. The final result is then displayed. In summary, an algorithm is a set of clear, finite, and ordered steps that guide the solution of a ...
The development of an algorithm (a plan) is a key step in solving a problem. Once we have an algorithm, we can translate it into a computer program in some programming language. Our algorithm development process consists of five major steps. Step 1: Obtain a description of the problem. Step 2: Analyze the problem.
An algorithm, whose characteristics will be discussed later, is a form that embeds the complete logic of the solution. Its formal written version is called a program, or code. Thus, algorithmic problem solving actually comes in two phases: derivation of an algorithm that solves the problem, and conversion of the algorithm into code.
Problem solving in C. Learn problem solving in C from our online course and tutorial. You will learn basic math, conditionals and step by step logic building to solve problems easily. 4.5 (1413 reviews)
of the problem-solving process. Given a problem, a computer scientist's goal is to develop an algorithm, a step-by-step list of instructions for solving any instance of the problem that might arise. Algorithms are finite processes that if followed will solve the problem. Algorithms are solutions.
Definition of Algorithm. The word Algorithm means " A set of finite rules or instructions to be followed in calculations or other problem-solving operations ". Or. " A procedure for solving a mathematical problem in a finite number of steps that frequently involves recursive operations".
In computer programming terms, an algorithm is a set of well-defined instructions to solve a particular problem. It takes a set of input (s) and produces the desired output. For example, An algorithm to add two numbers: Take two number inputs. Add numbers using the + operator. Display the result.
This tutorial series show you how to implement the most common algorithms in C including sorting and searching. Section 1. Sorting. Selection Sort - learn about how the selection sort works. Heapsort - explain to you the heap sort algorithm. Quicksort - guide you on the quick sort algorithm. Section 2.
Learners enrolled: 29073. ABOUT THE COURSE : This course is aimed at enabling the students to. Formulate simple algorithms for arithmetic and logical problems. Translate the algorithms to programs (in C language) Test and execute the programs and correct syntax and logical errors. Implement conditional branching, iteration and recursion.
An algorithm is the core structure of your C program. Let's solve a simple C Programming problem together, Find the area and the circumference of a circle. Try developing an algorithm for this program, Step 1: Start Step 2: Read r Step 3: Calculate A=3.14*r*r C=2*3.14*r Step 4: Print A, C Step 5: Stop. Convert Algorithms into Programs (in C ...
Data Structures and Algorithms Problems. 1. Find a pair with the given sum in an array ↗ Easy. 2. Check if a subarray with 0 sum exists or not ↗ Medium. 3. Print all subarrays with 0 sum ↗ Medium. 4. Sort binary array in linear time ↗ Easy.
Algorithm in C language. An algorithm is a sequence of instructions that are carried out in a predetermined sequence in order to solve a problem or complete a work. A function is a block of code that can be called and executed from other parts of the program. A set of instructions for resolving an issue or carrying out a certain activity.
The true test of problem solving: when one realizes that time and memory aren't infinite.
Problem Solving with Algorithms and Data Structures using C++ by Bradley N. Miller, David L. Ranum, and Janice L. Pearce is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
C is a general-purpose, imperative computer programming language, supporting structured programming, lexical variable scope and recursion, while a static type system prevents many unintended operations. C was originally developed by Dennis Ritchie between 1969 and 1973 at Bell Labs.
It's easy, binary search is a divide and conquer algorithm, where the problem is divided into sub-problem, and those are solved. It's a search algorithm, which means it is used to find things ...
Q2: Write a Program to find the Sum of two numbers entered by the user. In this problem, you have to write a program that adds two numbers and prints their sum on the console screen. For Example, Input: Enter two numbers A and B : 5 2. Output: Sum of A and B is: 7.
CHARLOTTE, N.C. — Thousands of Charlotte-Mecklenburg Schools students who ride the bus showed up to school late last school year, a WCNC Charlotte investigation found. District records show some ...
Michael Hillman likes solving problems. In his 16 years at Apple, he designed some of the company's best known products and devices. He has about 60 patents in his name—14 for the iMac ...
Zhang et al 18 believed that the loss of selection pressure was the core reason for the poor performance of the algorithm. In order to solve this problem, they proposed a many-objective ...
A fundamental assumption in addressing real-world problems is acknowledging the presence of uncertainty and dynamism. Dismissing these factors can lead to the formulation of an optimal solution for an entirely different problem. This paper presents a novel variant of the capacitated dispersion problem (CDP) referred to as the stochastic and non-static CDP.
Also, solving this problem is intractable because the unknowns \(\text {H}_m\) ... Table 1 Algorithm for solving the minimization problem . Full size table. Group level learning.
Companies need to understand the nuances of the problem they're trying to solve, get the data right (both by having the right data for that problem and by ensuring that the data is error-free ...
The average pixel accuracy on Cityscapes dataset reaches 86.75%, the average intersection and merger ratio reaches 73.86%, and the interaction of multiple modules with correlation performance makes the algorithm improved and optimized, effectively solving the problems of low segmentation accuracy and slow training speed in the algorithm, which ...