易编橙·终身成长社群:相遇在此,共启编程之旅的上上之选


在这里插入图片描述

博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳]
本文专栏: AIGC


在这里插入图片描述


🍊易编橙·终身成长社群

  • 在这个日新月异的时代,技术的浪潮不断推动着社会的进步与发展。编程,作为连接现实与数字世界的桥梁,已经成为越来越多人追求梦想、实现价值的工具。然而,在编程这条既充满挑战极具魅力的道路上,每个人或许都曾遇到过迷茫、困惑甚至挫败。如何找到正确的方向,如何高效地提升技能,如何在职场中脱颖而出,成为了每一个编程爱好者与从业者共同关注的问题。
    在这里插入图片描述

  • 正是基于这样的背景,“易编橙·终身成长社群”应运而生。这里汇聚了一群来自不同领域、拥有丰富经验和深厚积累的IT精英,他们不仅在自己的专业领域内取得了卓越的成就,更热衷于分享知识、传递经验,致力于帮助更多编程爱好者与从业者少走弯路快速成长
    在这里插入图片描述

  • 在这里,无论你是初入编程世界的大学生,还是渴望技术突破的程序员老兵;无论你是寻求职业发展IT从业者,还是对IT新技术充满兴趣的探索者,都能找到属于自己的成长路径。这里提供个性化职业规划指导系统化学习资源实战性项目机会以及前沿的技术分享,旨在打造一个开放、包容、互助的学习环境,让每一位成员都能在这里收获成长、实现价值。
    在这里插入图片描述

关于易编橙·终身成长社群,看看星主怎么说➡https://huskypower.blog.csdn.net/article/details/139281423?spm=1001.2014.3001.5502

在这里插入图片描述


🍊前言

大家好,我是小z,一名在校大三学生,专注于前端技术、Java与Python的学习与实践。同时,我对数学建模和人工智能领域有着浓厚兴趣。非常荣幸能够以星球嘉宾和社群内容共创官的身份加入易编橙·终身成长社群这个充满活力的大家庭。我期待与大家一同在计算机的广阔天地中学习新知,共同进步,探索技术的无限可能

在这里插入图片描述


🍊星球受众群体

  • 易编橙·终身成长社群”欢迎各类对技术、职业发展及与IT、互联网相关行业感兴趣的朋友加入。
    在这里插入图片描述
  • 大学生:对未来职业规划感到迷茫,希望提前了解行业动态和技术趋势。
  • 编程初学者:刚踏入编程世界,渴望快速掌握基础,寻找实战机会。
  • 程序员老兵:拥有丰富编程经验,寻求技术突破和职场晋升的新路径。
  • IT从业者:在IT领域工作,希望拓宽视野,提升跨领域能力。
  • 互联网从业者:在互联网行业深耕,寻求与同行交流,共同进步。
  • 与这些职业角色打交道的相关人员:即使你的工作不直接涉及技术,但与技术团队紧密合作,希望更好地理解和支持他们的工作。
  • 无论你的背景如何,只要你对技术、职业发展或IT、互联网行业感兴趣,“易编橙·终身成长社群”都将是你的理想选择。我们提供一个开放、包容的学习环境,让不同背景的人都能在这里找到属于自己的成长路径。
    在这里插入图片描述

🍊星主介绍

哈哥:先后以 “软件测试”“后端开发”“全栈”“产品经理”“技术经理” 等角色分别在P2P、网络安全、金融等领域摸爬滚打14年,期间经历过一次失败的创业,幸得老领导收留,目前在公司担任CTO一职。平时热衷于分享各种编程领域的软硬技能知识以及前沿技术。在过去的三年时间里辅导服务超 3000人 在编程领域的职业规划、择业定位、简历辅导、模拟面试、技术提升、瓶颈突破的破惘,帮助众多小伙伴告别迷茫与职业焦虑,成就更好的自己。
在这里插入图片描述


💐 从某些方面来说,这也是能为各位小伙伴创建「==易编橙·终身成长社群==」的根基之一。💐
哈哥撩编程 (抖音、B站、视频号同名)
图书作者:程序员职场效能宝典
超级个体:COC上海社区主理人
特约讲师:谷歌亚马逊分享嘉宾
科技博主:极星会首批签约作者

在这里插入图片描述


🍊星球天团

“星球天团”汇聚了IT领域的杰出人才,他们各自在不同的技术方向上拥有着卓越的表现深厚的积累。从城市主理人博客之星后端研发专家算法工程师,再到全栈开发工程师技术顾问,每一位成员都在自己的领域内熠熠生辉。他们不仅拥有丰富的实战经验,还乐于分享,致力于推动技术的传播创新。加入“终身成长社群”,你将有机会与这些杰出的IT人士共同学习、交流,碰撞出更多灵感的火花
在这里插入图片描述

个人荣誉
哈 哥COC城市主理人,博客之星、腾云TVP,多个开发者大会分享嘉宾。
小 明前平安资深开发,现某大厂后端研发专家/架构师,精通后端和大数据技术栈。
Fanstuck前阿里算法工程师,现任某研究院高级AI工程师,资深算法赛棍。
晓 雨COC校园主理人,00后在读博士生,专注AI网络空间安全与科研创新。
Damon小智知名外企技术顾问,多项微软技术认证(MTA),资深全栈开发工程师。
几何心凉COC城市主理人,博客之星&超级个体,VUE技能树作者。

在这里插入图片描述


🍊现阶段运营策略

  • 星球目前的第一个目标是邀约 100位小伙伴 作为种子选手将星球运营下去,这些种子选手将会成为 《程序员:职场效能必修宝典》 一书的 内容评鉴官 ,以 评鉴嘉宾 的身份出现在书中特定章节,使读者能够更直观地了解评鉴的参与者,增加书籍的互动性和可信度。同时,内容评鉴官 也会获赠该书的 签名版 一部。

在这里插入图片描述

知识星球嘉宾(排名不分先后 点击跳转)
Yu欸:https://blog.csdn.net/WTYuong
几何心凉:https://blog.csdn.net/JHXL_
小 明:https://blog.csdn.net/FMC_WBL
fanstuck: https://blog.csdn.net/master_hunter
Damon小智:https://blog.csdn.net/weixin_41793160

在这里插入图片描述


🍊加入星球方式

1、现阶段的易编橙·终身成长社群 采取的是 邀约制 ,不对外开放 。
2、如果大家感兴趣的话,可以 联系上方的星球嘉宾

在这里插入图片描述


🍊 星球服务概览

  • 对于加入易编橙·终身成长社群的小伙伴们,你们将享受到一系列精心打造的服务与丰富资源,助力大家在职业成长和技术提升上迈出坚实步伐。以下是我们为大家准备的核心服务:
    在这里插入图片描述
  1. 成为《程序员:职场效能必修宝典》内容评鉴官:你将有机会以嘉宾身份参与书籍特定章节的评审,为书籍内容提供专业见解。(此机会仅限现阶段
  2. 一对一职业规划与编程技术扫盲:我们将为你提供个性化的职业规划指导,帮助你扫清互联网编程技术角色的迷雾,破除就业与方向选择的困惑,让你在职业道路上步步领先。
  3. 零基础入门资源小型实战项目:无论你是编程新手还是有一定基础的学习者,我们都将提供适合你的学习资源。从零基础入门资料到从0到1的小型实战项目,助你稳步提升。
  4. 免费学习原创付费专栏与视频课程:社群内部将开放星主与嘉宾的原创付费专栏,供你免费学习。此外,后续上线的视频课程也将包括在内,让你的学习之旅更加丰富多彩。
  5. 面向就业的体系化学习路径:我们正在构建一套涵盖多个方向和领域的体系化学习路径,旨在帮助你更好地面向就业。这条路径将包括专栏资源与学习指导,为你的职业发展提供有力支持。
  6. 互动交流与共同进步:加入星球的小伙伴可以向星主、嘉宾提问,球友们也可以相互回复。在这个充满共同目标的社群中,你将更容易找到同行者,一起进步、共同成长。
  7. 持续更新与提炼:我们的服务与学习资源将不断更新与完善。有方向、有思路的内容提炼后,我们将及时补充到社群中,确保你始终能够获取到最新的学习资源与支持。
  8. 在这个社群中,我们相信“一个人可以走得很快,但一群人可以走得更远”。通过相互学习与共同进步,我们将一起少走弯路,让每一步都充满价值。期待与你在学习的道路上携手前行!

在这里插入图片描述


🍊 星球的经典专栏

  • 以下的专栏内容仅是部分展示,排名不分先后,但遵循着一定的策略,从低到高、从易而难,从初级到进阶,从基础到实战,从 0 到 1

在这里插入图片描述

  • 程序员:编程角色通识宝典 (以目前十大职业为蓝本,贯通前后端以及大数据、人工智能、算法、大模型等热门领域,让大家能够站在更高的纬度去提升自己职业发展与职业决策的质量和空间。一步先,则步步先。)
  • 程序员:产品思维速通宝典(所谓 “产品思维”就是发现问题解决问题并把解决方案标准化的一种思维模式。从用户需求、市场竞争、产品优化等多个角度进行决策的思维方式,但我更喜欢这句:“你就是最好的产品。”)
  • 程序员:PPT零基础实操课 (不管你是做毕设也好,实习转正述职也好,亦或者是向领导汇报也好。一份高颜值、高逼格的PPT能够让你脱颖而出、秒杀对手,帮助你快速理清提案,为你的演讲、工作汇报增光添彩。)
  • 程序员:职场效能必修宝典 (没错,该专栏就是我的那本书 [初稿,未删减版] 。从自我认知、职业规划、优质简历、面霸速成、职场心理学、岗位发展等多个维度为大家揭开职场的真实面纱。它很好,也不是特别的好。)
  • 程序员:编程必备基础知识 (比同类大学课程更快、更有趣、更贴近实际工作内容的计算机基础知识。涵盖计算机领域三大基础知识 “计算机组成原理、操作系统、计算机网络”,带你补足编程必备知识,彻底打牢基础。)
  • 程序员:编程基础面试八股 (实习、校招,是相对容易进大厂的机会,也是奠定我们职场生涯的重要起点。所谓 “基础不牢、地动山摇”,该专栏攻克大厂必考的计算机基础重点,提炼高频面试题,助大家拿下大厂offer。
  • 程序员:算法高手特训宝典算法学得好,工作不愁找。 对大部分来说,学好算法是一件有难度的事情。该专栏的目的就是带领大家 吃透高难理论掌握算法真正的应用实践 ,在面试竞赛工业算法设计上所向披靡。)
  • 程序员:前端必学案例宝典前端虽然易学往往浮于表面。该专栏精选了40个经典的实战案例,覆盖 PC移动端,涉及 电商教育等多领域,手敲每行代码,带大家吃透前端基础技术,奠定前端领域的职业发展基石。)
  • 程序员:科创实践实操宝典科研创新系列 将帮助你 全面掌握科研创新 的各个方面。从 申请大学生创新创业项目 ,到如何 参与学科竞赛并获奖,该专栏提供系统化的指导,助力各位小伙伴提升学术与职业道路上的竞争力。)
  • 程序员:实战企业wiki知识库一个前后端分离的、全栈开发项目,从 Spring Boot 接口设计Vue 思想实践,从 框架搭建部署上线。一套 通用、可复用的组件工具,搭建专属自己的内容可灵活配置的 企业级知识库。)
  • 程序员:私有大模型速通宝典 (从 ChatGPT背后原理、技术、不同大模型知识开始,带你 从0到1 训练出一个大模型,运用 PEFT技巧 解决场景需求,最后用 LangChain + 训练的大模型搭建知识库。 超越竞争者,抢占先机)
  • 程序员:提示词工程速通宝典 (AIGC的风口,催生了“提示词工程”这种新岗位,市场需求和职业发展! 只要掌握提示词工程技能,每个人都能驾驭AI,实现大幅提升工作效能和质量,拓宽职业发展,获得更多的机会和优势。)
  • 程序员:人工智能体速通宝典智能体已成为企业在 构建智能化、定制化需求、解决特定问题、创造新的商业机会的关键。借助LangchainLLM 的强大能力,提升个人综合能力和竞争力,成为AI 时代下的抢手人才。)
  • 程序员:AI超级个体实战之路这个暂时不想教,教会了徒弟会饿死了师傅!
  • 暂时就先写这么多了吧,还有很多嘉宾的内容需要做补充,很多!超级多!

在这里插入图片描述


🍊 星球目标

  • “易编橙·终身成长社群”还是一个交流与合作的平台。我们相信,“一个人可以走得很快,但一群人可以走得更远”。在这里,你将有机会与志同道合的朋友共同学习、共同进步,在相互激励与支持中不断前行。
    在这里插入图片描述

  • 最后,我要特别感谢星主哈哥以及星球天团的每一位成员,是他们的无私奉献辛勤付出,为“易编橙·终身成长社群”奠定了坚实的基础。同时,我也期待更多对技术、职业发展及IT、互联网行业感兴趣的朋友加入我们,一起在这个充满机遇与挑战的时代中,探索技术的无限可能,成就更好的自己。

在这里插入图片描述

让我们 携手并进,在编程的道路上共同成长,迎接更加美好的未来!
🎉 易编橙·终身成长社群 的目标🚀 就是 帮助编程小伙伴少走弯路!
😉长话短说,加入我们,一起快乐成长,成为编程小能手!🚀

import torch, torch.nn as nn, torch.optim as optim; from torch.utils.data import Dataset, DataLoader; from torchvision import transforms, utils; from PIL import Image; import numpy as np, cv2, os, random; class PaintingDataset(Dataset): def __init__(self, root_dir, transform=None): self.root_dir = root_dir; self.transform = transform; self.image_files = os.listdir(root_dir); def __len__(self): return len(self.image_files); def __getitem__(self, idx): img_name = os.path.join(self.root_dir, self.image_files[idx]); image = Image.open(img_name).convert('RGB'); if self.transform: image = self.transform(image); return image; class ResidualBlock(nn.Module): def __init__(self, in_channels): super(ResidualBlock, self).__init__(); self.conv_block = nn.Sequential(nn.Conv2d(in_channels, in_channels, kernel_size=3, stride=1, padding=1), nn.InstanceNorm2d(in_channels), nn.ReLU(inplace=True), nn.Conv2d(in_channels, in_channels, kernel_size=3, stride=1, padding=1), nn.InstanceNorm2d(in_channels)); def forward(self, x): return x + self.conv_block(x); class Generator(nn.Module): def __init__(self): super(Generator, self).__init__(); self.downsampling = nn.Sequential(nn.Conv2d(3, 64, kernel_size=7, stride=1, padding=3), nn.InstanceNorm2d(64), nn.ReLU(inplace=True), nn.Conv2d(64, 128, kernel_size=3, stride=2, padding=1), nn.InstanceNorm2d(128), nn.ReLU(inplace=True), nn.Conv2d(128, 256, kernel_size=3, stride=2, padding=1), nn.InstanceNorm2d(256), nn.ReLU(inplace=True)); self.residuals = nn.Sequential(*[ResidualBlock(256) for _ in range(9)]); self.upsampling = nn.Sequential(nn.ConvTranspose2d(256, 128, kernel_size=3, stride=2, padding=1, output_padding=1), nn.InstanceNorm2d(128), nn.ReLU(inplace=True), nn.ConvTranspose2d(128, 64, kernel_size=3, stride=2, padding=1, output_padding=1), nn.InstanceNorm2d(64), nn.ReLU(inplace=True), nn.Conv2d(64, 3, kernel_size=7, stride=1, padding=3), nn.Tanh()); def forward(self, x): x = self.downsampling(x); x = self.residuals(x); x = self.upsampling(x); return x; class Discriminator(nn.Module): def __init__(self): super(Discriminator, self).__init__(); self.model = nn.Sequential(nn.Conv2d(3, 64, kernel_size=4, stride=2, padding=1), nn.LeakyReLU(0.2, inplace=True), nn.Conv2d(64, 128, kernel_size=4, stride=2, padding=1), nn.InstanceNorm2d(128), nn.LeakyReLU(0.2, inplace=True), nn.Conv2d(128, 256, kernel_size=4, stride=2, padding=1), nn.InstanceNorm2d(256), nn.LeakyReLU(0.2, inplace=True), nn.Conv2d(256, 512, kernel_size=4, stride=2, padding=1), nn.InstanceNorm2d(512), nn.LeakyReLU(0.2, inplace=True), nn.Conv2d(512, 1, kernel_size=4, stride=1, padding=1)); def forward(self, x): return self.model(x); def initialize_weights(model): for m in model.modules(): if isinstance(m, (nn.Conv2d, nn.ConvTranspose2d)): nn.init.normal_(m.weight.data, 0.0, 0.02); elif isinstance(m, nn.InstanceNorm2d): nn.init.normal_(m.weight.data, 1.0, 0.02); nn.init.constant_(m.bias.data, 0); device = torch.device("cuda" if torch.cuda.is_available() else "cpu"); generator = Generator().to(device); discriminator = Discriminator().to(device); initialize_weights(generator); initialize_weights(discriminator); transform = transforms.Compose([transforms.Resize(256), transforms.ToTensor(), transforms.Normalize([0.5, 0.5, 0.5], [0.5, 0.5, 0.5])]); dataset = PaintingDataset(root_dir='path_to_paintings', transform=transform); dataloader = DataLoader(dataset, batch_size=16, shuffle=True); criterion = nn.MSELoss(); optimizerG = optim.Adam(generator.parameters(), lr=0.0002, betas=(0.5, 0.999)); optimizerD = optim.Adam(discriminator.parameters(), lr=0.0002, betas=(0.5, 0.999)); def generate_noise_image(height, width): return torch.randn(1, 3, height, width, device=device); for epoch in range(100): for i, data in enumerate(dataloader): real_images = data.to(device); batch_size = real_images.size(0); optimizerD.zero_grad(); noise_image = generate_noise_image(256, 256); fake_images = generator(noise_image); real_labels = torch.ones(batch_size, 1, 16, 16, device=device); fake_labels = torch.zeros(batch_size, 1, 16, 16, device=device); output_real = discriminator(real_images); output_fake = discriminator(fake_images.detach()); loss_real = criterion(output_real, real_labels); loss_fake = criterion(output_fake, fake_labels); lossD = (loss_real + loss_fake) / 2; lossD.backward(); optimizerD.step(); optimizerG.zero_grad(); output_fake = discriminator(fake_images); lossG = criterion(output_fake, real_labels); lossG.backward(); optimizerG.step(); with torch.no_grad(): fake_image = generator(generate_noise_image(256, 256)).detach().cpu(); grid = utils.make_grid(fake_image, normalize=True); utils.save_image(grid, f'output/fake_painting_epoch_{epoch}.png'); def apply_style_transfer(content_img, style_img, output_img, num_steps=500, style_weight=1000000, content_weight=1): vgg = models.vgg19(pretrained=True).features.to(device).eval(); for param in vgg.parameters(): param.requires_grad = False; content_img = Image.open(content_img).convert('RGB'); style_img = Image.open(style_img).convert('RGB'); content_img = transform(content_img).unsqueeze(0).to(device); style_img = transform(style_img).unsqueeze(0).to(device); target = content_img.clone().requires_grad_(True).to(device); optimizer = optim.LBFGS([target]); content_layers = ['conv_4']; style_layers = ['conv_1', 'conv_2', 'conv_3', 'conv_4', 'conv_5']; def get_features(image, model): layers = {'0': 'conv_1', '5': 'conv_2', '10': 'conv_3', '19': 'conv_4', '28': 'conv_5'}; features = {}; x = image; for name, layer in model._modules.items(): x = layer(x); if name in layers: features[layers[name]] = x; return features; def gram_matrix(tensor): _, d, h, w = tensor.size(); tensor = tensor.view(d, h * w); gram = torch.mm(tensor, tensor.t()); return gram; content_features = get_features(content_img, vgg); style_features = get_features(style_img, vgg); style_grams = {layer: gram_matrix(style_features[layer]) for layer in style_features}; for step in range(num_steps): def closure(): target_features = get_features(target, vgg); content_loss = torch.mean((target_features[content_layers[0]] - content_features[content_layers[0]])**2); style_loss = 0; for layer in style_layers: target_gram = gram_matrix(target_features[layer]); style_gram = style_grams[layer]; layer_style_loss = torch.mean((target_gram - style_gram)**2); style_loss += layer_style_loss / (target_gram.shape[1] ** 2); total_loss = content_weight * content_loss + style_weight * style_loss; optimizer.zero_grad(); total_loss.backward(); return total_loss; optimizer.step(closure); target = target.squeeze().cpu().clamp_(0, 1); utils.save_image(target, output_img);


在这里插入图片描述


评论 100
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小ᶻ☡꙳ᵃⁱᵍᶜ꙳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值