Ejemplo n.º 1
0
        public override Symbol Build(Symbol data)
        {
            var weightName = UUID.GetID(ID + "_w");
            var biasName   = UUID.GetID(ID + "_b");

            var bias = UseBias ? Symbol.Variable(biasName) : null;

            InitParams.Add(weightName, KernalInitializer);
            if (UseBias)
            {
                InitParams.Add(biasName, BiasInitializer);
            }

            ConstraintParams.Add(weightName, KernalConstraint);
            if (UseBias)
            {
                ConstraintParams.Add(biasName, BiasConstraint);
            }

            RegularizerParams.Add(weightName, KernalRegularizer);
            if (UseBias)
            {
                RegularizerParams.Add(biasName, BiasRegularizer);
            }

            var l = sym.FullyConnected(data, Symbol.Variable(weightName), Dim, bias, !UseBias, true, ID);

            if (Activation != ActivationType.Linear)
            {
                var act = ActivationRegistry.Get(Activation);
                l = act.Build(l);
            }

            return(l);
        }
Ejemplo n.º 2
0
        //protected Boolean IsAllSubProcessCompleted()
        //{
        //    Boolean l_blnIsAllCompleted = true;
        //    B_ProcessInstance l_busProcessInstance = new B_ProcessInstance();
        //    DataTable l_dtbDataTable = l_busProcessInstance.GetSubProcess(this.ProcessID, String.Empty);

        //    if (l_dtbDataTable == null)
        //    {
        //        throw new Exception("获取子流程出错");
        //    }

        //    foreach (DataRow l_dtrDataRow in l_dtbDataTable.Rows)
        //    {
        //        if (l_dtrDataRow["PROC_INST_ID"].ToString() == this.SubProcessID)
        //        {
        //            continue;
        //        }
        //        if (l_dtrDataRow["STATUS"].ToString() == ProcessConstString.ProcessStatus.STATUS_RUNNING)
        //        {
        //            l_blnIsAllCompleted = false;
        //            break;
        //        }
        //    }
        //    return l_blnIsAllCompleted;
        //}

        /// <summary>
        /// 创建子流程
        /// huang qi add
        /// </summary>
        /// <param name="strSubTemplateName">子流程模板名称</param>
        /// <param name="nValues">流程参数</param>
        /// <returns>ProcInstID</returns>
        protected String GetCreateSubProcessID(String strSubTemplateName, Hashtable nValues)
        {
            FSProcessInstance objProcessInstance = null;
            String            l_strPIID          = UUID.GetID();

            objProcessInstance = WorkFlowBase.CreateProcess(strSubTemplateName, l_strPIID, this.ProcessID, nValues);
            return(objProcessInstance == null ? String.Empty : objProcessInstance.ProcInstID);
        }
Ejemplo n.º 3
0
 public BaseLayer(string name)
 {
     Name              = name;
     ID                = UUID.GetID(name);
     InitParams        = new Dictionary <string, BaseInitializer>();
     ConstraintParams  = new Dictionary <string, BaseConstraint>();
     RegularizerParams = new Dictionary <string, BaseRegularizer>();
 }
Ejemplo n.º 4
0
        public override Symbol Build(Symbol x)
        {
            var weightName = UUID.GetID(ID + "_w");

            InitParams.Add(weightName, EmbeddingsInitializer);
            ConstraintParams.Add(weightName, EmbeddingsConstraint);
            RegularizerParams.Add(weightName, EmbeddingsRegularizer);
            return(sym.Embedding(x, Symbol.Variable(weightName), InputDim, OutputDim, symbol_name: ID));
        }
Ejemplo n.º 5
0
        public Symbol Build(Symbol data)
        {
            Symbol layer = Operators.FullyConnected(ID, data, Symbol.Variable(UUID.GetID(ID + "_w")), Symbol.Variable(UUID.GetID(ID + "_b")), Dim);

            if (Activation != null)
            {
                return(Activation.Build(layer));
            }

            return(layer);
        }
Ejemplo n.º 6
0
        private WFAutomaticWorkItem[] GetAutomaticWorkItems(WorkflowService api, string aiID)
        {
            // manual work items
            WFAny any = new WFAny();

            any.Type  = WFTypeCode._STRING;
            any.Value = aiID;

            WFQueryExpr expr = new WFQueryExpr();

            expr.ColumnName = "ACTIVITY_INST_ID";
            expr.Operator   = SQLExpr.EQ;
            expr.Any        = any;
            expr.IsValue    = true;

            WFAutomaticWorkItem[] wks = api.QueryProcedureList(expr);
            if (wks == null || wks.Length == 0)
            {
                return(null);
            }

            SortedList sl        = new SortedList();
            string     procedure = null;
            string     prefix    = WFConstants.BUILT_IN_PROCEDURE;

            foreach (WFAutomaticWorkItem wk in wks)
            {
                procedure = wk.ProcedureInfo;
                if (!procedure.StartsWith(prefix))
                {
                    continue;
                }
                procedure = procedure.Remove(0, prefix.Length + 1);
                if (!procedure.StartsWith("SubProcess"))
                {
                    continue;
                }

                sl.Add((int.MaxValue - wk.Session) + UUID.GetID(), wk);
            }
            wks = new WFAutomaticWorkItem[sl.Count];
            if (sl.Count > 0)
            {
                sl.Values.CopyTo(wks, 0);
            }
            return(wks);
        }
Ejemplo n.º 7
0
        public override Symbol Build(Symbol x)
        {
            var   biasName   = UUID.GetID(ID + "_b");
            var   weightName = UUID.GetID(ID + "_w");
            var   bias       = UseBias ? Symbol.Variable(biasName) : null;
            Shape pad        = null;

            if (Padding.HasValue)
            {
                pad = new Shape(Padding.Value, Padding.Value, Padding.Value);
            }
            else
            {
                pad = new Shape();
            }

            if (UseBias)
            {
                InitParams.Add(biasName, BiasInitializer);
            }
            InitParams.Add(weightName, KernalInitializer);

            ConstraintParams.Add(weightName, KernalConstraint);
            if (UseBias)
            {
                ConstraintParams.Add(biasName, BiasConstraint);
            }

            RegularizerParams.Add(weightName, KernalRegularizer);
            if (UseBias)
            {
                RegularizerParams.Add(biasName, BiasRegularizer);
            }

            var conv = sym.Deconvolution(x, Symbol.Variable(weightName), new Shape(KernalSize.Item1, KernalSize.Item2, KernalSize.Item3),
                                         Filters, new Shape(Strides.Item1, Strides.Item2, Strides.Item3), new Shape(DialationRate.Item1, DialationRate.Item2, DialationRate.Item3), pad,
                                         new Shape(), new Shape(), bias, !UseBias, 1, 512, null, false, null, ID);

            if (Activation != ActivationType.Linear)
            {
                var act = ActivationRegistry.Get(Activation);
                conv = act.Build(conv);
            }

            return(conv);
        }
Ejemplo n.º 8
0
        public override Symbol Build(Symbol x)
        {
            var beta       = UUID.GetID(ID + "_beta");
            var gamma      = UUID.GetID(ID + "_beta");
            var movingMean = UUID.GetID(ID + "_mean");
            var movingVar  = UUID.GetID(ID + "_var");

            InitParams.Add(beta, BetaInitializer);
            InitParams.Add(gamma, GammaInitializer);
            InitParams.Add(movingMean, MovingMeanInitializer);
            InitParams.Add(movingVar, MovingVarianceInitializer);

            ConstraintParams.Add(beta, BetaConstraint);
            ConstraintParams.Add(gamma, GammaConstraint);

            RegularizerParams.Add(beta, BetaRegularizer);
            RegularizerParams.Add(gamma, GammaRegularizer);

            return(sym.BatchNorm(x, Symbol.Variable(gamma), Symbol.Variable(beta), Symbol.Variable(movingMean), Symbol.Variable(movingVar),
                                 Epsilon, Momentum, Center, Scale, false, Axis, false, ID));
        }
Ejemplo n.º 9
0
        private WFManualWorkItem[] GetManualWorkItems(WorkflowService api, string aiID)
        {
            // manual work items
            WFAny       any  = WFAny.Create(aiID);
            WFQueryExpr expr = new WFQueryExpr("ACTIVITY_INST_ID", SQLExpr.EQ, any, true);

            WFManualWorkItem[] wks = api.QueryWorkList(expr);
            if (wks == null || wks.Length == 0)
            {
                return(null);
            }

            SortedList sl = new SortedList();

            foreach (WFManualWorkItem wk in wks)
            {
                string key = (DateTime.MaxValue - wk.AssignedDate).ToString();
                sl.Add(key + UUID.GetID(), wk);
            }
            sl.Values.CopyTo(wks, 0);
            return(wks);
        }
        public static WFEvent CreateProcInst(string PID, string PIID, string PIName, string workObjectID,
                                             string superPIID, bool startImmediately)
        {
            IWFWorkflowService svc = Common.GetWorkFlowAPI();
            string             processDefinitionName = "EmployeeOnboardProcess";

            // get UUID of released process definition
            string processDefinitionID = svc.GetReleasedPID(processDefinitionName);

            // assign UUID of process instance
            string processInstanceID = UUID.GetID();

            // process instance name that has to be unique within process definition ID
            string processInstanceName = string.Format("{0}-{1}", processDefinitionName, DateTime.Now.Ticks);

            // work object ID
            workObjectID = UUID.GetID();

            // create process instance
            WFEvent E = svc.CreateProcInst(PID, PIID, PIName, workObjectID, null, true);

            return(E);
        }
Ejemplo n.º 11
0
 public BaseLayer(string name)
 {
     Name   = name;
     ID     = UUID.GetID(name);
     Params = new Dictionary <string, Symbol>();
 }
Ejemplo n.º 12
0
 public BaseLayer(string name)
 {
     Name   = UUID.GetID(name);
     Params = new Dictionary <string, Variable>();
 }