精华内容
下载资源
问答
  • 这一款整理发布的如何留住关键人才与核心员工,适用于日常学习、参考、借鉴如何留住关键人才...该文档为如何留住关键人才与核心员工,是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看
  • 兄弟们,什么是软件中的关键技术与核心技术有什么区别? 小弟负责的是一产品开发中的关键技术,小弟没有明白这个软件产品中的关键地方是指什么?它的意义又是什么?
  • 第12章 Oracle编程基础 本章介绍Oracle编程基础主要有PL/SQL相关内容和Oracle的控制语句PL/SQLProcedural Language/SQL是Oracle在SQL标准语言上进行扩展后形成的程序设计语言是一种Oracle数据库特有的支持应用开发的...
  • iOS开发UI篇—核心动画(关键帧动画) 一、简单介绍 是CApropertyAnimation的子类,跟CABasicAnimation的区别是:CABasicAnimation只能从一个数值(fromValue)变到另一个数值(toValue),而CAKeyframeAnimation会使用...

    本文转载自点击打开链接

    一、简单介绍

    是CApropertyAnimation的子类,跟CABasicAnimation的区别是:CABasicAnimation只能从一个数值(fromValue)变到另一个数值(toValue),而CAKeyframeAnimation会使用一个NSArray保存这些数值

    属性解析:

    values:就是上述的NSArray对象。里面的元素称为”关键帧”(keyframe)。动画对象会在指定的时间(duration)内,依次显示values数组中的每一个关键帧

    path:可以设置一个CGPathRef\CGMutablePathRef,让层跟着路径移动。path只对CALayer的anchorPoint和position起作用。如果你设置了path,那么values将被忽略

    keyTimes:可以为对应的关键帧指定对应的时间点,其取值范围为0到1.0,keyTimes中的每一个时间值都对应values中的每一帧.当keyTimes没有设置的时候,各个关键帧的时间是平分的

    说明:CABasicAnimation可看做是最多只有2个关键帧的CAKeyframeAnimation

    二、代码示例

    第一种方式:

    代码:

    #import "YYViewController.h"
    
    @interface YYViewController ()
    @property (weak, nonatomic) IBOutlet UIView *customView;
    @end
    
    @implementation YYViewController
    
    -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
        //1.创建核心动画
        CAKeyframeAnimation *keyAnima=[CAKeyframeAnimation animation];
        //平移
        keyAnima.keyPath=@"position";
        //1.1告诉系统要执行什么动画
        NSValue *value1=[NSValue valueWithCGPoint:CGPointMake(100, 100)];
        NSValue *value2=[NSValue valueWithCGPoint:CGPointMake(200, 100)];
        NSValue *value3=[NSValue valueWithCGPoint:CGPointMake(200, 200)];
        NSValue *value4=[NSValue valueWithCGPoint:CGPointMake(100, 200)];
        NSValue *value5=[NSValue valueWithCGPoint:CGPointMake(100, 100)];
        keyAnima.values=@[value1,value2,value3,value4,value5];
        //1.2设置动画执行完毕后,不删除动画
        keyAnima.removedOnCompletion=NO;
        //1.3设置保存动画的最新状态
        keyAnima.fillMode=kCAFillModeForwards;
        //1.4设置动画执行的时间
        keyAnima.duration=4.0;
        //1.5设置动画的节奏
        keyAnima.timingFunction=[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
        
        //设置代理,开始—结束
        keyAnima.delegate=self;
        //2.添加核心动画
        [self.customView.layer addAnimation:keyAnima forKey:nil];
    }
    
    -(void)animationDidStart:(CAAnimation *)anim {
        NSLog(@"开始动画");
    }
    
    -(void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag {
        NSLog(@"结束动画");
    }
    @end

    说明:这个项目在storyboard中拖入了一个view,并和控制器中的custom进行了关联。

    效果和打印结果:

       

    补充:设置动画的节奏

    第二种方式(使用path)让layer在指定的路径上移动(画圆):

    代码:

    #import "YYViewController.h"
    
    @interface YYViewController ()
    @property (weak, nonatomic) IBOutlet UIView *customView;
    @end
    
    @implementation YYViewController
    
    - (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
        //1.创建核心动画
        CAKeyframeAnimation *keyAnima=[CAKeyframeAnimation animation];
        //平移
        keyAnima.keyPath=@"position";
        //1.1告诉系统要执行什么动画
        //创建一条路径
        CGMutablePathRef path=CGPathCreateMutable();
        //设置一个圆的路径
        CGPathAddEllipseInRect(path, NULL, CGRectMake(150, 100, 100, 100));
        keyAnima.path=path;
        
        //有create就一定要有release
        CGPathRelease(path);
        //1.2设置动画执行完毕后,不删除动画
        keyAnima.removedOnCompletion=NO;
        //1.3设置保存动画的最新状态
        keyAnima.fillMode=kCAFillModeForwards;
        //1.4设置动画执行的时间
        keyAnima.duration=5.0;
        //1.5设置动画的节奏
        keyAnima.timingFunction=[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
        
        //设置代理,开始—结束
        keyAnima.delegate=self;
        //2.添加核心动画
        [self.customView.layer addAnimation:keyAnima forKey:nil];
    }
    
    - (void)animationDidStart:(CAAnimation *)anim {
        NSLog(@"开始动画");
    }
    
    - (void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag {
        NSLog(@"结束动画");
    }
    @end

    说明:可以通过path属性,让layer在指定的轨迹上运动。

    停止动画:

    #import "YYViewController.h"
    
    @interface YYViewController ()
    @property (weak, nonatomic) IBOutlet UIView *customView;
    - (IBAction)stopOnClick:(UIButton *)sender;
    @end
    
    @implementation YYViewController
    
    
    -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
        //1.创建核心动画
        CAKeyframeAnimation *keyAnima=[CAKeyframeAnimation animation];
        //平移
        keyAnima.keyPath=@"position";
        //1.1告诉系统要执行什么动画
        //创建一条路径
        CGMutablePathRef path=CGPathCreateMutable();
        //设置一个圆的路径
        CGPathAddEllipseInRect(path, NULL, CGRectMake(150, 100, 100, 100));
        keyAnima.path=path;
        
        //有create就一定要有release
        CGPathRelease(path);
        //1.2设置动画执行完毕后,不删除动画
        keyAnima.removedOnCompletion=NO;
        //1.3设置保存动画的最新状态
        keyAnima.fillMode=kCAFillModeForwards;
        //1.4设置动画执行的时间
        keyAnima.duration=5.0;
        //1.5设置动画的节奏
        keyAnima.timingFunction=[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
        
        //2.添加核心动画
        [self.customView.layer addAnimation:keyAnima forKey:@"wendingding"];
    }
    
    - (IBAction)stopOnClick:(UIButton *)sender {
        //停止self.customView.layer上名称标示为wendingding的动画
        [self.customView.layer removeAnimationForKey:@"wendingding"];
    }
    @end

    点击停止动画,程序内部会调用  [self.customView.layer removeAnimationForKey:@"wendingding"];停止self.customView.layer上名称标示为wendingding的动画。

    三、图标抖动

    代码示例:

    #import "YYViewController.h"
    #define angle2Radian(angle)  ((angle)/180.0*M_PI)
    
    @interface YYViewController ()
    @property (weak, nonatomic) IBOutlet UIImageView *iconView;
    @end
    
    @implementation YYViewController
    -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
        //1.创建核心动画
        CAKeyframeAnimation *keyAnima=[CAKeyframeAnimation animation];
        keyAnima.keyPath=@"transform.rotation";
        //设置动画时间
        keyAnima.duration=0.1;
        //设置图标抖动弧度
        //把度数转换为弧度  度数/180*M_PI
        keyAnima.values=@[@(-angle2Radian(4)),@(angle2Radian(4)),@(-angle2Radian(4))];
        //设置动画的重复次数(设置为最大值)
        keyAnima.repeatCount=MAXFLOAT;
        
        keyAnima.fillMode=kCAFillModeForwards;
        keyAnima.removedOnCompletion=NO;
        //2.添加动画
        [self.iconView.layer addAnimation:keyAnima forKey:nil];
    }
    @end

    说明:图标向左向右偏转一个弧度(4),产生抖动的视觉效果。

    程序界面:



    展开全文
  • iOS开发UI篇—核心动画(关键帧动画)

    千次阅读 2014-11-13 13:34:13
    iOS开发UI篇—核心动画(关键帧动画) 一、简单介绍 是CApropertyAnimation的子类,跟CABasicAnimation的区别是:CABasicAnimation只能从一个数值(fromValue)变到另一个数值(toValue),而CAKeyframeAnimation会使用...

    iOS开发UI篇—核心动画(关键帧动画)

    一、简单介绍

    是CApropertyAnimation的子类,跟CABasicAnimation的区别是:CABasicAnimation只能从一个数值(fromValue)变到另一个数值(toValue),而CAKeyframeAnimation会使用一个NSArray保存这些数值

    属性解析:

    values:就是上述的NSArray对象。里面的元素称为”关键帧”(keyframe)。动画对象会在指定的时间(duration)内,依次显示values数组中的每一个关键帧

    path:可以设置一个CGPathRef\CGMutablePathRef,让层跟着路径移动。path只对CALayer的anchorPoint和position起作用。如果你设置了path,那么values将被忽略

    keyTimes:可以为对应的关键帧指定对应的时间点,其取值范围为0到1.0,keyTimes中的每一个时间值都对应values中的每一帧.当keyTimes没有设置的时候,各个关键帧的时间是平分的

    说明:CABasicAnimation可看做是最多只有2个关键帧的CAKeyframeAnimation

    二、代码示例

    第一种方式:

    代码:

    复制代码
     1 //
     2 //  YYViewController.m
     3 //  10-核心动画(关键帧动画1)
     4 //
     5 //  Created by apple on 14-6-21.
     6 //  Copyright (c) 2014年 itcase. All rights reserved.
     7 //
     8 
     9 #import "YYViewController.h"
    10 
    11 @interface YYViewController ()
    12 @property (weak, nonatomic) IBOutlet UIView *customView;
    13 
    14 @end
    15 
    16 @implementation YYViewController
    17 
    18 
    19 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
    20 {
    21     //1.创建核心动画
    22     CAKeyframeAnimation *keyAnima=[CAKeyframeAnimation animation];
    23     //平移
    24     keyAnima.keyPath=@"position";
    25     //1.1告诉系统要执行什么动画
    26     NSValue *value1=[NSValue valueWithCGPoint:CGPointMake(100, 100)];
    27     NSValue *value2=[NSValue valueWithCGPoint:CGPointMake(200, 100)];
    28     NSValue *value3=[NSValue valueWithCGPoint:CGPointMake(200, 200)];
    29     NSValue *value4=[NSValue valueWithCGPoint:CGPointMake(100, 200)];
    30     NSValue *value5=[NSValue valueWithCGPoint:CGPointMake(100, 100)];
    31     keyAnima.values=@[value1,value2,value3,value4,value5];
    32     //1.2设置动画执行完毕后,不删除动画
    33     keyAnima.removedOnCompletion=NO;
    34     //1.3设置保存动画的最新状态
    35     keyAnima.fillMode=kCAFillModeForwards;
    36     //1.4设置动画执行的时间
    37     keyAnima.duration=4.0;
    38     //1.5设置动画的节奏
    39     keyAnima.timingFunction=[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
    40     
    41     //设置代理,开始—结束
    42     keyAnima.delegate=self;
    43     //2.添加核心动画
    44     [self.customView.layer addAnimation:keyAnima forKey:nil];
    45 }
    46 
    47 -(void)animationDidStart:(CAAnimation *)anim
    48 {
    49     NSLog(@"开始动画");
    50 }
    51 
    52 -(void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag
    53 {
    54     NSLog(@"结束动画");
    55 }
    56 @end
    复制代码

    说明:这个项目在storyboard中拖入了一个view,并和控制器中的custom进行了关联。

    效果和打印结果:

       

    补充:设置动画的节奏

    第二种方式(使用path)让layer在指定的路径上移动(画圆):

    代码:

    复制代码
     1 #import "YYViewController.h"
     2 
     3 @interface YYViewController ()
     4 @property (weak, nonatomic) IBOutlet UIView *customView;
     5 
     6 @end
     7 
     8 @implementation YYViewController
     9 
    10 
    11 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
    12 {
    13     //1.创建核心动画
    14     CAKeyframeAnimation *keyAnima=[CAKeyframeAnimation animation];
    15     //平移
    16     keyAnima.keyPath=@"position";
    17     //1.1告诉系统要执行什么动画
    18     //创建一条路径
    19     CGMutablePathRef path=CGPathCreateMutable();
    20     //设置一个圆的路径
    21     CGPathAddEllipseInRect(path, NULL, CGRectMake(150, 100, 100, 100));
    22     keyAnima.path=path;
    23     
    24     //有create就一定要有release
    25     CGPathRelease(path);
    26     //1.2设置动画执行完毕后,不删除动画
    27     keyAnima.removedOnCompletion=NO;
    28     //1.3设置保存动画的最新状态
    29     keyAnima.fillMode=kCAFillModeForwards;
    30     //1.4设置动画执行的时间
    31     keyAnima.duration=5.0;
    32     //1.5设置动画的节奏
    33     keyAnima.timingFunction=[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
    34     
    35     //设置代理,开始—结束
    36     keyAnima.delegate=self;
    37     //2.添加核心动画
    38     [self.customView.layer addAnimation:keyAnima forKey:nil];
    39 }
    40 
    41 -(void)animationDidStart:(CAAnimation *)anim
    42 {
    43     NSLog(@"开始动画");
    44 }
    45 
    46 -(void)animationDidStop:(CAAnimation *)anim finished:(BOOL)flag
    47 {
    48     NSLog(@"结束动画");
    49 }
    50 @end
    复制代码

    说明:可以通过path属性,让layer在指定的轨迹上运动。

    停止动画:

    复制代码
     1 #import "YYViewController.h"
     2 
     3 @interface YYViewController ()
     4 @property (weak, nonatomic) IBOutlet UIView *customView;
     5 - (IBAction)stopOnClick:(UIButton *)sender;
     6 
     7 @end
     8 
     9 @implementation YYViewController
    10 
    11 
    12 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
    13 {
    14     //1.创建核心动画
    15     CAKeyframeAnimation *keyAnima=[CAKeyframeAnimation animation];
    16     //平移
    17     keyAnima.keyPath=@"position";
    18     //1.1告诉系统要执行什么动画
    19     //创建一条路径
    20     CGMutablePathRef path=CGPathCreateMutable();
    21     //设置一个圆的路径
    22     CGPathAddEllipseInRect(path, NULL, CGRectMake(150, 100, 100, 100));
    23     keyAnima.path=path;
    24     
    25     //有create就一定要有release
    26     CGPathRelease(path);
    27     //1.2设置动画执行完毕后,不删除动画
    28     keyAnima.removedOnCompletion=NO;
    29     //1.3设置保存动画的最新状态
    30     keyAnima.fillMode=kCAFillModeForwards;
    31     //1.4设置动画执行的时间
    32     keyAnima.duration=5.0;
    33     //1.5设置动画的节奏
    34     keyAnima.timingFunction=[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
    35     
    36     //2.添加核心动画
    37     [self.customView.layer addAnimation:keyAnima forKey:@"wendingding"];
    38 }
    39 
    40 - (IBAction)stopOnClick:(UIButton *)sender {
    41     //停止self.customView.layer上名称标示为wendingding的动画
    42     [self.customView.layer removeAnimationForKey:@"wendingding"];
    43 }
    44 @end
    复制代码

    点击停止动画,程序内部会调用  [self.customView.layer removeAnimationForKey:@"wendingding"];停止self.customView.layer上名称标示为wendingding的动画。

    三、图标抖动

    代码示例:

    复制代码
     1 //
     2 //  YYViewController.m
     3 //  12-图标抖动
     4 //
     5 //  Created by apple on 14-6-21.
     6 //  Copyright (c) 2014年 itcase. All rights reserved.
     7 //
     8 
     9 #import "YYViewController.h"
    10 #define angle2Radian(angle)  ((angle)/180.0*M_PI)
    11 
    12 @interface YYViewController ()
    13 @property (weak, nonatomic) IBOutlet UIImageView *iconView;
    14 
    15 @end
    16 
    17 
    18 @implementation YYViewController
    19 
    20 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
    21 {
    22     //1.创建核心动画
    23     CAKeyframeAnimation *keyAnima=[CAKeyframeAnimation animation];
    24     keyAnima.keyPath=@"transform.rotation";
    25     //设置动画时间
    26     keyAnima.duration=0.1;
    27     //设置图标抖动弧度
    28     //把度数转换为弧度  度数/180*M_PI
    29     keyAnima.values=@[@(-angle2Radian(4)),@(angle2Radian(4)),@(-angle2Radian(4))];
    30     //设置动画的重复次数(设置为最大值)
    31     keyAnima.repeatCount=MAXFLOAT;
    32     
    33     keyAnima.fillMode=kCAFillModeForwards;
    34     keyAnima.removedOnCompletion=NO;
    35     //2.添加动画
    36     [self.iconView.layer addAnimation:keyAnima forKey:nil];
    37 }
    38 
    39 @end
    复制代码

    说明:图标向左向右偏转一个弧度(4),产生抖动的视觉效果。

    程序界面:


    展开全文
  • 这篇文章讲的是人脸68 个关键点...现在给大家看看81个人脸关键点代码,两者最大区别就是模型使用不同,核心代码调用方法相差不是很大 68点模型(shape_predictor_68_face_landmarks.dat) 链接:https://pan.baidu....

    这篇文章讲的是人脸68 个关键点开源项目

    https://blog.csdn.net/ITLearnHall/article/details/102593886

    现在给大家看看81个人脸关键点代码,两者最大区别就是模型使用不同,核心代码调用方法相差不是很大

    68点模型(shape_predictor_68_face_landmarks.dat) 

    链接:https://pan.baidu.com/s/1uZ_4K5s1BiVQmgv4JbDzew 提取码:ch8x

    81点模型(shape_predictor_81_face_landmarks.dat)

    下载地址:https://github.com/codeniko/shape_predictor_81_face_landmarks

    核心代码如下:

    # -*-coding: utf-8-*-
    # !/usr/bin/env python
    import dlib
    import numpy as np
    import cv2
    
    
    cap = cv2.VideoCapture(0)
    # 设置保存视频格式
    fourcc = cv2.VideoWriter_fourcc(*'XVID')  # fourcc:指定视频编解码器的4字节代码
    # 输出视频参数设置   输出视频名   视频格式  视频帧   保存视频分辨率
    out = cv2.VideoWriter('output.avi',fourcc, 20.0, (1280, 720))
    
    # 要加载的81个关键点的人脸检测模型
    predictor_path = 'shape_predictor_81_face_landmarks.dat'
    
    # 导入dlib库
    detector = dlib.get_frontal_face_detector()
    predictor = dlib.shape_predictor(predictor_path)
    
    while(cap.isOpened()):
        ret, frame = cap.read()
        
        # 对图片进行垂直镜像翻转
        frame = cv2.flip(frame, 1)
        dets = detector(frame, 0)
        for k, d in enumerate(dets):
            shape = predictor(frame, d)
            landmarks = np.matrix([[p.x, p.y] for p in shape.parts()])
            for num in range(shape.num_parts):
                cv2.circle(frame, (shape.parts()[num].x, shape.parts()[num].y), 3, (0,255,0), -1)
    
        cv2.imshow('frame', frame)
        # 把每一帧保存成视频
        out.write(frame)
        # 退出
        if cv2.waitKey(1) & 0xFF == ord('q'):
            print("q pressed")
            break
    
    # 调用release()释放摄像头,调用destroyAllWindows()关闭所有图像窗口。
    cap.release()
    out.release()
    
    cv2.destroyAllWindows()
    

    关注公众号IT-LearnHall,免费领

    进QQ群(779809018)免费领取学习资源,疑难问题解答。同时欢迎大家关注我的微信公众号:代码帮 ,免费领取学习资源。

    本公众号将秉持活到老学到老学习无休止的交流分享开源精神,汇聚于互联网和个人学习工作的精华干货知识,一切来于互联网,反馈回互联网。
    目前研究领域:大数据、机器学习、深度学习、人工智能、数据挖掘、数据分析。 语言涉及:Java、Scala、Python、Shell、Linux等 。同时还涉及平常所使用的手机、电脑和互联网上的使用技巧、问题和实用软件破解。 只要你一直关注和呆在群里,每天必须有收获,讨论和答疑QQ群:大数据和人工智能总群(779809018)微信公众号(代码帮)每天分享最新IT、大数据和人工智能新技术。

    参考:
    1、https://github.com/codeniko/shape_predictor_81_face_landmarks
    2、https://baijiahao.baidu.com/s?id=1628339297294302540&wfr=spider&for=pc

    展开全文
  • 人工神经网络关键核心知识点

    千次阅读 2014-04-02 17:06:35
    感知器通过细微的调节权值来减少感知器的期望输出和实际输出之间的差别可以完成这一任务。 下面我们来介绍下感知器分类任务的训练算法 设Y(p)为实际输出,Yd(p)为期望输出,e(p)为误差, 则: ...

    神经网络里面主要就是单层神经网络学习和多层神经网络学习,涉及到知识点主要就是感知器,线性分割,影藏层,权重校正,误差的平方和等知识点。

    感知器:是神经网络最简单的形式,单层双输入感知器的结构如下:


    感知器的作用是将输入分类,超平面有线性分割函数定义:


    下图是感知器的线性分割:两输入感知器和三输入感知器的情形。


    感知器如何学习分类任务

    感知器通过细微的调节权值来减少感知器的期望输出和实际输出之间的差别可以完成这一任务。

    下面我们来介绍下感知器分类任务的训练算法

    设Y(p)为实际输出,Yd(p)为期望输出,e(p)为误差,

    则:


    如果e(p)为+,就需要增加感知器的输出Y(p),如果为负,就减少感知器的的输出Y(p),因此可以建立下面的感知器的学习规则:


    算法1:

    步骤一:初始化。

    设置权重w1,w2,...Wn和阈值o的初值,取值范围为[-0.5,+0.5]。

    步骤二:激活。

    通过用输入 以及期望输入Yd(p)来激活感知器,在迭代p=1上计算实际输出


    其中n为感知器输入的数量,step为阶跃激活函数。

    步骤三:权重训练。

    修改感知器的权重。



    其中为迭代p上的权重校正。

    通过delta规则计算权重校正:


    步骤四:迭代。

    迭代p加1,回到步骤二,重复以上过程直至收敛。(完)


    可以训练感知器执行类似AND(a),OR(b),,但是不能通过训练执行异或逻辑操作(c):



    四个常用的激活函数------阶跃、符号、线性、s形函数如下图:


    单感知器仅仅能分类线性分割模式,要处理非线性的问题就只能通过多层网络来解决。


    多层神经网络:多感知器是有一个或者多个隐藏层的前馈网络,如下图有两个隐藏层的多层感知器:



    为什么需要隐藏层?

    多层神经网络的每一个层都有特定的功能,输入层接受来自外部世界的输入信号,重新将信号发送给隐藏层的所有神经元,

    利用一个隐藏层,我们可以表示输入信号的任何连续函数,利用两个隐藏层甚至可以表示不连续的函数。

    隐藏层到底隐藏了什么?

    隐藏层隐藏期望的输出值,隐藏层的神经元不能通过网络的输入和输出行为来分析,换句话说就是隐藏层的期望输出由层自己决定。

    多层网络如何学习?

    后向传送方法。

    学习算法有两个阶段:

    1、将训练输入模式提供给网络的输入端,输入模式在网络中一层一层的传送,直到输出层产生输出模式为止。

    2、从网络的输出端后向的传送到输入端,在传送误差是调整权重的值。


    后向传送方法和感知器的类似,只是在后向传送方法中神经元使用的是S形的激活函数:



    后向传送方法的算法:

    步骤一:初始化。

    用很小的范围均匀分布的随机数设置网络的权重和阈值


    其中Fi是网络中神经与的输入的总数。

    步骤二:激活。

    通过应用输入和期望的输出来激活后向传送神经网络。

    (1)计算隐藏层神经网络的实际输出:


    其中n是隐藏层神经元j输入的个数。

    (2)计算输出层神经元的实际输出:


    其中m为输出层神经元k的输入个数。

    步骤三:训练权重。

         修改后向传送网络的权重

    (1)计算输出层神经元的误差斜率:


    其中:


    计算权重的校正:


    更新输出层的权重:


    (2)计算隐藏层神经元的误差斜率:


    计算权重的校正:


    更新隐藏层神经元的权重:


    步骤四:迭代。

    迭代p加1,回到步骤二,重复以上过程直至满足误差的平方和满足要求为止。(完)

    展开全文
  • 写在前面 ...远看并发,并发编程可以抽象成三个核心问题: 分工、同步/协作、互斥 如果你已经工作了,那么你一定听说过或者正在应用敏捷开发模式来交付日常的工作任务,我们就用你熟悉的流程来解释...
  • 核心线程普通线程区别,这个问题之前没有注意到过,最近面试被问,所以就单独写个文章分析下 其实这个也非常简单了 构造线程池的时候Executors.newxxx的方法,点进去,会发现内部是通过 /** * Creates a new...
  • cssci和核心期刊的区别  cssci是核心期刊的一种,核心期刊有很多种其中包括cssci。CSSCI即中文社会科学引文索引,由南京大学主持,也叫来源期刊目录。目前国内有7大核心期刊(或来源期刊)遴选体系,即:  1、北京...
  • 核心银行系统 之一 历史发展

    千次阅读 2018-11-29 14:25:21
    核心银行系统是银行信息系统中实现客户关系管理、产品服务、业务流程、财务核算管理、风险管控、辅助管理决策等银行业务最核心功能的系统,是银行信息系统的基础和核心核心银行系统的英文名字 CORE ...
  • 软件开发和机械制造的核心差别

    千次阅读 2012-09-26 02:03:36
    由于很多同学仍在原来的行业,时不时的沟通让我反思软件开发究竟和机械制造这类行业有啥区别。老实讲,对于毕业生而言,10年前做软件收入要比做机械制造有明显优势,但10年后的今天这种优势就不明显了。这也是触发我...
  • LeNet论文的翻译CNN三大核心思想的解读

    万次阅读 多人点赞 2017-05-01 23:20:34
    LeNet论文的翻译CNN三大核心思想的解读
  • Qt核心机制原理

    万次阅读 多人点赞 2017-03-20 15:34:38
    ★理解Qt的事件模型,掌握其使用的时机信号槽、元对象系统、事件模型是Qt机制的核心,如果您想要掌握Qt编程,就需要对它们有比较深入的了解。本章重点介绍了信号槽的基本概念和用法、元对象系统、Qt的事件模型,...
  • 测试人员的核心能力素质

    千次阅读 2016-10-06 18:31:09
    声明:该文不是我的原创作品,是我的同事魏增艺的大作,独家授权我来进行发表。...具体说来,具备哪些核心能力素质的测试人员才能胜任这样的角色呢?对于能力模型,例如常见的“冰山”模型、“洋葱圈”模型
  • textrank提取关键词与关键

    千次阅读 2019-05-09 11:36:50
    (提取关键词的方法现在用的是自己构建的领域词表(带权重)文本tfidf分析出的词分数相结合,效果还可以,还没有想出更好的提关键词的方法) 关键句提取: 测试了一下textrank,以下记录了textrank的原理: 一:...
  • Spring入门之Spring核心与概述

    千次阅读 2017-01-12 21:51:08
    这是一个非常强大的理念,可以将安全、事务和日志关注点与核心业务逻辑相分离。 17、切面应用小实例: 骑士的职责是探险,吟游诗人的职责是为骑士的探险事迹歌颂。假设吟游诗人会在骑士探险前和探险后各...
  • CPU核心数目 多线程

    万次阅读 2017-03-16 22:05:23
    今天就这一问题查了一些资料,现整理如下:要说多线程就离不开进程,进程和线程的区别在这里就不详细说了,只将关键的几点: a)进程之间是相互独立的,不共享内存和数据,线程之间的内存和数据是公用的,每个线程...
  • 中国5G SA核心网UDM

    千次阅读 2020-12-08 17:12:36
    Q3 为什么说核心网对于设备商很关键,但对于投资而言只是一个小市场?Q4:为什么说UDM只是5G核心网招标的开始,远不是全部? 一、UDM/UDR不是5G SA核心网的全部,核心网招标只是刚刚开始。 5G SA核心网多采用NFV...
  • 由于其重要的理论应用价值,被很多学者认为是实现真正全自主移动机器人的关键。 按照核心的功能模块来区分,目前常见的移动机器人SLAM系统一般具有两种形式:基于激光雷达的SLAM(激光SLAM)和基于视觉的SLAM(Visual...
  • 2、 在移动通信系统演进过程中,包含着很多技术的发展,但最为基础、最为核心的技术是多址技术,多址技术的发展引领了无线通信系统的发展演进。 3、 区别于前三代移动通信系统,LTE最显著特征是采用了OFDM/OFDMA/...
  • 大型网站技术架构:核心原理案例分析 (最接地气的网站架构经验,网站生存技术心要,应对大数据挑战的干货分享!) 李智慧 著 ISBN 978-7-121-21200-0 2013年9月出版 定价:59.00元 240页 16开 编辑推荐 ...
  • B2C做好CPS要有一个强大的品牌效应作前提,也就是说要有足够的广告宣传之搭配才能起到很好的效果。  4.物流:现在第三方物流普遍快递人员素质不高,导致很多用户体验不好,顾客会直接反映到对网站的认可度上...
  • 5G关键技术整理

    千次阅读 2020-11-03 22:44:57
    5G关键技术整理 1.NSA/SA组网 NSA,采用双连接方式,双连接:顾名思义,就是手机能同时跟4G和5G都进行通信,能同时下载数据。...1)NSA没有5G核心网,SA有5G核心网,这是一个关键区别。 2)在NSA组网
  • 继承(Inheritance)聚合(Aggregation)的区别在哪里。 你是如何理解干净的代码(Clean Code)技术负债(Technical Debt)的。 描述下常用的重构技巧。 阐述下 SOLID原则。 其他的譬如
  • 概要掌握 1、CALayer和UIVIew的关系 CALayer 负责视图中的内容和...3、核心动画基本概念 4、基本动画 5、关键帧动画 6、动画组 7、转场动画一、CALayer在创建一个UIView对象时,UIView内部会自动创建一个图层
  • 4~好公司和差公司的区别 5~ 关键对话的重要性 6~跟踪表现良好的人行为 7~专注于真正想要的结果 8~ 谈话禁忌 9~决策的四种方式  自勉 1~关键对话的含义 两个或更多人参与讨论,条件: 1)事关重大 ps: 个....
  • 敏捷尊重(核心中的核心) XP是我在自己的软件开发实践中协调人性和生产率并共享这一协调的一种尝试。我已经开始注意到,我越是有人情味地对待我自己和别人,我们大家的生产率就越高。成功的关键不在于自我禁欲,...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 221,587
精华内容 88,634
关键字:

关键与核心的区别