all right hello world this is cs50 live
where we do a bunch of programming from
scratch talk about technology we do all
starts with cook fun stuff Cesar Diaz
Harvard's intro to computer science if
you're not familiar and you can find all
of our videos and stuff on youtube.com
slash cs50 so go ahead and check that
out
but today so my name is Colton Ogden I
sort of host this situation here but
today we have these foodies Nick Wong
here and I'll let Nick take it away
what do we do today so we're continuing
our kind of series on neural networks I
thought of a chat people were asking you
know as linear algebra needed like
required for neural networks and I think
you can actually attest to the fact that
in order to get them working not really
right I experimented over the weekend he
did all sorts of cool things and
actually I'll ask you to talk about that
a little bit in a sec but to get them
working to like run neural networks to
follow a tutorial online I'd say no you
don't really need your linear algebra
you didn't even all that's to use ok
today but yeah I would say that you
don't necessarily need it in order to
get them to work in a very kind of
technical sense of the question but I
think that I'd be standing some kind of
fundamentals of linear algebra as we
suggested in the chat is super useful
for actually doing meaningful things
with neural networks so if you want to
answer your questions about why your
neural net has just noise showing up
every time you ask it to display an
image or if you want to understand why
certain layers don't fit together or you
need some sort of adjustment or your
training some again a generative
adversarial network and you want to know
you know why are your images looking one
way versus another then linear algebra
is pretty helpful so what did you find
over the weekend cold no ways so I don't
know if you want to do like a switcheroo
of the laptop or if you want to know if
we want to before we actually cut to to
the to the full view now I don't know
that much at all about general
generative adversarial networks or
neural networks at least in terms of the
math of
they sort of work in principle but I was
injured I am into game development and
there's a sort of appeal to me about
generative art right like sprite art
what does that mean
generative art would be instead of an
artist let's say you are not working on
a game programmer you're the artist and
I want a hundred weapons in my game it's
a lot it's a lot of weapons you're gonna
have to create every single one and I
can literally draw like one one sword
maybe yeah and you have to like
creatively think of all of the sort of
differences between the weapons so huge
so there's a creative there's a creative
cost there's a labor cost and a time
cost that takes you away from doing
other things that I might need you on
term maybe you're also programmer means
you can help yeah I can also forego I'm
not sure you're talking about drawing
guys like I can also draw the trees and
maybe like the shield's yeah but yeah I
think you're further like pointing down
trees I brought firewood if you were my
programmer but but generative spider is
really cool because it takes away the
cost of doing art as a human which is a
very slow process even if you're a good
artist it's time consuming to make
really good artwork and so I've always
been interested in the appeal of
potentially finding a holy grail of
generative artwork and generative
adversarial networks are pretty cool
people have done a lot of interesting
things with them there was a article on
medium that I read about generative
artwork and I might even be able to
actually find the article so medium
sprite art neural and while you're gonna
that a generative networks are super
useful because they generate these very
sharp images they can be used to
generate things that look maybe even
realistic photorealistic which is crazy
because a lot of these like variational
auto-encoders or kind of like random
variant generators are they generate
like kind of pixelated images sometimes
or like if you're given an actual image
there's just too much complexity and
like a human face or something like that
it's for you to build something that
looks realistic based even on something
that's realistic
but these Gans they have the ability to
kind of question each
as you go yeah no it's super cool the
article that inspired this and I don't
know how I actually ended up reading
this was it's called machine learning is
fun part seven abusing generative
adversarial networks to make eight that
pixel art this I was like I'm somebody
who's interested in a musical arts like
I'm also interested in generative stuff
yep there this article kind of goes into
detail about you know general references
a paper on this thing called a DC GN
which actually what was what a DC stand
for I'm trying to remember what that
actually stood for Oh deep convolutional
right but the end goal of this article
was to actually create pixel art that
looked like this and the sprites
themselves aren't actually generated but
that all the tiles in this the
everything but assignment here this
monster and this bat is all generated
from a neural network that's K and this
was done with basically they went into
detail on how they did it but down here
if we scroll just a little bit and they
go into obviously the details on how ad
generative adversarial network works and
all that stuff which will actually end
up getting to if not this one but like
one of the more extreme extremes we have
actually on just somewhere serial
network but basically they took I think
10,000 screenshots of NES games like all
of these ones here type them into a
neural network and you can actually find
the github repo you can find the repo on
github and I actually used it myself but
it end up creating things that look like
this so pretty pretty chaotic yeah a
little wild and it's a you've talked
about overfitting data it does over fit
in a lot of situations you can see like
direct copy and paste of certain menus
and things like that in some of the
screen shows but definitely grab
patterns which is nice it also grabbed a
lot of noise oh yeah I feel like that's
a yeah but they they ended up creating
stuff that look like this which is
pretty cool so getting pretty close and
they basically just took a bunch of
tiles here from some of that work that
they did and then made up made a love a
lot of it and what I wanted to end up
doing myself was something very similar
so what I did was I grabbed some artwork
for example from the dungeon crawler
stone dungeon crawl Stone Soup game
which if we go to dungeon crawl stones
sue
tile I looked at I was looking for the
sliced tile set where is it here open
game art org has it there are 32 by 32
tiles and I apologize for anybody who's
eager to get into like the tensorflow
part of this time oh yeah it's all good
we got basically a massive tile set for
this game called dungeon crawl stone
soup it's a roguelike game there's a ton
of like you know weapons and enemies and
items and all sorts of things yeah
perfect for this use case these are 32
by 32 pixels tiles right and what I did
was I grabbed that artwork I took I did
a bunch of experiments but we'll just
talk about my most recent one I took all
of the where is its and data it's in the
weapons I took all the weapons so
everything that looks like this
basically easy access maces swords sighs
all sorts of fun stuff but there's a lot
of patterns we were talking about this
in advance right they all kind of angle
up into the right there's some weights I
still like what's at the top of that
versus the bottom of it a lot of cases a
lot of color variants and I ran the
network on this 420 epics which is just
like a training period sort of like an
interval of time and what ended up
coming out of that at the very end was
stuff that looked kind of like this so
you can see there's like kind of a sword
like little just Halo weapons say yeah
this is only a mix right which is a very
short pretty small period and on a CPU
on a laptop and you know we're doing a
lot of things that are kind of what
people would be like oh there's no way
that would work at all but it very
clearly gets a lot of the patterns that
you're looking for where it gets the
main one
everything's angled up into the right it
also gets that there's all these
different colors that belong and there's
I think there were a couple images when
we were looking at it before the stream
that had kind of like a clear color
gradient like a lot of weapons will have
like a darker portion at the bottom and
then later at the top because metals are
often reflective and woods and like
plastics and things or not and it's kind
of amazing I think to me that it's even
capturing any patterns in a very short
period of time it's pretty cool ya know
it was it was super awesome and this is
motivating me and I think the ultimate
way we ended up getting to this sort of
roundabout
that the math is super important because
I do not know what I need to change
about this to get it to produce the
things that I want so we're in from a
top-down approach I know have a
motivation to actually dig into the
internals of this and figure out how all
of these pieces end up working together
now somebody asked for the link to the
article and to the repo so I'm gonna go
ahead and do that let me just find those
really quick in the meantime if you want
I'll give you the the cable here we can
switch over to your computer and I'll
let you take it away that was a big feel
on my part so that's it's fun it's
interesting stuff but let's let's get to
the actual I guess talk over part I mean
this is still part of pretty much all
under the same set of ideas where we're
trying to take in images images are
tricky there they're I think
particularly interesting to humans
because we can see them we look at them
all the time our entire world this
assumes kind of privileged why's that we
can see so my apologies that's not for
you but generally speaking but there is
a sound right and you that was kind of
the other point and someone mentioned
the chat was like have it sample rock
songs and generate music is really these
are all just different forms of data
right an image a sound wave they're all
just different kinds of data and you can
essentially represent them within these
matrices in pretty much the same way now
a lot of work has been done on
developing kind of these generative
models for images that kind of
recognizes that in the way that like
sound and sequences of numbers are kind
of linearly dependent right so and a lot
of times they make this like Markov
assumption where any pixel that I'm
currently at only depends on the pixel
before it but that's not necessarily
true in an image where the things around
it actually kind of shape what's going
on and you can actually generalize that
kind of Markovian assumption to being
like well at any pixel here only the
pixels that came kind of before it
topped down left right kind of style
mattered and so this is still kind of
that same assumption but it works a
little bit better for images where
you're actually taking like all three
things before it instead of just the one
that's kind of like kind of like how
like image filtering is like interpret
ly exactly we're we're kind of just like
filtering down diagonally rather than
any sample around a pixel to when you
want actually
try to figure out what's in there yeah
and that's kind of a little bit clearer
idea it works a little bit better for
what we know to be true with how images
often are but even that has its own
issues there are some pretty intricate
complexities with how images form and
we're not entirely sure of how they work
in terms of like how do I want to model
an image for a computer so images are
really interesting to humans so our
sounds and sounds are a little bit less
kind of popular I guess just by nature
of people are really interested in how
do you change images around well there's
a really cool generative music thing
that I saw right and they still around
like it's not like people haven't
researched it it still exists actually
I'm gonna try to find that well you they
do all sorts of cool things there's you
can go as simple as just kind of taking
the fundamentals the primitives of music
theory and saying well we have you know
X number of notes we have X number of
rhythms and how do I recombine those to
get things to work there's kind of this
like learned almost natural language
processing style a way of doing things
where you take a bunch of music that is
existed but you have its primitives so
you have like what it looks like maybe
like a MIDI file or an XML file and you
then try and iterate over that and then
you have this kind of like raw sound
wave given a set of amplitudes can i
sample from that and figure out what's
going on from there and so there's many
different ways of kind of approaching
each kind of data so we're gonna focus a
lot on images but sound is also super
interesting there's all different ways
to represent different kinds of data and
there's all different kinds of data and
like it's an enormous field for that
reason it's being used in all sorts of
things can from like genetics II sorry
genetics and sequences of DNA and
genetic material to like protein
constructions so that's all very bio
heavy all the way through to like how do
I predict how like a city's traffic map
will look what is a city heat map look
like from the top down how do I organize
things for navigational purposes all the
way over to like how do i generate art
there's a generative artwork that's sold
for some ridiculous amount of money a
little while ago and that's kind of cool
it's you know is that do we replace
artists by doing that and I'm sure
people would argue well no of course not
but realistically if I can generate
something and you can't tell whether it
was me or a machine then
effectively I can write and there's all
these kind of weird problems with it so
if there's just so many different like
ways and kind of paths you can take down
each of these that even in our three
streams where we've taken like a
collective six hours to discuss like one
very particular image set and what we
can do with it we still have not even
covered like not like not even a small
amount we've covered a very very minor
amount so that's almost negligible
really oh yes or else you gotta get
together yeah yeah thank you yeah very
talking with my hands so I'll just
situations yeah all over the place
exercising can't find the medium article
that did the had some really cool
generative music on it but if I find if
you do I won't post up in the chat for
sure exactly okay and I think someone at
the end asked can you tell me what the
difference between an MLP multi-layer
perceptron and a deep neural net is and
they said that they're the same am i
right said they're the same is kind of
like saying squares or rectangles like
it's it's not necessarily that they are
the same so much is like a deep neural
network is kind of a generalized form of
how you would it can be used for many
things from like classification to
prediction on what will come next and
things like that deep neural nets are a
very Y relatively wide range of things a
multi-layer perceptron is a form of
neural net that uses particular types of
layers within it so it has a very
particular dense layer and it has a very
particular like mathematical formula
behind it so a class for instance
relationship very much this kind of
relationship plastic screensaver back
there right pretty color so blue Berger
says squares and rectangles are kind of
the same what kind of magic is that well
squares are all rectangles but not all
rectangles are squares right so squares
defined by having like its width and
height do the same but a rectangle can
have any arbitrary set of width and
height and that's really just kind of
yes another definition difference the
similarity occurs where they're composed
their polygons four sided polygons with
90-degree angles at it
intersection between their sides so
basically the idea is just like I think
when I was a kid someone was like oh all
squares or rectangles not all rectangles
or squares and I was like whoa that's
wild and I use that kind of anytime this
sort of relationship of like superset
subsets comes up or kind of instance in
classes with Colton put it it's a pretty
common like pattern and phenomenon that
shows up in the world sometimes less
intuitively than others it's often you
can often relate that in general to like
causation and association right like I
associate maybe squares with rectangles
but just having the cause be a rectangle
is not create a square and so on so
there's all it's like a very the more
abstract you go more interesting that
pattern gets but it shows up all the
time and people often confuse one for
the other and it's it's an interesting
thing to talk about so that night asked
you know how much computation Theory do
we need to go into ml and AI I think for
this
we're actually we've kind of worked our
way from the bottom up so we're kind of
we're actually gonna talk quite a bit
about just kind of like higher level
things in this one I actually probably
won't code a whole lot today I'm a
little tired didn't have quite enough
time for myself to prep sorry I was
doing a lot of psets so that's an excuse
for you guys but uh that is essentially
what's going on start being a Harvard
soon yeah a lot of work going on and I
just you know there are other things
that kind of took priority but we will
still code a little bit these to just
kind of get people introduced to tensor
flow probably not like a huge amount of
coding on my part and then we'll talk
about some of the things that I found
useful when I was trying to understand
how this whole like style transfer
concept works and then ultimately what
we want to do today right yes yeah so at
the end of today we want to figure out
how this sort of thing works and I
figure we'll start with it and then
we'll go from there okay sorry I know
they have a website that does it for you
yes they do have a nice website this is
called D part I Oh feel free to hop by
if you'd like um this is due to I think
there was a really good one in like the
callee stream where we both look kind of
not horrible so there's this image from
us that might be broken but that's okay
and we're gonna just kind of pick a neat
style that we think would be great
very like a minimal list like quite
nifty uh we might absolutely gonna
actually email in here so interesting
yeah we'll kind of put that over here
see what goes on I'm gonna steal all
you're in for me yeah everyone's gonna
hijack my emails now your image will be
done in around ten minutes
Wow it takes a long time then yeah it's
it's a pretty complex process that's
going on although we can make our own
version of it that's not nearly as
terrible but you know we'll we'll let
this kind of run and I'll check my email
in there so set a time yeah and we'll
see what goes on but if you wanted to
see kind of a preview transfer image
style transfer we're gonna go to images
and wow this is not quite what I was
expecting videos I change there yeah
this is the duct like those images
explains a little little distinct okay
so we have these kind of two examples
and there's a paper I'll pull up later
that shows off what's going on oh that's
so uh yeah it's super nifty so this
image you actually can't really
distinguish the fact that it's been
altered this one's a little bit easier
to see that it's been changed but this
one not so much and there's a lot of
really cool examples on how this works
well essentially this is my content
image so this is what I want to see same
thing over here but this is my style
image so my style is kind of like how do
I want it to look what kind of texture
what kind of attributes do I want to
have on the content that's so crazy cuz
it's like finding the outlines of the
buildings applying things to them like
putting the sky behind the buildings yep
it's wild a human did not do this super
and the clouds don't even look the
clouds are all modified to be out sick
there's a same style but they don't look
at all fake if you're familiar at all
with deep fakes there's kind of a
similar concept going on there and it's
kind of scary like I mean as someone
who's interested in security this is
terrifying to me people can forge things
that even I would struggle to tell apart
especially because only given this I may
not be able to tell you where like which
thing it was faked from with how it
worked I might not even be able to
notice that this isn't real grant
this might not apply too well to like
two pictures that are very different
pterodactyl Mane's like if you trying to
take that first top left image and then
mix it with that middle by like the
bottom one will hear that might not turn
out so nice it's a little less clean it
would be definitely worth trying on your
own but this is maybe in a recognizable
image with a pretty clear you know who
styled that looks like a hundred percent
painted crazy which is kind of the wild
part and here's some kind of other
examples I mean it's definitely worth
googling around to kind of see what
exactly happened but I think that it's
mind boggling I really love these like
photorealistic ones I think they're the
ones that just blow my mind entirely but
being able to transfer style is
something that I think is a little wild
it's not something that's intuitive in
terms of like how it actually works so
there's a paper that was written on this
and the paper is image style transfer
using convolutional neural networks and
if you remember from our last stream one
of the reasons that we talked about
using convolutional neural networks is
we want to use these convolutional
layers to learn features from an image
so if I have an image of our faces then
one of the important features from our
faces might be our faces themselves it
might literally be you know what where
what arrangement of eyes now the nose
make us more or less distinct but when I
say like a feature of some image I
certainly do not mean learning the image
itself which is something that neural
networks can have a problem with in a
form of overfitting where we end up
actually just grabbing the face in which
case it's pretty clear which ones which
but it's not general right like to
distinguish between rzz but to generate
one of us from the other one is
difficult technically what blue boogers
comment about it's just like when I
pasted a picture of my head on a picture
of it the rock right exactly well and in
kind of the way of like that's the idea
but when you do something like that it's
easy for us to tell where yeah hey you
don't know you know it's like maybe
you're very good at Photoshop but with a
neural net
I can do that to anything as a very
general sense that makes us so if we
learn this we can basically that's why
like for example I want to be able to
generate sprite art right I don't want
to spend millions of hours making
millions of you know sprites true well
and with something like this you know
there's already a lot of natural
variation in people and there are many
data sets that contain people and you
could actually take the sprite art style
and apply it to real people that's true
and it would essentially do the same
thing without you having to generate any
of the variants make a neural net that
fits Colton's hair seamlessly on every
cs50 student wow that's kind of wild
very probably doable Highlands
so essentially yeah I recommend going
and reading this paper it's not too
terrible mathematically they go into a
little bit of math which will kind of
break down throughout this stream but
it's they have a lot of like helpful
graphics on understanding just exactly
what's going on here and I'm gonna pick
one to show you but here's another set
of examples of here's the reference
image and then there are several
different style images that are applied
I think this one's pretty nifty this one
looks like someone took acid but this
one I think is particularly interesting
where it you essentially just have kind
of this like weird kind of block style
art but I can still tell what the
original image was do you guys know if
these are similar techniques to the ones
used to generate them into the black
hole action know anything about that do
you yeah so they're actually not really
at all similar to those techniques those
techniques were pretty awesome the team
that built the things that generated the
image of a black hole was not just one
team whose several teams that kind of
collaborated and worked together and
really kind of just an awesome
achievement and feat of science I think
I was awed by that image and also just
like the amount of work that went into
it the woman who was credited was kind
of being at the head of that is
brilliant and amazing and also near here
she works at Harvard which is awesome or
at least at Harvard Affiliate and I was
just that the whole team was awesome and
clearly no one person could have done
all of that but there is so cool
just super interesting I would recommend
going and reading the article on how
they did that there was a lot of work
done I'm kind of like inferring what it
must look like for us because there are
kind of problems with this standard way
of visualizing a black hole or
visualizing things where we generally
visualize them by bouncing beams like
photons off of them and seeing what
energy comes back to us but the issue
with a black hole is that those photons
just don't come back okay so it makes it
very difficult to figure out you know
what exactly it looks like kind of an
ultimate form of darkness but there is
this kind of wild image that was
generated basically by saying what they
were able to grab from inferring from
like radio frequencies and other kind of
just incredibly large amounts of data
it's someone that says the black hole
pick was a waste of time until there's
nothing we did not already know I almost
could not more strongly disagree with
every part of that sentence if you I
mean yeah very very thoroughly disagree
with that just based on the idea that
even if it suggests that you know
pictures are nothing reasonable than the
like terabytes of information that they
were able to process and do so in such a
cohesive and reasonable fashion with
such a low error rate and such kind of
ridiculously controlled variance is I
think impressive in and of itself even
like the collaboration between the teams
is impressive in and of itself and the
Jaypee guy says I think he was being
ironic and I could concede that that is
likely that but what I kind of my point
there is that there's a lot of kind of
controversy going on with the black hole
picture where people are kind of
harassing and going after the scientists
involved and kind of spreading some
misinformation about how it works or
what went on behind it or who coded what
and so my point is simply to support the
scientists and the team behind that
because they did something incredible so
I think in this case it's actually worth
not necessarily chancing spreading any
sort of misinformation on that so yeah
that's my opinion but it's super
interesting and we definitely recommend
go
just go see what's going on behind that
yeah so now we're back to kind of our a
little bit of less I guess celestial if
you will
image generators and kind of how do we
transfer a style from one image to the
next and I think this picture does a
really good job of explaining what
exactly is going on so that's kind of a
recap we have these convolutional neural
networks and so convolutions are just a
way of processing an image and trying to
figure out what things are features from
the image exist and are important now
important is something that we'll go
back to later because it'll matter how
we actually get this to work but
importance is something that's really
difficult to dictate if you say how do I
want to quantify what's important to me
it's fairly difficult to do
mathematically and they're these tricks
these loss functions that we create that
do exactly that so if you look at what's
going on here we have some style image
up at the top we have our input content
image at the bottom and somehow at the
very end here we end up with some form
of modified image and so essentially
what's going on is you have some
convolutional neural network that knows
what features are important so it's
fairly common for at least in the
tutorials that are kind of around up
there to use a pre change network that
has already learned for classification
purposes what features are valuable are
there are a lot of circles in this image
are there a lot of slanted lines do they
slant to the right or the left
things like that so like vgg 16 is a 16
layer convolutional neural network
that's often used for classifying things
there are many online you can go into
like the Karis Applications folder and
it has a ton but these pre trains
networks you don't have to train
yourself and that would be kind of
ridiculous on a laptop but they come pre
trained then they have already learned
what are called like the feature
representations that are valuable in an
image so given any two images it can
once that images pass through the neural
network it can tell you hey here are the
things from that image that according to
what I know is important are in it or
not and that's essentially what you're
seeing here is what things on the top
what stylistic things are important from
this
image and up at the bottom or it sorry
down at the bottom what content things
are important from the image so there is
kind of this idea in order to transfer
style over is how much do I want to
understand from each image is style and
how much do I want to understand is
content and that's that's pretty tricky
so generally what ends up happening and
they I think they do a pretty good job
here of showing that as you reconstruct
the images as you go further deeper into
the neural network from a convolutional
neural network if you're reconstructing
the image from really deep within the
style is pretty much exactly retrieved
the content is a little bit muddled if
you go from the very beginning style is
still pretty much noisy kind of like
just basic colors but the content is
pretty much exact and so essentially
what they want to demonstrate is if we
pick from different apps different
sections of the neural network different
layers what their representations are
then we can actually try and throw these
onto some other image kind of like a
template image that we use and that
template image we can then measure how
well it has acquired both the style and
the content and so the kind of general
idea is I have three images actually but
only two of them are input by the user
my first one is my style my second one
is my content and my third one is kind
of this just random noise image it's
just like a nice little template clean
slate it's not all 0 because all 0 has
actual significance so we just throw in
a bunch of uniform noise or maybe even
Gaussian noise and we say ok given this
image I'm going to add in features from
the style and from the content I do this
and then I measure the error between the
this new kind of mixed image and the
style and then I also measure the error
between this mixed image and the content
and what I'm trying to do my new loss
function for this neural network is now
the air the combined error between these
two things and I can do any really any
kind of like adjustable linear
combination of these two losses to get a
kind of overall loss and I want to
minimize that and the minimization of
this overall loss means to us that we
will have gotten as
close as we can kind of balanced as
close as we can between the content and
the style and we just pick which layer
of our pre change neural network or
neural network that we've trained we
want to grab these representations from
in order to decide whether or not we're
grabbing excuse me stylistic
representations or content ones that's
kind of the high level overview that's
the idea
excuse me so this paper I know someone
asked how much math would you need to
know to understand this paper from my
couple read-throughs I would say not
much 2,000 pages mm so there's only 10
pages luckily but it is part of it was a
part of the journal which is a lot
longer than large so yeah this paper is
actually fairly short and you know the
last like three pages are so a reference
or sorry two pages of references so it's
really only an eight page paper that
that's cities or that skyline shot looks
really cool super cool I really love the
like blending kind of nighttime images
of one city with like the daytime image
of another city and like seeing what
happens really curious what was
happening if you took away water from
one of them right and kind of like saw
what happened to cross something that
was maybe completely unrelated and
that's the other thing is they tend to
show off images that are like semi
related
where you get the best fitting I imagine
like that's where you like the most yeah
and so there's all these things going on
and then when they start doing it with
like abstract art I think it's really
cool but it's been less of like you can
tell what's going on so much is like
let's see what this would have looked
like if so and so it painted it and I
think that's super interesting I also
think that combining these like again or
a generative adversarial Network might
be really interesting so can I use one
of my adversarial networks
maybe the generative part of it is
actually generating these kinds of
images rather than like some variant on
the images that is like a little bit
more will say constrained and then
having the adversary try to figure out
maybe within some set of parameters
whether or not it's faked or maybe how
well can it figure out the content of
the image and you can adjust your loss
functions kind of just as you go or
depending on what you're trying to
minimize
or so generally when I talk about these
lost functions what I really mean is
that these neural networks are
optimization problems I'm really just
trying to minimize or maximize something
you'll notice that generally speaking a
minimization is actually also a
maximization they're kind of the same
idea just ones the reverse if I negate
something that has this kind of like
abstractly you overturned Bowl shape and
it ends up being an under turn or just a
normal bowl and I can then minimize that
and generally we just prefer to minimize
that's where all the terms like gradient
descent and things like that come from
we're going down in gradient there are
some like little tricks well it was time
to check the email to that's a great
point I'm gonna swap off and I kept
humming me off of this so I can thank
you so now we can hack into your email
yeah as fun as that would be I really do
a defense yeah we would have a very
entertaining a very entertaining moment
a curfew as did you learn neural Nets at
Harvard or on the internet and if so do
you recommend sources well so that's a
great question I have kind of done a
little bit of both to be honest so I've
actually where I'm currently in a
machine learning class that does cover
some neural network stuff I'm also
dealing with like how do i how do i
learn this on my own how do i go in
google papers how do i kind of look
around and try to find things that are
interesting
I guess well I've kind of done a little
bit of both it's a pretty cutting edge
field too so I imagine that there's a
lot of new stuff coming out every day
yeah yeah it seems like almost every day
there's like some new like mind-boggling
you know idea that comes out all right I
think I think you'll want to you want to
pull this up Colton this is pretty nifty
oh wow look at that look at what they
did to my eyebrows man you have some
recive eyebrows Scott hey I've got a
goatee going tan ago - yeah that's a
strong goatee we look pretty cool i Loki
look like I also started aging like I
have grain while you're older it's kind
of like that you know smokes a cigar
kind of older I mean anyway like it it
kind of looks like you're like ready to
get it or like
like you know like a what's it called
Great Gatsby style like the long data
grid yeah like one does kind of like
looking at your green light over in the
corner I just need a suit and then I can
star in The Great Gatsby you you look
actually pretty similar I do you can
never tell that on me yeah that's just
cool I really like major changes I don't
think you do look like you got a nice
clean buzz going on the right yeah yeah
I got like a much sharper fade
apparently to Graham yeah
oh so yeah I can't we see these condos
you had to pay my for that yeah so this
is a beautiful applications of style
transfer is we we took this kind of
original image over here and we applied
it to this image our content image over
here and we ended up with this just
wilds application of that style I was
like the coolest thing there's like the
sickest thing I can do this whole but
can we do it let's do another one - like
let it cook for 10 minutes yep
I don't even know if this actually took
10 minutes I think it might have maybe
they maybe they say hi server load or
something they want to get ballpark it
all right so let's pick another image
don't mr. Holmes dr. Watson vo sink
friend George Clooney those are very
nice compliments I should buy yeah
alright what image are you thinking
hearing another stream image or do we
have one from another separate stream
yes or another stream how's that one
word you've already seen that one oh
whoops
there are your private files yeah we're
gonna just kind of skim through
everything that I do so we have these
ones I kinda like that it's not bad
memory you look like your face on the
screen this oh I'm just like oh wow yeah
you're very intent on the yeah just
sharing a mic we're doing and that one
looks pretty cool signal might be like
messing with people oh and we can upload
a style oh that is this okay so this is
turned into a string we will get to ten
swear I promise like a little bit but
way alright fine what's a cool style to
throw on this image
Oh can we do sprite art like you said
yeah exactly is that a thing that
definitely could be a thing
we're gonna make it a thing but let's
get maybe like two sprite people
together would that work yep okay
sprite art two people next to each other
I got a you got a love search engines
like I can't imagine what this would
have been like there's a lot of cartoon
ones there are some like cute cartoon
I'm not seeing any like immensely
obvious right all right though okay I
keep scrolling a little bit what kind of
let's see yeah there's this we could
start with Teenage Mutant Ninja but
would it work I wouldn't like would it
screw up the fact that like super downer
to find out yeah right but we're
occupying like different spaces you know
yet completely different space gonna
like have like the turtle in the
background or something oh this is gonna
be this is gonna be a wild or it'll be
completely just ghosts I also appreciate
all that the like and now you said you
like to mess with all your settings but
like all the color changes you made your
whole operating system in your program
yeah the whole thing is very very
customized but you said you're red-green
colorblind so you can see the red and
that yeah so the red on its own is okay
and often times like different cues of
color kind of modify oh they changed the
time estimate that's kind of neat
yes the different hues of color will
modify for me like what things blend
with each other video games tend to be
very problematically huge because
they're all the same hue yeah and so and
they look exactly the same hue so then
like red and green then just blend
entirely so I actually feel like Call of
Duty and stuff I have to change my
settings so it's like deuteron topic and
then it's like blue and orange and
that's super easy for me to say it might
sound like other people oh it looks wild
Ferelli it like people will see it and I
just like what is going on yeah like
what settings do you have on you know
don't mess with this place okay so it's
very interesting yet so we'll see what
that ends up being and we'll kind of
continue talking about this sort of
thing don't be making anything you've
caused me save that image and then send
it to me yeah yeah I only did save it
let's let's go see let's go see if I
actually save I will totally make that
like the screenshot for this stream that
would be super cool
here we'll save this image as let's see
style
Nick Colton did it make it what's the
resolution it made it a didn't make it a
question
because the base resolution i think is
pretty low right yeah the base for us
was like whatever I screenshot I can
upscale it if I need to this is you guys
just seeing what goes on behind the
scenes we're really just like very
anywhere by 300 I can upscale yeah I
think I should be fine or I'll put it
like in a small section underneath like
a title or something yeah that'll be
cool anyway I love like OSX flips the
the matrix representation right like the
width is on the kind of first or sorry
the height yeah with this first and
Heights last Hey oh I feel like that's
normal I feel like my mitt so I'm used
to like the matrix representation that's
why we hate and then with yeah yeah oh
well I don't think it will end up
mattering but it's kind of funny Danny
you spent too much time and that machine
learning class when a machine learning
class that really is like just a fact
we spend way too much time on our P sets
at all times and it's killing me okay
but state room some so the image is
cooking now though well I really hate so
let's let's see what did I say was gonna
email you in like 11 oh so now it's 10
minutes okay so it is actually probably
a realistic estimate so yeah will happen
it's intensive intensive well JP guy
says solve some P sets live no no one
would want to see that my professor
would - Burton get done would stone
would get it weird get a sword a bat
that's a little rough but it would be I
think very funny very time effective
yeah you guys I'm sure we know it is
possible all right so we're gonna hop
into sometimes our flow stuff I was
originally going to code and then I got
today
and I kind of looked up woke up this
morning I was like yep I do not have
enough familiarity with exactly what I
would want to code code this so we're
gonna borrow someone a youtuber that I
also watch he does a really great job
name is I think Suraj
ruff wall I'm so sorry stratified
butchered your name I'm very apologetic
for that but he has this really cool
library or not really library but just
kind of like a github and I would
definitely recommend checking it out
very very appropriately named for the
stream today yeah he literally titled it
what we were going to do so you know
god this looks like my shoulders of
giants and all that and he does a really
great job with all sorts of cool things
and I would recommend watching his
YouTube show but here's the guy's name
is really neat if you see this Raj I do
stop in for a tentacle for Nick long and
cold Naga yeah so we're gonna hop
through his iPad notebook because it's
kind of neat and he time he has all
sorts of cool stuff here actually I'm
gonna hop through a couple powers of
nice my notebooks I should get rendered
and github yeah they do which is wild
that blows my mind it's it's pretty neat
I'm not gonna like get up those also
it's cool things good Microsoft cheese
he does kind of like a brief explanation
of how this works and he picked Willy
Wonka I think that's great
and I'm gonna hop down to the loss
functions so okay so there's a lot of
tensorflow specific stuff going on here
which is kind of wild but tensorflow if
you're not familiar it works on these
kind of sessions so I start some
tensorflow session and from there I can
then add like variables to it I can add
layers to whatever's being run I can
have a model to it and like there's this
graphical way of displaying models
that's super useful
I mean ml and so if you're not familiar
topological graph of convolutional
neural net these topological models for
how like a neural net might work these
aren't really one Wiggum or this is
probably closest so these topological
models are really useful for knowing
what things depend on what other things
the surprise we're also still jamming
out I need to turn that music off this
is maybe arrogant L mics on it it's like
I can't think I can't find like the
ideal thing for what I'm looking for but
I know I've seen it in several papers
like the image that I have in my head is
very different from what is being
currently displayed we could actually we
can stick with something like this and
it works close enough so essentially if
you're familiar at all with like
topological sort or topological graphs
they're essentially a way
representing dependencies and what
things rely on other things in order to
work now this seems to lend itself
pretty reasonably well to a neural
network which processes from one to the
other end and has several things that
rely on the things before them and
possibly after them so in a neural
network this topological graph is kind
of made more complex by the fact that
there's a back propagation step which
effectively inverts the graph so
essentially a negation again is like
teaching the network right it's after
I've seen what I know or after I know
what I've seen hmm that's what we think
in English after I've seen a bunch of
stuff I want to then learn from that
experience so I put all that learning
back to where all the kind of learning
happened and the next time I see
something new I learn again and I can
kind of continue this process until I've
learned that sounds useful but that's ok
the true key nice ideas posted the book
the bishop book on machine learning
several times it's super useful would
recommend going through it we use it in
our class it is just out there in the
wild they do a really good job of
explaining a lot of stuff doesn't
require too much math so thank you for
posting that I mean I say doesn't
require too much math it requires a
decent amount of math um I take the back
it's like pretty pretty heavy on that
you wouldn't want some like solid linear
algebra solid solid linear algebra solid
calculus and solid probability theory
all the revos kind of come together in
machine learning and generally in CS
you'll want to know all three anyway so
it's useful for programming you don't
necessarily need them but for computer
science you'll definitely want them so
yeah there's this kind of like way of
organizing what's going on in a neural
network and that's kind of the one of
the premises behind tensor flows idea
now tensor flow is named after what's
called like these tensors so kind of
matrices of data and tensors are kind of
the underlying just base primitive of
everything in tensor flow every layer
every weight every input style every
output result they're all tensors and
the idea is that once we have this kind
of baseline primitive kind of like a
matrix is a primitive then from there or
maybe a matrix like a complex primitive
but whatever it's close enough for what
I'm trying to say which is that tense
are the kind of bread and butter of
tensorflow which shouldn't hopefully
have come as a surprise given that it's
called tensorflow
so it's a glowing is another part of the
flowing is the rest which is basically
that we take data and it flows from time
to the Tenth Circuit well and goes cross
yeah it's kind of explanation line and
essentially what we want to be able to
do as we interact with the tensorflow
session is we create these sessions
using like TF session or TF the
interactive session and then they have a
internal representation a graph of what
exactly is going on in your machine
learning it's very worth playing around
there are millions of tutorials probably
millions literally millions of tutorials
online on how to like get that going and
it's really entertaining it's super
interesting it's really educational and
as kind of Colin's been doing it
motivates learning all of the math from
the top down so once I get things
working with kind of my tensor flow
stuff then I'm going to say okay now I
have a reason to learn all the math
otherwise it's very intensive be very
boring balloon yeah it's it's
interesting like you can do a lot right
out the gate with all these libraries
that people have come out with it's
incredibly hard to like know what to
find too and if you're kind of in the
dark like I am because my math
background isn't as strongest most
Harvard undergraduate right yeah well I
don't know about most but definitely
there are people here who they know a
lot of math like they're like math
Olympians and things and we're just like
oh wow that's neat okay look at the very
present um I'm not one of those people
unfortunately but I do know a decent
amount of math I know enough to get by
in computer science so here we are and
I'm still learning more as we go but
essentially this this there's this
underlying graphical representation of
what's going on tensor flow has all
sorts of like libraries that interact
with it the way you print these graphs
let you see what's going on
visualize it which is super useful if
you're doing what's called Network
Diagnostics where I want to understand a
little bit more about excuse me how does
the graph work you know like where are
things going where are things headed
things like that
oh so it'll actually print out like a
it'll actually generate a graph let's
see because that's actually really sick
tensor flow visualize
Graff actually so tensor board is the
actual library for it
but it lets you do this which is super
cool so and it's just a gym generates it
based on the model that you've created
yep
okay super helpful there's also orange
machine learning this is not at all
tensorflow but it is a graphical way to
do all sorts when they find some
screenshots oh it's like a visual like
neural yeah they're all Network visual
machine learning visual data analysis
and like data sets is open source
I believe sorry yeah I'm sorry yeah open
source ml and data visualization and so
I had a student in cs50 who asked me if
I knew this software because she was
working on a profile project and I was
like no I don't but I'm happy to sit
down and kind of like debug a little bit
with you that looks really cool I'm
super down to look at that also shot the
David mail it in the chat for the folks
that are tuning in who might not be
familiar David teaches cs50 so again go
to youtube.com slash cs50 check out the
lectures they're super awesome lectures
pick 90 117 ask to heard there's a
winter and AI /ml funding I chose that
well so essentially all of those like
kind of I'd say like clickbait almost
ideas of like oh they have no funding
slash all the funding is there I think
it kind of depends on where you are in
your research and what you're doing with
your research there is to a degree from
what I'm aware of I know that funding is
just difficult to get in general I also
know that as we expand into like the
kind of wider variance parts of each of
these fields it becomes a little bit
less I guess simple to get funding for
the general field but maybe for what you
are doing it might be very easy it also
depends on like what you're classifying
under a IML funding kind of depends I
would say that as with most things
there's a lot of nuance to it and it's
like if you're here and you're working
on research for you know the med school
and they're the ones that are kind of
providing your funding that might be a
little bit easier if you're working for
the US government then it might
very easy if you're in California and
you happen to be like Tesla or something
but if you're working on like a very
small personal project or you're working
on a project that's like very cutting
edge like theory and it's not
necessarily gonna produce a product then
the government might be I mean they
might be even more inclined to help you
it might be less inclined if it's a
military project it's probably very easy
to get funding for m/l style things a
lot of them are using that in their a
lot of military applications for IAI and
m/l have been kind of published a little
bit but probably not enough if you were
looking at like the Google kind of
contract for designate the Google
contract for working or I guess
contracting with the military on AI
project and Google backed out and
there's all these things going on
there's kind of like just the wild world
going on in there and it's it's pretty
complex there's a lot of stuff happening
so I would say that not necessarily a
winter so much as things are happening
and hey I like funding is hard to get
Noah hits you know and again that really
depends on where you are and who you are
Plus what you're doing so that's kind of
not really an answer you so much is like
it's not necessarily an answerable
question yeah I can't say yes or no I
one don't know enough and to it I would
imagine it's complex enough that there
isn't just a simple yes-or-no answer if
you'll notice I kind of accidentally
pulled this up Wow
yeah that's the only result that I exist
not cool when we were expecting Wow I
feel like we're going to kind of just do
this in 10-minute intervals throughout
the stream we can see that like I get to
see my face yeah oh yeah you have my
face into something completely over but
it looks like it like chopped up the
turtles into like a bunch of pieces and
then use that as outlines
I'm not entirely sure what what I faced
it yeah the 50 got turned into turtle
bits yeah that was I think I see like
turtle faces like smiles like yeah as
your eyes even I don't sure oh yeah I'm
I'm on another plane it was a good
effort
yeah I don't know if we want to do like
a like that's definitely the troll
outcome of today's podcast this is it if
you want to maybe find a different style
we could try and I'm sad that we
couldn't find what is the first style
was like two people two other people and
then mix that with us 8-bit style works
to it I don't want just like the
abstract 8-bit idea oh sure um rather
than like I need something looks like a
full text but like kinda like that oh
yeah like a full yeah but more color
than blue it was yeah really
this would be maybe okay if it was just
one of us I want like the just 8-bit
pattern Studio Ghibli's says sir rule
which is actually pretty good
it's like it's anime but I'm not sure if
that would that be kind of neat but it'd
be pretty good coming down to see you
have to find a good picture of us yeah
you know people people sue to give the
people a my show you like the director
and stuff like that Oh true true a
couple this film might be kind of neat
have you little a bwak yeah that would
be frightening I think let's try it it's
gonna be weird but it could be good
people are gonna watch this stream in
like a year or so be like what what were
these to do I'm boy Nick Wong did you
know cuz you you don't have really a
hole in a choice here yeah I'm kind of
like just throwing things at it so you
have like benefit of the doubt you know
like people look at this they like how
he didn't he wasn't trying to do wild
things he was he's trying to do normal
reasonable things as Nick Wonka dude
it's just crazy yeah well I mean people
know that I love that I don't know what
I was doing to do that using hand
signals a lot of the time yeah well you
know it's okay in ten minutes or so
we'll test check Peggy in on this see
what happened
looks like CCD has evolved they could
Vincent's I took it really cool to see
you have a channel on twitch to us as
hambone hey awesome thank you very much
for tuning in
I'm glad ya it's evolved even since I
took it and I was only like two years
ago
yeah adding new stuff all the time yeah
it's how we roll it's been evolving
quite a bit and I'm sure it will evolve
even after this
iteration it's evolving literally
midstream right now we have amazing
images it was wild yeah I really was a
fan of that first the style transfer
this was awesome I think that was look
that was kind of just like a one-hit
masterpiece ah so good yeah nicely done
this one was uh no yeah it was like a
rebellious phase
you know teenagers is kind of wild this
is when we were kids and I was bummed it
was smooth very well really good this
one it's like you twenty is you know
you're just kind of wild we'll see what
happens that's gonna happen all right so
let's look at these wasp functions uh so
we create sessions in tensorflow you
don't have to worry too much about them
they're worth kind of understanding
intuitively it's kind of like just your
current tensorflow
idea that's going on so it's not not too
wild but the way that Siraj abilities
was to kind of like figure out the loss
given some set of layers that we want to
look at so if we remember some layers
are better for style some layers are
better for pulling off features that are
more related to like the content of the
image so that's essentially what is
parameterised here is we have some
session some models like the vgg 16 the
contact image so this just takes in some
image that we're trying to pull content
out of and then it grabs the actual IDs
of that layer and this is very well
documented and very well done is there
like a good starter tutorial for
tensorflow that people we could like
point people to UM linear regression in
tensorflow also Jason gee thank you for
the shadow so here's something that I
would look at my fun yeah so this the
like geeks for geeks site generally have
some like decent tutorials on just kind
of basic concepts and they go through
some of the math which is pretty helpful
it's a lot of that kind of like MX plus
B y equals MX plus B sort of thing and
this is for linear regression so it's a
little far removed from neural networks
but it still that's the same concept
where I defined some function I want to
fit it to some data and that fitting is
really a measure of how close I can get
in terms of loss
how close am i measured by this loss
metric and they do a pretty good job of
kind of going over some basic tensorflow
stuff it's probably a little bit
outdated but it's still the right idea
and you get used to these kinda like
tensorflow has like these placeholders
constants and variables and to use 2tm
meaning teaching fella yeah yeah you
gotta use to the tensor flow what is it
cameron acronyms here and they go over
some one kind of like basic ideas of how
this works getting used to doing some
math with tensor flow and then if you go
just like tensor flows oh my god I can't
spell tensor flows documentation Oh
something I was googling earlier such a
close documentation is pretty thorough
they do a good job of having some like
tutorials for how to go in fact they're
like introduction to it is definitely
pretty solid I wouldn't necessarily mess
around with the JavaScript one or the
mobile IT IOT one but if you look at
just kind of like the general like
tensor flow they have it in all sorts of
different languages and they have some
like decent examples for just simple
stuff it's really kind of a matter of
like there's many different things that
as you get used to this you're getting
familiar with so this is actually a
neural network this uses kind of just
like your standard Kerris API so this is
very high-level very little math is
required but you're building some form
of network that can optimize for I think
in this case classifying your mm ist so
your data set on digits handwritten
digits they do a really good job of
explaining like the different kinds of
things you can throw in here I would
definitely stick to like simple stuff at
first where so take em and ist do all
the different things you want to do with
it and get used to kind of the hottest
tensorflow work what is this kind of
tensor flow syntax how does tensor flows
kind of conceptualization of things work
what is their kind of mindset it's
pretty pretty thoroughly well through
done their documentation is pretty
thorough recomment all the way through
that and then from there once you kind
of understand what's the like idea
buying tensor flow how does sensor flow
work things like that then it's really
reasonable to say okay
now in general what am I trying to do
with machine learning how does machine
learning work as kind of like a concept
and that's where like the theory is
super useful because that's an abstract
idea math is really useful for
expressing these abstract concepts so
that's where you might look at a
textbook and say okay linear regression
works like this it's something I'm
familiar with it's relatively easy to
understand and then I hop into something
like perceptrons or neural networks or
supervised learning versus unsupervised
learning or classifiers versus like
predictive spaces and things like that
versus like sequence prediction and l
STM's and all of those things kind of
start to just kind of like fall out into
like you can just learn them the idea
that I would say is like follow a
textbook and implement stuff as you go
in like tensorflow
or PI torch give yourself that kind of
practice as you go while still learning
the theories to learning the abstract
concepts and don't like learn them
separately I think that that is kind of
one of the issues with how this is often
I guess taught is you're taught just the
math and then like told to implement
stuff and in an academic setting in like
in like this school setting that works
pretty well because you just have P sets
that ask you to implement these things
in real life and look that that I think
is pretty reasonable but I think if
you're learning on your own it's really
difficult to motivate learning things so
if you just treat the entire textbook
like a piece set and try to implement
everything you see or just kind of like
main concepts as you see them it tends
to be a really informative exercise you
start to see exactly these kinds of
patterns and how to actually use the
syntax of tensorflow how to use the
syntax of Python even some tricks with
like numpy and visualization and you
start to kind of like branch out as you
go
guided by the textbook which was put
together understanding that abstract
ideas can kind of flow between each
other so yeah I would recommend kind of
like following that pattern it's fairly
reasonably similar to what we do in
school except we're guided by someone
who is an expert in the field as well
and that's an extra advantage just from
being in University is someone you can
kind of be like well this is the right
directions one might be you'll have some
road blocks that you might not have
expected but I think that in general
that's pretty useful star nerd Susie oh
hello star okay yeah hello started
what's happening we haven't seen you in
a little bit
it's been a while it's been a minute all
right let's see that it did it I'm
really curious oh boy here we go this
was it's a little strange looking
interesting wow I look so your face got
smashed in my chin is just he's just
done your they put a lot of emphasis on
your hand there with the yeah we're not
sure what you guys I'm not sure what you
dipped your hand into but something I
don't know and then my jacket is still
pretty this never goes away it's a
strong feature today it must just oh
it's got this curve here and that a nice
solid curve here plus everyone's pretty
solid at learning em and iced teas and I
like the I like the coloration that
happened on my face it looks like I got
I got really strong yeah like a lot of
makeup bit yeah like because that
guruship lied to me they threw your
eyebrows just onto your eyebrows hey
they do eyebrows I have four eyebrows
and then you don't have eyes anymore no
no I just have dashes actually you look
like you just ate like the sourest candy
yep so summer that like part of my face
went back inside like your like your jaw
like melted just literally and my ears
kind of changed shape that's that's a
new one the spider was definitely not
not bad yeah I mean even JPJ guys saying
this is better than Ninja Turtles one I
agree sure there's no chop it's not
least like the turtles in a blender and
then to remit the picture I have a
hypothesis that you could do something
like galaxy image also flank see Peggy
hello what's up guys we're just doing
some weird style transfers some style
having some having a good time good and
bad results Oh
galaxy a galaxy transfer would be really
sick I really want to see what happens
if we transfer like a nebula on to
ourselves like this that would be sick
do it so we're gonna find out what we're
gonna have to rename the stream just
Nick looks like fight see what they look
like kind of does
and you it kind of does look like we do
each other up quite a bit yeah yeah I
kind of like got your chin you got my
side of my faces it's a wild time oh I
can just pick from oh the black hole
transfer there's that too true we all
know that image isn't very high
resolution is it not it's pretty low at
least not in like now we can do like we
get it like a fictional black hole like
an artist rendition do you know true
yeah I think that like a super high
resolution but let's do a nebula first
thing that one we could also even
transfer onto the black hole right I
look at my the time keeps going up
they're like worried that I can yeah
yeah they think you're up to no good
alright so we're gonna see what happens
with this neutron star there's no way
there's gonna be uh I'm curious I think
it's gonna be alright it's gonna be
better than the Ninja Turtles I think
those a lower bound that one listen
neutrons are pretty neat I don't know
real images oh they do the two neutron
stars and do the double yeah the one
yeah yeah yeah cuz then I throw that in
there too you know even if we do
multiple ones I think that'd be sick
actually I'm gonna be blue you're gonna
be red oh yeah keep this all day like
you said yeah I was gonna say that we
could have an entire stream just on this
and like seeing what happens yeah this
is delightful so this is actually way
better than doing P sets for anyone
who's curious on like my opinions on
whether or not I would rather do this
for two hours then do you like stat
homework this this is more rewarding
okay transfer from one stream pic to
another stream pay that's true we did
need to switch the streamers we could do
that yeah oh well that if we're gonna
opposite positions will swap presumably
our faces on to each other's faces
Oh which oh is that what either fight
that's what they're for that would be
sang so we'll try the head we're gonna
deep art I thought IO is going to kick
us off I'm positive you're going to just
get Kenny but doesn't new word I've
never tried that word before just making
up words over here um yeah we'll see if
the submits might be might be struggling
a little bit or will submit it like 400
times good oh well I guess this diva D
part - io / higher was where we were for
a bit I think they're onto you they want
us yeah
they know they want my mask strong math
background exactly I have a very strong
the strongest Mack math background at
Harvard without a doubt
all right so we're gonna I kind of I
like this image quite a bit and then
we're gonna I just tried to smooth
something that had nothing only let's
grab another do okay so I'm on the left
on that one so we're gonna have one with
you on the right my face looks a little
okay like muster P in this one I'm
taking random Sanders you're bound to
get I screw I have to spend time
scrubbing through the video to find
where we don't look at your bill looks
like there's no it's a it's a
multiplicative thing like cuz and one
moment you might be looking dirty I
might be looking fabulous
you know yep that's a wild time all
right so they'll be done in around 20
minutes oh did you put three alright how
many of those did you put oh well we
have quite a few of these ones killing
waitwe I think I might have clicked that
a few too many times okay interesting
this is this is Nick learning how to use
the internet which is apparently a
struggle it's not very good like for you
guys just Harvard I have a separate
platform with open courseware like mi
tears everything on EDX I think
everything's on EDX so Harvard in that
we've published Harvard next to my
knowledge is our open source version of
that and that that all goes onto EDX
yeah mit open courseware program is
really good and so on YouTube so it's
like super nice to just get easy access
to it is it accessible they link to all
of actual like course documentation so
we need the notes or the slides or what
have you it's all very easy to get yeah
yeah I thought we kind of triggered it
like a stats discussion in there and
people were like way to stat really that
boring it's actually I don't think it's
not boring I think it's just that the
stuff that we're doing is pretty hard
lucky I it's not that I'm bored it's
that I'm struggling to like figure it
out I I don't think I've ever had a
class here where I'm like wow I'm so
bored this is too easy
I've almost purely had classes where I'm
like holy God please help me there's a
lot of jokes I think one of my friends
and I we looked at the commits that we
made two years ago to on a project that
we worked on together and she's a really
good friend of mine like her this is
like how we met each other was like
there were
on these projects and we committed that
6 a.m. I committed the phrase I am
useless and then she committed something
like this still doesn't work and then I
submitted like a commit that was like oh
it works now and then she goes good job
and then we both committed something
like right after that was like does not
still work and then she goes we did a
terrible job and that was the state of
the class like that was just how that
course went it's all a lot better now
but people still feel very very sad
during the course it's pretty common for
people here to be pretty pretty I will
say challenged or sad during these
courses they're generally pretty
difficult I have yet to find a boring
course it would become a nice actually
yeah I've been taken evz course in a
long time basically since high school
high school what everything was like so
nice everything was very reasonable they
gave you so many little worksheets you
can just like fill them out you know and
then I got here it's like Miss
elementary school yeah I really do yeah
elementary school I was like hey can you
fill the white house like yes I can now
they're like the whole pages of blank
you fill that in with your essay I'm
like no I can't yeah that's uh you know
that's towers I can't really say that a
tensorflow does not skimp out on like
commenting or at least this repo no
Rogers and comments all over the place
and he doesn't really good job like
trying to make sure you know exactly
what's going on like this program - all
it does is print hello world yeah that's
exactly what no it doesn't this loss is
so essentially what he does is here we
have in order for you to feed an image
like a single image into tensorflow
during like a single session you need to
create what's called a feed dict and it
essentially just is like what tensor are
you trying to throw through the through
tensor flow so that's just kind of like
a formality for a tensor flow but he
gets these layers which is kind of just
like the layers themselves the tensors
that represent the filters for each
layer so each convolutional layer and
it's the layers that he picked so it's
given this kind of like range of ID's
that he wants I think for content if I
remember correctly he only uses one
layer because
there's like a single layer that grabs
the content pretty well so there's no
need to do any others and then he runs
the session on the one image excuse me
the image that's being thrown through
that content image and tries to figure
out what values you would get from that
and then he runs just this this wick
modeled on graph is default he's using
an interactive section so there's
actually I don't think I need for that
interactive sessions set the defaults to
the like current graph as is those this
is something you would need if you
didn't have that if you're using just a
normal tensor flow session and then from
there he computes this total loss by
taking the mean of each of the
individual losses between layers so for
each layer you picked find out the loss
and the loss in this case is actually
fairly tractable mathematically it's
just your mean squared error so you just
take the difference between the two
square each individual difference and
then take the average over all of the
differences in like a matrix so if I had
two matrices kind of I imagine is like
overlaying them and that overlay
represents the Delta between them the
difference then I square each value so
I'd be like an individual Y is square
and I think the average and that average
is an individual value then he takes the
average over all of the layers that he
has computed this loss for and this is
the content loss so it's a very kind of
straightforward loss function it's not
too terrible everything's just kind of
like as is linear or well actually in
this case quadratic but it's not
terrible it's very commonly used and
then from there we hop into this
slightly more complex loss for style so
style is a little bit more difficult to
represent how far away we are from
something styles a little bit more
abstract so contents pretty easy does it
have a circle does it have a square here
does it you know and so on is it the
right color here or whatever but style
is challenging how do i quantify what
style something is is it the colors is
it the way the colors are next to each
other and if that's the case how do I
measure that and so what ends up being
done here is using this Graham matrix
which is essentially he talks about it a
little bit in his stream and I think he
goes through it pretty well but you can
think of it as like a variant slash
correlation matrix it's pretty commonly
used in math for certain applications
I don't know it super well but the idea
is really that the best kind of way of
explaining a style of an image is by
looking at its variants and properties
of that variants therein so that sort of
thing is even that isn't necessarily the
best way to quantify style but it is a
very good one that works in practice
so then he essentially does the exact
same thing here where again we take the
mean squared error of the gram matrix
version of each layer and the value that
we got by running it on each of those
layers so not not too terribly complex
in terms of loss
things could be very very crazy there
are front loss functions that are wild
these ones are pretty simple mean
squared error and you kind of just
descend across those gradients the rest
of this is really just kind of like the
orcas are not the rest of this but after
the style transfer algorithm part of it
the rest and kind of in that it's really
just a neural network we just kind of
like go down through we get certain
values at each layer and then we figure
out the gradient and prop that gradient
back through the network and then repeat
and that's what the style transfer part
does he kind of initializes each of the
losses
there's the mixed image that you'll
remember I mentioned where you throw in
a kind of image with some sort of noise
on it and he has another loss function
for that this is just going through and
saying okay essentially what are the
different noises that I've encountered
across and just the bigger they are the
bigger the loss so you're minimizing it
is that noise image go between the style
and the base image it doesn't necessary
mean yeah basically because you're kind
of adding features from both the style
and the content into this noised image
and you've been looking at the
difference ice and you're trying to
minimize that such that they're all like
if you imagine like stiles over here
features over here iris are condoms over
here and then like noises in the middle
you want it to be like perfectly
balanced in the middle but you want that
distance between them to be like minimal
as possible so actually maybe a better
way to imagine this is like style
content noise is up here to start and I
want to minimize this vertical distance
while keeping the horizontal distance is
the same more or less
like the concept I want to keep it
balanced between those two so that I'm
not picking up content from the style
image and I'm not picking up style from
the content image but I want it to be as
close to them as possible and that
essentially is represents the same image
for both and I would imagine that that
concept can be applied pretty I haven't
looked at any research on this but my
guess is that probably some paper
written on something similar where how
do how do I look at like distance slash
similarity slash averages that are
meaningful different from like the
arithmetic average between like three
images or four images or higher
dimensional averages between different
images so I think that that would be
really interesting but it's also just
not necessarily exactly the same like
what if I wanted like certain kinds of
content from one image and certain kinds
of content from another image and then
certain stylistic parts from one image
and certain stylistic parts from another
might be an interesting application of
that let's take a look at our
submissions while we're going I would
imagine that like it has to take it
probably drives more shape features from
the base image than like coloring and
maybe like color differences between
pixels yeah that makes sense
usually it shows a lot of like
interesting ways that I get supplies
it's kind of what I expected this kind
of makes sense we looked kind of starry
and celestial the likes like our looks
and kind of physical shapes are
unchanged but the kind of color pattern
on top has differed and it looks very
much that looks like a grid like if
you're just like poke a bunch of holes
in us but it also very much has that
kind of celestial patterning I can't
look here on my ears over here your
entire face has some celestial pattern
anything I know this is just this is
just a base image yeah yeah the new
changes with very minimal changes to
like the actual will say like features
and then what kind of keep scrolling up
and see what happened oh yeah this is
this is kind of interesting there's some
of that distortion due to this like yes
for effect between the two of us
interesting it didn't have the effect
that I was expecting yeah my face melted
I did here's got like a laser scarf
that's kind of neat yeah then it looks
like there's kind of like an almost this
like red shadow on each of us and then
there's
kind of in the middle you I definitely
did take more of the blue and you took
more of the bread so there is part of
there is kind of that element to it I
was hoping that my intact I would have
become entirely blue and then you would
have become red and we would have had
like a line between lights yeah it did
not turn out exactly how I put it yeah
and that's kind of one of the things
that's interesting here is you can
almost you can start to infer what the
neural network was inferring as far as
style goes what was important to it a
style and not everything that we think
is stylistic is stylistic according to
the neural network not everything that
we think is content is content according
to the neural net yeah and that's kind
of the interesting part is where does
another that's the latent space aspect
of it right yeah that's a new thing that
I've learned like the latent variables
we think that we don't observe but the
computer you know purrs by looking at
the data so many times they it sort of
bubbles like those things bubble up yeah
it's a very interesting idea oh this is
wild it's actually not oh it didn't
really well you look a little bit
different you don't you look younger you
look like huh yeah he looks like he
might be like eight years old there yeah
that's a little weird and I
you don't look too different I don't
like well not much different yeah
there's a little bit work yeah you just
look different yep so it's kind of an
interesting combination it kept the
feature of my shirt actually I guess
because it thought that was super
important I wonder if you were to run
that for more iterations like does it
stop at like after the max number of
iterations and I think that's capable of
like yeah it might measure like some
measure of loss and looking at whether
the loss changes significantly from one
to the next
it might also just cap its number of
iterations so that you don't
accidentally get malicious inputs share
on they like keep it running forever
I don't know necessarily how deep are
thought IO does their neural networking
but my guess is its some parameterised
version so they're not burning through
too many resources we're still doing
better than ninja turtles though yes
ninja turtle whoa that was a good we
minimize that we optimized hardcore on
that one Carlos hello
this is - portugal hello good to see you
Carlos yes I think I think my favorite
is this one it's still them no and
that's one of the default styles like
now should we be looking for something
that's that dramatically stylistic on
Google maybe in the Klein way that's
probably like let's like they're out
maybe their algorithm is also very
tailored to certain types of images see
and Google they do it's funny throw it
in there throw it in there yeah this is
gonna be this is gonna be so good all
right oh that might be a function of it
this is the higher quality that might
matter yeah but I know I saw this in
class once not here in high school my my
high school teacher talked about in a
literature class and I remember saying
something that I thought was really
silly but then the more I thought about
it I was like actually what I said kind
of made sense and it was just kind of
like an interesting concept to look at
this painting and really think about you
know what does it mean what things are
what things stand out in it so I don't
know it stuck in my head forever
we'll see what things to get to the
computer yeah I'm really curious to see
what the computer does to this hopefully
not be a complete abomination that's the
concept the problem was style the fact
the problem is that the wave feature is
gonna write because of how different it
is from the background I think we're
gonna see some of that come into blow so
we really hope that the way that this
neural network is designed is it really
does grab stylistic features only yeah
because if it does grab content we will
end up with a weird blend across us and
that will be a little whack like you'll
notice looks like the shapes are all
retained Diaz content but I love how
they were just walked into pieces and
just like thrown and this I turn in a
million range critically how anyone
understands pretty wild yeah so like the
content really shouldn't change too much
according to how this should work but
should is a very strong term in computer
science yeah things should do what
they're supposed to but can you beat the
wait time with incognito I meant it's a
server load thing right yeah they might
just not like it might literally just be
like we don't have time
for it or maybe it's an IEP based thing
it could be obviously good verify that
by kind of going although you have like
an account almost you got like access to
this through a code that they sent me
through email so you have a second yeah
they take a session that's going on with
this so it probably wouldn't be wouldn't
be too it's okay it gives people a
reason to stick around yeah hanging
right you want to see it's worth it
helps us pace the show yes a little bit
I thought someone was saying I feel bad
because people you know they work so
like professors and academics worked so
hard on these like corpus or text books
and then people look for cheaper free
alternatives I think that there are kind
of two ways of looking at that I think
there's kind of an optimistic and from a
student's perspective way of looking at
it where honestly I think if I wrote
something and people were looking for
cheaper free alternatives then that
means that I've reached an audience that
is so desperate for what I had what I
built what I wrote that they're they're
just trying to find any way to get at it
whether like they don't have the ability
necessarily to pay for it and they're
just looking for any way to get it
because whatever I built was so valuable
to them and to a degree I think that's
really awesome I think that if I was
trying to make money off of it then okay
that might suck that's terrible but I
don't think I think from a lot of
professors for size boobs and I'm not a
professor nor am I really an academic so
I guess I can't speak so what they're
doing but I would imagine that from the
way a lot of them act and a lot of them
have chosen to make careers their
teaching students and their teaching and
that's their whole thing they're
teaching they're researching they're
trying to contribute to the like scope
of human knowledge I don't think that
the motivation is really financial I
think a lot of these professors could go
work in industry and make a lot more
money that's not their point their whole
point in being here is to access as many
students as possible to influence the
way that they grow up to learn things
and to put information out there for
them that is valuable just for the sake
of the information I know a couple
professors who've written open source
textbooks you can go and contribute to
them if you'd like and their whole point
was you know one of our professors wrote
like a four hundred takes but sees me
like a 400 500 two-page textbook and
it's open source it's on github you can
contribute to it we all download it
free and his whole point was it's it's
there to educate you he's not making
money off of it because he doesn't need
to he's not trying to make money out of
it so I think that there is kind of a I
don't know there's something there's
some nuance to that I don't think it's
necessarily terrible there are cases I
think where it is terrible but maybe the
reasoning behind it being terrible is
terrible in and of itself uh-huh
I think there's some professors who are
always trying to make money off of their
textbooks off of their students and
maybe that's necessary given their
circumstances and there's a lot of
nuance there but maybe it's not
necessary and they're just doing it for
the sake of extra money and I'm gonna
that might be I have some questions for
that in our economy I think textbooks
have skyrocketed in price of book first
it's pretty rough
I think they've like a hundred two
hundred dollars for a lot of textbook
yeah or Borg so I'm and so it's a little
interesting and I know like sisters he
doesn't even use a textbook so yeah we
don't know we - we have recommendations
that's true we produce so much content I
think that we try to fill that gap yeah
through video and audio as much as
possible yeah so there's all sorts of
interesting things with that and I don't
necessarily have like a strong opinion
either way but there are other ways of
looking at it as well right so we have
these kind of loss functions we've
defined all the ways though the things
we're trying to minimize and the trick
Unni says their site that contains short
summaries of everything humans now I
like Google yeah Wikipedia yeah and so
then if we look through the style
transfer algorithm itself you'll notice
that it behaves very similarly to our
neural network idea there is some
syntactical difference here because it's
tensorflow
and it's a little bit easier for us to
read and understand at the higher level
rather than just like your numpy
matrices but there is this still your
iterating over some number of iterations
we have our image and that that's what
we're gonna feed in that's what we're
gonna show through our network we have
some gradients some like adjustments
based on whatever we got out of our
network and then we run the network
based on our image and the like tensors
and layers that we wanted for the
network to run it on and then he
this MP dot squeeze so I just always
think that's the funniest name for
what's going on is there they're just
trying to like if you have a bunch of
extra dimensions going on and it's like
this higher dimensional object you can
kind of just shove it down into a
smaller object it's just kind of a funny
name for what it says makes perfect
sense is weird and then they do this
kind of like how much do we actually
want to move in any one direction so
kind of your learning rate and then you
update the image that you're trying to
produce this is the output image by
whatever your gradient was so this is
the change that should have happened and
by a multiplication of like that ADA
that learning rate and then from there
we do all sorts of things to like verify
that it's in the right ranges that it's
still an image from here it's like oh
sorry I have a the wrong thing where am
I trying to highlight oh sorry this is
just the end of our iterator is here and
essentially you then just repeat that
process so you'll notice it's still very
much this like gradient descent neural
networks
BRAC prop a little bit except a lot of
that is now hidden from us so it's a
little bit easier for us to kind of
understand everything as it goes and it
takes fewer lines of code which is
convenient and you can generalize this
code fairly easily you can pick multiple
layers for grabbing content and that
might help you you can pick a couple of
layers you can pick in particular like
certain layers you can change your
learning rates it's a pretty easy to
follow along with example as far as like
how you could learn this and then he
runs it on I think one particular image
this one and here's all the parameters
you could pretty easily transfer those
into command line arguments and run it
as like a command line tool and then he
goes through and shows all the different
versions
I don't really personally see a hoops
see huge difference between these two
but I see a pretty impressive difference
between these two and you'll notice that
like these two are off like the the
weights are really not that large in
difference so I there's still the same
order of magnitude they're not off by a
whole lot these ones are all off by a
little order of magnitude but still
about the same so that's that middle
that's that noise layer and so they're
putting their both of their values into
that like you're doing about it's kind
of like pulling the core content from
the left sticking it here and then
pulling our style from the right and
stigma over top right and so say over
top is a little bit of a
oversimplification but it's the right
idea and then I don't know I pulled
these open I think I was gonna go talk
about them but that's about right so
there's this other paper that is on
archive why is this opened there we go
and this paper also talks about how to
understand kind of the artistic style of
a given image what is the kind of idea
behind the way that it's styled and
again it's a fairly it's a very abstract
idea and it's pretty difficult to
quantify if not impossible to really
purely quantify but this paper again not
super long it's only 16 pages you'll
notice that they have pretty much the
same set of images as in this one they
go through it a little bit differently
and they talk about different things I
actually am NOT a huge fan of the way
they like literally just the way they
formatted their paper but it's okay and
this is just kind of another way of
talking through kind of what went on in
this other paper but this is kind of the
one that I would use if I was trying to
like if I was going to cite something
and this is maybe something I would use
to understand it a little bit cleaner as
things are going they I believe talk
through the same exact things with just
like a little bit of difference in what
exactly they cover but it's roughly the
same concepts like I think these guys
just go a little bit more in-depth this
paper is much better style yeah and this
is more like an ACM mod style like the
other one looks like it was just a high
school paper this one looks like it's
legitimate like so this one's on archive
someone would actually it was something
pretty major differences between the two
all right let's see I really want to see
I really did to the wave yeah the wave
art oh you grab some of the content yeah
look it's kind of cool
look look at your text on your shirt
though that looks so cool that's nifty I
mean they really did end up styling your
text there to look like waves oh that's
neat that's big yeah so they got a
little bit of content but mostly style I
look like an
then crack in my yeah I click your skull
is here I'm both very skulls everybody
sure I'm just like an undead water
monster that's wild and then you are
phasing in and out of this out of this
world yeah and you have a sick water
shirt I've got my nifty water shirt on
I'm ready to go take on Poseidon you
know I need to make that like my profile
picture or something
we got a yeah this all sorts of cool
things oh that is we literally play with
this all day night it look like chicken
legs yeah actually yeah that also kind
of looks like maybe like either you're
putting on like your aquatic glove or
your skin is melting off I do look like
a skeleton like little bit though that's
just like seals it even more and I this
part here you got like some teeth going
on yeah I sockets instead of eyes I look
like I'm just the water monster like
yeah you got like maybe got a little
maybe this is a while this is gonna show
up with some weird reddit somewhere like
yeah almost positive and this is I mean
I feel like I should post that somewhere
shove it up on the names passing a water
balloon kind of looks like it yeah like
my text I am just like confounded at how
it's tiled that text that's so cool like
it just so that texaco use the the like
whole idea of style transfer is just
mind-bogglingly awesome which is why we
wanted to do a stream on it and I'm glad
we did but it's just so neat like you're
really seeing like our real light
interactions with this uh-huh
because we get we don't plan these links
very very much that's very cool and I
mean from like a machine learning
context it would be interesting to see
what would happen if you pick different
layers right so this probably picks some
set of layers if it's really crazy
clever then maybe it picks a couple of
different variant layers like it picks a
couple random handfuls of them and then
it says which ones minimize that loss
but it might not even do something like
that it might have a set number of
layers or scent layers from the network
that it's using that work really really
well
but it would be interesting to see what
happens as you change layers and that of
course would be the benefit to doing it
yourself to implementing your own
version of it because here you're kind
of locked into it over there algorithm
this
sure no other algorithm works but
building yourself would obviously give
you that ability of like
parameterization and tuning we just did
might run a little slower you have a GPU
who but still very interesting so yeah
there's all sorts of cool stuff you can
do with that I think we've we've run the
let's kind of do like a brief scan
through all of our old images so pretty
neat you know the artwork is what came
off as neat yeah it really took a lot of
the the wave stuff like the the phone
and put that into the image I guess that
was a pretty distinct feature oh we got
a lot of things here too yeah yeah so
I'm I'm now just curious like we're
we're gonna throw another one through
this I spent forever yeah oh yeah this
will be enter this thing that was
amazing
pretty interesting too that one's a
pretty I thought that one is a pretty
like generic and of style to where we'll
see really good I think it should be a
broad just encapsulation of the actual
style because you really want to avoid
having too much content cuz as much as
its trying to grab style we're really
just picking different layers and
they're all geared at like understanding
right so it's really kind of an
interesting an interesting idea okay so
we'll see what that does what do you
transfer just a blank color background
well so if there's no color background
it should in concept learn no features
and that's true because it's not gonna
have any data it's gonna have no data
coming in right take that other data but
a blank color background the different
colors have different meanings so white
is actually a number it's not 0 so 0
special properties like 0 and 1 and
negative 1 have special properties but
like white is like 255 it's a number
that isn't like special it has
everything is gonna get like lighter in
the picture probably it presumably would
do something kind of strange yeah and
then black would black not make
everything darker like the white star
presumably that would be kind of
interesting if you learned all this in a
single course at Harvard or from
multiple courses that's a good question
um so I definitely could not have
learned all this from a single course
even though a single course here covers
just ridiculous amounts of information
even cs50 which is an interest
car wash es course covers so much
information and and I think the best the
way that that was best demonstrated to
me was when I T EFT for the business
school equivalent of cs50 we taught I
would say like substantially less just
breadth of information and depth we
covered a much higher level overview of
the same concepts so we didn't force
people to work in like see for example
at least not really
and even our Python stuff it wasn't
super intensive there was nothing too
crazy not that cs50 is like super
intensive and too crazy but it's pretty
intensive in a little crazy like there's
a lot there and I had never really
thought about or realized I've never
really looked outside of Harvard to kind
of see how other people thought of inter
courses or how these courses went and so
seeing a ton of the business school and
helping teach at the business school was
really interesting because it was
different it was very different and the
amount of information then it was a lot
less in terms of like just how much pure
effort and like energy and mental just
like dedication was like I'm required
and demanded by the course and that
makes perfect sense given that Business
School students are not 18 with their
only priority being college they have
other priorities in play it's there
other things that work so it makes I
think a lot of sense but that's the way
it's done and I think David's iterating
on it
probably literally as we speak okay and
there's all sorts of things that I'm
sure will change but it was really
interesting to see that because I don't
I think you get used to being here the
fact that that's how courses are taught
here they're just enormous quantities of
information enormous depth of
information and you're required to know
all of it pretty much as if you knew it
yeah like a fundamental level and so
even our intro to like theoretical
computer science in a conversation with
that professor he was talking about how
he's just so excited to teach us all
these things that he essentially teaches
just everything that he can find which
makes I mean in one semester that makes
it pretty difficult as a student because
you have you know four or five of these
courses and they're all pummeling you
with as much information as they could
find but I think it's also super
interesting
it it helps us I think a lot so yeah
there's all sorts of things going on I
think that even in a single course at
heart really would be very difficult to
learn all of these things because a lot
of them come from just kind of learning
on your own as you go maybe even just
like your intuition or your own research
your peers and what they say to you I
mean I hear about stuff from coltan all
the time I'm like oh I'm gonna go google
that and I can find out about it and I
research what it does or like you know
spray art was something that or even
just like the whole like mindset behind
video gaming as a design as like a
designer came from like talking with
Colton and learning things from him
because I don't even ever played them
and I was a programmer and I can play
video games but I had never tried
putting that together and so there's
like a lot of this just like finding a
community that can help teach you about
things finding all sorts of like what
you want to go do is really helpful
there's there's all sorts of ways to go
about it but you know so it's just such
as life I guess okay there's a lot of
just like I get curious about things so
I just go read about them if I can't
sleep then maybe I'll just pull up you
know whatever is gonna say the Internet
yeah I'm very tired I'm like slogging
through words forgetting what I'm doing
to say oh yeah so I saw someone asking
like when are we gonna code I am a
feeling but the answer is were not going
to get a whole lot my apologies we could
code through kind of some simple
examples and tensorflow but I think it's
a little bit more worthwhile to answer
people's questions so we'll probably not
do that too much I want to see if this
has loaded yet eleven minutes so we're
getting there
yeah but I don't know people are you
like in the next dream I'm guessing
we'll do it yeah in the next room when I
have more of a chance to actually sit
down and kind of work on stuff although
I'm realizing that we'll uh well that's
some difficulty planning our next dream
because I'm almost done with school okay
I'm almost off to California that's true
that's true so next week you're not
gonna be around yes next week I actually
have a midterm kind of ironically on
these things
week after do you know about the week
after the week after that I think I have
a final uh-huh then it's like finals
week and things so Graham we're gonna
have to coordinate that yeah nick is a
very busy person thank you at the end of
a semester and this is just a lot
there's a lot of stuff that goes on we
end up getting thrown into like alright
you got to pack all your stuff up you
got a literary pack of everything you
have and ship it somewhere like you got
to remove it the the houses will you
keep it there you also have to like I'm
in the middle of trying to find thesis
advisors and trying to make sure that I
don't I kind of shoot myself in the foot
for next year and then we're also trying
to like you got a plane flights home you
got a wrap up everything with every
class so all my final projects all my
final presentations all my finals are
all in like the next three weeks and
then there's all the like club stuff so
any club that you're in and I'll be
running you know we're like electing
people to our new club for things I'm
finishing up all of our demonstrations
for cybersecurity trying to like make
sure everything's set up reasonably well
for the next year trying to like get an
idea of what things we need to set up
over the summer who I need to
collaborate with who I have to do stuff
with you know things like that so it's
really just like a last push you know
you kind of just like give yourself some
chocolate at the end of every day okay
whatever gets you through it whatever
whatever works for you some people do
pottery some people eat some chocolate I
kind of just like sit and stare at a
desk for a moment and kind of meditate
or I'll sit there with like people who
doing things like watch people play
volleyball I don't know whatever you can
do it's like take your mind off of the
intense just like crushing stress of
whatever's coming at you you get very
good at it though and like that's how
life works kind of in general anyway so
I not too bad
you get very used to it and then you're
not so bad I sleep quite a bit now which
is great like more sleep healthy more
supreme makes you not get sick something
like that yeah so essentially oh that's
a new message
I was not expecting that artists being
painted that's it I'm sorry it's
fascinating okay it's dreamlike what
kind of courage I could pursue after
graduating nick has a
question as mentioned you have a Google
internship yes I do have Google this
summer and then it's fairly likely that
I'll pursue working with them for a
little while I think to a degree that
would be completely the wrong choice for
me long term to work at a major company
for like a significant proportion of my
life like 10 years 15 years in the
future I think five years from now I see
myself maybe pursuing more schooling
possibly getting a PhD possibly getting
an MBA kind of depends on where I met I
met in five years but then I think in
ten years I see myself running my own
companies
what do I do as far as your company so
I'm kind of stuck at the moment between
kind of different things that I find
super interesting I think that
bioengineer weirdly enough on a computer
science heavy stream I'm actually
primarily bioengineering I work mostly
with like you know how do proteins work
how do you create like a genetic circuit
things like that how do I deal with
technology integrating with the human
body and I think that that's where I'm
really kind of fascinated is you know
some DSX type stuff yeah kind of how
would I get us to interface with the
Internet how do i how do i directly
access Google how do I put myself online
on a network or even simpler and maybe
less far-fetched how do i integrate like
our neural system with something that is
mechanical purely mechanical how do I
make a biomechanical device how do you
get synthetic limbs and organs to work
properly how do you get your body to not
reject them I get your body the
interface with them the way I kind of
look at it is kind of like how do you
make an API for the human nervous system
right good let's really what an API is
and people I've noticed a lot of CS
students now have kind of this distorted
version of an API where they always
think API and they always think like web
api but the original API concept was not
web-based it was an application
programming interface where you take
something very low-level and you give
yourself access to all of its features
without having to understand exactly how
it works like gaming exactly even so
it's still that work that's still very
common and oftentimes libraries will be
referred to as api's because they are
and so I think that it's very important
to family think of this like that
and so I think what would be beautiful
is if by the end of my lifetime I could
create that adapter but for the human
body a pretty sick it'd be pretty
awesome I thought about that myself
I'm not in the bioengineering but having
also that correlated with like
replacement limbs and also like reverse
damages and how do you prevent people
from aging can I transfer someone's
consciousness something that is the
crazy stuff I mean how do you know that
the same person even if they claimed
rest even if they say they are and if i
duplicate someone you know because let's
assume you can transfer consciousness
now if I can duplicate that person's
consciousness is it the same or is that
one person effectively once they learn
something new once they experience
something different are they now it
distinct people you know like instances
of a class of them yeah are the
instances of the person and then that
person is actually just an abstraction
really if there's all these crazy ideas
and it's really difficult to kind of
noodle on effectively without having it
kind of exist but I I don't think like I
think there are a lot of people and
there are a lot of scientists I know who
would laugh at these kinds of ideas
they're silly they're ridiculous to me
that means I'm studying the right things
I'm doing the right stuff
if someone someone older than me is
laughing at whatever I'm saying because
it's absurd then I'm probably on the
right track is kind of my bench my my
rule of thumb yeah I did a ninja turtle
yeah like if it's kind of like people
see this this is what they have in their
head of like what I'm talking about and
this is what I could possibly create
sounds good to me you know cuz and that
is very much a naive approach I've
mentioned on this stream before actually
that I have very much this naive mindset
and I'm going to take advantage of that
while I do you know like it goes away
eventually I've been told slash I can
see from just looking outside in the
world and I'm trying to make use of it
while I have it but I don't know there's
all sorts of interesting things going on
and to be clear I'm not just blatantly
ignoring the people who are laughing at
what's going on I think that they have a
lot to teach me I just think that I'm
not going to avoid something for the
sake of whatever they think is silly
there there's a something to be learned
from making your own mistakes I think
true
has a lot to be learned from that
actually so yeah to kind of recap
everything that's gone on on this stream
so far or not on the stream in general
but this particular stream we've talked
about style transfer we've talked about
a high-level overview of how that works
Susan what messed with we have talked
about a little bit of how you actually
implements that relying on kind of the
knowledge that we tried to build a
little bit of last time which is that if
you're in a neural network and you have
these layers that are communicating with
each other you're generating some sort
of loss at each step and you're saying
okay I want to minimize this loss how do
I do that and I look at the like
mathematical derivative or gradient of
that loss function and then I apply that
gradient after having learned something
or after having seen some example back
through the layers and then I iterate
over that process and I do it again with
style transfer it's a little bit
different in that you don't have a data
set you have one data point and you're
not really like trying to learn
necessarily anything from the data point
you're actually trying to push things on
to the data point from the two inputs
and that's kind of a weird mindset shift
but it's if you look at it in like an
abstract enough context it's really not
a mindset shift because we're still
having these loss functions we can
combine them using a linear combination
and we're trying to minimize that
overall loss function such that we
obtain some meaningful result we use the
layers of usually a pre-training network
in order to figure out which things are
extracting like style features and which
things are restricts tracting I almost
said underscored style I meant to say
content the underlying patterns and
ideas that we visually see and you're
trying to combine those in a way that is
a little bit more intense and nuanced
than just overlaying the two images
right to do that would be to just take
an average usually or some form of
average now it looks maybe once but that
would look pretty quick yeah it's a
little weird
we actually I think did that on a stream
a little while ago where we like pulled
open every image and then just took the
mathematical idea we just look like a
blur like we're phasing it yeah we're
just phasing through reality which is
really interesting
I love the preserves you know
want to preserve like the shape of the
content with the style yeah like that
wouldn't ya so what contours are there
what things exist in the content and
then stylistically over that and
abstract concepts like that they're
pretty difficult but they're often the
more interesting or very interesting
concepts maybe not more interesting but
very very intensely interesting to us
this page took too long to respond
that's unfortunate and my artwork still
being printed I really want that to come
up before we and we will not end this
dream until this comes up well that
that's not a promise I promise that we
will hopefully not have to do that
Bewick's is thank you for the awesome
content as ever
yeah thanks to Nick for for showing us
how style Trinity doesn't work for a
little bit of a tour of tensorflow we
didn't cover a lot of coding today but
in the near future when we head like you
look back in the past two streams
there's plenty of code yeah there was a
lot we did a lot of coding from scratch
on the last couple strands we were
really maybe losing people a little bit
with a little too much math yeah I mean
you were losing me a lot of it a lot of
those pieces so the gaming stuff
understood all teams was good I think
that was a good place to start and have
like a little bit of a rocket hop next
time I kind of fell back a little bit
after that yeah it's so cool it's tricky
I know I'm messing with it myself in my
own experiment I like tree actually your
sides learn how the math will work so I
can tweak it the way that I wanted to
week it exactly but you know we'll see
something get some get some good results
out of that I don't know what your
artwork is being painted means I would
love to know about it's a bit strange
[Music]
oh wow wow that is sick that's kind of
neat my hair is the preserves like yeah
why is it that you're you saw such a
well-defined face the like I can still
see your hair yeah
as your for like you haven't know what
happened to you man like that is your
head is gone my head it is not there I
look like it's some of the logo got
preserved though true I'm sure oh yeah
yeah freakin text on my shirt got
preserved and I think every example my
face
never never preserved I want to use that
I want to use that I want to use
that is my profile picture you are also
to both to you yeah please do that is
sick this is this is wild although I
think I might want to take a bigger
picture and do it so that I don't have
the watermark there oh right well you
can always like screenshot off of this
rally you could catch oh yeah I could be
I could crop it actually I guess I could
crop it yeah yeah yeah that is so sick
that's neat
yeah so I think that's the that's the
trick is you grab an art piece that is
like stylistic as possible you know yeah
your style you guys wanna if you guys
want a new sick Facebook picture like
graphic style just a quote of yourself
throw it on yourself make it work that's
I think possibly exactly what I'm gonna
do right after this training I never
really like tried this before I just
kinda like new in concept it would work
no this is that is like really cool this
is sure if do you yeah please do send it
to me yeah so I'll talk about will use
that as a picture but watching the
stream you know that Facebook you'll see
it happen
give me there yeah we'd recommend
playing around with these as much as
possible I think this is possibly the
best one yeah the cleanliness is first
yeah and the the water one was also
pretty cool I mean I ended up coming out
of it looking cooler I think overall
because it gave me specifically you it
kind of did a bunch of weird random
stuff so kind of blurry you look like
some high hardcore metal items like
artwork like that looks like somebody
created that I use a lot stronger and
future the water song I'm like how dope
is the bags a little bit at me no water
for that drifty I would be interested to
see if you could do this to like a font
you know it did it like a font neat
fonts
Colton's hair is always weird Thank You
Natasha if it ain't that where you know
you can take like actually let's just
take like Times New Roman times new
roman' and make it water yeah or like
sort of something I've seen your battery
is that my hankie billion of course I
did
there we go I'd be really interested to
see you know here's Times New Roman in
presumably Times New Roman font
guys we're never gonna in the stream
okay that's an assumption you can't make
an assumption like that yeah I really
can't I mean this I'm not like an expert
in fonts and I know people who aren't
leaving look at something they're like
oh well obviously is that I'm like what
but you know it's just ridiculous
all right so this tiny Roman let's take
a style that we really liked and throw
it let's water but we will people want
to see about the wine I think the water
was pretty good I know those nifty so
let's let's throw that in there
Oh what the heck Oh cuz it's black on no
background right yeah you might want to
do a white background
alright so we're actually just gonna
screenshot that oh sure you can be ready
here was great this yeah perfect there
we go now is it gonna affect the fact
that it's black text and cuz yours
almost like white text true so we can
invert this image it was true and oh
this is a gif what why okay this is
presumably not I can't you never know
man I really nice book they're all
they're all oh that's so strange I mean
I know I could like pull out like a
individual image well okay so let's
let's use some of our sort of our
powerful powerful image processing
abilities through no I mean you could
use a good user screenshot but yeah I
don't really want to like take a huge
just take a screenshot of that yeah
there we go this will work or a mess
this is fascinating to do is this is
just kinda like an interesting idea
tattoo ideas they really are you know
like oh there it is I was like that's
not what I wanted
okay so we're gonna take this we're
gonna flip its color oh my I said that
and then did the exact opposite now I
don't know for a fact if this matters I
was might not I was proposing it this
was kinda like a stability post idea and
I am totally willing to try out this
proposed idea alright just we are sure
you're sure was black in the picture
with white we might as well normalize
across as many things as we can right
yeah alright so we're gonna throw this
new image through that as it goes I'm
positive deep art that I was like this
IP is doing weird stuff I don't know
what they're like they're like it
psyches come with some sick images cool
things like but these two dudes are
weirdly like this per this like
weirdly fascinated with these two dudes
an ohmmeter Texan like Times New Roman
it's like no no no no way that was that
was yeah so let's let's upload that
screenshot which I modified okay so this
is white on black we're gonna use same
wave style this is so cool man like I
swear you could make artwork I mean no
wonder they made a website that you can
buy these from I mean of course they did
that yeah that's perfectly reasonable
shout-out to whoever built this yeah
very nicely done
yeah there's all sorts of cool stuff
there's so many cool things and people
out there and like I don't know it's
fairly common for like our peers to be
like we're sitting here doing P sets
when we could be helping contribute to
like the wealth of knowledge that's out
there and you really have to just
remember the like eventually you know
like one day okay that will be us
eventually getting all that knowledge
surely does uh yeah it helps it helps
the longer leg it's like it's the long
game you know but it's it's hard to
remember that when you're sitting medic
grinding through a pset where you feel
like an idiot and you're just like man
like how my this dumb
yeah it's imposter syndrome that I feel
like it very much is there's very much a
sense of that and there's very much a
sense of just like no matter what I do I
will always be three steps behind and to
a degree professors kind of do that on
purpose I think healthy competition -
yeah and I think that's the other nice
thing is I've never felt a sense of
competition between myself and our peers
like I feel like we're all very much on
the same page of like you stupid I'm
stupid we're all stupid let's work on
the stupid train together you know I
think are struggling through and I think
that's actually been really healthy and
beneficial is you never feel like I
can't help you because then you'll beat
me or you'll get something out of it
that I don't want you to it so it's not
like it's because your account is zero
sum games yeah it's very much we should
help each other because then we will
both succeed and you very much learn
this attitude of like there's no point
in not helping each other except when
the ad board says you cannot
collaboration policy there are certain
certain venture across all of the
collaboration policy of your class
although a lot of classes especially in
like CS and Stan
are like men go ahead like please
collaborate or you'll all die like an I
hope you you work together on these well
yeah if you're in a project though in
that I'm guessing in that sense yeah
projects are usually pretty collab based
a lot of key sets or even collab based
where it's just like work together like
you guys'll lose your hair it's nice
because it's somewhat representative of
what you might expect when you're
actually working somewhere - right right
and I always see these funny posts on
Quora where it's like I have a coder who
checks you know Stack Overflow and
Google too often should I fire them and
every answer is like you stupid like why
would you ever do that of course they're
gonna see exactly I'm sure like I've
seen that post it's a couple of them
it's very famous I'm sure it's a little
wild it's just so strange yeah it's like
really well I mean that kind of signals
to me like a disconnect between legs
yeah hi to hire in the manager injured
coder giving word exactly and it's
really just like a misunderstanding of
how that actually works well that's
something I think you might've been
right where but I think this one had the
problem of it couldn't pull non style
because it had no background so it's
white also at the bottom he's looking
for always looking pretty tight these
are neat
the couple of ones it did acquire very
cool so I'm like the W like that W at
the top yeah now very very cool very
like water you know Jerry
but yeah the background is I think the
background essentially just got stamped
with the you know the content of the
original thing out although it looks
like it's tiled in a few place it got
kind of like thrown across it a few
times I think because there is no
background like in there in the content
image to try to fill that tuple yeah so
then any feature just would have gotten
added on the I think we'll get better
luck well we might get a little bit of a
mixed bag well materialists I'm hoping
that because it has actual pixels in the
other one whereas this one has just
nothing is just empty space I don't know
how that gets computed I don't know if
they fill it in I don't know how it
works but let's see with this I'm very
curious
okay twelve minutes those have some
hasn't been terrible in like the best
possible way they've all been just like
super over estimates and I yeah I have
to imagine they do that just to save
themselves if there is a massive amount
of server load yeah they probably
overestimate by like a couple order of
magnet
dudes they can just make money setting
up an art gallery that's sure I'm not
gonna steal their idea though this is
all their idea they did this deep art
that I should take all the credit for
this one but I'll be working on my own
man companies over the summer you know
Holly
oh wait y'all know we'll see you'll see
how that goes
it's up-and-coming but I think generally
I'm mostly looking for experience and
understanding mostly just trying to
understand stuff but yeah I'll actually
you know probably over the summer maybe
I'll like do some live streaming not
nearly with as nice of a setup you won't
have like the bit cool like overlays and
things y'all just my face possibly you
know work you work your way out
ultimately get there and I'm getting
financed a little maybe I can like pull
maybe pull some audience over the summer
and then I'll bring that audience back
on to cs50live yeah hey they caught
between the two you like a weekly stream
of like daily daily thoughts push just
the just adding categories yeah that's
what we're doing now I know it works
fine sometimes we have nothing
conversation exactly well and we're also
just trying to make time for I really
want to see I'm really hoping I'm I have
high hopes this is like the hopeful
climax of the stream yes otherwise we'll
just very quickly cut to the bottom 100
also the the like abstract one that you
like the Picasso style and that you know
that was pretty I wasn't even I don't
even if that's considered Picasso was
right it's a Picasso his cubist style
question mark his was like I was all
sorts of things but he was the food
probably wouldn't make something like
that he probably would make something
like that yeah so here's some Picasso
art it's a little less it's like kind of
those like weird breakdowns of humans
and it's a long time I really just
didn't understand why this art was
interesting or like why I was complex I
thought it's kinda like a child version
of art but I actually through learning
more machine learning I realized why
this art was so cool or at least I
started to gain an appreciation
personally for some of this art because
it's really like you asked me what are
the main features of someone's face and
be like oh that knows their eyes their
eyebrows you know whatever I'd name some
like physical features and if someone
were like okay I want you to take those
features and I want you to adjust them
in a way that's meaningful to you and
artistically significant
but retains the core values of the
features and as like a human being I
might intuitively be like oh I can do
that you know give me some time and like
figure it out um but as a machine that's
so difficult like how do I adjust a
feature without making it different from
the actual feature it's just such a
complex and nuanced idea it's too
abstract right it's too abstract for a
machine to do in like a what do you call
it a closed-form or like simple
mathematically tractable way started was
saying there's this Earl Gandalf bottom
right oh yeah there you go that's
probably exactly that yeah you know
algorithm Picasso style makeovers that's
that's wild that's pretty great I love
it
gotta love like I feel like the Picasso
stylings over things or like the it's
like a Picasso we pretty pissed though
he'd be like someone's hurt make
whatever say wait a second
I took my entire life and like tortured
myself to do this and you go to Van Gogh
is like one of the first to get their
style used all over the place the other
thing I think that would be really cool
is I'm really interested in like this
abstract art let me think like a machine
hard-edged like I'm looking for like
this like repeating oh let's do fractal
this would be trippy
I like the Mandelbrot set or just like
kind of arbitrary fractals and throw
them onto these they're not I think the
hard lines makes things a little bit
easier but may like this style or
polygon abstract art so like this sort
of thing it's similar to where we did
it's similar to what we did the first
time exact like white strokes yeah very
much like simple that's cool too this
would be probably pretty nifty
I'm not downloading these for later and
then I'm gonna apply them but that's
exactly what I'm doing
not gonna lie or you can do like low
poly is another form to this so Pauly's
cool low poly abstract art and so I feel
like this would be super Niva you really
know that would look really sick we're
currently just seeing like my facebook
profile picture will be adjusted yeah
it's gonna it's gonna look pretty pretty
sick though it's not very mean I really
want to change mine to that yo and that
you oh yeah we will we'll send those
straight over
I also just like don't always remember
like the names for these things and I
have to like always go through that
process of like abstract art cubic hard
edges low poly family conviction we get
back to what I was originally using
these would be that that would probably
produce a really good one I think this
one we've cool oh I have somebody's -
yeah my pieces are just not happening
this is gonna be a rough time oh this
was it's different than I expected but
you do get you do get the water outlines
around all the letters we were then it's
a lot less style trend or less content
transfer from the style image I'm kind
of a fan of this w like I think if it
was cleaned up yeah this a is very yeah
watery yeah the times got kind of
blurred up I like this a layer maybe
they didn't which is kind of rough the
the W is really good yeah this M is not
bad it lifted me out very cool it had
washed out the S actually I think we're
under s today I think we're under but
that's very good very the bottom of it
kinda is kind of like disproportionately
thick in the middle yeah kind of like
cut off here but like if you were to
like extend this kind of pattern all the
way through and be pretty neat yeah this
is like there's something that you could
definitely play around with throughout
this you know there's all these ideas
here that I think are just barely me and
we're just so nicely an organic play on
your shirt in that picture yeah I know
that was that was crazy like we're gonna
just let's go back a little bit and
appreciate that and then we'll have to
pop out a lap band at you but it's just
I just look at that this is what that is
a beautiful D maybe it's the cursive
style kind of way in that you the style
easily I don't know yeah this is
actually the wine looks really good too
well done
style transfer on text yeah that's the
same well I think is our last image will
tour the Kubek art wedding back up there
you know what I should do is every day
take a news neroli image and just new
style and just been just change your
facebook picture like every week oh yeah
that'd be really good algorithm for that
I certainly just like code that up and
just have it change your picture every
week I think I might do that I might
just I might just MIT I might just doing
the the
then you abstract one and then maybe
like the I gotta find like a good base
picture yeah I use my existing picture
let's change it every week yeah that's
what's s what's gonna happen that'd be
some wild like if you could add that as
like a filter where it just takes that
and throws it through this that would be
it'd be so hard for that yeah
that would be so expensive in terms of
like yeah face will you be like yeah you
want to offer up the computational power
you need a massive cluster and do that
like in right like in real time I know
that's real time is pretty hard they do
this to videos to where what they do is
they take each frame yeah and they do it
by being say the tricky part is because
each one is a little bit different yeah
exactly it gives like massively
different results yeah so what they do
is they add a fourth optimizer and
constraint they add a fourth one
interpolator it's like a I think they
call it like a flow loss function and so
it's the difference between two
consecutive images has to be small
you're minimizing that dress as well so
things like Annie just weight kind of
like a circulating it yeah yeah that's
pretty cool it's very neat this one just
turned out so well I was so much like it
captured all the parts of the scene you
got almost pretty good like my face cut
on down there but this is great thanks
for thanks for the streets and we didn't
do a lot of coding so apologies for that
so we're coding couldn't cover a lot of
interesting material it was entertaining
yeah we had some great ideas if you're
looking for a great ideas for your face
book you know just hop over yeah what's
that winning with a website deep art I
am deep art does I oh there we go
a new technique job there's all sorts of
cool things out there there's some other
ones too like I think like fast
transferred AI or something this is all
sorts of ones out there but deep art day
I was the one I picked
that's just one I saw in some of the
papers so definitely worth looking at
such cool things you know it was pretty
cool yeah I'm very excited and I want to
get better at their you know generative
adversarial networks for my own
nefarious other process related to
sprite all right you know so thanks to
everybody who joined into the stream
today for watching this on YouTube after
the fact hit the subscribe button or
visit us on Twitch twitch.tv slash
cs50.tv
let's make Holton than David's podcast
oh sure art we have a podcast cs50
podcast is now on YouTube and Facebook
and Google podcasts iTunes Spotify we're
looking at a platform
we're trying to spread the best possible
way but you're in the good we're trying
our best so check us out
cs50 podcast me and David it's about 30
minutes each episode if you're you know
whatever major podcast platform you're
on we should support it if not let me
know a true Keaney says puppy sounds on
the next podcast comb I think I'll take
a look at maybe doing something like
that we did make a reference to it so I
think it would be I think it would be
appropriate so thanks again everybody
who joined in the stream joined us on
Friday so no stream tomorrow on Friday
we're doing another Python stream with
me where we do the chat does the live
context ain't going pretty well it's
been fun it's been fun we got a lot of
people interested in it and taking part
so again 3 mission of structuring
through the chat if you want to
participate in that so look forward to
some of that on Friday at 12 p.m.
Eastern Standard Time with the next week
we'll figure out what comes next so cool
seen it for a while yeah might be gone
for quite some time but I'll send Colton
the link and you guys can call in my
youtube channel and I'll try and keep
people updated during the summer yeah
post like you yeah the Nick on his stuff
and bid farewell to Nick never what
might get Wasi off for a while
yeah thank you for the good luck with
exams I'm gonna need it for Muslim oh
the exams will go as they go but we'll
be let me get them star nerd that a the
schedule being off a day is probably a
thing with your time zone it happens
with certain people it's it's a it's a
crap widget but that's the only one they
have for calendars so Wow Wow
unfortunately we're gonna have to do
with that but yeah it should be should
still be if you shifted back add a
relative to where you are should still
work yeah but in any case thanks so much
to everybody who tuned in the c.i.a
neural networks part 3 tune in the near
future maybe hopefully some dams up here
but yeah make some make some sick images
of yourself with a deeper a oh that's a
good time until then stay safe and I'll
see Fred bye guys