{"title":"Fuzzy Rule Learner","nodeType":"Learner","id":"*dQPhMVOWAavGuXWj","factoryName":"org.knime.base.node.mine.bfn.fuzzy.FuzzyBasisFunctionLearnerNodeFactory","factoryId":"org.knime.base.node.mine.bfn.fuzzy.FuzzyBasisFunctionLearnerNodeFactory","path":["Analytics","Mining","Rule Induction","Fuzzy Rules"],"owner":"knime","ownerAccountId":"account:team:b5f0848f-496d-4e6a-b869-fa3532248db7","description":"<p>This rule learner* learns a Fuzzy Rule Model on labeled numeric data using <a href=\"https://kops.uni-konstanz.de/entities/publication/934859ac-97b4-4eb4-a67e-c530a72abe21\" rel=\"ugc nofollow noopener noreferrer\"> Mixed Fuzzy Rule Formation</a> as the underlying training algorithm (also known as RecBF-DDA algorithm), see <a href=\"https://kops.uni-konstanz.de/entities/publication/7ff6f21e-9d29-457b-bba4-eaebe65bce6d\" rel=\"ugc nofollow noopener noreferrer\"> Influence of fuzzy norms and other heuristics on &#34;Mixed Fuzzy Rule Formation&#34;</a> for an extension of the algorithm.\n <br />\n <br />\n This algorithm generates rules based on numeric data, which are fuzzy intervals in higher dimensional spaces. These hyper-rectangles are defined by trapezoid fuzzy membership functions for each dimension. The selected numeric columns of the input data are used as input data for training and additional columns are used as classification target, either one column holding the class information or a number of numeric columns with class degrees between 0 and 1 can be selected. The data output contains the fuzzy rules after execution. Each rule consists of one fuzzy interval for each dimension plus the target classification columns along with a number of rule measurements. The model output port contains the fuzzy rule model, which can be used for prediction in the Fuzzy Rule Predictor node.\n <br />\n <br />\n (*) RULE LEARNER is a registered trademark of Minitab, LLC and is used with Minitab’s permission.</p>\n        ","shortDescription":"Learns a Fuzzy Rule Model on labeled numeric data.","keywords":[],"deprecated":false,"streamable":false,"tags":["Analytics","Mining","Rule Induction","Fuzzy Rules"],"icon":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDowYjM2YWM5Ny01ZWJhLTQwZTctOTE4OS1iYmU4ZDdkMGYyNGUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Q0Y0NTI3NDQzODQ5MTFFNTk5NzE4QzMwN0M3REQyNEMiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Q0Y0NTI3NDMzODQ5MTFFNTk5NzE4QzMwN0M3REQyNEMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpjODMzMDUzNC01ZmNjLTQ3YmEtOGMwMy0wNjM3MzViNjFjY2EiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MGIzNmFjOTctNWViYS00MGU3LTkxODktYmJlOGQ3ZDBmMjRlIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+L+baegAAARpJREFUeNpi/P//PwMlgImBQjAMDGAkVqGUmDQTLx/vgs+fPmshi7MQawAnJ2eClKSkyr7b1+8AubdBYtLiMp5MRNquBozulOWrl4tiC4P/2DBQkwpUMxsvL29ffWMdm7i4+FmY7XADgAoYQIkJGff19P1/9urpbZAhQH+XGRkbCcUlxN0hOhYKiwsZJ0+cAjYEaGLQspVLH0GlbhMdjXEJsYwONo4MN+/eNAT5BJtmvAZM7J/IEBgcwPDy5SuGGTNm2ACFVHGF8H90sGP7jv+GBob/f/z4Aea/fPny//Tp0/8BmSuAuBmGgXrPYHXB7JmzGVasXMnAzs4O5ouJiTEEBAQyAl0Shu4SRmi0kQSANl8GUr9AbIAAAwA2dIxu/hkc7AAAAABJRU5ErkJggg==","views":[{"name":"Learner Statistics","description":"Displays a summary of the learning process."}],"inPorts":[{"objectClass":"org.knime.core.node.BufferedDataTable","color":"000000","dataType":"Table","optional":false,"name":"Training Data","description":"Numeric data as well as class information used for training."}],"outPorts":[{"objectClass":"org.knime.core.node.BufferedDataTable","color":"000000","dataType":"Table","optional":false,"name":"Fuzzy Rules","description":"Rules with fuzzy intervals in each dimension, classification columns, and additional rule measures."},{"objectClass":"org.knime.base.node.mine.bfn.fuzzy.FuzzyBasisFunctionPortObject","color":"1eb9dc","dataType":"Fuzzy Basis Function","optional":false,"name":"Fuzzy Rule Model","description":"Fuzzy Rule Model can be used for prediction."}],"dynInPorts":[],"dynOutPorts":[],"additionalSiteInformation":{"url":"https://update.knime.com/analytics-platform/5.12","trusted":true,"enabledByDefault":true,"name":"KNIME Analytics Platform 5.12 Update Site","version":"5.12.0"},"dialog":[{"sectionName":"Options","fields":[{"name":"Missing values","description":"Select one method to handle missing values.\n<ul><li><b>Incorp</b> : May generate fuzzy rules with missing values, if no replacement value has been found during the learning process.</li><li><b>Best Guess</b> : Computes the optimal replacement value by projecting the fuzzy rule (with missing value(s)) onto the missing dimension(s) of all other rules.</li><li><b>Mean</b> : Replaces the missing value(s) with the column mean.</li><li><b>Min</b> : Replaces the missing value(s) with the column min.</li><li><b>Max</b> : Replaces the missing value(s) with the column max.</li><li><b>Zero</b> : Replaces the missing value(s) with zero.</li><li><b>One</b> : Replaces the missing value(s) with one.</li></ul>","optional":false},{"name":"Shrink after commit","description":"If selected, a shrink to reduce conflicting rules is executed immediately after a new rule is committed, i.e. the new rule is reduced so that conflicts with all other rules of different classes are avoided.","optional":false},{"name":"Use class with max coverage","description":"If selected, only the class with maximum coverage degree of the target columns is used during training, otherwise all class columns are considered for coverage.","optional":false},{"name":"Use maximum number of epochs","description":"If selected, the option defines the maximum number of epochs the algorithm has to process the entire data set, otherwise it repeats this process until this rule model is stable, i.e. no new rule has been committed and/or no shrink is executed.","optional":false},{"name":"Target columns","description":"Select the target(s) to be used for classification. If more than one column (only numeric) is selected, the columns must contain class membership values between 0 and 1 for each class given by the column name.","optional":false},{"name":"Fuzzy norm","description":"Select a fuzzy norm to compute the rules&#39; activation across all dimensions and rules. Fuzzy norms are important, because they combine the membership values of each fuzzy interval for one rule and compute a final output across all rules.","optional":false},{"name":"Shrink function","description":"Select a shrink method to reduce rules in order to avoid conflicts between rules of different classes.\n<ul><li><b>Volume border based</b> : Applies the volume loss in terms of the support or core region borders.</li><li><b>Volume anchor based</b> : Uses the anchor value border.</li><li><b>Volume rule based</b> : Uses the entire rule volume interval for one rule and compute a final output across all rules.</li></ul>","optional":false}]}],"links":[],"kudos":[{"accountId":"account:user:d928c2fb-20ac-4406-bb7c-f099f3ef08e9","user":"volodymyr56","date":"2021-01-15T10:47:54+00:00"}],"kudosCount":1,"bundleInformation":{"bundleVersion":"5.12.0.v202606261225","bundleName":"KNIME Base Nodes","bundleSymbolicName":"org.knime.base","bundleVendor":"KNIME AG, Zurich, Switzerland","featureSymbolicName":"org.knime.features.base","featureName":"KNIME Base nodes","featureVersion":"5.12.0.v202606261225","featureVendor":"KNIME AG, Zurich, Switzerland","extensionId":"*bjR3r1yWOznPIEXS"},"frequentSuccessors":[{"id":"*lTnqesML5yHhWk_g","factoryName":"org.knime.base.node.mine.bfn.fuzzy.FuzzyBasisFunctionPredictor2NodeFactory","probability":0.8},{"id":"*SMkaasH0Wn3tKqfo","factoryName":"org.knime.base.node.mine.scorer.accuracy.AccuracyScorerNodeFactory","probability":0.020833333333333332},{"id":"*UwpLkzO3YUH9ogjZ","factoryName":"org.knime.base.node.io.predictor.PredictorWriterNodeFactory","probability":0.016666666666666666},{"id":"*UyCz5Rn6epS9CN4Q","factoryName":"org.knime.base.node.preproc.colconvert.numbertostring.NumberToStringNodeFactory","probability":0.0125},{"id":"*T2WZJU7jOfyFDtl6","factoryName":"org.knime.base.node.mine.decisiontree2.learner2.DecisionTreeLearnerNodeFactory3","probability":0.008333333333333333},{"id":"*6jI6GPZYQlWirx9J","factoryName":"org.knime.base.node.viz.table.TableNodeFactory","probability":0.008333333333333333},{"id":"*CMq1zWZqWiDfnXiX","factoryName":"org.knime.base.node.preproc.bitvector.create.CreateBitVectorNodeFactory","probability":0.008333333333333333},{"id":"*JiJhJpgkWWuOfG2s","factoryName":"org.knime.ext.poi2.node.write2.XLSWriter2NodeFactory","probability":0.008333333333333333},{"id":"*eAyyc-wmeLvvI3j1","factoryName":"org.knime.base.node.mine.regression.linear2.learner.LinReg2LearnerNodeFactory2","probability":0.004166666666666667},{"id":"*eKnxs53FkU9CuBKg","factoryName":"org.knime.base.node.mine.cluster.fuzzycmeans.FuzzyClusterNodeFactory2","probability":0.004166666666666667}]}
