首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
趣解专题
Pytorch中交叉熵Loss趣解
点击上方「蓝字」关注我们 背景 最近一直在总结Pytorch中Loss的各种用法,交叉熵是深度学习中最常用的计算方法,写这个稿子把交叉熵的来龙去脉做一个总结。 什么是交叉熵 信息量 引用百度百科中信息量的例子来看, 在日常生活中,极少发生的事件一旦发生是容易引起人们关注的,而司空见惯的事不会引起注意,也就是说,极少见的事件所带来的信息量多。如果用统计学的术语来描述,就是出现概率小的事件信
阅读更多...
趣解 什么叫网关?
今天在网上看到一个文章特别有意思,已经迫不及待了,所以连思维导图都没有画就分享给大家了: 假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的李大爷,李大爷就是你的网关。当你想跟院子里的某个小伙伴玩,只要你在院子里大喊一声他的名字,他听到了就会回应你,并且跑出来跟你玩。 但是你不被允许走出大门,你想与外界发生的一切联系,都
阅读更多...
趣解设计模式之《怀念小时候玩的红白机嘛?》
〇、小故事 不知道大家小时候都有什么难忘的经历。作为80后的我来说,小时候印象最深的就是任天堂生产的FC游戏机(俗称“红白机”),当时在家和小伙伴一起玩《魂斗罗》、《超级马里奥》、《冒险岛》、《坦克大战》等等游戏,经常从早上玩到天黑,然后作业都忘记写,被打屁股。 对于部分90后或者00后来说,红白机或许是比较陌生的。那这里我就说一下怎么去使用它玩游戏。具体步骤如下所示: 【步骤1】
阅读更多...
趣解设计模式之《我想吃煎饼果子了》
〇、小故事 话说最近早起没时间做早饭,并且早上上班的地铁口不远处就有一处非常火爆的煎饼摊,所以我就经常去那边吃煎饼,一个“基础版”煎饼是7块钱,向煎饼中加一颗鸡蛋是1元钱,加一根火腿肠是3元钱,加鸡柳是4元钱…… 好像基本上能想到的美食都能往煎饼里塞似的。这就让我想起之前看过的一个短视频,一个小伙子去买煎饼,说要加50颗鸡蛋,然后摊出来的煎饼果子跟一个大披萨似的,非常有趣。 那么,做
阅读更多...
【趣解】工厂模式之简单工厂、工厂方法模式
今天,我们以找对象为例,分析一下工厂模式中的简单工厂与工厂方法模式。 众所周知,找对象是个很复杂的过程。我们不使用工厂模式来模拟一下找对象过程。 代码如下: public class FindLoverNoFactory {//每个人一开始没有男/女朋友private static People b_gFriend = null;public static void main(Strin
阅读更多...
趣解设计模式之《小王的披萨店续集》
〇、小故事 在《小王的披萨店》这篇文章中,我们介绍了小王开披萨店的故事,并且为了解决多种口味披萨的扩展问题,引出了简单工厂和工厂方法模式。但是,故事仍在继续,如果芝加哥的披萨店和纽约的披萨店,要求往披萨上面加的配料都不一样,那么如何可以规范多种类型披萨的创建呢?如下图所示: 【Dough】生面团【Sauce】调味汁【Cheese】干酪、奶酪【Clams】蛤蜊 那么为了解决类似的问题
阅读更多...
趣解设计模式之《小王的披萨店》
〇、小故事 小王看到最近越来越多的人喜欢吃披萨了,所以,他决定自己也开一个披萨店。最初开的时候,他只提供了一种口味的披萨,因为这样先试试水,看看生意如何,如果生意不好,也可以快速止损。 没想到由于小王手艺不错,天生就有制作披萨的天赋,生意异常的火爆。于是他决定再多增加几种口味的披萨。那么,之前的版本,是将制作披萨和售卖披萨放在一套逻辑处理的,但是此时如果多增加几种口味,只应该影响制作披萨这
阅读更多...
趣解设计原则之《我发誓!再也不买一体机了》
〇、小故事 小王大学毕业后,找了一份像样的工作,早八晚五轻松自在,并且收入也不错。自从大学毕业后,家里用的电脑还是他上大学的时候用了四年的电脑,配置性能早已跟不上现在的时代了。他决定用自己赚的工资买一台家用电脑。 他咨询了他的好朋友,好多人都建议他买一台苹果的一体机,所有硬件都集成在了显示器中,而且设计非常帅气,占用空间也小,他也去实体店看了一下,一眼就看中了,然后兴高采烈的买了一台。
阅读更多...
趣解设计模式之《会飞的橡皮鸭》
〇、小故事 小王公司要开发一个养鸭子的模拟养育游戏。游戏中会出现各种类型的鸭子。小王设计了一个基础的鸭子类——Duck类,这个类有3个方法: 【quack】用来描述鸭子叫声的方法; 【swim】用来描述鸭子游泳姿态的方法; 【display】用来描述鸭子外貌的方法; 然后通过继承Duck类,根据鸭子的不同种类/类型创建了很多的鸭子子类,比如:绿头鸭、红头鸭、橡皮鸭等等。程序运行很棒,过
阅读更多...
趣解设计模式之《网红小王购车记》
一、前言 本文章是关于设计模式中的建造者模式的,也称构建者模式/生成器模式,英文我们称之为Builder Pattern。在开展讲解之前,我们先把该模式的定义了解一下。 建造者模式的定义: 该模式可以实现产品的封装构造过程,并允许按步骤构造产品。 该模式的优点: 可以将一个复杂对象的创建过程封装起来,允许对象通过多个步骤来创建,并且可以改变过程;它也可以向客户隐藏产品内部的表现;
阅读更多...