Skip to content

Commit

Permalink
minor optimization nits
Browse files Browse the repository at this point in the history
  • Loading branch information
felipecsl committed May 3, 2024
1 parent ddc8720 commit 3f33b2b
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 4 deletions.
1 change: 1 addition & 0 deletions .idea/gradle.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

10 changes: 6 additions & 4 deletions src/test/kotlin/OptimizationTest.kt
Original file line number Diff line number Diff line change
Expand Up @@ -24,19 +24,21 @@ class OptimizationTest {

// gradient descent
val maxSteps = 1000
for (k in 0.rangeTo(maxSteps)) {
for (k in 0..maxSteps) {
// forward
val (totalLoss, predictions) = loss()
// backward
model.zeroGrad()
totalLoss.backward()
// update(sgd)
val learningRate = 0.01//1.0 - 0.9 * k / 100
val learningRate = 0.02
for (p in model.parameters()) {
p.data -= learningRate * p.grad
}
println("step $k loss ${totalLoss.data}")
if (k == maxSteps - 1) {
if (k % 100 == 0) {
println("step $k loss ${totalLoss.data}, learningRate=$learningRate")
}
if (k == maxSteps) {
println("predictions: ${predictions.map { it.data }}")
}
}
Expand Down

0 comments on commit 3f33b2b

Please sign in to comment.