• 使用序列到序列深度学习方法自动睡眠阶段评分


    深度学习方法,用于使用单通道脑电图进行自动睡眠阶段评分。

     

    1. def build_firstPart_model(input_var,keep_prob_=0.5):
    2. # List to store the output of each CNNs
    3. output_conns = []
    4. ######### CNNs with small filter size at the first layer #########
    5. # Convolution
    6. network = tf.layers.conv1d(inputs=input_var, filters=64, kernel_size=50, strides=6,
    7. padding='same', activation=tf.nn.relu)
    8. network = tf.layers.max_pooling1d(inputs=network, pool_size=8, strides=8, padding='same')
    9. # Dropout
    10. network = tf.nn.dropout(network, keep_prob_)
    11. # Convolution
    12. network = tf.layers.conv1d(inputs=network, filters=128, kernel_size=8, strides=1,
    13. padding='same', activation=tf.nn.relu)
    14. network = tf.layers.conv1d(inputs=network, filters=128, kernel_size=8, strides=1,
    15. padding='same', activation=tf.nn.relu)
    16. network = tf.layers.conv1d(inputs=network, filters=128, kernel_size=8, strides=1,
    17. padding='same', activation=tf.nn.relu)
    18. # Max pooling
    19. network = tf.layers.max_pooling1d(inputs=network, pool_size=4, strides=4, padding='same')
    20. # Flatten
    21. network = flatten(name="flat1", input_var=network)
    22. output_conns.append(network)
    23. ######### CNNs with large filter size at the first layer #########
    24. # Convolution
    25. network = tf.layers.conv1d(inputs=input_var, filters=64, kernel_size=400, strides=50,
    26. padding='same', activation=tf.nn.relu)
    27. network = tf.layers.max_pooling1d(inputs=network, pool_size=4, strides=4, padding='same')
    28. # Dropout
    29. network = tf.nn.dropout(network, keep_prob_)
    30. # Convolution
    31. network = tf.layers.conv1d(inputs=network, filters=128, kernel_size=6, strides=1,
    32. padding='same', activation=tf.nn.relu)
    33. network = tf.layers.conv1d(inputs=network, filters=128, kernel_size=6, strides=1,
    34. padding='same', activation=tf.nn.relu)
    35. network = tf.layers.conv1d(inputs=network, filters=128, kernel_size=6, strides=1,
    36. padding='same', activation=tf.nn.relu)
    37. # Max pooling
    38. network = tf.layers.max_pooling1d(inputs=network, pool_size=2, strides=2, padding='same')
    39. # Flatten
    40. network = flatten(name="flat2", input_var=network)
    41. output_conns.append(network)
    42. # Concat
    43. network = tf.concat(output_conns,1, name="concat1")
    44. # Dropout
    45. network = tf.nn.dropout(network, keep_prob_)
    46. return network

  • 相关阅读:
    牛客小白月赛79
    08 【Props 组件事件】
    机器人操控电脑,华为天才少年稚晖君再出手,直呼:项目不太难
    优化改进YOLOv5算法之添加DCNv3模块,有效提升目标检测效果
    Shell判断:模式匹配:case(一)
    分享im即时通讯开发之WebSocket:概念、原理、易错常识
    C# OpenCvSharp DNN Low Light image Enhancement
    百度智能云千帆大模型丨未来人手必备的代码助手
    3D生成式AI模型与工具
    挑战杯 大数据商城人流数据分析与可视化 - python 大数据分析
  • 原文地址:https://blog.csdn.net/crasher123/article/details/133370978