应用办公生活信息教育商业
投稿投诉
商业财经
汽车智能
教育国际
房产环球
信息数码
热点科技
生活手机
晨报新闻
办公软件
科学动态
应用生物
体育时事

天池学习赛深度学习篇

  上一篇文章讲了怎么用机器学习的方法进行阿里云安全恶意程序检测比赛,本章主要看深度学习如何实现阿里云安全恶意程序检测
  TextCNN建模数据读取模块引入importpandasaspdimportnumpyasnpimportseabornassnsimportmatplotlib。pyplotaspltimportlightgbmaslgbfromsklearn。modelselectionimporttraintestsplitfromsklearn。preprocessingimportOneHotEncoderfromtqdmimporttqdmnotebookfromsklearn。preprocessingimportLabelBinarizer,LabelEncoderimportwarningswarnings。filterwarnings(ignore)matplotlibinline读取本地文档数据path。。securitydatatrainpd。readcsv(pathsecuritytrain。csv)testpd。readcsv(pathsecuritytest。csv)模块引入importnumpyasnpimportpandasaspdfromtqdmimporttqdm存储占用大小统计classDataPreprocess:definit(self):self。int8maxnp。iinfo(np。int8)。maxself。int8minnp。iinfo(np。int8)。minself。int16maxnp。iinfo(np。int16)。maxself。int16minnp。iinfo(np。int16)。minself。int32maxnp。iinfo(np。int32)。maxself。int32minnp。iinfo(np。int32)。minself。int64maxnp。iinfo(np。int64)。maxself。int64minnp。iinfo(np。int64)。minself。float16maxnp。finfo(np。float16)。maxself。float16minnp。finfo(np。float16)。minself。float32maxnp。finfo(np。float32)。maxself。float32minnp。finfo(np。float32)。minself。float64maxnp。finfo(np。float64)。maxself。float64minnp。finfo(np。float64)。mindefgettype(self,minval,maxval,types):iftypesint:ifmaxvalself。int8maxandminvalself。int8min:returnnp。int8elifmaxvalself。int16maxmaxvalandminvalself。int16min:returnnp。int16elifmaxvalself。int32maxandminvalself。int32min:returnnp。int32returnNoneeliftypesfloat:ifmaxvalself。float16maxandminvalself。float16min:returnnp。float16ifmaxvalself。float32maxandminvalself。float32min:returnnp。float32ifmaxvalself。float64maxandminvalself。float64min:returnnp。float64returnNonedefmemoryprocess(self,df):initmemorydf。memoryusage()。sum()102421024print(Originaldataoccupies{}GBmemory。。format(initmemory))dfcolsdf。columnsforcolintqdmnotebook(dfcols):try:iffloatinstr(df〔col〕。dtypes):maxvaldf〔col〕。max()minvaldf〔col〕。min()transtypesself。gettype(minval,maxval,float)iftranstypesisnotNone:df〔col〕df〔col〕。astype(transtypes)elifintinstr(df〔col〕。dtypes):maxvaldf〔col〕。max()minvaldf〔col〕。min()transtypesself。gettype(minval,maxval,int)iftranstypesisnotNone:df〔col〕df〔col〕。astype(transtypes)except:print(Cannotdoanyprocessforcolumn,{}。。format(col))afterprocessmemorydf。memoryusage()。sum()102421024print(Afterprocessing,thedataoccupies{}GBmemory。。format(afterprocessmemory))returndfmemoryprocessDataPreprocess()train。head()
  数据预处理(字符串转化为数字)uniqueapitrain〔api〕。unique()将api以字典的形式存储api2index{item:(i1)fori,iteminenumerate(uniqueapi)}index2api{(i1):itemfori,iteminenumerate(uniqueapi)}训练集、测试集新增apiidx字段,将api的取值映射到api2index,展示的值是api2index的values值train〔apiidx〕train〔api〕。map(api2index)test〔apiidx〕test〔api〕。map(api2index)获取每个文件对应的字符串序列defgetsequence(df,periodidx):seqlist〔〕结合上下文代码可知:参数periodidx指的是trainperiodidxtestperiodidxtrainperiodidxtestperiodidx:获得fileid,去除重复值,仅保留第一次出现的值periodidx〔:1〕:获得数组的所有值forid,begininenumerate(periodidx〔:1〕):结合上下文代码可知,参数df是traintestdf。iloc〔begin:periodidx〔id1〕〕是指获取某一fileid的所有数据df。iloc〔begin:periodidx〔id1〕〕〔apiidx〕是指获取某一fileid的所有数据对应的apiidx值seqlist。append(df。iloc〔begin:periodidx〔id1〕〕〔apiidx〕。values)弥补df。iloc〔begin:periodidx〔id1〕〕〔apiidx〕,将剩余的数据也获取并加入到seqlist列表中seqlist。append(df。iloc〔periodidx〔1〕:〕〔apiidx〕。values)returnseqlisttrainperiodidxtrain。fileid。dropduplicates(keepfirst)。index。valuestestperiodidxtest。fileid。dropduplicates(keepfirst)。index。values获取训练集中fileid、label,去除重复值,仅保留第一次出现的值traindftrain〔〔fileid,label〕〕。dropduplicates(keepfirst)testdftest〔〔fileid〕〕。dropduplicates(keepfirst)将以fileid划分得到的train〔apiidx〕的值获得的值赋值给traindf〔seq〕traindf〔seq〕getsequence(train,trainperiodidx)testdf〔seq〕getsequence(test,testperiodidx)
  到这里,traindf包含fileid、label和seq三个字段,其中seq的值是一组列表
  traindf的图标输出可以理解为以fileid、label两个字段分组,展示每条数据对应api的值TextCNN网络结构模块引入fromkeras。preprocessing。textimportTokenizerfromkeras。preprocessing。sequenceimportpadsequencesfromkeras。layersimportDense,Input,LSTM,Lambda,Embedding,Dropout,Activation,GRU,Bidirectionalfromkeras。layersimportConv1D,Conv2D,MaxPooling2D,GlobalAveragePooling1D,GlobalMaxPooling1D,MaxPooling1D,Flattenfromkeras。layersimportCuDNNGRU,CuDNNLSTM,SpatialDropout1Dfromkeras。layers。mergeimportconcatenate,Concatenate,Average,Dot,Maximum,Multiply,Subtract,averagefromkeras。modelsimportModelfromkeras。optimizersimportRMSprop,Adamfromkeras。layers。normalizationimportBatchNormalizationfromkeras。callbacksimportEarlyStopping,ModelCheckpointfromkeras。optimizersimportSGDfromkerasimportbackendasKfromsklearn。decompositionimportTruncatedSVD,NMF,LatentDirichletAllocationfromkeras。layersimportSpatialDropout1Dfromkeras。layers。wrappersimportBidirectional
  TextCNN方法defTextCNN(maxlen,maxcnt,embedsize,numfilters,kernelsize,convaction,maskzero):inputInput(shape(maxlen,),dtypeint32)embedEmbedding(maxcnt,embedsize,inputlengthmaxlen,maskzeromaskzero)(input)embedSpatialDropout1D(0。15)(embed)warppers〔〕forkernelsizeinkernelsize:conv1dConv1D(filtersnumfilters,kernelsizekernelsize,activationconvaction)(embed)warppers。append(GlobalMaxPooling1D()(conv1d))fcconcatenate(warppers)fcDropout(0。5)(fc)fcBatchNormalization()(fc)fcDense(256,activationrelu)(fc)fcDropout(0。25)(fc)fcBatchNormalization()(fc)predsDense(8,activationsoftmax)(fc)modelModel(inputsinput,outputspreds)model。compile(losscategoricalcrossentropy,optimizeradam,metrics〔accuracy〕)returnmodelgetdummies()作用是将一些分类变量,如性别、国家、省份、职业、婚姻状况等变量转换成多个二进制变量,即一个变量有多个可能的值,就可以转化为多个二进制变量,这样可以方便数据分析,更加准确地反应原有数据集合之间的关系。trainlabelspd。getdummies(traindf。label)。valuespadsequences用于确保列表中的所有序列具有相同的长度。默认情况下,这是通过0在每个序列的开头填充直到每个序列与最长序列具有相同的长度来完成的trainseqpadsequences(traindf。seq。values,maxlen6000)testseqpadsequences(testdf。seq。values,maxlen6000)
  TextCNN训练和预测模块引入fromsklearn。modelselectionimportStratifiedKFold,KFoldskfKFold(nsplits5,shuffleTrue)TextCNN传入的参数值maxlen6000maxcnt295embedsize256numfilters64kernelsize〔2,4,6,8,10,12,14〕convactionrelumaskzeroFalseTRAINTrueimportosos。environ〔CUDAVISIBLEDEVICES〕0,1zeros()指创建指定长度或形状的全为0的ndarray数组;在默认情况下,zeros()创建的数组元素类型为浮点型,如果要使用其他类型可以设置dtype参数返回给定类型的新数组;shape:定义返回数组的形状;创建多维数组时,用括号将shape数据组括起来shape(len(trainseq),8)指的是创建len(trainseq)行、8列的矩阵metatrainnp。zeros(shape(len(trainseq),8))metatestnp。zeros(shape(len(testseq),8))FLAGTruei0skf。split()fortrind,teindinskf。split(trainlabels):i1print(FOLD:。format(i))print(len(teind),len(trind))modelnamebenchmarktextcnnfoldstr(i)Xtrain,Xtrainlabeltrainseq〔trind〕,trainlabels〔trind〕Xval,Xvallabeltrainseq〔teind〕,trainlabels〔teind〕textCNN是使用卷积神经网络来进行文本分类,属于CV领域,是用于解决计算机视觉方向问题的模型modelTextCNN(maxlen,maxcnt,embedsize,numfilters,kernelsize,convaction,maskzero)modelsavepath。NNss。hdf5(modelname,embedsize)earlystoppingEarlyStopping(monitorvalloss,patience3)modelcheckpointModelCheckpoint(modelsavepath,savebestonlyTrue,saveweightsonlyTrue)ifTRAINandFLAG:fit()函数是机器学习中用于拟合模型的函数,主要输入的是训练集数据,并根据算法拟合出一个模型。最终输出的是一个训练好的模型model。fit(Xtrain,Xtrainlabel,validationdata(Xval,Xvallabel),epochs100,batchsize64,shuffleTrue,callbacks〔earlystopping,modelcheckpoint〕)loadweights的作用是将预训练好的权值文件加载到模型中model。loadweights(modelsavepath)Predict函数是一种常用的机器学习技术,它可以帮助我们准确地预测未来事件的发生概率。它是基于历史数据,从历史数据中提取特征,并使用机器学习算法来预测未来可能发生的事件。Predict函数主要用于分析和预测未来事件的发生概率,以及给出相关的建议和措施。predvalmodel。predict(Xval,batchsize128,verbose1)predtestmodel。predict(testseq,batchsize128,verbose1)将预测的数据赋值到metatrain中metatrain〔teind〕predval将测试集每个fileid对应的api集合预测的数据累加存放到metatest中metatestpredtestK。clearsession()将销毁当前的TF图并创建一个新的TF图K。clearsession()metatest5。0结果提交testdf〔prob0〕0testdf〔prob1〕0testdf〔prob2〕0testdf〔prob3〕0testdf〔prob4〕0testdf〔prob5〕0testdf〔prob6〕0testdf〔prob7〕0testdf〔〔prob0,prob1,prob2,prob3,prob4,prob5,prob6,prob7〕〕metatesttestdf〔〔fileid,prob0,prob1,prob2,prob3,prob4,prob5,prob6,prob7〕〕。tocsv(nnbaseline5fold。csv,indexNone)
  博客参考链接:阿里云天池大赛赛题(机器学习)阿里云安全恶意程序检测(完整代码)全栈OJay的博客CSDN博客
  头条创作挑战赛

美媒美议员发第一条TikTok视频反对封禁TikTok,就是来源:环球网【环球网报道记者索炎琦】这不仅是我的第一条TikTok,也是(第一条)关于TikTok话题的TikTok。在美国政坛曝光率颇高的民主党众议员亚历山德里娅奥卡西……班凯罗和杰伦4月最佳新秀NBA公布了本赛季34月份东、西部月最佳新秀:魔术大前锋保罗班凯罗和雷霆前锋杰伦威廉姆斯当选。班凯罗在34月份场均得到20。3分、7。8个篮板、4。2次助攻。这位状元秀在……辽篮何去何从?杨毅爆张镇麟冲击NBA,郭艾伦心生去意或加盟北北京时间4月30,在四月份最后的一天,著名篮球解说员杨毅在直播时透露辽宁队锋线张镇麟打算前往美国打G联赛,想试一下能不能冲击NBA。据杨毅透露,张镇麟已经向妈妈提出了申请……瓜迪奥拉现在沃克没首发是战术原因,而不是我们对他失去了信心直播吧4月8日讯在接受采访时,曼城主帅瓜迪奥拉谈到了球队后卫沃克,他表示,在踢三后卫并且有两名后卫留在中路的阵型中,沃克暂时还无法胜任。瓜迪奥拉这样谈道:想要在中路比赛,……数读盘点上千条消费投诉我们知道为什么爸妈容易上当受骗得年轻人者得天下的消费逻辑已发生变化,银发族正逐渐成为消费增长主力军。2022年末,中国60岁及以上人口达到2。8亿,占全国总人口的比例为19。8,天眼查《2023中国消费主题……蟹壳可用于制造新电池材料山东第一医科大学和日本九州工业大学研究人员蟹壳将蟹壳升级成具有广泛用途的多孔、碳填充材料。他们在最新一期《ACSOmega》杂志上发表报告称,利用这种蟹碳制造了钠离子电池的阳极……要让作品成为温暖人心的光【劳动者之歌】中国国际电视台的纪录片导演陶源34岁,年纪不大,工作时间不长,却已获得了丰硕成果她拍摄的《脑瘫画家的天使翼》是中国电视艺术家协会电视纪录片学术委员会中国纪录……土耳其,不只有浪漫的热气球,还有满大街植发的秃头男人我想要带你去浪漫的土耳其,然后去植发或者看牙医前两天,一个英国人因为在家附近40公里范围内找不到牙科诊所,直接买了张机票,跑到4800公里之外的土耳其去补牙了。去土……林敏骢,锺镇涛,太极乐队为作品展Part2演唱会彩排苏格兰场今天星闪闪林敏骢暨车总脑交战时日如飞40周年成人礼作品展演唱会之PART2更精彩将於18及19日一连两天於西九竹翠公园举行,日前(12日)演唱会主角林敏骢连同表演嘉宾锺……闲话生活之陪伴是最长情的告白上一篇:闲话生活之透支的娱乐不是生活的全部专栏:闲话生活作者:泡沫很甜呦编辑:奉山公出品:喜喳喳有声剧社(原创图片,非请勿转)《亲子六则之陪……热度涨超140!花城广州成3月热门目的地春和景明,各地繁花次第绽放,赏花成为三月国内外旅行的第一主题。马蜂窝大数据显示,近一周,马蜂窝站内赏花热度上涨133。2023全球赏花地图攻略也比往年更早上线,将国内外知名春季……硅谷银行割韭菜啦金融界的大事件,美国硅谷银行宣布破产,由联邦存款保险公司接管。突然宣布这个消息,美国相关部门说是为了避免储户挤兑,导致更大规模的银行风险。据了解,美国银行存款保险是25万……
好样的!蔡雪桐单板滑雪世锦赛夺冠北京时间3月3日,2023年单板滑雪世锦赛女子U型场地技巧决赛结束争夺,中国选手蔡雪桐以90。50分的成绩夺得冠军。资格赛中,三位中国选手蔡雪桐、杨露、武绍桐位列第三至第……爱奇艺回应禁止HDMI连线播放为防止录屏盗版而采取的限制措施Tech星球1月16日消息,今日,爱奇艺被曝禁止HDMI连线播放功能的消息引发热议。有网友反馈称,爱奇艺限制了HDMI线连接电视播放功能,自己在使用iPad用HDMI线连接电视……国安完成引援最强阵容浮现六大新援加锋线三叉戟,张稀哲在列前言北京国安俱乐部在休赛期的引援补强工作基本接近尾声,目前可以确定他们已签下两位边锋,分别是杨立瑜和方昊;一位是留洋归来的边后卫李磊;以及两位中场球员,分别是外援德索萨和……你知道拉皮后你祛除的筋膜组织都去哪里了么?你知道拉皮后你去除的筋膜组织都去哪里了么?切除的筋膜等组织这是我在手术中祛除的筋膜组织等,在手术中过程中,我们将筋膜提升后会将多余的SMAS筋膜祛除,这些祛除的SM……体视界世界杯传奇射手王方丹去世国足新帅扬科维奇正式亮相瞰体坛世界杯传奇射手王方丹去世方丹。图源法国《队报》北京时间3月1日,据法国媒体《队报》报道,法国传奇球星方丹去世,享年89岁。他在1958年瑞典世界杯中创下……女神节记得对妻子说一句你是我命中的上上签!岁月流转,时间荏苒,世间有一份爱,叫做妻子的爱。没有妻子,家将是一片荒凉;没有妻子,爱的港湾将失去温柔。我们犯过的蠢,发过的狂,处处都有妻子默默的……2100份雪兰牛奶昆明动物园惊喜派兑活动迎新年来源:【昆明日报掌上春城】掌上春城讯红红火火过大年,热热闹闹迎新春。新春期间,雪兰牛奶联合昆明动物园将为游客免费送上2100份营养美味的牛奶,用切切实实的惊喜派兑行动,表……燃油才是王道!这波性能车即将引入这不比纯电好玩吗?近期,教授和研究生朋友聊天,在谈到当下的汽车行业发展时,他懊恼地说:自己当初就不应该选内燃机方向,应该往自动驾驶、电池管理、整车控制发展,这些才是以后的主要方向。透过聊天……被CHANEL官网下架,流浪包不卖了?被CHANEL官网下架,流浪包不卖了?CHANEL虽然在明面上有四大金刚之说,但是这几款包包的待遇也是有差别的,涨价都是跟着一起涨,但是CF和2。55绝对的第一梯队,流浪……世界机器人大会VEX系列赛项小初组大家好,我是文爸,一个关注家庭教育的普通家长。之前和大家分享了南京初中的学区房、初中的数据对比、指标生、特长生等相关政策文章和视频,今天我们来专题说一说特长生中的科技特长……瑞雪迎春分外娇立春过后,一场春雪不期而至。本来报的是小雨夹雪,不想早上推开门一看,呵!眼前的一切都变了,整个一个白茫茫的世界啊。雪停了,风住了,天地之间一片安静。如今的气候,似乎很难遇……幼儿园班主任通知每人交500元拍毕业照?瓯海区教育局已责成园来源:温州都市报给毕业班的孩子拍一组特色毕业照几乎已成常规动作。但在瓯海区景山百佳幼儿园,却因为毕业照引发了家长的质疑。昨天,幼儿园家长肖丽(化名)向温都新闻热线8886……
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网