反腐要闻2025

数据来源于https://www.ccdi.gov.cn/
2025-06-02 整理
山西省发展和改革委员会原二级巡视员庞建军接受审查调查 2025-06-02
重庆市巴南区政府副区长、区公安分局局长刘伦波接受审查调查 2025-05-30
原四川银监局党委书记、局长王泽平接受审查调查 2025-05-30
山西省长治市人大常委会原党组成员马先明被开除党籍 2025-05-30
南宁师范大学原党委书记李丰生被开除党籍 2025-05-30
广西建设职业技术学院原党委副书记吴昆被“双开” 2025-05-30
北京市第三中级人民法院原副院长张美欣接受审查调查 2025-05-30
原江西省工业和信息化委员会党组成员杨人平接受审查调查 2025-05-30
国家税务总局大企业税收管理司原一级巡视员胡效国接受审查调查 2025-05-30
中国工商银行浙江分行原党委书记沈荣勤接受审查调查 2025-05-30
江西省供销合作社联合社原党组书记李晓刚接受审查调查 2025-05-30
贵州省卫生健康委员会原党组书记杨慧被开除党籍和公职 2025-05-30
原中国国电集团公司巡视员孟廷荣接受审查调查 2025-05-30
国家电投集团湖北电力有限公司总经理邓勇接受审查调查 2025-05-29
广东省政协机关原一级巡视员张广宁被”双开” 2025-05-29
江苏省国资委原党委书记、主任徐郭平接受审查调查 2025-05-29
云南省红十字会原副会长田华兵接受审查调查 2025-05-29
江西省萍乡市人大常委会原党组书记吴运波接受审查调查 2025-05-29
云南省昆明市人民检察院检察长赵成武接受审查调查 2025-05-29
河南省政协人口资源环境委员会主任阚全程接受审查调查 2025-05-29
新疆生产建设兵团第十师北屯市原党委书记王胜平接受审查调查 2025-05-29
吉林省商务厅党组书记、厅长李洪亮接受审查调查 2025-05-29
准确区分认定分红款与受贿款 2025-05-28
中国联通湖北省分公司副总经理吴涛接受审查调查 2025-05-28
海南省卫生健康委员会原副主任陈少仕被开除党籍 2025-05-28
重庆市涪陵区委原一级巡视员徐瑛被开除党籍 2025-05-28
山东省政协提案委员会副主任毕荣青接受审查调查 2025-05-28
江西财经大学原党委书记廖进球接受审查调查 2025-05-28
安徽省蚌埠市委党校原常务副校长王长双接受审查调查 2025-05-28
海南省委原常委、海口市委原书记罗增斌严重违纪违法被开除党籍和公职 2025-05-27
湖南省人大常委会原党组成员、副主任彭国甫受贿案一审宣判 2025-05-27
首都机场集团有限公司原党委副书记、总经理刘春晨接受审查调查 2025-05-27
青海省政协原党组成员、副主席马丰胜严重违纪违法被开除党籍和公职 2025-05-27
杭州市市属国有企业外部董事章舜年接受审查调查 2025-05-27
检察机关依法对李石松涉嫌受贿案提起公诉 2025-05-27
黄河出版传媒集团党委书记薛文斌接受审查调查 2025-05-26
甘肃省水务投资集团有限公司党委委员胡岩接受审查调查 2025-05-26
黑龙江省绥化市人大常委会原副主任宋树生接受审查调查 2025-05-26
国家能源集团科学技术委员会原副主任张剑接受审查调查 2025-05-26
检察机关依法对李微微涉嫌受贿案提起公诉 2025-05-26
河南省政府原党组成员、秘书长郭洪昌被开除党籍 2025-05-27
吉林省白城市政协原副主席杨晓峰接受审查调查 2025-05-27
甘肃省审计厅原一级巡视员张奇被开除党籍 2025-05-27
内蒙古自治区包头市人大常委会原副主任郭卫新接受审查调查 2025-05-13
广东省人大教科文卫委原主任委员梁万里被开除党籍 2025-05-13
江西省市场监督管理局原局长谢来发被”双开” 2025-05-12
广西壮族自治区党委政法委副书记李文博接受审查调查 2025-05-12
中国农业银行深圳市分行原党委副书记、副行长王国彪接受审查调查 2025-05-12
石家庄海关原一级巡视员冯学平接受审查调查 2025-05-12
湖南省湘西州副州长刘冬生接受审查调查 2025-05-12
最高检依法对张效廉决定逮捕 2025-05-12
焦作师范高等专科学校原党委书记刘新顺接受审查调查 2025-05-12
贵州省总工会党组成员、副主席梁伟接受审查调查 2025-05-10
浙江省机电集团党委书记、董事长廉俊接受审查调查 2025-05-11
山西省忻州市人大常委会副主任郭建平接受审查调查 2025-05-11
西藏农牧产业投资集团有限公司党委书记王玲接受审查调查 2025-05-10
湖北省随州市纪委原副书记、市监委原副主任、原二级巡视员潘军接受审查调查 2025-05-10
广东省深圳市政协原副主席王幼鹏被“双开” 2025-05-10
重庆市人民政府驻北京办事处原巡视员傅宏跃接受审查调查 2025-05-09
四川省资阳市委原副书记、原市长王善平被”双开” 2025-05-09
广西壮族自治区钦州市委常委、副市长钟恒钦接受审查调查 2025-05-09
中国农业银行河北省分行原党委委员、副行长陈元良接受审查调查 2025-05-09
海南省三亚市委原常委、秘书长黄兴武被”双开” 2025-05-09
最高检依法对赵金云决定逮捕 2025-05-09
江苏省人力资源和社会保障厅厅长王斌接受审查调查 2025-05-09
河南省平顶山市副市长许红兵接受审查调查 2025-05-09
新疆维吾尔自治区乌鲁木齐市米东区政协原党组书记朱文智接受审查调查 2025-05-09
河南省供销合作总社原党组成员王国庆被”双开” 2025-05-08
河南省周口市政协原副主席程维明被开除公职 2025-05-08
湖南省邵阳市委常委、副市长仇珂静接受审查调查 2025-05-08
江苏省泰州市委常委、宣传部部长刘霞接受审查调查 2025-05-07
三堂会审丨单位受贿还是共同受贿 2025-05-07
新疆生产建设兵团草湖项目区副主任宋全伟接受审查调查 2025-05-07
广东省能源集团有限公司原副总经理姚纪恒被”双开” 2025-05-07
检察机关依法对苟仲文涉嫌受贿、滥用职权案提起公诉 2025-05-07
中国农业银行原首席专家兼浙江省分行原党委书记、行长冯建龙接受审查调查 2025-05-07
中国邮政集团有限公司财务部原高级资深经理李玉杰接受审查调查 2025-05-07
云南省司法厅党委书记、厅长茶忠旺接受审查调查 2025-05-06
原四川省农村信用社联合社党委副书记杨家卷接受审查调查 2025-05-06
河北省石家庄市中级人民法院原院长李勇被”双开” 2025-05-25
安徽省政协经济委员会原副主任李工被开除党籍 2025-05-25
重庆城投集团原党委书记、董事长王岳被”双开” 2025-05-24
内蒙古自治区赤峰市委常委、副市长孟晓冰接受审查调查 2025-05-23
河北省保定市中级人民法院原院长李建立被“双开” 2025-05-24
安徽省铜陵市委原常委、原常务副市长何田被”双开” 2025-05-23
上海市交通委员会原副主任王晓杰被“双开” 2025-05-23
甘肃能化股份有限公司原副总经理张得君被”双开” 2025-05-23
中银保险有限公司原党委书记、董事长周功华接受审查调查 2025-05-23
重庆市南川区政府原一级巡视员罗弟杰接受审查调查 2025-05-23
西藏自治区市场监督管理局副局长刘建伟接受审查调查 2025-05-23
西藏自治区日喀则市聂拉木县委原书记、二级巡视员冯鲁伟接受审查调查 2025-05-23
北京市基础设施投资有限公司原副总经理战明辉接受审查调查 2025-05-23
甘肃省政府国有资产监督管理委员会原副主任车洪被开除党籍 2025-05-23
中证中小投资者服务中心有限责任公司原董事长夏建亭被”双开” 2025-05-23
中国农业银行深圳市分行原巡视员傅思伟被开除党籍 2025-05-23
国家发展改革委社会发展司二级巡视员王小龙接受审查调查 2025-05-23
山西焦煤集团有限责任公司原副总经理王克军接受审查调查 2025-05-23
黑龙江省佳木斯市人大常委会原主任刘臣接受审查调查 2025-05-23
山东广播电视台副台长徐龙河接受审查调查 2025-05-23
安徽省政协农业和农村委员会副主任吴良斯接受审查调查 2025-05-22
广东省茂名市人民检察院原党组书记王天鸿被开除党籍 2025-05-22
甘肃省博物馆原馆长贾建威接受审查调查 2025-05-22
青海省人大常委会社会建设委员会原主任委员薛建华被”双开” 2025-05-22
国家烟草专卖局原党组书记、局长凌成兴受贿、国有公司人员滥用职权案一审宣判 2025-05-21
云南省曲靖市人大常委会原主任刘海芳接受审查调查 2025-05-22
原黑龙江省农垦牡丹江管理局党委书记赵广民接受审查调查 2025-05-22
检察机关依法对章更生决定逮捕 2025-05-21
中铁城市发展投资集团原董事长黄天德接受审查调查 2025-05-21
国家消防救援局应急通信和科技司负责人张昊接受审查调查 2025-05-20
河北省纪委原副书记、省监委原副主任陈玉祥受贿案一审宣判 2025-05-20
云南省红河州人大常委会主任李成武接受审查调查 2025-05-20
吉林省经济管理干部学院原副院长费立发接受审查调查 2025-05-20
安徽省芜湖市人大常委会原副主任何友旺被”双开” 2025-05-19
全国政协人口资源环境委员会原副主任,陕西省政协原党组书记、主席韩勇受贿案一审宣判 2025-05-19
甘肃省陇南市人大常委会副主任王俊强接受审查调查 2025-05-19
海南省农业农村厅副厅长林谟谐接受审查调查 2025-05-19
海南省儋州市政协原副主席王月花接受审查调查 2025-05-19
辽宁省营口市政协副主席段绪华接受审查调查 2025-05-19
原广东省环境保护厅副巡视员田钢被开除党籍 2025-05-19
江苏省盐城经济技术开发区党工委书记王旭东接受审查调查 2025-05-17
重庆两江新区管委会副主任罗仑接受审查调查 2025-05-16
黑龙江省委原常委王一新受贿案一审宣判 2025-05-16
浙江省委金融办原副主任潘广恩被”双开” 2025-05-16
云南省昆明市人大常委会原副主任郭子贞接受审查调查 2025-05-16
中信保诚人寿保险有限公司原总经理赵小凡被开除党籍 2025-05-16
天津市东丽区政协原主席刘金钟接受审查调查 2025-05-16
甘肃省建设投资(控股)集团总经理束水龙接受审查调查 2025-05-16
贵州省委军民融合发展委员会办公室副主任李刚接受审查调查 2025-05-16
浙江省台州市政协原党组成员、副主席林虹被”双开” 2025-05-15
重庆建工集团股份有限公司原党委委员党智勇接受审查调查 2025-05-15
原江苏省国信资产管理集团党委副书记熊井泉接受审查调查 2025-05-15
浙江省能源集团原党委书记、董事长童亚辉接受审查调查 2025-05-14
上海市国防动员办公室副主任吴斌接受审查调查 2025-05-14
青海省交通运输厅副厅长田明有接受审查调查 2025-05-15
中国工商银行杭州金融研修院原院长蒋伟被”双开” 2025-05-14
广西北部湾国际港务集团有限公司副总经理潘料庭接受审查调查 2025-05-14
三堂会审丨准确认定代持型受贿犯罪的既未遂 2025-05-14
陕西省工业和信息化厅原副厅长蔡苏昌接受审查调查 2025-05-14
最高检依法对陆克华决定逮捕 2025-05-14
贵州省黔南州人大常委会原副主任郑绍峰被”双开” 2025-05-14
黑龙江省齐齐哈尔市人大常委会原副主任王平被开除党籍 2025-05-13
中国银行贵州省分行原副行长徐鸿周被开除党籍 2025-05-13
中国石油天然气集团有限公司原党组书记、董事长王宜林受贿案一审宣判 2025-05-13
广西壮族自治区梧州市委常委韦彦接受审查调查 2025-05-13
安徽省宣城经济技术开发区党工委原书记刘家和接受审查调查 2025-05-13
广东省人大教科文卫委原主任委员梁万里被开除党籍 2025-05-13
内蒙古自治区包头市人大常委会原副主任郭卫新接受审查调查 2025-05-13
中国农业银行深圳市分行原党委副书记、副行长王国彪接受审查调查 2025-05-12
石家庄海关原一级巡视员冯学平接受审查调查 2025-05-12
广西壮族自治区党委政法委副书记李文博接受审查调查 2025-05-12

————↑↑↑—2025-06-02整理 NEW

Flexus L实例 2核2G2M 特价38元1年
内蒙古自治区包头市人大常委会原副主任郭卫新接受审查调查 2025-05-13
广东省人大教科文卫委原主任委员梁万里被开除党籍 2025-05-13
江西省市场监督管理局原局长谢来发被”双开” 2025-05-12
广西壮族自治区党委政法委副书记李文博接受审查调查 2025-05-12
中国农业银行深圳市分行原党委副书记、副行长王国彪接受审查调查 2025-05-12
石家庄海关原一级巡视员冯学平接受审查调查 2025-05-12
湖南省湘西州副州长刘冬生接受审查调查 2025-05-12
最高检依法对张效廉决定逮捕 2025-05-12
焦作师范高等专科学校原党委书记刘新顺接受审查调查 2025-05-12
贵州省总工会党组成员、副主席梁伟接受审查调查 2025-05-10
浙江省机电集团党委书记、董事长廉俊接受审查调查 2025-05-11
山西省忻州市人大常委会副主任郭建平接受审查调查 2025-05-11
西藏农牧产业投资集团有限公司党委书记王玲接受审查调查 2025-05-10
湖北省随州市纪委原副书记、市监委原副主任、原二级巡视员潘军接受审查调查 2025-05-10
广东省深圳市政协原副主席王幼鹏被“双开” 2025-05-10
重庆市人民政府驻北京办事处原巡视员傅宏跃接受审查调查 2025-05-09
四川省资阳市委原副书记、原市长王善平被”双开” 2025-05-09
广西壮族自治区钦州市委常委、副市长钟恒钦接受审查调查 2025-05-09
中国农业银行河北省分行原党委委员、副行长陈元良接受审查调查 2025-05-09
海南省三亚市委原常委、秘书长黄兴武被”双开” 2025-05-09
最高检依法对赵金云决定逮捕 2025-05-09
江苏省人力资源和社会保障厅厅长王斌接受审查调查 2025-05-09
河南省平顶山市副市长许红兵接受审查调查 2025-05-09
新疆维吾尔自治区乌鲁木齐市米东区政协原党组书记朱文智接受审查调查 2025-05-09
河南省供销合作总社原党组成员王国庆被”双开” 2025-05-08
河南省周口市政协原副主席程维明被开除公职 2025-05-08
湖南省邵阳市委常委、副市长仇珂静接受审查调查 2025-05-08
江苏省泰州市委常委、宣传部部长刘霞接受审查调查 2025-05-07
三堂会审丨单位受贿还是共同受贿 2025-05-07
新疆生产建设兵团草湖项目区副主任宋全伟接受审查调查 2025-05-07
广东省能源集团有限公司原副总经理姚纪恒被”双开” 2025-05-07
检察机关依法对苟仲文涉嫌受贿、滥用职权案提起公诉 2025-05-07
中国农业银行原首席专家兼浙江省分行原党委书记、行长冯建龙接受审查调查 2025-05-07
中国邮政集团有限公司财务部原高级资深经理李玉杰接受审查调查 2025-05-07
云南省司法厅党委书记、厅长茶忠旺接受审查调查 2025-05-06
原四川省农村信用社联合社党委副书记杨家卷接受审查调查 2025-05-06
检察机关依法对杨子兴涉嫌受贿、利用影响力受贿案提起公诉 2025-05-06
云南省政协原党组成员、秘书长车志敏接受审查调查 2025-05-03
黑龙江省伊春森工集团总经理杨公伟接受审查调查 2025-04-30
继续阅读“反腐要闻2025”

反腐要闻2024

中国农业银行河北省分行原高级专家宋雷被开除党籍 2024-12-31
最高检依法对张建春决定逮捕 2024-12-31
安徽省政协经济委员会原副主任李工接受审查调查 2024-12-30
四川省委巡视组原二级巡视员吴仁杰接受审查调查 2024-12-30
昆明高新技术产业开发区管委会主任毛建桥接受审查调查 2024-12-30
贵州盐业(集团)有限责任公司原副总经理孟德峰被”双开” 2024-12-30
海南省三亚市委原常委陈正光被开除党籍 2024-12-30
山西省临汾市人大常委会原副主任柴高潮接受审查调查 2024-12-30
广东省珠海市人大常委会党组成员张强接受审查调查 2024-12-29
人民日报社中国能源汽车传播集团有限公司原党委书记、董事长刘建林接受审查调查 2024-12-28
人民日报数字传播有限公司原董事长、总经理徐涛接受审查调查 2024-12-28
人民日报社山西分社社长何勇接受审查调查 2024-12-28
湖南省人大环境与资源保护委员会分党组书记刘志仁接受审查调查 2024-12-28
辽宁省丹东市人大常委会原副主任牛向东被开除党籍 2024-12-27
中国石油江苏销售分公司原总经理王力军接受审查调查 2024-12-27
山西省委原副书记商黎光受贿案一审宣判 2024-12-27
江苏证监局原党委书记、局长凌峰被”双开” 2024-12-27
最高人民检察院依法对杨子兴决定逮捕 2024-12-27
国家税务总局厦门市税务局党委书记、局长张国钧接受审查调查 2024-12-27
原广东省环境保护厅副巡视员田钢接受审查调查 2024-12-27
中国联通运营公司原副总裁朱立军接受审查调查 2024-12-27
中国银行业协会原秘书长黄润中接受审查调查 2024-12-26
广西壮族自治区钦州市政协原副主席林庆山被”双开” 2024-12-26
云南省建设投资控股集团总经理吕兵接受审查调查 2024-12-26
东风公司东风柳州汽车有限公司党委书记宣颖接受审查调查 2024-12-26
国家能源局华北监管局局长童光毅接受审查调查 2024-12-26
辽宁省大连市政协原党组书记、主席郝宏军受贿案一审宣判 2024-12-26
Flexus L实例 2核2G2M 特价38元1年
继续阅读“反腐要闻2024”

torch FashionMNIST数据集导出图片

import numpy as np
import struct
 
from PIL import Image
import os

path_home='./data/FashionMNIST/raw/'
data_file = path_home+'train-images-idx3-ubyte'
# It's 47040016B, but we should set to 47040000B
data_file_size = 47040016
data_file_size = str(data_file_size - 16) + 'B'
 
data_buf = open(data_file, 'rb').read()
 
magic, numImages, numRows, numColumns = struct.unpack_from(
    '>IIII', data_buf, 0)
datas = struct.unpack_from(
    '>' + data_file_size, data_buf, struct.calcsize('>IIII'))
datas = np.array(datas).astype(np.uint8).reshape(
    numImages, 1, numRows, numColumns)
 
label_file = path_home+'train-labels-idx1-ubyte'
 
# It's 60008B, but we should set to 60000B
label_file_size = 60008
label_file_size = str(label_file_size - 8) + 'B'
 
label_buf = open(label_file, 'rb').read()
 
magic, numLabels = struct.unpack_from('>II', label_buf, 0)
labels = struct.unpack_from(
    '>' + label_file_size, label_buf, struct.calcsize('>II'))
labels = np.array(labels).astype(np.int64)
 
datas_root = 'mnist_train'
if not os.path.exists(datas_root):
    os.mkdir(datas_root)
 
for i in range(10):
    file_name = datas_root + os.sep + str(i)
    if not os.path.exists(file_name):
        os.mkdir(file_name)
 
for ii in range(numLabels):
    img = Image.fromarray(datas[ii, 0, 0:28, 0:28])
    label = labels[ii]
    file_name = datas_root + os.sep + str(label) + os.sep + \
        'mnist_train_' + str(ii) + '.png'
    img.save(file_name)

torch自定义数据集模型训练demo

import torch
from torch.utils.data import Dataset
from torchvision import datasets
from torchvision.transforms import ToTensor, Lambda
import matplotlib.pyplot as plt
from torch.utils.data import DataLoader
from torch import nn
import os
import pandas as pd
from torchvision.io import decode_image


device = torch.accelerator.current_accelerator().type if torch.accelerator.is_available() else "cpu"
#  独热数据逆转化 ,本例独热化非必须
def arc_one_hot(x,list=torch.tensor([0,1,2,3,4,5,6,7,8,9],dtype=torch.float).to(device)):
    return x@list
#  1.创建自定义数据集
class CustomImageDataset(Dataset):
    def __init__(self, annotations_file, img_dir, transform=None, target_transform=None):
        self.img_labels = pd.read_csv(annotations_file, header=None) # 注意首行默认会被作为标题行忽略,或者设置header=None 
        self.img_dir = img_dir
        self.transform = transform
        self.target_transform = target_transform

    def __len__(self):
        return len(self.img_labels)

    def __getitem__(self, idx):
        img_path = os.path.join(self.img_dir, self.img_labels.iloc[idx, 0])
        #print(img_path)
        image = decode_image(img_path).float().div(255) #需要转成float类型,否则无法训练
        #print(image.shape)
        label = self.img_labels.iloc[idx, 1]
        #print(label)
        if self.transform:
            image = self.transform(image)
        if self.target_transform:
            label = self.target_transform(label)
        #独热化
        # print(label)
        new_transform = Lambda(lambda y: torch.zeros(10, dtype=torch.float).scatter_(dim=0, index=torch.tensor(y), value=1))
        label = new_transform(label)
        # print("------fuck")
        # print(label)
        return image, label
    

# csv注意是否有标题行
csv_path='/Users/mnist_test_cus_data/imglist_train.csv'
img_dir='/Users/mnist_test_cus_data/imgs_train/'
batch_size = 64
# 创建自定义数据集实例
mydataset = CustomImageDataset(annotations_file=csv_path, img_dir=img_dir, transform=None, target_transform=None)

# 使用 DataLoader 加载数据
mydataloader = DataLoader(mydataset, batch_size, shuffle=True, num_workers=0) #, num_workers=4 macos报错
print(len(mydataloader))
print(len(mydataloader.dataset))
# print(mydataset[59999])
# print(mydataset[0][0])
# print(mydataset[0][1])
# exit()

# Download test data from open datasets.
test_data = datasets.FashionMNIST(
    root="data",
    train=False,
    download=True,
    transform=ToTensor(),
    target_transform = Lambda(lambda y: torch.zeros(10,dtype=torch.float).scatter_(dim=0, index=torch.tensor(y), value=1))
)
test_dataloader = DataLoader(test_data, batch_size=batch_size)

# 遍历 DataLoader
#for batch in mydataloader:
#    images, labels = batch
    #print(images.size(), labels.size())
    #print(images)
    #print(labels)

for X, y in test_dataloader:
    print(f"Shape of X [N, C, H, W]: {X.shape}")
    print(f"Shape of y: {y.shape} {y.dtype}")

    # print(X)
    # print(y)
    # print(arc_one_hot(y.to(device)))

    break
print(len(mydataloader))
# exit()


#  2. 可视化数据
def showdata():
    labels_map = {
        0: "T-Shirt",
        1: "Trouser",
        2: "Pullover",
        3: "Dress",
        4: "Coat",
        5: "Sandal",
        6: "Shirt",
        7: "Sneaker",
        8: "Bag",
        9: "Ankle Boot",
    }
    figure = plt.figure(figsize=(8, 8))
    cols, rows = 3, 3
    xxx=''
    for i in range(1, cols * rows + 1):
        sample_idx = torch.randint(len(mydataset), size=(1,)).item()
        img, label = mydataset[sample_idx]
        figure.add_subplot(rows, cols, i)
        # 独热逆转化
        label=arc_one_hot(label.to(device)).item()
        plt.title(labels_map[label])
        plt.axis("off")
        xxx=img
        plt.imshow(img.squeeze(), cmap="gray")
    plt.show()
    print(xxx.shape)
    print('------')
    print(xxx.squeeze().shape)

    # Display image and label.
    train_features, train_labels = next(iter(mydataloader))
    print(f"Feature batch shape: {train_features.size()}")
    print(f"Labels batch shape: {train_labels.size()}")
    img = train_features[0].squeeze()
    label = train_labels[0]
    plt.imshow(img, cmap="gray")
    plt.show()
    print(f"Label: {label}")
    # exit()


# 3.定义模型

print(f"Using {device} device")

# Define model
class NeuralNetwork(nn.Module):
    def __init__(self):
        super().__init__()
        self.flatten = nn.Flatten() #维度展平
        self.linear_relu_stack = nn.Sequential(
            nn.Linear(28*28, 512),
            nn.ReLU(),
            nn.Linear(512, 512),
            nn.ReLU(),
            nn.Linear(512, 10)
        )

    def forward(self, x):
        x = self.flatten(x)
        logits = self.linear_relu_stack(x)
        return logits

model = NeuralNetwork().to(device)
print(model)

# 4. 定义损失函数和优化器
loss_fn = nn.CrossEntropyLoss() #交叉熵
optimizer = torch.optim.SGD(model.parameters(), lr=1e-3)

# 5. 训练
def train(dataloader, model, loss_fn, optimizer):
    size = len(dataloader.dataset)
    print("size="+str(size))
    model.train() # 启用 Batch Normalization 和 Dropout,归一化,随机丢弃神经元防止过拟合,测试时不丢弃
    for batch, (X, y) in enumerate(dataloader):
        X, y = X.to(device), y.to(device)
        # Compute prediction error
        pred = model(X)
        # print("---------->pred=")
        # print(pred)
        # print(y)
        # print("-----------------------<")
        # 不需要独热逆转化,交叉熵计算过程包含了独热编码,但是不仍然可以使用独热参数
        # y=arc_one_hot(y)
        loss = loss_fn(pred, y)

        # Backpropagation
        loss.backward() # 计算梯度
        optimizer.step() # 根据梯度优化参数
        optimizer.zero_grad() # 梯度归零

        if batch % 100 == 0: # 每100个batch打印一次
            loss, current = loss.item(), (batch + 1) * len(X)
            print(f"loss: {loss:>7f}  [{current:>5d}/{size:>5d}]")
        # exit()
# 6. 测试
def test(dataloader, model, loss_fn):
    size = len(dataloader.dataset)
    num_batches = len(dataloader)
    model.eval()
    test_loss, correct = 0, 0
    with torch.no_grad():
        for X, y in dataloader:
            X, y = X.to(device), y.to(device)
            #print(y)
            #不需要独热逆编码
            #y=arc_one_hot(y)
            #print(y)
            pred = model(X)
            #print(pred)
            test_loss += loss_fn(pred, y).item()
            #统计个数
            # >>> xx==zz
            # tensor([ True, False, False,  True, False,  True, False,  True, False, False,
            #          True, False, False,  True, False, False,  True, False,  True, False,
            #          True, False, False, False, False,  True,  True, False,  True, False,
            #         False,  True, False, False, False, False, False, False,  True,  True,
            #         False, False, False,  True, False, False,  True, False, False,  True,
            #         False,  True, False,  True,  True, False, False, False, False,  True,
            #         False,  True,  True,  True])
            # >>> (xx==zz).type(torch.float)
            # tensor([1., 0., 0., 1., 0., 1., 0., 1., 0., 0., 1., 0., 0., 1., 0., 0., 1., 0.,
            #         1., 0., 1., 0., 0., 0., 0., 1., 1., 0., 1., 0., 0., 1., 0., 0., 0., 0.,
            #         0., 0., 1., 1., 0., 0., 0., 1., 0., 0., 1., 0., 0., 1., 0., 1., 0., 1.,
            #         1., 0., 0., 0., 0., 1., 0., 1., 1., 1.])
            # >>> (xx==zz).type(torch.float).sum()
            # tensor(25.)
            # >>> (xx==zz).type(torch.float).sum().item()
            # 25.0
            yy=arc_one_hot(y)
            correct += (pred.argmax(1) == yy).type(torch.float).sum().item()
    test_loss /= num_batches
    correct /= size
    print(f"Test Error: \n Accuracy: {(100*correct):>0.1f}%, Avg loss: {test_loss:>8f} \n")

#  7. 训练和测试
def do_train():
    epochs = 5
    for t in range(epochs):
        print(f"Epoch {t+1}\n-------------------------------")
        train(mydataloader, model, loss_fn, optimizer)
        test(test_dataloader, model, loss_fn)
    print("Done!")
    __save_model__()

# for var_name in model.state_dict():
#     print(var_name, "\t", model.state_dict()[var_name])

# for var_name in optimizer.state_dict():
#     print(var_name, "\t", optimizer.state_dict()[var_name])

#  8. 保存模型
def __save_model__():
    path="model.pth"
    torch.save(model.state_dict(), path)
    print("Saved PyTorch Model State to "+path)
#  9. 加载模型
def load_model():
    model = NeuralNetwork().to(device)
    model.load_state_dict(torch.load("model.pth", weights_only=True))
    return model
#  10. 测试模型
def  test_model():
    model = load_model()
    classes = [
        "T-shirt/top",
        "Trouser",
        "Pullover",
        "Dress",
        "Coat",
        "Sandal",
        "Shirt",
        "Sneaker",
        "Bag",
        "Ankle boot",
    ]

    model.eval()
    x, y = test_data[0][0], test_data[0][1]
    with torch.no_grad():
        x = x.to(device)
        pred = model(x)
        # 独热转化,同device才能计算
        y=arc_one_hot(y.to(device)).int()
        print(y)

        print(f"Predicted: {pred[0].argmax(0)}, Actual: {y}")
        predicted, actual = classes[pred[0].argmax(0)], classes[y]
        print(f'Predicted: "{predicted}", Actual: "{actual}"')

def  do_test_model():
    load_model()
    test_model()
def do_train_model():
    showdata()
    do_train()
    test_model()
def main():
    do_train_model()
    #do_test_model()
    

if __name__ == '__main__':
    main()

bash zsh awk按列表整理文件

背景

我们有一堆文件,在文件夹A中,需要按照文件列表list.txt 复制文件到B中,A中文件和list.txt 中文件均较多

1、文件列表

list.txt类似如下

mnist_test_644.png

mnist_test_2180.png

mnist_test_122.png

mnist_test_2816.png

2、bash

b=`sed ‘r/g’ list.txt`

for i in $b;

do

cp -r “A/”$i “B/”;

done

3、zsh

for i (${(s: :)$(<list.txt)});

do

cp -r “A/”$i “B/”;

done

或者(不推荐,如果txt每行有空格,导致错误,上面兼容更好)

fl=$(<list.txt)

for i (${(f)fl});

do

cp -r “A/”$i “B/”;

done

4、awk 拼接语句管道执行

awk ‘{print “cp -r A/”$1″ B/;” }’ list.txt |sh 

bash zsh awk字符串分割

fl.txt文件
12
34
56
78


Bash

1、IFS定义分隔符,默认空格、tab、换行、回车

bash-3.2$ a="a b c d"
bash-3.2$ for i in $a;
> do
> echo $i","
> done
a,
b,
c,
d,

bash-3.2$ b=`sed 'r/g' fl.txt`
bash-3.2$ for i in $b; do echo $i","; done
12,
34,
56,
78,

a="a,b,c,d"
#换行符分割
IFS=$'\n'

bash-3.2$ a="a,b,c,d"
bash-3.2$ for i in $a;
> do 
> echo $i;
> done
a,b,c,d

设置分隔符为逗号
bash-3.2$ IFS=$','
bash-3.2$ for i in $a; do  echo $i; done
a
b
c
d

2、使用分割符生成数组
bash-3.2$ aa="hello,shell,split,test"
bash-3.2$ array=(${aa//,/})
bash-3.2$ for i in ${array[@]}
> do
> echo $i
> done
Helloshellsplittest

bash-3.2$ array=(${aa/\n/,/})
bash-3.2$ for i in ${array[@]}; do echo $i; done
hello
shell
split
Test

bash-3.2$ echo ${array[0]}
hello
bash-3.2$ echo ${array[1]}
Shell


Zsh 
Zsh 不会默认使用空格、tab、换行、回车分割

1、(f)按行分割

str=$(<fl.txt)

% echo $str
12 
34 
56 
78

for i (${(f)str}){
echo $i"#"
}
12#
34# 
56# 
78#

注意,写在一起这样不行
for i (${(f)$(<fl.txt)});
do 
echo $i",";
done
12 34 56 78#

直接输出和使用变量行为不一致
echo $(<fl.txt)
12 34 56 78
aa=$(<fl.txt)
echo $aa
12
34
56
78


需要使用(s:chr:)方式
for i (${(s: :)$(<fl.txt)});
do 
echo $i",";
done


或者使用sed读取
aa=`sed 'r/g' fl.txt`;
for i (${(f)aa});
do 
echo $i",";
Done



2、(s:chr:)

s='foo,bar,baz'
#仅s也可,见过p w @,:可以用其他符号代替
for i  in ${(ps:,:)s} ; do   
echo "$i END"
done
foo END
bar END
baz END


awk

bash-3.2$ aa=`awk '{print $1}' fl.txt`
bash-3.2$ for i in $aa
> do
> echo $i
> done
12
34
56
78

ipynb转markdown

在vs code中Jupyter Notebook ipynb文件不能复制内容,不方便分享,而自带的导出功能非常鸡肋,需要安装XETEX,官网显示全部安装需要7个多G“By default, everything is installed (7+GB)”,直接劝退了。

既然ipynb就是markdown写出来的,直接转markdown岂不是更好?

网上很多使用下面的命令,但是我遇到了错误 Jupyter command `jupyter-nbconvert` not found. 有可能是我环境变量问题。

jupyter nbconvert –to markdown ‘abc.ipynb’

推荐使用下面的代码,不依赖环境

python3 -m nbconvert –to markdown ‘abc.ipynb’

torch 张量

张量是一种特殊的数据结构,与数组和矩阵非常相似。在 PyTorch 中,我们使用张量来编码模型的输入和输出,以及模型的参数。

张量类似于 NumPy 的 ndarray,不同之处在于张量可以在 GPU 或其他硬件加速器上运行。实际上,张量和 NumPy 数组通常可以共享底层内存,从而无需复制数据(详见与 NumPy 的桥接)。张量还针对自动微分进行了优化(我们将在后面的 Autograd 部分详细介绍)。如果您熟悉 ndarrays,您会很快适应 Tensor API。如果不熟悉,请继续阅读!

import torch
import numpy as np

初始化张量

张量可以通过多种方式进行初始化。请看以下示例

直接从数据创建

张量可以直接从数据创建。数据类型会自动推断。

data = [[1, 2],[3, 4]]
x_data = torch.tensor(data)

从 NumPy 数组创建

张量可以从 NumPy 数组创建(反之亦然 – 详见与 NumPy 的桥接)。

np_array = np.array(data)
x_np = torch.from_numpy(np_array)

继续阅读“torch 张量”

torch 快速入门

Quickstart

This section runs through the API for common tasks in machine learning. Refer to the links in each section to dive deeper.

Working with data

PyTorch has two primitives to work with datatorch.utils.data.DataLoaderand torch.utils.data.DatasetDataset stores the samples and their corresponding labels, and DataLoader wraps an iterable around the Dataset.

import torch
from torch import nn
from torch.utils.data import DataLoader
from torchvision import datasets
from torchvision.transforms import ToTensor

PyTorch offers domain-specific libraries such as TorchTextTorchVision, andTorchAudio, all of which include datasets. For this tutorial, we will be using a TorchVision dataset.

The torchvision.datasets module contains Dataset objects for many real-world vision data like CIFAR, COCO (full list here). In this tutorial, we use the FashionMNIST dataset. Every TorchVision Dataset includes two arguments:transform and target_transform to modify the samples and labels respectively.

# Download training data from open datasets.
training_data = datasets.FashionMNIST(
    root="data",
    train=True,
    download=True,
    transform=ToTensor(),
)

# Download test data from open datasets.
test_data = datasets.FashionMNIST(
    root="data",
    train=False,
    download=True,
    transform=ToTensor(),
)
print(len(training_data))
60000
继续阅读“torch 快速入门”

Python中r’ ‘, b’ ‘, u’ ‘, f’ ‘的含义及用法详解

在Python中,字符串是一种常见的数据类型,用于表示文本信息。除了普通的字符串,Python还提供了一些特殊的字符串前缀和格式化字符串,包括r’ ‘,b’ ‘,u’ ‘,f’ ‘。本文将详细解释这些前缀的含义以及它们的用法,以帮助大家更好地理解和应用它们。

更多Python学习内容:http://ipengtao.com

r’ ‘: 原始字符串

r前缀表示原始字符串(raw string),它会取消字符串中的转义字符(如\n、\t)的特殊含义。原始字符串适用于需要保留转义字符原始形式的情况,如正则表达式、文件路径等。

1 基本用法

# 使用r前缀创建原始字符串
path = r’C:\Users\Username\Documents’
print(path)

在上述示例中,r前缀将字符串中的反斜杠\视为普通字符,而不是转义字符。

2 与转义字符的比较

# 普通字符串与原始字符串的比较
normal_str = ‘C:\\Users\\Username\\Documents’
raw_str = r’C:\Users\Username\Documents’

print(normal_str == raw_str)  # 输出 True

原始字符串与普通字符串在表示相同的文本时是相等的,但原始字符串更容易阅读和维护。

b’ ‘: 字节字符串

b前缀表示字节字符串(bytes string),它用于处理二进制数据,而不是文本数据。字节字符串是不可变的,通常用于处理图像、音频、网络协议等二进制数据。

1 基本用法

# 使用b前缀创建字节字符串
binary_data = b’\x48\x65\x6c\x6c\x6f’  # 字母 ‘Hello’ 的字节表示
print(binary_data)

在上述示例中,b前缀表示字节字符串,每个\x后面跟着两个十六进制数字,表示一个字节。

2 字符串与字节字符串的区别

# 字符串与字节字符串的区别
text = ‘Hello’
binary_data = b’Hello’

print(type(text))  # 输出 <class ‘str’>
print(type(binary_data))  # 输出 <class ‘bytes’>

字符串和字节字符串是不同的数据类型,字符串用于文本,字节字符串用于二进制数据。

u’ ‘: Unicode字符串

u前缀表示Unicode字符串,它用于处理Unicode编码的文本数据。在Python 3中,所有的字符串都是Unicode字符串,因此很少需要使用u前缀。在Python 2中,u前缀用于表示Unicode字符串。

1 基本用法

# 使用u前缀创建Unicode字符串(Python 2示例)
unicode_text = u’你好,世界!’
print(unicode_text)

在Python 3中,无需使用u前缀,普通字符串即为Unicode字符串。

2 Unicode字符串与普通字符串的区别

# Unicode字符串与普通字符串的区别(Python 2示例)
text = ‘Hello’
unicode_text = u’Hello’

print(type(text))  # 输出 <type ‘str’>
print(type(unicode_text))  # 输出 <type ‘unicode’>

在Python 2中,Unicode字符串与普通字符串是不同的数据类型,用于区分文本编码。

f’ ‘: 格式化字符串

f前缀表示格式化字符串(formatted string),它用于在字符串中嵌入表达式的值。在格式化字符串中,可以使用大括号{}来引用变量或表达式,并将其值插入字符串中。

1 基本用法

# 使用f前缀创建格式化字符串
name = ‘Alice’
age = 30
greeting = f’Hello, my name is {name} and I am {age} years old.’
print(greeting)

在上述示例中,f前缀表示格式化字符串,大括号{}内的表达式会被计算并插入到字符串中。

2 表达式和变量

# 在格式化字符串中使用表达式和变量
x = 10
y = 20
result = f’The sum of {x} and {y} is {x + y}’
print(result)

格式化字符串允许嵌入表达式和变量,并将它们的值动态插入到字符串中。

总结

在Python中,r’ ‘,b’ ‘,u’ ‘,f’ ‘等前缀和格式化字符串是用于处理不同类型文本和数据的工具。r前缀表示原始字符串,b前缀表示字节字符串,u前缀表示Unicode字符串,f前缀表示格式化字符串。了解这些前缀的含义和用法有助于更好地处理不同类型的字符串和数据。

梯度、散度、旋度

0、哈密顿算子

1、梯度(Gradient)是矢量,也是法向量

2、散度(Divergence)是标量

3、旋度(Curl)是向量

  • 标量的梯度为矢量,因此对该矢量可以继续求散度,从而引入拉普拉斯算子∇2 :
  • 矢量的散度为标量,因此对该标量可以继续求梯度:

拉普拉斯算子对标量的运算结果为标量、对矢量的运算结果为矢量。

举例:

电势场的梯度是电场强度,电场强度的的散度等于q/ε,高斯定理

python from .xxx import yyy 与 from xxx import yyy区别

相对导入只能用于同一个package里,并且包内的文件不能单独运行,只能在包的外部来调用



|--testmodule.py
|
|--testpy
   |
   |-- __init__.py 模块标志文件
   |
   |-- hello.py    模块1
   |
   |-- test.py             模块2,导入模块1,不可以单独运行
   |
   |-- test2.py    可以单独运行




hello.py
print('hello.py')
class hhh():
    print('hhhh')



test.py
from .hello import hhh
print('test.py')



testmodule.py
from testpy import test
print('OK')


python3 testmodule.py
hello.py
hhhh
test.py
OK




test2.py
from hello import hhh
print('test2.py')


cd testpy 

ls
__init__.py	__pycache__	hello.py	test.py		test2.py

python3 test.py  不可以单独运行

Traceback (most recent call last):
  File "/Users/yourname/Documents/testpy/test.py", line 1, in <module>
    from .hello import hhh
ImportError: attempted relative import with no known parent package

python3 test2.py  可以单独运行
hello.py
hhhh
test2.py