Skip to content

Latest commit

 

History

History
336 lines (172 loc) · 19.7 KB

File metadata and controls

336 lines (172 loc) · 19.7 KB

意见性分享

如何让教授回复你的邮件

Jia-Bin Huang

How do I get professors to answer my emails? You have sent SO MANY emails to professors for scheduling your prelim, looking for research opportunities, or asking questions about courses etc. But they just don't reply at all!

How do I get things done? A few tips below.

1.Group scheduling Don't send out Doodle/When2meet with 30+ entries! Look up their (course) schedules and propose only a few (3-5) time slots. If they need to spend 15 mins filling out your scheduling request, they will simply ignore your email.

2.Give them the control for planning their day Scheduling a meeting: Don't: When will you be available? Do: I am available ... Will you be available in one of the time slots? When you ask for availability, you are effectively asking for commitment for ALL of the time slots.

3.Calendar invite Once you scheduled a meeting. Please do send a calendar invite with all the required information (e.g., zoom link). Whatever that's not on their calendar does not exist.

4.Go 90% and let them finish the 10%

• Need a form? Pre-fill it as much as you can (you know their name and email).

• Need a cover letter? Write a draft first.

• Need a ref. letter? Send an updated CV and SOP.

• Need to ask about a course? Read the syllabus first.

5.cc all parties involved Asking for some code/data/clarification? cc'ing your PI and their PI definitely helps you get a prompt reply!

6.Don't cc all parties involved Don't send requests to MULTIPLE people in the same thread. Everyone will assume others will do it and therefore no one will do it. Send INDIVIDUAL emails instead.

7.One email one topic Help your professors respond your email quickly. Make your emails simple, clear, and actionable.

8.Formatting You are not writing in plain texts. Formatting your email so that it's easy to read, e.g.,

• bullet points for parallel concepts

• bold font for highlighting

• bold phrase for organizing your email

• italic for sentence stress

9.Timeline Provide specific action and specific date that the task needed to be completed. This helps them plan their schedule to make time for your requests.

reference:https://twitter.com/jbhuang0604/status/1441548826645602309

手把手教你做深度学习研究

Matthias Niessner: How to start a deep learning project?

We use a remarkably streamlined step-by-step process to set up deep learning projects. At the same time, people who are new to deep learning tend to always make the same (avoidable) mistakes. Check out the thread below!

General advice: start simple -> use a small architecture (less than 1 mio params). In vision, ENet or a crippled ResNet-18 (only the first blocks) is a good choice. Common mistake: train model with 100mio+ params for 3 weeks only to notice that the data loader is broken.

No fancy features: disable dropout, no batchnorm, no learning rate decay, etc. These may give you a few % points at the end, but at the beginning they complicate everything; e.g., LR decay often falsely makes train curves look like they are converged.

Set up train/val: loss curves are all you have for debugging (TensorBoard is a great tool). Make sure to log loss for every batch (not just once an epoch); log val the same way as train: i.e., after every iteration run a forward pass for a random batch from the val set.

Overfit to a single train sample first: this debugs your output, which you expect the network to fully memorize. If you turn off all regularizes, such as weight decay, train loss should go to zero. Note that the input to the network will be ignored in this experiment.

Overfit to 5-10 train samples: now the network needs to predict different outputs depending on the input. For tasks like classification, train loss should still go to zero and training should take at most a few minutes. Val loss will go up as you don’t learn anything yet.

With the previous steps, you verified data loading and whether basic optimizing works. Now it’s time to throw more data at the problem. Here, the goal is generalize for the first time – if your val loss goes down (even just slightly), congrats, you learned something :)

Training speed: given that deep learning is so empirical, it’s critical that your setup facilitates fast turnaround times for debugging. Make sure you understand where the bottle neck lies (data loading vs backprop); a single batch should be processed in under a second.

Once you have the basic setup running, it’s finally time to improve the overall performance. In addition to the train/val curves, you want to log curves for metrics, such as mIoU, accuracy, F1, etc., on the val set; visualize these during training.

Run many ablations at the same time: already after a few iterations / few minutes of training, loss curves and metrics tell you whether an experiment has promise or not. Kill experiments that don’t show promise and start new ones with different hyper parameters.

Data engineering: mostly, your performance is limited due to data (e.g., overfitting). Here, weight balancing between classes and augmentations (e.g., rotations, noise, etc.) come into play. Important: never augment the val set as it would make it impossible to compare.

For generative models, such as GANs, always start without a discriminator loss. Instead, just do a simple L1 regression first - only once that works, add the D (Wasserstein is a good choice). GANs mostly struggle due to data issues -> start with a simple distribution.

Finally, it’s time to try out bigger architectures. ResNet-XXX, InceptionNet, XceptionNet etc. are good choices, and try out other features which we removed before (dropout, batchnorm, LR decay, etc.). If you have the compute resources, make sure multi-GPU training works.

reference: https://twitter.com/MattNiessner/status/1441027241870118913?s=20

角度插值

Keenan Crane: If you need to interpolate rotations across space or time, there are much better options than Euler angles. Here, rotations at the four corners are interpolated via the exp/log map.

Want to know more?

Some exercises: http://15462.courses.cs.cmu.edu/fall2021content/exercises/Exercises06.pdf

& solutions: http://15462.courses.cs.cmu.edu/fall2021content/exercises/Solutions06.pdf*

  • Keenan Crane:As long as you’re careful about sign, should be the same. Quaternions live in the 3-sphere S^3, which double covers the rotation group SO(3) and locally has the same geometry. I like log because it naturally yields the smallest rotation & you don’t have to mess around with signs.
  • Jacopo Bertotolli:Euler angles have a nice and simple interpretation (rotation is a change in the third Euler angle, precession is a change in the first Euler angle, nutation is a change in the second Euler angle).Is there a simple interpretation for the exp/log map too?
  • Keenan Crane:Yep—check out the linked exercises.Exp map turns a rotation matrix into axis/angle of rotation.Log map turns axis/angle into a rotation matrix.(There’s also a beautiful geometric picture of Lie groups/Lie algebras not covered there.)

读博的意义

Shreya Shankar: my college friend who also just started her PhD said "some people leave their jobs to go backpacking around the world for a few years. that's basically us except we're doing mental backpacking" and i can't stop thinking about how true that is. also, both have extended periods of social isolation + involve repeatedly questioning the decision + sometimes lead to cool TED talks by the end!

reference: https://twitter.com/sh_reya/status/1441194510738853897?s=20

课程和报告分享

NYU:Deep Learning Spring 2021 class

course page:https://twitter.com/NYUDataScience/status/1443635953101275136

Cover

reference:https://twitter.com/MLStreetTalk/status/1439517187119722497

Geometric deep learning lecture

Epic special edition MLST on geometric deep learning! Been in the works since May!

Cover

webpage: https://anchor.fm/machinelearningstreettalk/episodes/60-Geometric-Deep-Learning-Blueprint-Special-Edition-e17i495

reference: https://twitter.com/MLStreetTalk/status/1439517187119722497

Physics based DeepLearning Book

New #Physics based #DeepLearning Book (v0.1)

http://physicsbaseddeeplearning.org/intro.html

Cover

reference: https://twitter.com/CSProfKGD/status/1439929218851278850?s=20

Urban Modeling (3DGV)

#3DGV 3DGV welcomes topics on urban modeling. Our next speaker is Peter Wonka (KAUST). Talk title: "Modeling Urban Environments". Panelist: Yasutaka Furukawa (SFU).

Link: https://www.youtube.com/watch?v=jsFztFXiPTM&ab_channel=3DGVSeminar

9/29 9:00 am (Pacific) 9/29 19:00 pm (Thuwal)

reference: https://twitter.com/qixing_huang/status/1442929109038862337?s=20


成果推荐及讨论