⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mlppanel.java

📁 利用Java实现的神经网络工具箱
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
		initializationNames[0] = resource.getString("nguyen");		initializationNames[1] = resource.getString("randomic");		initializationCombo = new JComboBox(initializationNames);		initializationPanel = new JPanel();		initializationPanel.setLayout(new GridBagLayout());		initializationPanel.add(initializationCombo,				new GridBagConstraints(0, 0, 1, 1, 1.0, 1.0,						GridBagConstraints.CENTER,						GridBagConstraints.VERTICAL, borderInsets,						67, 0));		initializationPanel.setBorder(new TitledBorder(resource				.getString("initialization")));				// Main panel composition		this.setLayout(new GridBagLayout());		this.add(internalLayersPanel,				new GridBagConstraints(0, 0, 1, 1, 1.0, 1.0,						GridBagConstraints.CENTER,						GridBagConstraints.HORIZONTAL, borderInsets,						67, 0));		this.add(outputLayerPanel,				new GridBagConstraints(0, 1, 1, 1, 1.0, 1.0,						GridBagConstraints.CENTER,						GridBagConstraints.HORIZONTAL, borderInsets,						67, 0));				this.add(initializationPanel,				new GridBagConstraints(0, 2, 1, 1, 1.0, 1.0,						GridBagConstraints.CENTER,						GridBagConstraints.HORIZONTAL, borderInsets,						67, 0));			} //MLPFrame()	/**	 * 	 */	public void initializeComponents(boolean verify) {		String layerName;		MLPParameters mlpParameters;		Vector internalLayersNames;		mlpParameters = (MLPParameters) parameters;		internalLayersNames = new Vector();		if (parameters != null) {			if (mlpParameters.getActivationFunctions() != null					&& mlpParameters.getNeurons() != null) {				if (verify) {					for (int i = 0; i < mlpParameters.getActivationFunctions().length - 1; i++) {						internalLayersActivationFunctions								.addElement(mlpParameters										.getActivationFunctions()[i]);					}					for (int i = 1; i < mlpParameters.getNeurons().length - 1; i++) {						internalLayersNeurons.addElement(new Integer(								mlpParameters.getNeurons()[i]));					}					outputLayerActivationFunctionCombo							.setSelectedIndex(activationFunctionIndex(mlpParameters									.getActivationFunctions()[mlpParameters									.getActivationFunctions().length - 1]));					outputLayerNeuronsSpinner.setValue(new Integer(							mlpParameters.getNeurons()[mlpParameters									.getNeurons().length - 1]));					initializationCombo							.setSelectedIndex(initializationIndex(mlpParameters									.getInitializationName()));				}				for (int i = 0; i < internalLayersNeurons.size(); i++) {					layerName = resource.getString("layer")							+ " "							+ (i + 1)							+ " > "							+ resource.getString("activationFunction")							+ ": "							+ activationFunctionsNames[activationFunctionIndex((String) internalLayersActivationFunctions									.elementAt(i))] + " - "							+ resource.getString("neurons") + ": "							+ internalLayersNeurons.elementAt(i);					internalLayersNames.add(layerName);				}			}		}		internalLayersList.setListData(internalLayersNames);		internalLayersList.updateUI();			} //initializeContainers()		/**	 * 	 * @return	 */	public ArchitectureParameters getParameters() {		MLPParameters mlpParameters;		mlpParameters = (MLPParameters) parameters;				mlpParameters.configureLayers(internalLayersActivationFunctions,				internalLayersNeurons,				activationFunctions[outputLayerActivationFunctionCombo						.getSelectedIndex()],				((Integer) outputLayerNeuronsSpinner.getValue()).intValue());				mlpParameters.setInitializationName(initialization[initializationCombo				.getSelectedIndex()]);				return mlpParameters;			} //getParameters()		/**	 * 	 * @param activationFunction	 * @return	 */	private int activationFunctionIndex(String activationFunction) {		int index = 0;				for(int i = 0; i < activationFunctions.length; i++) {			if(activationFunction.equals(activationFunctions[i])) {				index = i;				break;							}					}		return index;			} //activationFunctionIndex()		/**	 * 	 * @param initialization	 * @return	 */	private int initializationIndex(String initialization) {		int index = 0;				for(int i = 0; i < this.initialization.length; i++) {			if(initialization.equals(this.initialization[i])) {				index = i;				break;							}					}		return index;			} //initializationIndex()		/**	 * 	 */	public class AddLayerButtonActionListener implements ActionListener {		public void actionPerformed(ActionEvent arg0) {			String layerName;			int listSelection;			int selection;			int neurons;			listSelection = internalLayersList.getSelectedIndex();			if (listSelection < 0) {				listSelection = internalLayersActivationFunctions.size();			} else {				listSelection++;			}			selection = internalLayersActivationFunctionCombo					.getSelectedIndex();			if (selection == -1) {				JOptionPane.showMessageDialog(null, resource						.getString("inputLayerFunctionError"), resource						.getString("nntk"), JOptionPane.ERROR_MESSAGE);			} else {				neurons = ((Integer) internalLayersNeuronsSpinner.getValue())						.intValue();				if (neurons < 1) {					JOptionPane.showMessageDialog(null, resource							.getString("inputLayerNeuronsError"), resource							.getString("nntk"), JOptionPane.ERROR_MESSAGE);				} else {					internalLayersActivationFunctions.add(listSelection,							activationFunctions[selection]);					internalLayersNeurons.add(listSelection, new Integer(							neurons));					initializeComponents(false);				}			}			if ((internalLayersActivationFunctions.size() > 0)) {				removeLayerButton.setEnabled(true);			}		} //actionPerformed()	} //AddLayerButtonActionListener		/**	 * 	 */	public class RemoveLayerButtonActionListener implements ActionListener {		public void actionPerformed(ActionEvent arg0) {			int selection;			selection = internalLayersList.getSelectedIndex();			if ((selection < 0)					|| (selection >= internalLayersActivationFunctions.size())					|| (internalLayersActivationFunctions.size() == 0)) {				JOptionPane.showMessageDialog(null, resource						.getString("layerSelectionError"), resource						.getString("nntk"), JOptionPane.ERROR_MESSAGE);			} else {				internalLayersActivationFunctions.remove(selection);				internalLayersNeurons.remove(selection);				initializeComponents(false);			}			if ((internalLayersActivationFunctions.size() == 0)) {				removeLayerButton.setEnabled(false);			}		} //actionPerformed()	} //RemoveLayerButtonActionListener	} //MLPFrame

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -