WO2018054198A1 - 一种集成电路器件神经网络建模样本选择方法及装置 - Google Patents

一种集成电路器件神经网络建模样本选择方法及装置 Download PDF

Info

Publication number
WO2018054198A1
WO2018054198A1 PCT/CN2017/099514 CN2017099514W WO2018054198A1 WO 2018054198 A1 WO2018054198 A1 WO 2018054198A1 CN 2017099514 W CN2017099514 W CN 2017099514W WO 2018054198 A1 WO2018054198 A1 WO 2018054198A1
Authority
WO
WIPO (PCT)
Prior art keywords
input variable
input
value
interval
variable
Prior art date
Application number
PCT/CN2017/099514
Other languages
English (en)
French (fr)
Inventor
林信南
张志远
Original Assignee
北京大学深圳研究生院
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京大学深圳研究生院 filed Critical 北京大学深圳研究生院
Priority to US16/073,322 priority Critical patent/US10628541B2/en
Publication of WO2018054198A1 publication Critical patent/WO2018054198A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • G05B13/027Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion using neural networks only
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design

Definitions

  • the present application relates to the field of modeling of integrated circuit devices, and in particular, to a method and apparatus for selecting a neural network modeling sample for an integrated circuit device.
  • the traditional device model is based on the semi-empirical and half-device physics model. Many simplifications and assumptions have been made on the actual device. In the past, this modeling method was practiced. Medium is feasible, but as the device size shrinks, it will bring a lot of new physical effects. At this time, according to the traditional modeling method, the model becomes complicated and even the modeling of some new devices becomes impossible. .
  • the neural network is an abstraction of a human brain neural network from the perspective of information processing, and different networks are formed according to different connection methods to establish a simple model. It can obtain the corresponding "knowledge” by learning the training samples, and can approximate any nonlinear function, so it can be applied to the modeling of integrated circuit devices.
  • factors that will affect the final result such as the selection of training samples, training weights, initialization of thresholds, configuration of neural network structures, and optimization of training algorithms. The concern is the question of the choice of training samples.
  • the size of the training sample can neither be too small nor too large:
  • Too small a training sample can cause inaccurate neural network learning, which affects the final result accuracy.
  • the present application provides a method and apparatus for selecting a neural network modeling sample for an integrated circuit device.
  • the present application provides a neural network modeling sample selection method for an integrated circuit device, including:
  • the relative error of the change interval For the input variable with the largest average impact value, calculate the relative error of the change interval. If the relative error is less than or equal to a preset error precision, the length of the change interval of the input variable is taken as the step size of the input variable; If the relative error is greater than the error precision, the change interval of the input variable is equally divided into two sub-intervals, and the relative errors of the two sub-intervals are respectively calculated; if there is a sub-interval with a relative error greater than the preset error precision , then continue to divide it into two sub-intervals and calculate the relative error of the two sub-intervals respectively, until the relative error of all sub-intervals is less than or equal to the error precision, stop the equal division, and the sub-interval with the smallest interval length The length of the step as the input variable;
  • the points are taken according to the change interval and the step size to obtain a set of sample points for each input variable.
  • calculating the relative error of an input variable over an interval including:
  • test value corresponding to the output variable when the input variable is taken as the left end point, the middle point, and the right end point of the interval is obtained through actual testing;
  • a relative error between the average value and a test value corresponding to the output variable when the input variable takes the midpoint of the interval is calculated.
  • the present application provides an integrated circuit device neural network modeling sample selection apparatus, including:
  • An average impact value calculation module for respectively calculating an average influence value of each input variable
  • the first step calculation module is used to calculate the input variable with the largest average impact value.
  • the relative error of the change interval if the relative error is less than or equal to a preset error precision, the length of the change interval of the input variable is taken as the step size of the input variable; if the relative error is greater than the error precision, The change interval of the input variable is equally divided into two sub-intervals, and the relative errors of the two sub-intervals are respectively calculated; if there is a sub-interval whose relative error is greater than the preset error precision, the equal interval is further divided into two sub-intervals.
  • the other step calculation module is configured to calculate the step sizes of the other input variables according to the step size of the input variable having the largest average influence value
  • the sampling module is configured to take a point according to the change interval and the step size for each input variable to obtain a sample point set of each input variable.
  • the first step length calculation module includes a relative error calculation module for calculating a relative error of an input variable in an interval, the relative error calculation module comprising:
  • An output value test module configured to obtain, by actual testing, a test value corresponding to the output variable when the input variable takes a value of a left end point, a middle point, and a right end point of the interval;
  • An average value calculation module configured to calculate an average value of the test values corresponding to the output variables when the input variable takes the left end point and the right end point of the interval;
  • the calculation submodule is configured to calculate a relative error between the average value and a test value corresponding to the output variable when the input variable takes a value of a midpoint of the interval.
  • the interval of the input variable is continuously equally divided until the relative errors of all the divided intervals are less than or Equal to the preset error precision, the equal division action is stopped, and the length of the segment with the smallest length is output as the step size of the output variable, and then the steps of the other input variables are respectively calculated according to the step size of the input variable, and finally
  • the points are taken according to the change interval and the step size to obtain a set of sample points for each input variable, so that the selection of the low sample data amount and the low sample data can be realized with a given precision.
  • the amount also saves the test overhead required for device modeling and improves the training speed of the neural network.
  • FIG. 1 is a flow chart of a neural network modeling sample selection method for an integrated circuit device according to an embodiment of the present application
  • FIG. 2 is a flow chart of calculating a step size of an input variable having the largest average influence value in a method for selecting a neural network modeling sample of an integrated circuit device according to an embodiment of the present application;
  • FIG. 3 is a schematic structural diagram of a device for selecting a neural network modeling sample of an integrated circuit device according to an embodiment of the present application
  • FIG. 4 is a schematic structural diagram of a first-length calculation module in a neural network modeling sample selection device for an integrated circuit device according to an embodiment of the present application;
  • Figure 5 is a training result diagram, in which Figure 5(a) is a comparison of the measured results of the output variable I ds - the input variable V ds with the measured results, and Figure 5 (b) is the model of the output variable I ds - the input variable V gs Comparison of measured results and measured results.
  • the two methods perform a standard error calculation on all the divided sub-intervals and sort them to obtain the maximum standard error.
  • the problem scale is large, the time complexity of the algorithm will increase significantly. Large, so we need a new way to deal with training sample selection problems.
  • the present application discloses a method for selecting a neural network modeling sample of an integrated circuit device (hereinafter referred to as a sample selection method), which includes steps S01-S11.
  • Step S01 Determine one or more input variables, output variables, and change intervals of the input variables of the integrated circuit device to be modeled. Due to different kinds of integrated circuit devices, their input variables and output variables may be different; even if the input variables and output variables are the same, their input variables may vary in different intervals.
  • the normal working range is 0.3V ⁇ 1.2V
  • the normal working range of the input variable Vgs is -0.1V ⁇ 0.6V
  • the normal working range of its input variable Vds is 300V ⁇ 1200V
  • the input variable V The normal working range of gs is -0.8V ⁇ 0.2V
  • the specific number of input variables depends on the integrated circuit to be modeled.
  • the change interval of the input variable is typically the normal operating range of the input variable of the integrated circuit device to be modeled.
  • Step S03 Calculate the average influence value (MIV, Mean Impact Value) of each input variable.
  • the sign of the average influence value represents the relevant direction of influence
  • the absolute value represents the relative importance of the influence. The larger the absolute value, the greater the relative importance of the influence, and the later the average influence value.
  • it refers to the value of the average impact value without sign, which is the absolute value. For example, if the average impact value is -1 and the other average impact value is 0.1, then compare this. The two average impact values are 1 and 0.1, and the result is that the average impact value of -1 is greater than the average impact value of 0.1.
  • Step S05 Calculate the step size of the input variable with the largest average influence value.
  • step S05 includes steps P01-P13.
  • Step P01 Calculate the relative error of the change interval for the input variable with the largest average influence value.
  • Step P03 Comparing the relative error with a preset error precision. If the relative error is less than or equal to a preset error precision, proceeding to step P05, using the length of the change interval of the input variable as the step size of the input variable Otherwise, proceed to step P07.
  • Step P07 If the relative error is greater than the error precision, the change interval of the input variable is equally divided into two sub-intervals, and the relative errors of the two sub-intervals are respectively calculated.
  • Step P09 It is judged whether there is a subinterval in which the relative error is larger than the preset error precision.
  • Step P11 If there is a subinterval whose relative error is greater than the preset error precision, continue to divide it into two subintervals and calculate the relative errors of the two subintervals until the relative errors of all the subintervals are less than or equal to When the error precision is used, the equal division is stopped.
  • Step P13 The length of the subinterval having the smallest interval length is taken as the step size of the input variable.
  • comparing the relative error with the error precision is to compare the unsigned numerical value, that is, the absolute value, because the positive and negative signs of the relative error are only the direction representing the error, and do not represent the error. size.
  • steps P01 to P13 when calculating the relative error of an input variable in an interval, it is calculated as follows:
  • the input variable is obtained as the test value corresponding to the output variable of the left end point, the middle point, and the right end point of the interval. Due to the output variable determined in step S01, which is affected by each input variable, a single input variable does not determine the value of the output variable. Therefore, when the actual test is obtained, the value of one input variable is the left end of the interval.
  • the values of the other input variables are a fixed value in the interval of their own change, and preferably, the left end point of the self-change interval Or right endpoint.
  • the range of values of the corresponding output variable is in a large order of magnitude, generally greater than 10 5 , depending on the electrical characteristics of the integrated circuit device. Therefore, if the absolute error of the value of the output variable is directly used as the error evaluation criterion, the given standard absolute error value is difficult to meet the accuracy requirement of the output in different orders of magnitude, and eventually causes too many points in a certain interval. Or take too little. Therefore, in a preferred embodiment, when the average value is calculated in the second step and the relative error is calculated in the third step, the test value of the variable is first output as a logarithmic operation.
  • steps P01 to P13 calculate the step size of the input variable by continuously equally dividing the interval of the input variable until the relative error of all the divided intervals is less than or equal to the preset error precision. And output the length of the segment with the smallest length divided into the step size of the output variable.
  • the average value of the output variable corresponding to the left and right end points of the interval is averaged, and the input variable corresponds to the midpoint of the interval. The value of the output variable is used to find the relative error.
  • Step S07 Calculate the step sizes of the other input variables according to the step size of the input variable whose average influence value is the largest.
  • the average influence value of the input variable having the largest average influence value is divided by the average influence value of the input variable of the step to be calculated, and then multiplied by the average The step size of the input variable that affects the largest value.
  • Step S09 For each input variable, take a point according to the change interval and the step size to obtain a sample point set of each input variable.
  • Step S11 For each input variable, when the point is changed according to the change interval and the step size, if the end point of the change interval of the input variable is not obtained, the end point of the change interval of the input variable is additionally added to the input variable.
  • the sample points are in the collection.
  • Step S11 is an optional step, the purpose of which is to maximize the information at the boundary and avoid the loss of information at the boundary.
  • the modeled model produces a problem that does not converge.
  • the change interval may be assumed to be determined as input 1 and input 2 , and the output variable is output, where the input variable input 1 has a change interval of [input 1L , input 1R ], and the input variable input 2 has a change interval of [input 2L]. , input 2R ].
  • the calculated input variables are the average impact values of input 1 and input 2 are MIV 1 and MIV 2, respectively . It may be assumed that MIV 1 is greater than MIV 2 , ie
  • the input variable is the step size of input 1 .
  • the test device obtains the test value corresponding to the output variable output of the integrated circuit device to be modeled when the input variable input 1 takes the left end input 1L , the right end input 1R, and the mid point input 1M of the change interval, respectively.
  • Output L , output R and output M It should be noted that since the value of the output variable output is affected by each input variable, input 1 and input 2 , a single input variable input 1 cannot determine the value of the output variable output.
  • the value of 1 is the test value corresponding to the output variable output of the left end input 1L , the right end input 1R, and the middle input 1M , respectively.
  • the input variable input 2 has a value of one in its own change interval.
  • the setting of [input 2L , input 2R ] is preferably, the left end input 2L or the right end input 2R of the self-change interval.
  • the input variable input 1 is calculated as the average of the test values output L and output R corresponding to the output end of the left end input 1L and the right end input 1R of the change interval, respectively. In a preferred embodiment, the average is calculated.
  • the logarithm operation is performed on the two test values before the value, so as described in the following formula:
  • output L_log test output L value taking the value of the operand output R_og test value takes a value of output R after the operands, output AVG_log the average value calculated.
  • test value output M should also take the logarithm operation accordingly.
  • output m_log is the value of the test value output M after the logarithm operation
  • error is the calculated relative error
  • the relative error error of the input variable input 1 in the interval [input 1L , input 1R ] is less than or equal to a preset error precision ERROR, the division of the interval is stopped, and the step size of the input variable input 1 is the interval [input 1L , input] The length of 1R ], ie input 1R -input 1L . If the relative error error of the input variable input 1 in the interval [input 1L , input 1R ] is greater than the error precision ERROR, the interval [input 1L , input 1R ] is equally divided into two intervals [input 1L , input M ] and [input M , input 1R ], and calculate the relative error of the two intervals according to the above method.
  • the input is then input variable step size calculation ⁇ 1 1 input variable input step 2, the input variables input step 2 is referred to wish ⁇ 2.
  • the step size ⁇ 2 of the input variable input 2 is calculated by:
  • the input variable input 1 is taken in the change interval [input 1L , input 1R ] according to its step size ⁇ 1
  • the input variable input 2 is taken in the change interval [input 2L , input 2R ] according to its step size ⁇ 2 .
  • the set of sample points of the input variable input 1 is ⁇ input 1L , input 1L + ⁇ 1 , input 1L + 2 ⁇ ⁇ 1 , input 1L + 3 ⁇ ⁇ 1 , ... ⁇ , in an embodiment, if there is no last take point to right point input lR, you can add a right end point input lR input variable input point set sample 1, the input variables input sample point 1 is set is ⁇ input 1L, input 1L + ⁇ 1, input 1L + 2 ⁇ ⁇ 1 , input 1L + 3 ⁇ ⁇ 1 , ..., input 1R ⁇ . 2 in accordance with the input variable input step ⁇ 2 in which the variation range [input 2L, input 2R] point to be taken to obtain the input variable input sample points set 2
  • the above is an integrated circuit device neural network modeling sample selection method of the present application. Accordingly, the present application further provides an integrated circuit device neural network modeling sample selection device (hereinafter referred to as a sample selection device).
  • a sample selection device includes a determination module 01, an average influence value calculation module 03, a first step length calculation module 05, other step calculation modules 07, a sampling module 09, and an addition module 11, which are specifically described below.
  • the determination module 01 is used to determine one or more input variables, output variables, and change intervals for each input variable of the integrated circuit device to be modeled.
  • the average influence value calculation module 03 is for calculating the average influence value of each input variable separately.
  • the first step length calculation module 05 is configured to calculate a relative error of the change interval for the input variable having the largest average influence value, and if the relative error is less than or equal to a preset error precision, the length of the change interval of the input variable is As the step size of the input variable; if the relative error is greater than the error precision, the change interval of the input variable is equally divided into two sub-intervals, and the relative errors of the two sub-intervals are respectively calculated; if the relative error is greater than the above error
  • the subinterval of precision continues to be equally divided into two subintervals and the relative errors of the two subintervals are calculated separately, and the equal division is stopped until the relative error of all subintervals is less than or equal to the above error precision, and the interval length is minimized.
  • the length of the subinterval is taken as the step size of the input variable.
  • the first step length calculation module 05 includes a relative error calculation module 06 for calculating a relative error of an input variable in an interval
  • the relative error calculation module 06 includes The output value test module 06a, the average value calculation module 06b, the calculation sub-module 06c, and the logarithm module 06d.
  • the output value test module 06a is configured to obtain, by actual testing, the test value corresponding to the output variable when the input variable takes the value of the left end point, the middle point, and the right end point of the interval.
  • the average value calculation module 06b is configured to calculate an average value of the test values corresponding to the output variables when the input variable takes the left end point and the right end point of the interval.
  • the calculation sub-module 06c is configured to calculate a relative error between the average value and a test value corresponding to the output variable when the input variable takes the midpoint of the interval.
  • the logarithmic module 06d is used to perform a logarithmic operation on each test value first when the average value calculation module 06b calculates the average value and the calculation sub-module 06c calculates the relative error.
  • the logarithmic module 06d is an optional module because when the integrated circuit device is modeled, its meaningful variation range of each input variable has a range of values corresponding to the output variable according to the electrical characteristics of the integrated circuit device.
  • the logarithmic module 06d first performs a logarithmic operation on each test value when the average value calculation module 06b calculates the average value and the calculation sub-module 06c calculates the relative error.
  • the other step calculation module 07 is configured to calculate the step sizes of the other input variables according to the step size of the input variable having the largest average influence value. In an embodiment, when calculating the step size of any other input variable, the other step calculation module 07 divides the average influence value of the input variable having the largest average influence value by the average influence of the input variable of the step to be calculated. After the value, multiply by the step size of the input variable with the largest average impact value.
  • the sampling module 09 is configured to take a point according to the change interval and the step size for each input variable to obtain a sample point set of each input variable.
  • the adding module 11 is configured to take a point according to the change interval and the step size of each input variable for the sampling module 09, and if the end point of the change interval of the input variable is not taken, The endpoint of the change interval of the input variable is additionally added to the set of sample points of the input variable.
  • the adding module 11 is an optional module, and its purpose is to maximize the information at the boundary, avoid the loss of information at the boundary, and generate a non-convergence problem for the model.
  • the above is the method and device for selecting a neural network modeling sample of the integrated circuit device of the present application. It can be seen that, in the sample selection process, the error calculation of the divided intervals generated in the iteration is not repeated, and is not required. The sorting operation is performed on the relative error of the divided interval obtained in each iteration, and the calculation efficiency is higher when the problem complexity is higher; the present application can determine a result accuracy under the premise of the given result precision (ie error precision).
  • the logarithm of the test results in the present application makes the present application more suitable for problem processing in the field of integrated circuit devices.
  • it has the characteristics of high precision but low sample data amount.
  • the average influence value MIV 1 of the input variable V gs is -0.0987, and the average influence value MIV 2 of the input variable V ds is -0.0096. Since the MIV 1 is larger than the MIV 2 , the sample selection method according to the present application is followed.
  • the device calculates the step size ⁇ 1 of the input variable V gs , and in the process, the value of the input variable V ds is 0.25 of the left end point of its variation interval [0.25V, 1.05V].
  • the step size ⁇ 1 of the input variable V gs can be calculated to be 0.015, and the step size ⁇ 2 of the input variable V ds can be further calculated to be approximately equal to 0.154.
  • the step size ⁇ 1 of the input variable V gs can be calculated to be 0.008, and the step size ⁇ 2 of the input variable V ds can be further calculated to be approximately equal to 0.082.
  • the step size ⁇ 1 of the input variable V gs is between 0.008 and 0.015, correspondingly, the step size ⁇ 2 of the input variable V ds is also between 0.082 and 0.154, then the sample is taken. After the point set is modeled, the error accuracy of the model should be between 0.1% and 0.5%.
  • the step size ⁇ 1 of the input variable V gs is between 0.008 and 0.015, specifically ⁇ 1 is 0.01, and correspondingly, ⁇ 2 is 0.10; the input variable according to the step size ⁇ 1 of the input variable V gs V gs change interval [-0.1V, 0.9V] for taking point for taking the change point interval of the input variables V ds step ⁇ 2 V ds of the input variables [0.25V, 1.05V], neural networks obtained After the sample points are gathered, the neural network is configured, and the neural network is trained by using the sample point set.
  • FIG. 5 is a training result diagram, wherein FIG.
  • FIG. 5(a) is a comparison of the model measurement result and the measured result of the output variable I ds - the input variable V ds .
  • Figure 5(b) is a comparison of the measured results of the output variable I ds - the input variable V gs with the measured results.
  • the accuracy of the obtained training results ie the error accuracy
  • the accuracy of the obtained training results is 0.3%. It can be seen that it is between 0.1%. Between ⁇ 0.5%, this verifies the effect of the present application.
  • the error precision is preset to 0.3%.
  • the step size ⁇ 1 of the input variable V gs can be calculated to be exactly equal to 0.01 and the step size ⁇ 2 of the input variable V ds is exactly equal to 0.10, which further verifies the effect of the present application.
  • the model of the above double gate junctionless device finally obtained after modeling may be applied to actual circuit simulation analysis.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Automation & Control Theory (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Complex Calculations (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种集成电路器件神经网络建模样本选择方法及装置,对于平均影响值最大的输入变量,通过将该输入变量的区间不断地均等划分,直到所有划分出的区间的相对误差都小于或等于预设的误差精度时才停止均等划分动作,并输出划分出的长度最小的区间的长度为该输出变量的步长,再根据该输入变量的步长分别计算其他各输入变量步长,最后对于每一个输入变量,根据其变化区间及步长进行取点,以得到每一个输入变量的样本点集合,从而可以实现在给定精度的情况下实现低样本数据量的选择,并且低样本数据量还节约了器件建模所需的测试开销,提高了神经网络的训练速度。

Description

一种集成电路器件神经网络建模样本选择方法及装置 技术领域
本申请涉及集成电路器件的建模领域,具体涉及一种集成电路器件神经网络建模样本选择方法及装置。
背景技术
随着集成电路技术的发展,集成电路器件的特征尺寸不断减小,传统的器件模型是基于半经验半器件物理的模型,对实际器件做了很多简化和假设,过去这种建模方法在实践中是可行的,但是当器件尺寸不断减小随之就会带来很多新的物理效应,此时按照传统的建模方法则会使模型变得复杂甚至一些新器件的建模变得不可能。
目前出现一种使用神经网络对集成电路进行建模的方法,神经网络是一种从信息处理角度对人脑神经元网络进行抽象,按不同的连接方式组成不同的网络,建立某种简单模型。它可以通过对训练样本的学习获得相应的“知识”,能够近似拟合任何非线性函数,因此它可以被我们应用到集成电路器件建模中去。在使用神经网络进行建模的过程中,有很多因素会对最终的结果产生影响,比如训练样本的选择、训练权值、阈值的初始化、神经网络结构的配置以及训练算法优化等,本申请重点关注的是训练样本的选择这一问题。
训练样本的规模既不能过小也不能过大:
过小的训练样本会造成神经网络学习不准确,从而影响最终的结果精度。
过大的训练样本首先会产生过拟合现象,这使得神经网络的外推和内插能力变得很糟糕,无法在训练样本之外产生准确的预测结果;过大的训练样还会会使得训练的负担加重,使得训练过程更加耗时,尤其是当神经网络结构变得更复杂时,所带来的时间成本将会成倍的上升;过大的训练样本还会增加我们用于建模的测试开销,提高建模的成本。
因此,在使用神经网络对集成电路进行建模时,如何进行训练样本的选择,这是一个很关键的问题。
发明内容
本申请提供一种集成电路器件神经网络建模样本选择方法及装置。
根据本申请的第一方面,本申请提供一种集成电路器件神经网络建模样本选择方法,包括:
确定待建模的集成电路器件的一个或多个输入变量、输出变量以及各输入变量的变化区间;
分别计算各输入变量的平均影响值;
对于平均影响值最大的输入变量,计算其变化区间的相对误差,若该相对误差小于或等于一预设的误差精度,则将该输入变量的变化区间的长度作为该输入变量的步长;若该相对误差大于所述误差精度,则将该输入变量的变化区间均等划分为两个子区间,并分别计算这两个子区间的相对误差;若存在相对误差大于所述预设的误差精度的子区间,则继续将其均等划分为两个子区间并分别计算这两个子区间的相对误差,直到所有子区间的相对误差都小于或等于所述误差精度时停止均等划分,并将区间长度最小的子区间的长度作为该输入变量的步长;
根据平均影响值最大的输入变量的步长,分别计算其他各输入变量的步长;
对于每一个输入变量,根据其变化区间及步长进行取点,以得到每一个输入变量的样本点集合。
在一实施例中,计算任意一输入变量在一区间的相对误差,包括:
通过实际测试得到该输入变量取值为该区间的左端点、中点、右端点时所述输出变量分别对应的测试值;
计算该输入变量取值为该区间的左端点、右端点时所述输出变量分别对应的测试值的平均值;
计算该平均值与该输入变量取值为该区间的中点时所述输出变量对应的测试值之间的相对误差。
根据本申请的第二方面,本申请提供一种集成电路器件神经网络建模样本选择装置,包括:
确定模块,用于确定待建模的集成电路器件的一个或多个输入变量、输出变量以及各输入变量的变化区间;
平均影响值计算模块,用于分别计算各输入变量的平均影响值;
第一步长计算模块,用于对于平均影响值最大的输入变量,计算其 变化区间的相对误差,若该相对误差小于或等于一预设的误差精度,则将该输入变量的变化区间的长度作为该输入变量的步长;若该相对误差大于所述误差精度,则将该输入变量的变化区间均等划分为两个子区间,并分别计算这两个子区间的相对误差;若存在相对误差大于所述预设的误差精度的子区间,则继续将其均等划分为两个子区间并分别计算这两个子区间的相对误差,直到所有子区间的相对误差都小于或等于所述误差精度时停止均等划分,并将区间长度最小的子区间的长度作为该输入变量的步长;
其他步长计算模块,用于根据平均影响值最大的输入变量的步长,分别计算其他各输入变量的步长;
采样模块,用于对于每一个输入变量,根据其变化区间及步长进行取点,以得到每一个输入变量的样本点集合。
在一实施例中,所述第一步长计算模块包括相对误差计算模块,用于计算任意一输入变量在一区间的相对误差,所述相对误差计算模块包括:
输出值测试模块,用于通过实际测试得到该输入变量取值为该区间的左端点、中点、右端点时所述输出变量分别对应的测试值;
平均值计算模块,用于计算该输入变量取值为该区间的左端点、右端点时所述输出变量分别对应的测试值的平均值;
计算子模块,用于计算该平均值与该输入变量取值为该区间的中点时所述输出变量对应的测试值之间的相对误差。
依上述实施的集成电路器件神经网络建模样本选择方法及装置,对于平均影响值最大的输入变量,通过将该输入变量的区间不断地均等划分,直到所有划分出的区间的相对误差都小于或等于预设的误差精度时才停止均等划分动作,并输出划分出的长度最小的区间的长度为该输出变量的步长,再根据该输入变量的步长分别计算其他各输入变量步长,最后对于每一个输入变量,根据其变化区间及步长进行取点,以得到每一个输入变量的样本点集合,从而可以实现在给定精度的情况下实现低样本数据量的选择,并且低样本数据量还节约了器件建模所需的测试开销,提高了神经网络的训练速度。
附图说明
图1为本申请一种实施例的集成电路器件神经网络建模样本选择方法的流程图;
图2为本申请一种实施例的集成电路器件神经网络建模样本选择方法中计算平均影响值最大的输入变量的步长的流程图;
图3为本申请一种实施例的集成电路器件神经网络建模样本选择装置的结构示意图;
图4为本申请一种实施例的集成电路器件神经网络建模样本选择装置中第一步长计算模块的结构示意图;
图5为训练结果图,其中图5(a)为输出变量Ids-输入变量Vds的模型测结果与实测结果对比图,图5(b)为输出变量Ids-输入变量Vgs的模型测结果与实测结果对比图。
具体实施方式
现有技术中,在使用神经网络对集成电路进行建模时,就如何进行训练样本的选择这一问题,在林珲的《微波器件智能建模中神经网络训练数据获取算法研究》一文中进行了总结,大致有三种方法,其中第一种传统的随机采点方法采样点数量极大,数据获取的代价极高;第二种和第三种改进的方法虽然减小了采样点的数量,但是由于在处理过程中引入了标准误差作为训练目标,并且没有对测试结果进行取对数,导致在处理一些大数量级范围的训练样本选择问题时不能够兼顾采样点数量和训练结果精度的要求,而且这两种方法在每次计算迭代过程中都会对所有的已划分子区间都进行一次标准误差计算并排序得出最大标准误差,当问题规模较大时,算法的时间复杂度将会显著增大,因此我们需要一种新的方法来处理训练样本选择问题。
请参照图1,本申请公开了一种集成电路器件神经网络建模样本选择方法(以下简称样本选择方法),其包括步骤S01~S11。
步骤S01:确定待建模的集成电路器件的一个或多个输入变量、输出变量以及各输入变量的变化区间。由于不同种类的集成电路器件,它们的输入变量和输出变量可能不同;即使输入变量和输出变量相同,它们各输入变量的变化区间也可能不一样,例如,对于A器件,它的输入变量Vds的常态工作区间为0.3V~1.2V,输入变量Vgs的常态工作区间为-0.1V~0.6V,而对于B器件,它的输入变量Vds的常态工作区间为300V~1200V,输入变量Vgs的常态工作区间为-0.8V~0.2V,而我们对某种集成电路器件进行建模,肯定是对它常态工作区间进行建模,忽略那些不考虑的、没有意义的电特性区间对应的输入变量的区间,因此,在 建模的第一步,需要确定待建模的集成电路器件的输入变量、输出变量以及输入变量的变化区间,输入变量具体的个数视待建模的集成电路器件而定,输入变量的变化区间一般为该待建模的集成电路器件的该输入变量的常态工作区间。
步骤S03:分别计算各输入变量的平均影响值(MIV,Mean Impact Value)。需要说明的是,平均影响值的符号代表影响的相关方向,绝对值大小代表影响的相对重要性,绝对值越大的平均影响值,其影响的相对重要性越大,后面涉及平均影响值之间的比较或计算时,都是指平均影响值不带符号的数值本身,也即是绝对值,举个例子,一个平均影响值为-1,另一个平均影响值为0.1,那么在比较这两个平均影响值时,是将1与0.1比较,结果就是-1这个平均影响值比0.1这个平均影响值更大。
步骤S05:计算平均影响值最大的输入变量的步长。在一实施例中,请参照图2,步骤S05包括步骤P01~P13。
步骤P01:对于平均影响值最大的输入变量,计算其变化区间的相对误差。
步骤P03:比较该相对误差与一预设的误差精度,若该相对误差小于或等于一预设的误差精度,则进行步骤P05,将该输入变量的变化区间的长度作为该输入变量的步长,否则进行步骤P07。
步骤P07:若该相对误差大于上述误差精度,则将该输入变量的变化区间均等划分为两个子区间,并分别计算这两个子区间的相对误差。
步骤P09:判断是否存在相对误差大于上述预设的误差精度的子区间。
步骤P11:若存在相对误差大于上述预设的误差精度的子区间,则继续将其均等划分为两个子区间并分别计算这两个子区间的相对误差,直到所有子区间的相对误差都小于或等于所述误差精度时停止均等划分。
步骤P13:将区间长度最小的子区间的长度作为该输入变量的步长。
在上述计算步长的过程中,比较相对误差与误差精度,是比较两者不带符号的数值大小,即绝对值大小,因为相对误差的正负符号只是代表误差的方向,并不代表误差的大小。
在步骤P01~P13中,计算任意一输入变量在一区间的相对误差时,是这样计算的:
第一、通过实际测试得到该输入变量取值为该区间的左端点、中点、右端点时输出变量分别对应的测试值。由于步骤S01确定的输出变量,其受到各个输入变量的影响,单一的一个输入变量并不能决定输出变量的值,因此,当通过实际测试得到某一个输入变量取值为该区间的左端 点、中点、右端点时输出变量分别对应的测试值时,在这期间,其他各输入变量的取值为一位于自身变化区间的定值,较优地,可以是自身变化区间的左端点或右端点。
第二、计算该输入变量取值为该区间的左端点、右端点时上述输出变量分别对应的测试值的平均值。
第三、计算该平均值与该输入变量取值为该区间的中点时上述输出变量对应的测试值之间的相对误差。
由于在对集成电路器件建模时,其有意义的各输入变量的变化区间,根据集成电路器件的电学特性,其对应的输出变量的值的范围处于一个很大数量级的范围,一般大于105,因此如果直接利用输出变量的值的绝对误差来作为误差评判标准,则给出的标准绝对误差值很难满足输出在不同数量级时的精度要求,最终会造成在某一段区间内过多取点或过少取点。因此,在一较优实施例中,在第二步计算平均值以及第三步计算相对误差时,都先输出变量的测试值取对数操作。
总结起来,步骤P01~P13计算输入变量的步长,是通过将输入变量的区间不断地均等划分,直到所有划分出的区间的相对误差都小于或等于预设的误差精度时才停止均等划分动作,并输出划分出的长度最小的区间的长度为该输出变量的步长。在具体计算输入变量在某一区间的相对误差时,是通过将输入变量在该区间的左、右端点分别对应的输出变量的值求平均值后,与该输入变量在该区间的中点对应的输出变量的值进行求相对误差。这种做法的原因是:根据数学常识,两个不同的点可以确定一条直线,因此根据这两个不同点对应的输入变量和输出变量,就可以知道这两个点区间内所有点对应的输出变量和输出变量信息;类似地,如果此时这两个不同点之间是一条曲线,那么如果由这两个点对应的输出变量的平均值与这两个点的中点对应的输出变量的相对误差在一定范围内,那么我们就可以认为可以近似用这两个点来代表这两个点之间的曲线信息。
步骤S07:根据平均影响值最大的输入变量的步长,分别计算其他各输入变量的步长。在一实施例中,计算其他任意一输入变量的步长时,是将平均影响值最大的输入变量的平均影响值除以该待计算步长的输入变量的平均影响值后,再乘以平均影响值最大的输入变量的步长。
步骤S09:对于每一个输入变量,根据其变化区间及步长进行取点,以得到每一个输入变量的样本点集合。
步骤S11:对于每一个输入变量,根据其变化区间及步长进行取点时,若没有取到该输入变量的变化区间的端点,则将该输入变量的变化区间的端点额外添加到该输入变量的样本点集合中。步骤S11为可选步骤,其目的是最大化的保存边界处的信息,避免边界处的信息丢失,对 建模的模型产生不收敛的问题。
下面再以一个例子来说明本申请的样本选择方法。
如上所述,不同种类的集成电路器件,其输入变量、输出变量,以及输入变量的常态工作区间都有可能不同,因此首先需要确定待建模的集成电路器件的输入变量、输出变量以及输入变量的变化区间,不妨假设确定的输入变量为input1和input2,输出变量是output,其中输入变量input1的变化区间为[input1L,input1R],输入变量input2的变化区间为[input2L,input2R]。
接着均匀地测试少量处于变化区间的输入变量以及对应的输出变量的值,以便利用MIV方法筛选出对神经网络输出影响最大的输入变量。计算得到的输入变量为input1和input2的平均影响值分别为MIV1和MIV2。不妨假设MIV1大于MIV2,即|MIV1|大于|MIV1|。
接着来计算平均影响值最大的输入变量的步长,也就是输入变量为input1的步长。通过测试设备得到待建模的集成电路器件在输入变量input1取值分别为其变化区间的左端点input1L、右端点input1R以及中点input1M时输出变量output分别对应的测试值,记为outputL、outputR和outputM。需要说明的是,由于输出变量output的值受到各个输入变量即input1和input2的影响,单一的一个输入变量input1并不能决定输出变量output的值,因此,当通过实际测试得到输入变量input1取值分别为其变化区间的左端点input1L、右端点input1R以及中点input1M时输出变量output分别对应的测试值,在这期间,输入变量input2的取值为一位于自身变化区间[input2L,input2R]的定值,较优地,可以是自身变化区间的左端点input2L或右端点input2R。计算输入变量input1取值分别为其变化区间的左端点input1L、右端点input1R时输出变量output分别对应的测试值outputL和outputR的平均值,在一较优实施例中,计算平均值前先对这两个测试值取对数操作,因此如下面公式所述:
Figure PCTCN2017099514-appb-000001
其中outputL_log为测试值outputL取对数操作后的值,outputR_og为测试值outputR取对数操作后的值,outputAVG_log为计算得到的平均值。
接着计算平均值与输入变量input1取值为其变化区间的中点input1M时输出变量output对应的测试值outputM的相对误差,当然这里测试值outputM也要相应地先取对数操作,因此如下面公式所述:
Figure PCTCN2017099514-appb-000002
其中,outputM_log为测试值outputM取对数操作后的值,error为计算 得到的相对误差。
如果输入变量input1在区间[input1L,input1R]的相对误差error小于或等于一预设的误差精度ERROR,则停止区间的划分,该输入变量input1的步长就是区间[input1L,input1R]的长度,即input1R-input1L。如果输入变量input1在区间[input1L,input1R]的相对误差error大于误差精度ERROR,则将区间[input1L,input1R]均等划分成两个区间[input1L,inputM]和[inputM,input1R],并分别按照上面的方法计算这两个区间的相对误差。若这两个区间[input1L,inputM]和[inputM,input1R]中存在相对误差大于上述误差精度ERROR的区间,则继续将相对误差大于误差精度ERROR的区间继续均等划分为两个区间并分别计算这两个子区间的相对误差,直到所有划分出的区间的相对误差都小于或等于所述误差精度时停止均等划分。最后,将划分成的区间长度最小的区间的长度作为该输入变量input1的步长。计算得到的输入变量input1的步长不妨记为△1
接着根据输入变量input1的步长△1计算输入变量input2的步长,输入变量input2的步长不妨记为△2。在一实施例中,输入变量input2的步长△2通过下式计算:
Figure PCTCN2017099514-appb-000003
最后,输入变量input1根据其步长△1在变化区间[input1L,input1R]进行取点,输入变量input2根据其步长△2在变化区间[input2L,input2R]进行取点。具体地,对输入变量input1的变化区间[input1L,input1R]进行取点时,可以从左端点input1L开始均匀取点,两个相邻的取点之间的距离为步长△1,因此输入变量input1的样本点集合即为{input1L,input1L+△1,input1L+2×△1,input1L+3×△1,…},在一实施例中,若最后没有取点到右端点input1R,那么可以将右端点input1R添加到输入变量input1的样本点集合中,因此输入变量input1的样本点集合为{input1L,input1L+△1,input1L+2×△1,input1L+3×△1,…,input1R}。对输入变量input2根据其步长△2在其变化区间[input2L,input2R]进行取点以得到输入变量input2的样本点集合也是类似的,在此不再赘述。
以上为本申请的集成电路器件神经网络建模样本选择方法,相应地,本申请还提出一种集成电路器件神经网络建模样本选择装置(以下简称样本选择装置),请参照图3,本申请的样本选择装置包括确定模块01、平均影响值计算模块03、第一步长计算模块05、其他步长计算模块07、采样模块09和添加模块11,下面具体说明。
确定模块01用于确定待建模的集成电路器件的一个或多个输入变量、输出变量以及各输入变量的变化区间。
平均影响值计算模块03用于分别计算各输入变量的平均影响值。
第一步长计算模块05用于对于平均影响值最大的输入变量,计算其变化区间的相对误差,若该相对误差小于或等于一预设的误差精度,则将该输入变量的变化区间的长度作为该输入变量的步长;若该相对误差大于上述误差精度,则将该输入变量的变化区间均等划分为两个子区间,并分别计算这两个子区间的相对误差;若存在相对误差大于上述误差精度的子区间,则继续将其均等划分为两个子区间并分别计算这两个子区间的相对误差,直到所有子区间的相对误差都小于或等于上述误差精度时停止均等划分,并将区间长度最小的子区间的长度作为该输入变量的步长。在一实施例中,请参照图4,第一步长计算模块05包括相对误差计算模块06,相对误差计算模块06用于计算任意一输入变量在一区间的相对误差,相对误差计算模块06包括输出值测试模块06a、平均值计算模块06b、计算子模块06c和取对数模块06d。输出值测试模块06a用于通过实际测试得到该输入变量取值为该区间的左端点、中点、右端点时所述输出变量分别对应的测试值。平均值计算模块06b用于计算该输入变量取值为该区间的左端点、右端点时所述输出变量分别对应的测试值的平均值。计算子模块06c用于计算该平均值与该输入变量取值为该区间的中点时所述输出变量对应的测试值之间的相对误差。取对数模块06d用于在平均值计算模块06b计算平均值和计算子模块06c计算相对误差时,都先对各测试值取对数操作。取对数模块06d为可选模块,因为在对集成电路器件建模时,其有意义的各输入变量的变化区间,根据集成电路器件的电学特性,其对应的输出变量的值的范围处于一个很大数量级的范围,一般大于105,因此如果直接利用输出变量的值的绝对误差来作为误差评判标准,则给出的标准绝对误差值很难满足输出在不同数量级时的精度要求,最终会造成在某一段区间内过多取点或过少取点。因此,在一较优实施例中,取对数模块06d在平均值计算模块06b计算平均值和计算子模块06c计算相对误差时,都先对各测试值取对数操作。
其他步长计算模块07用于根据平均影响值最大的输入变量的步长,分别计算其他各输入变量的步长。在一实施例中,其他步长计算模块07在计算其他任意一输入变量的步长时,是将平均影响值最大的输入变量的平均影响值除以该待计算步长的输入变量的平均影响值后,再乘以平均影响值最大的输入变量的步长。
采样模块09用于对于每一个输入变量,根据其变化区间及步长进行取点,以得到每一个输入变量的样本点集合。
添加模块11用于当采样模块09对于每一个输入变量,根据其变化区间及步长进行取点,若没有取到该输入变量的变化区间的端点时,将 该输入变量的变化区间的端点额外添加到该输入变量的样本点集合中。添加模块11为可选模块,其目的是最大化的保存边界处的信息,避免边界处的信息丢失,对建模的模型产生不收敛的问题。
以上就是本申请的集成电路器件神经网络建模样本选择方法及装置,可以看到,本申请在样本选择过程中,对迭代中产生的各划分出的区间不会重复进行误差计算,并且不需要对每次迭代得到的划分区间的相对误差进行排序操作,当问题复杂度较高的时候计算效率会更高;本申请在给定结果精度(即误差精度)的前提下可以确定一个满足结果精度的低数据量的训练样本集合,避免因训练样本集合过大造成测试成本增加或样本集合过小造成训练结果不准确,并且由于集成电路器件的电学特性的输出值是处于一个很大数量级的范围,因此在本申请对测试结果取对数,使得本申请更加适用于集成电路器件领域内的问题处理,依本申请进行建模时,具有高精度但低样本数据量的特点。
下面以一个具体的实例来验证本申请的样本选择方法及装置的效果。
不妨以一个沟道长度为20nm的双栅无结器件作为待建模器件,确定的感兴趣的输入变量分别为Vgs和Vds,输出变量为Ids,其中确定的输入变量Vgs的变化区间为[-0.1V,0.9V],输入变量Vds的变化区间为[0.25V,1.05V]。
利用MIV方法算出输入变量Vgs的平均影响值MIV1为-0.0987,输入变量Vds的平均影响值MIV2为-0.0096,由于MIV1大于MIV2,因此接下来按照本申请的样本选择方法及装置计算输入变量Vgs的步长△1,在这过程中,令输入变量Vds的值为其变化区间[0.25V,1.05V]的左端点0.25。
当误差精度被预设为0.5%时,可以计算得到输入变量Vgs的步长△1为0.015,进一步可以计算得到输入变量Vds的步长△2近似等于0.154。
当误差精度被预设为0.1%时,可以计算得到输入变量Vgs的步长△1为0.008,进一步可以计算得到输入变量Vds的步长△2近似等于0.082。
当将输入变量Vgs的步长△1取值介于0.008~0.015之间,对应地,输入变量Vds的步长△2也是取值介于0.082~0.154之间,那么该取点得到样本点集合后进行建模,该模型的误差精度应该介于0.1%~0.5%之间。
例如,将输入变量Vgs的步长△1取值介于0.008~0.015之间,具体为△1为0.01,相应地,△2为0.10;根据输入变量Vgs的步长△1对输入变量Vgs的变化区间[-0.1V,0.9V]进行取点,根据输入变量Vds的步长△2对输入变量Vds的变化区间[0.25V,1.05V]进行取点,得到神经网络的样本点集合后,配置神经网络,利用此样本点集合训练神经网络,图5为训练结果图,其中图5(a)为输出变量Ids-输入变量Vds的模型测结果 与实测结果对比图,图5(b)为输出变量Ids-输入变量Vgs的模型测结果与实测结果对比图,得到的训练结果的精度(即误差精度)为0.3%,可以看到,其介于0.1%~0.5%之间,这验证了本申请的效果。
再反过来,将误差精度预设为0.3%,根据本申请的样本选择方法及装置,可以计算得到输入变量Vgs的步长△1正好等于0.01以及输入变量Vds的步长△2正好等于0.10,这又进一步验证了本申请的效果。
因此,依据本申请的样本选择方法及装置选出的样本点集合,进行建模后最终得到的上述双栅无结器件的模型,可能被运用到实际的电路模拟分析中。
以上内容是结合具体的实施方式对本申请所作的进一步详细说明,不能认定本申请的具体实施只局限于这些说明。对于本申请所属技术领域的普通技术人员来说,在不脱离本申请发明构思的前提下,还可以做出若干简单推演或替换。

Claims (10)

  1. 一种集成电路器件神经网络建模样本选择方法,其特征在于,包括:
    确定待建模的集成电路器件的一个或多个输入变量、输出变量以及各输入变量的变化区间;
    分别计算各输入变量的平均影响值;
    对于平均影响值最大的输入变量,计算其变化区间的相对误差,若该相对误差小于或等于一预设的误差精度,则将该输入变量的变化区间的长度作为该输入变量的步长;若该相对误差大于所述误差精度,则将该输入变量的变化区间均等划分为两个子区间,并分别计算这两个子区间的相对误差;若存在相对误差大于所述预设的误差精度的子区间,则继续将其均等划分为两个子区间并分别计算这两个子区间的相对误差,直到所有子区间的相对误差都小于或等于所述误差精度时停止均等划分,并将区间长度最小的子区间的长度作为该输入变量的步长;
    根据平均影响值最大的输入变量的步长,分别计算其他各输入变量的步长;
    对于每一个输入变量,根据其变化区间及步长进行取点,以得到每一个输入变量的样本点集合。
  2. 如权利要求1所述的集成电路器件神经网络建模样本选择方法,其特征在于,计算任意一输入变量在一区间的相对误差,包括:
    通过实际测试得到该输入变量取值为该区间的左端点、中点、右端点时所述输出变量分别对应的测试值;
    计算该输入变量取值为该区间的左端点、右端点时所述输出变量分别对应的测试值的平均值;
    计算该平均值与该输入变量取值为该区间的中点时所述输出变量对应的测试值之间的相对误差。
  3. 如权利要求2所述的集成电路器件神经网络建模样本选择方法,其特征在于,在计算平均值和相对误差时,都先对各测试值取对数操作。
  4. 如权利要求1所述的集成电路器件神经网络建模样本选择方法,其特征在于,计算其他任意一输入变量的步长时,是将平均影响值最大的输入变量的平均影响值除以该待计算步长的输入变量的平均影 响值后,再乘以平均影响值最大的输入变量的步长。
  5. 如权利要求1所述的集成电路器件神经网络建模样本选择方法,其特征在于,对于每一个输入变量,根据其变化区间及步长进行取点,若没有取到该输入变量的变化区间的端点,则将该输入变量的变化区间的端点额外添加到该输入变量的样本点集合中。
  6. 一种集成电路器件神经网络建模样本选择装置,其特征在于,包括:
    确定模块,用于确定待建模的集成电路器件的一个或多个输入变量、输出变量以及各输入变量的变化区间;
    平均影响值计算模块,用于分别计算各输入变量的平均影响值;
    第一步长计算模块,用于对于平均影响值最大的输入变量,计算其变化区间的相对误差,若该相对误差小于或等于一预设的误差精度,则将该输入变量的变化区间的长度作为该输入变量的步长;若该相对误差大于所述误差精度,则将该输入变量的变化区间均等划分为两个子区间,并分别计算这两个子区间的相对误差;若存在相对误差大于所述预设的误差精度的子区间,则继续将其均等划分为两个子区间并分别计算这两个子区间的相对误差,直到所有子区间的相对误差都小于或等于所述误差精度时停止均等划分,并将区间长度最小的子区间的长度作为该输入变量的步长;
    其他步长计算模块,用于根据平均影响值最大的输入变量的步长,分别计算其他各输入变量的步长;
    采样模块,用于对于每一个输入变量,根据其变化区间及步长进行取点,以得到每一个输入变量的样本点集合。
  7. 如权利要求6所述的集成电路器件神经网络建模样本选择装置,其特征在于,所述第一步长计算模块包括相对误差计算模块,用于计算任意一输入变量在一区间的相对误差,所述相对误差计算模块包括:
    输出值测试模块,用于通过实际测试得到该输入变量取值为该区间的左端点、中点、右端点时所述输出变量分别对应的测试值;
    平均值计算模块,用于计算该输入变量取值为该区间的左端点、右端点时所述输出变量分别对应的测试值的平均值;
    计算子模块,用于计算该平均值与该输入变量取值为该区间的中点 时所述输出变量对应的测试值之间的相对误差。
  8. 如权利要求7所述的集成电路器件神经网络建模样本选择装置,其特征在于,所述相对误差计算模块还包括取对数模块,用于在平均值计算模块计算平均值和计算子模块计算相对误差时,都先对各测试值取对数操作。
  9. 如权利要求6所述的集成电路器件神经网络建模样本选择装置,其特征在于,其他步长计算模块在计算其他任意一输入变量的步长时,是将平均影响值最大的输入变量的平均影响值除以该待计算步长的输入变量的平均影响值后,再乘以平均影响值最大的输入变量的步长。
  10. 如权利要求6所述的集成电路器件神经网络建模样本选择装置,其特征在于,还包括添加模块,用于当采样模块对于每一个输入变量,根据其变化区间及步长进行取点,若没有取到该输入变量的变化区间的端点时,将该输入变量的变化区间的端点额外添加到该输入变量的样本点集合中。
PCT/CN2017/099514 2016-09-23 2017-08-29 一种集成电路器件神经网络建模样本选择方法及装置 WO2018054198A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/073,322 US10628541B2 (en) 2016-09-23 2017-08-29 Method and apparatus for selecting integrated circuit device neural network modeling sample

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610846024.8 2016-09-23
CN201610846024.8A CN106446405B (zh) 2016-09-23 2016-09-23 一种集成电路器件神经网络建模样本选择方法及装置

Publications (1)

Publication Number Publication Date
WO2018054198A1 true WO2018054198A1 (zh) 2018-03-29

Family

ID=58165961

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/099514 WO2018054198A1 (zh) 2016-09-23 2017-08-29 一种集成电路器件神经网络建模样本选择方法及装置

Country Status (3)

Country Link
US (1) US10628541B2 (zh)
CN (1) CN106446405B (zh)
WO (1) WO2018054198A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106446405B (zh) * 2016-09-23 2018-12-18 北京大学深圳研究生院 一种集成电路器件神经网络建模样本选择方法及装置
CN109447245A (zh) * 2018-10-29 2019-03-08 石家庄创天电子科技有限公司 基于神经网络的等效模型生成方法以及建模方法
CN112529403B (zh) * 2020-12-07 2023-09-15 南京航空航天大学 一种运用神经网络算法确定建设用地面积影响因素权重值的方法
CN116341681A (zh) * 2023-03-31 2023-06-27 国网江苏省电力有限公司扬州供电分公司 一种低压光伏用户发电负荷模型训练及预测方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5806053A (en) * 1995-08-30 1998-09-08 Siemens Aktiengesellschaft Method for training a neural network with the non-deterministic behavior of a technical system
CN105005822A (zh) * 2015-06-26 2015-10-28 华能澜沧江水电股份有限公司 基于最优步长与模型动态选择的特高拱坝响应预测方法
CN105488297A (zh) * 2015-12-15 2016-04-13 东北大学 一种基于小样本建立复杂产品优化设计代理模型的方法
CN106446405A (zh) * 2016-09-23 2017-02-22 北京大学深圳研究生院 一种集成电路器件神经网络建模样本选择方法及装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2552013A (en) * 1947-04-22 1951-05-08 Gen Railway Signal Co Pulse duration discriminator
US3233084A (en) * 1960-12-27 1966-02-01 Gen Signals Corp Methods and apparatus for obtaining traffic data
US3502855A (en) * 1967-06-06 1970-03-24 Sperry Rand Corp Differential analyzer with variable integration limits
US4451847A (en) * 1982-06-17 1984-05-29 The United States Of America As Represented By The Secretary Of The Navy Automatic strobe/camera control unit
US5828784A (en) * 1992-07-13 1998-10-27 Hitachi Denshi Kabushiki Kaisha Data coding method and apparatus using a plurality of blocks of different length
WO1999050963A2 (en) * 1998-03-31 1999-10-07 Samsung Electronics Co., Ltd. TURBO ENCODING/DECODING DEVICE AND METHOD FOR PROCESSING FRAME DATA ACCORDING TO QoS
US6272664B1 (en) * 1998-06-03 2001-08-07 Synopsys, Inc. System and method for using scalable polynomials to translate a look-up table delay model into a memory efficient model
CN102663495B (zh) * 2012-02-22 2014-12-10 天津大学 一种用于非线性器件建模的神经网络数据生成方法
US8601416B2 (en) * 2012-03-15 2013-12-03 Taiwan Semiconductor Manufacturing Co., Ltd. Method of circuit design yield analysis
JP2016035542A (ja) * 2014-08-04 2016-03-17 株式会社ニューフレアテクノロジー 位置測定方法、位置ずれマップの作成方法および検査システム
CN105925750A (zh) * 2016-05-13 2016-09-07 南阳理工学院 一种基于神经网络的炼钢终点预测方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5806053A (en) * 1995-08-30 1998-09-08 Siemens Aktiengesellschaft Method for training a neural network with the non-deterministic behavior of a technical system
CN105005822A (zh) * 2015-06-26 2015-10-28 华能澜沧江水电股份有限公司 基于最优步长与模型动态选择的特高拱坝响应预测方法
CN105488297A (zh) * 2015-12-15 2016-04-13 东北大学 一种基于小样本建立复杂产品优化设计代理模型的方法
CN106446405A (zh) * 2016-09-23 2017-02-22 北京大学深圳研究生院 一种集成电路器件神经网络建模样本选择方法及装置

Also Published As

Publication number Publication date
US20190042681A1 (en) 2019-02-07
US10628541B2 (en) 2020-04-21
CN106446405B (zh) 2018-12-18
CN106446405A (zh) 2017-02-22

Similar Documents

Publication Publication Date Title
WO2018054198A1 (zh) 一种集成电路器件神经网络建模样本选择方法及装置
CN110084221B (zh) 一种基于深度学习的带中继监督的序列化人脸关键点检测方法
CN107247989B (zh) 一种实时的计算机视觉处理方法及装置
CN108073902B (zh) 基于深度学习的视频总结方法、装置及终端设备
US20220036231A1 (en) Method and device for processing quantum data
WO2021089013A1 (zh) 空间图卷积网络的训练方法、电子设备及存储介质
WO2019089267A1 (en) Learning the structure of hierarchical extraction models
US9892368B2 (en) Method and apparatus for acquiring training parameters to calibrate a model
WO2023168812A1 (zh) 一种搜索系统的优化方法、装置、存储介质及计算机设备
US20220114317A1 (en) Systems, methods, and computer program products for transistor compact modeling using artificial neural networks
CN114117999A (zh) 一种互连线数学模型的降阶方法、装置、电子设备及存储介质
CN109740109A (zh) 一种基于酉变换的PolSAR图像广义目标分解方法
CN105787296B (zh) 一种宏基因组和宏转录组样本相异度的比较方法
CN107132500A (zh) 一种同步相量测量单元在线校准方法与装置
WO2023151132A1 (zh) 电路模型的仿真模拟方法及装置、计算机设备和存储介质
US10169509B2 (en) Efficient deployment of table lookup (TLU) in an enterprise-level scalable circuit simulation architecture
CN107463528A (zh) 基于ks检验的高斯混合模型分裂与合并算法
CN111695230B (zh) 一种用于微波无源器件的神经网络空间映射多物理建模方法
WO2016012904A1 (en) Method and apparatus for validating experimental data provided for transistor modeling
CN112257215A (zh) 一种产品寿命分布参数的极大似然估计求解方法及系统
CN108304630A (zh) 半导体器件闪烁噪声表征数据筛选方法
CN112926724A (zh) 注塑成型产品良率的评分方法、装置及电子设备
WO2023168813A1 (zh) 音色模型构建方法、音色转换方法、装置、设备及介质
CN116522734A (zh) 用于电气设备内部温度场计算的降阶模型的构建方法
CN115983127A (zh) 基于深度学习的模型参数提取方法、系统、设备及介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17852267

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17852267

Country of ref document: EP

Kind code of ref document: A1