Review on Machine Learning for Analog Circuit Design

— In this review paper, different methods of Machine Learning are being discussed in this paper. Moreover, major parameters like power efficiency, delay and accuracy is being taken into consideration for verifying the result. The flow of the paper starts with the basic introduction to Analog circuits and Machine learning then different techniques of machine learning, afterwards the usage of machine learning in analog circuits is been discussed using different methods are being discussed and then the conclusion and references.

INTRODUCTION Machine Learning (ML) is one of the most demanding and popular buzzwords nowadays, but despite the fact that EDA deals with big-data amount of issues it's not made much progress incorporating ML techniques into EDA tools. For several machine learning applications in EDA, algorithmrelated parameter selection and training must occur completely within a design customer or industries' computing environment. [1] The perfect interconnect strategy depends upon a really sizable amount of SoC parameters, including floorplan, routing constraints, resources available, connectivity requirements, protocol level dependency, clock characteristics, process characteristics like wire delay, power budgets, bandwidth and latency constraints, etc. the amount of unique dimensions within the design strategies space grows to many hundreds, creating an excessively large design space. Machine learning are generally implemented in EDA. By analyzing billions of knowledge points from previous outputs, we will predict the impact of bugs, design complexity, human resources, licenses, and compute farm throughput on current projects. By identifying bottlenecks in semiconductor designs we will provide forward prediction and identify potential delays. Machine learning can be used for reduction of time for the design and simulation through existing complex algorithms. [5] Machine learning tools are ready to analyze past compilation results to predict optimal synthesis/place-androute parameters and placement locations out of million number of possible solutions. [3] They infer what tool parameters are best for a design using statistical modeling and machine learning to draw insights from the info to enhance quality of results. Machine Learning has already begun to play a serious role in EDA.

II.
MACHINE LEARNING TECHNIQUIES Nowadays many misconceptions are there associated with the words device gaining knowledge of, deep mastering, and artificial intelligence(AI), most of the people suppose all this stuff are the same whenever they hear the phrase AI, they directly relate that phrase to device gaining knowledge of or vice versa. Machine Learning is a technique of parsing statistics, learn from that facts and then apply what they have found out to make the knowledgeable decision. The principle distinction among deep and machine getting to know is, gadget getting to know models become higher progressively but the model still wishes a few guidance. If a system mastering model returns a faulty prediction then the programmer needs to restore that problem explicitly however within the case of deep mastering, the version does it by himself. The automatic vehicle driving system is a great example of deep gaining knowledge of. "AI is a potential of a computer program to feature like a human brain". Machine gaining knowledge of and deep studying is a way of attaining AI, this means that by the use of system getting to know and deep learning we may additionally in a position to obtain AI in destiny however it isn't always AI. There are various different techniques and plenty of algorithms. Some of techniques are: Regression, Classification, Clustering, Association, Dimension Reduction, Anomaly Detection, Sequence mining and Recommendation systems. Along with different techniques, there are different algorithm like supervised and unsupervised. a. Supervised algorithm: It is used to observe and to direct the execution of task project or activity. It is done by teaching the model. So load the model by knowledge and we teach is labeled dataset. Moreover, the attributes will indicate ROWS and the features which includes the data indicate COLUMN. Basically, data is in two types: Numerical and characters or categorical. In supervised Learning, the two methods which is included are: classification and regression. Classification is the process of predicting discrete class labels or categories and Regression is the process of predicting continues values.
b. Unsupervised algorithm: It is not necessary to supervise the model but to let the model work on its onto discover the information which may not be visible to human eye. It is the difficult algorithms. Different Techniques which include: Dimension reduction, Density estimation which is used to find some structure within it, Market basket analysis and Clustering. Whereas, Clustering is a group of data points or objects that are somehow similar by: Discovering structure, Summarization, Anomaly detection.

III. REGRESSION TECHNIQUE a. Simple linear Regression
It is used to predict continuous value by using other variables and also used to describe relationship between two or more variables. In simple linear regression there are two variables: Dependent and Independent, where dependent value should be continuous and not discrete whereas independent variables can be measured on either categorical or continuous measurement scale. TOPOLOGY: Simple Linear Regression is used when one independent variable is used to estimate one dependent variable. Working: Y=Ɵo+Ɵ1X1 Y is the dependent variable X1 is the independent variable Ɵo and Ɵ1 are the parameters that we must adjust. Ɵo is known as the intersect and Ɵ1 is known as the slope. Ɵo and Ɵ1 are also called the coefficient of linear equation. Linear regression estimates the coefficient of line. So Ɵo and Ɵ1 must be calculated to find the best line to fit the data. To adjust the parameters to make the line the best fit for the data, error should be minimizing.
(1) There are two approaches: 1) Mathematical approach 2) Optimization approach. 1) Mathematical approach: Where, Xb= mean of independent value and Yb= mean of dependent value and Ɵo = yb -Ɵ1 *xb. Pros of Linear Regression: 1) Vary Fast 2) No parameter tuning 3) Easy to understand and highly interpretable Model evaluation: The basic approaches are train and test on the same dataset and Train/test Split. Train and test on the same dataset: (3) Where, y is actual value where y(cap) is predicted value. This approach has high training accuracy and low out of sample accuracy. Training accuracy is the percentage of correct predictions that the model makes when using the test data set. However, a high training accuracy isn't necessarily good thing. And may result of over-fitting which means the model is overly trained to the dataset, which may capture noise and produce a nongeneralized model. Out of Sample accuracy is the percentage of correct predictions that the model makes on data that the model has not been trained on. Its imp that the model has a high out of sample accuracy so to improve it there are ways: one way is to use another evolution approach called train/test split. Train/Test Split: Involves splitting the data set into training and testing sets respectively which are mutually exclusive. It provides more accurate evaluation on out-of-sample accuracy because the testing dataset is not part of the dataset that has been used to train the data. Issue is the highly dependent on which the datasets the data is trained and tested. Another approach resolves most of the issues know as K-fold crossvalidation. K-fold cross-validation: Here k is the number of amount taken to check the data. If k = 4 fold, then it takes first 25% of the data for testing. And rest for training. Then in the next fold the 2 nd 25% is taken and continuous for all folds. So the result is average keeping into mind that no data is repeated. k-fold cross-validation in its simplest form performs multiple train/test splits. Using the same data set for each set differently, then the result is average.
It is used to calculated R^2 = 1-RSE. The higher the R^2 the better the model fits the data.

b. Multiple linear regression
It is the extension of simple linear regression model. The applications are: 1) Independent variable effectiveness on prediction: If we would like to identify the strength of the effect that the independent variables have on the dependent variables. 2) Predicting impacts of changes: It can be used to predict the impact of changes that is to understand that how the dependent variable changes when we change independent variable. It is the method of predicting continuous values. It is very useful for examine which variables are significant predictors of the outcome variable. So, y(cap) = Ɵ T .X Ɵ is the parameters and x is the feature set and independent value and y is dependent. To achieve this goal, we must minimize the error.to find the optimized parameters we should understand the optimized parameters and the way to do it. Optimized parameters are the once which lead to a model with the fewest error. To estimate Ɵ, there are approaches known as: 1. Ordinary Least square it tries to estimate the value of the coefficient by minimizing thee MSE. It uses Linear algebra operation but it takes long time for large datasets (10k+ rows). 2. Optimization algorithm: to find the best parameters that is you can use a process of optimizing the value of the coefficient by iteratively minimizing the error of the model on your training data. Like gradient descent: it is a proper approach if you have large dataset.

c. Non-linear regression
It is the method to model non-linear relationship between the dependent variable and a set of independent variables. For a model to be consider non-linear y(cap) must be non-linear function of the parameters Ɵ, not necessarily the features x. It can be shapes of exponential, logarithmic and logistic or many other types. That is in non-linear regression the model is nonlinear by parameters. In contract to linear regression method, we cannot use the ordinary least square methods to fit the data in non-linear regression. As the estimation of parameters is not easy. d. Introduction to classification Is a supervised learning approach which means that it is categorized some unknown items into a discrete set of categories or classes, classifications attempts to learn a relationship between a set of featured variables and a target variable of interest. The target attribute in a classification ia s categorical variable discrete values. Classification determines the class label for an unlabeled test case. Classification Applications: Email filtering, speech recognition, biometric identification, document classification and much more. Classification algorithms in ML 1) Decision trees (ID3, C4.5, C5.0) 2) Naïve Bayes 3) Linear discriminant analysis 4) K-nearest neighbor 5) Logistic regression 6) Neutral networks 7) Support vector machines(SVM).

IV. MACHINE LEARNING IN ANALOG DESIGN
1. Machine Learning for fast and Accurate Mixed-Signal Design optimization [1] : A machine learning model called Artificial Neural Network Meta-model (ANNM) have been explored to capture the highly non-linear nature of analog block. OP_AMP and PLL is being constructed over here where firefly optimization algorithm is applied to an OP_AMP design in the iVAMs 2.0 framework. Whereas, ABC (Artificial Bee Colony) based algorithm performs optimization over the ANN meta-model of PLL. It is observed that ANN achieve more accurate results than polynomial meta-models with shorter optimization time.  [2] 3. MOM-SVM [3]: Multi-output modelling with Support Vector Machine. Basically, VCO (Voltage Controlled Oscillator) is design in cadence Virtuoso as a test circuit then in SPICE simulator for obtaining the dataset and then k-cross validation, method is being used for tuning. And MATLAB is been used because of LSSVM for modelling is been used. Fig.1 Flowchart for the MOM_SVM analog circuit [3] 4. Regression Methodologies on Analog Circuit Design [5] : The main purpose of this is to save simulation time with the minimum amount of accuracy loss.

Analog Circuit Optimization using Sparse Regression and
Error Margining [4] : Run Cadence Virtuoso for sample points. In which first, build linear models using Sparse regression. Along with that, derive the equation for worst case model using: Draw the schematic of circuit (OP_AMP), then find the parameters like power consumption, Gain Frequency, Gain, Phase Margin, Slew Rate, Input Offset, Output Swing. Draw the schematic of different circuit (Low Noise Amplifier), then find the parameters like Noise figure, Forward Reflection, Forward Transmission, Reverse Reflection. Fig. 2 Flowchart for the method of analog circuit using Sparse Regression [4] CONCLUSION Analog means having various parameters and various data, if data changes (minor) i.e., if temperature changes the output may get affected, as there are various data; it is manually not possible to get the proper output. If the data change (major) i.e., if the input voltage gets fluctuated from 0.8V to 1.2V the data will change automatically which will change the output and every time it is not possible to change & update the output manually. So, Machine learning is used over here. Basically in ML we are teaching the machine with different languages like python or R to learn something. Here, we are having a dataset from the output which may be given to different topologies of ML like in Regression we have simple linear regression, multiple regression, Decision making tree, polynomial and many more. Now, we have different parameters to check like power consumption, delay, accuracy which is one of the important parameter when Machine learning is taken into consideration, i.e. in regression model there are various submodels; and also apart from that there are different models of ANN and CNN which is chosen according to the accuracy of output. So, as close loop we can do is to save simulation time, to provide better accuracy and we can do multi-output system.