Homework Machine

A machine that writes stuff for you- in your own handwriting- so you don't have to!

devadath-p-r

Become a Hackaday.io member

Not a member? You should Sign up.

Already have an account? Log in.

homework machine github

Just one more thing

To make the experience fit your profile, pick a username and tell us what interests you.

We found and based on your interests.

Choose more interests.

Description

  • Components 0
  • Instructions 0
  • Discussion 35
  • Supplyframe DesignLab: 2023 Hackaday Prize

Working video:

Comparison with my handwriting:

Can you identify which ones were written by the machine? (It's close but not perfect yet)

homework machine github

So lemme explain...

The problem:

Rote memorization is not a path to understanding. Yet still, it is the bread and butter of the education system in many countries- mostly in Asia. Copy pasting 100 pages of lab records from a pdf by hand, writing the same problem 20 times, solving repetitive problems like a robot, etc won’t help us understand and apply the content. It is important to note that this is a problem with the system . I wouldn't blame teachers for teaching us the way they are taught to teach.

Here's a video that discusses the problem. (The point really starts at 2:00)

Here's another one:

It's hard for us to change the system, but we engineers can create solutions.

Existing solution: 

I was fed up with copy pasting assignments and 100 pages of lab record from a pdf by hand. I decided to make a pen holder tool for my ToolChanger 3D Printer to write the lab record for me. Here's what I did

  • Measured the dimensions of my lab record book and created a template 
  • Opened the template in Inkscape and copy pasted the content to be written
  •  Converted the text to Hershey's text using the KM Laser  plugin.
  • Adjusted the text to align with the page template
  • Converted the text to Gcode using the 4XiDraw plugin
  • Align and clamp down the book to the machine
  • Sent the Gcode to the printer to print.
  • Repeat from step 2 for all the pages

Homework machine is not a new idea. It has been attempted before.  This attempt where they taped a pen to their 3D printer and did a similar thing got 14M views and 250K likes on Twitter . ('Homework machine' is an extremely popular idea!) Almost all of the attempts on the internet uses the same workflow  (Except this one that costs 200$ per font ?) . Here are the problems with this workflow:

Problem with the existing solution: 

  • Easy to get caught: My teacher ended up catching me as the font was too perfect to be written by a human. All letters are the same and it does not look similar to my handwriting. 
  • The stroke path is not the same as written by a human.
  • The Gcode generation workflow is cumbersome . The whole process to generate the Gcode takes around 1 minute per page. The Gcode generation plugin alone takes over 20 seconds to process. 
  • Having to manually turn pages, clamp the book and run the next gcode is too too much work to be worthwhile .
  • Most pen plotter use a hobby servo to lift the pen. They are slow and are not meant for continuous operation. Hobby servos die very often in a pen plotter.
  • Writing fast will make the machine vibrate and the vibration will be visible in the print .

homework machine github

(Image showing a page written by my ToolChanger using Gcode generated using Inkscape and a single line font that came with one of the plugins. This got caught by the teacher)  

The Solution:

After the lab teacher caught me and asked me to rewrite the 100 pages by hand, I decided to double down. Starting from software, I set out to create a machine to efficiently and effectively do your homework without getting caught by the teacher. Here's how:

Record your handwriting

The software needs to know your handwriting to write in your handwriting. Your handwriting stroke is recorded and saved in a format suitable for the Gcode generation python script to process. Please see the project log section to see how it's done now.

homework machine github

(Image shows the python GUI  app I hacked together to record handwritings)

Generate answers 

The access to ChatGPT is a gamechanger. The upcoming Wolfram Alpha plugin will likely make ChatGPT do accurate math. these plugins should fix the achilleas heel of ChatGPT. All you have to do is generate answers and / or copy paste the content for the Gcode generation software to process. 

homework machine github

(Image showing an assignment I wrote with the 1st generation handwriting...

Project Logs Collapse

Font v2, cursive & machine prototype.

"Font V2" refers to the 2nd generation handwriting font recording method. There's a lot of progress since the previous update. They are: 

  • Made a python app to record your handwriting using a  graphics tablet . The app records the stroke by saving the  normalized coordinates  of then pen's stroke. The recorded stroke's recorded coordinates are of high resolution. 
  • Made the Gcode generation python script support cursive handwritings 
  • Made a quick prototype of the homework machine mostly using the parts I had in stock.

homework machine github

Lessons learnt for further progress:

  • Recording handwriting using a graphics tablet without a display is difficult for the user to get it right. You need some experience with it to draw your natural handwriting using it. This solution wont scale. 
  • Recording multiple versions of each character and randomly selecting one is not ideal. 
  • The machine's output is not perfectly smooth. Looking at the Gcode using a Gcode viewer, there seems to be a little jitter in the recording process that needs to be smoothed out.
  • Automate the book / page fixturing and page turning 
  • Set up input shaper to write fast without vibrations
  • Adopt a  new medium to record handwriting - probably an android with a stylus.
  • Create a new method to make the writings look natural . Instead of recording multiple versions, the code should slightly vary the stroke in a random pattern to avoid letters looking the same. 
  • The flow between letters need to be perfected to look more natural

I'm also thinking about alternate methods to record and process the handwriting. Record stroke SVG / vector? Create an ML model?  Suggestions are welcome!

Updates: 

  • This project has been  featured in Hackster.io news

Handwriting Font V1- June 2022

I have been documenting the progress since the start of the project by posting updates as stories on my Instagram. You can find the story highlights here

homework machine github

Since the teacher caught me due to the unnatural regularity and neatness of a machine written text, I decided to record my own handwriting with  Multiple versions of each character  in the handwriting font (eg: "a1", "a2", "a3",) It was recorded using Inkscape's pen tool. Each letter was painstakingly converted to Gcode and All character's Gcode were combined into a file. The Gcode generation script uses this file as reference for my handwriting.

The software to generate Gcode does the following:

  • Takes in all the content you want it to write and your handwriting font file as input. 
  • Places the text correctly in the correct line of the page.
  • Move to the next line either if all content in the line is written or of the line is filled.
  • Move to the next page if all the lines in the page are finished or if a page break is added   
  • Apply randomization to the letters for making  the text look more natural 
  • Create the Gcode for the machine as output.   

This time it worked! The lab teacher ended up signing off my lab record as the text was completely different from the machine written one he saw before.  Another teacher familiar with my handwriting easily identified that It's not my handwriting. I used this font for months to write assignments and records as most of the teachers have no idea that I am writing these with a machine. They never complained. 

homework machine github

View all 2 project logs

Enjoy this project?

Discussions.

Log In/Sign up to comment

Become a Hackaday.io Member

Create an account to leave a comment. Already have an account? Log In .

homework machine github

As a teen student, I work to improve my grades by implementing a thorough strategy that includes productive study techniques, proactive participation, and an optimistic outlook. I set aside time to read over course materials, take an active part in class discussions, and ask teachers questions when I need clarity. I get help on  https://ca.papersowl.com/lab-report-writing-service  for writing lab reports and managing all my academic tasks. To aid with my cognitive functions, I also place a high priority on leading a healthy lifestyle, getting enough sleep, and eating a balanced diet. I hope to develop a lifetime passion of studying and achieve academic achievement by constantly putting these strategies into practice.

  Are you sure? yes | no

homework machine github

Helo I am kks from odisha I wanted to be your partner if you like if not i have some suggestions if you want i want to talk you once freely in Instagram pls accept my invitation.. If you want to know about me you can message me in my wa no. 8249810054

homework machine github

you need to correct the dots they seem a little robotic and o's too.

Excellent!!! I wanna make this for my clg project

Please post the source codes and tutorial plssss

homework machine github

Hi bro, you are doing excellent. I have suggestions for own fonts, Can you make like this. By writing a letters in a paper then scan & Trace it in Coreldraw then copy and paste each Letter . It will look like exactly replica of our own handwritings ..., 

And bro can please add 3d files of parts and mainboards , so we start to build it up ..

homework machine github

This project looks amazing. I currently have my own pen plotter is the project still open-source? I notice in earlier discussions you said that it was on your github but I am not seeing it now. Could you provide a link to it if it is in fact still available? Would love to run some testing on my own plotter to see its applications.

Your project is incredibly innovative and addresses a real challenge in education. Rote memorization's limitations are evident, and your solution of automating handwritten tasks using technology is impressive. The integration of ChatGPT and Wolfram Alpha for generating answers adds another layer of convenience. Your efforts to avoid detection by mimicking handwriting patterns while automating the process are quite clever. It's great to see your journey from the initial concept to the current progress, especially with the creation of your handwriting font. Keep pushing the boundaries of what's possible and  https://iptvukprovider.online/ and contributing to a more skill-focused learning environment! 🚀📚

homework machine github

I am loving it. It is ab open-source project.

I'm not sure what people will learn if they get an AI to answer questions and a machine to write out the answers?

Seriously! I am genuinely interested in what you think people will learn if they use these methods.

Current teaching methods are not perhaps the best, but I find if I write something down I remember it much better - even if I can't actually read what I wrote!

Consider: why should I employ someone if I can just ask ChatGPT  and pass the results off as my own work?

It seems to me that by completely bypassing assignments students may end up with great  course work scores but will fail miserably in exams and other  tests of real knowledge.

homework machine github

can You put any 2d gcode for 3d printer etc?

How check quality of Your code

I'd be interested to see if you could connect this with a voice to text option so you can dictate in your own handwriting. Very interesting potential applications 

homework machine github

Amazing, also more cat please :)

The spacing and baseline of natural writing often drifts. Some lines the letters are spread out more, some lines look cramped by comparison. The end of lines tends to get compressed as the writer tries to cram a large word at the end. The baseline tends to drift up and down, the writer is not always looking at what they are writing (especially if they are copying verbatim text) and so they drift up or down, then when they realize it the correct it by moving in the opposite direction until aligned with the baseline again. This up and down drift can be simulated and if used sparingly (most noticeable on just a few lines on the whole page, but applied to a much lesser degree to all the lines) to make the text look much more natural. This, in addition to random variation applied to each character would likely make the results indistinguishable from real human handwriting.

homework machine github

The coreXY machine and the pen holder are from some open source project or it's from scratch? Nice work!

homework machine github

I designed it from scratch to make use of the parts I had in stock (It's just a quick prototype). You can see the Fusion 360 3D model of the prototype in the gallery. I took some inspiration from the 'Jubilee' 3D printer's series elastic actuator and the Voron 3D printer's belt path. Other than that, it's a completely novel design. 

I'll open source the design once the project is a bit more mature

Very fun project. Sadly, would not have helped me. When I was in school, our lab books were for recording measurements and results while performing experiments. Our lab reports were required to be typed or printed on my school's computer lab printer. Written answers were for in-class exams.

I am intrigued by the cursive writing version, since in cursive, the form of each letter is affected by the preceding letter, especially lowercase s.

I guess you were lucky enough not to need a homework machine then! It's quite different here, we have a shit ton to write from home. The lab records have lengthy "Theory" and"Procedure" sections we have to copy paste from a pdf by hand from home. One sem, there was almost 100 pages to be handwritten! Insane right? That's what made me start this project. 

The flow between the letters is not perfect yet. The tail of the current letter just touches the next letter where it ends. I'm working on improving the flow.

homework machine github

Really cool project! My only recommendation might be to use a slightly softer table material (perhaps a leathery rubber/silicone/PU) to smooth out the penstrokes.

Another variation could include "trailing" the line of text up/down or taller/narrower. You could also design a moving "palm" that holds the paper down and creates characteristic wrinkles/imprints in the page.

Yup, that's right! I do have a rubber band in series with the string driven pen lift actuator to get the same effect of the softer table material (it's a series elastic actuator)

I plan to implement force control so that the height of the page from the table doesn't matter. It should be possible to control the force applied to get the same effect as you mentioned.

I disagree on the blanket idea that rote learning is bad. 

Rote memorization is required in certain subjects, i.e., math, science, spelling.  I can see this as a "cheat" to do other kinds of written homework however.  Who likes to write english papers.

Some memorization is required, even in math and science. But, to really do math and science requires understanding. When you understand, you can derive the formulae as you need them, rather than rely on memorizing. The exams I did best on were like reading comprehension: Each section was a paragraph or 2 followed by several questions. If you were actually keeping up in class, labs and homework, the questions were easy to answer.

(Of course, there were students who complained that the material wasn't covered in class. That was only slightly true. The classes went over principles and the framework for deriving answers, but not actual answers. The exam questions required us to actually do the derivations.)

I taught science for many years, the last of which was at the undergraduate level at OSU.  If you know certain basics, you can derive the rest.  A big however in that is the students are not learning (i.e. memorizing basic math/chemistry/biology functions) what they should and when they should.  No amount of wishful thinking is going to work.  I've had top of the line students actually pull out their calculators to add simple numbers, they never learned their times tables.

gwfami wrote:

> I've had top of the line students actually pull out their calculators to add simple numbers, they never learned their times tables

They might have learned their times tables, but forgotten. By the time I reached high school (grades 9 - 12), calculator use was very common and tacitly encouraged. Only programmable calculators were not allowed.

For a while, I continued to calculate in my mind, but trigonometry quickly had me using a calculator and I soon forgot how to calculate in my mind.

Some amount of rote memorization is needed, I agree. Education system in Asia is not the same as in US/Europe. Here, students are taught to maximize marks using rote memorization almost exclusively- that's bad. I guess it probably has something to do with the larger population and therefore, extreme competition. Please see the videos I linked in the details part. 

homework machine github

meybe using this? https://en.wikipedia.org/wiki/Palmer_Method

Thanks, I'll look into it.

homework machine github

Do you plan on open sourcing the models/code?

Yes, I'll be releasing everything once the project is mature enough to do so. 

Similar Projects

homework machine github

Demolition man morality machine (curse word detect

billyosullivan

SMT50 pick-and-place

tim-wilkinson

How to hype your espresso

joshuaevans029

Does this project spark your interest?

Become a member to follow this project and never miss any updates

homework machine github

About Us Contact Hackaday.io Give Feedback Terms of Use Privacy Policy Hackaday API

© 2024 Hackaday

By using our website and services, you expressly agree to the placement of our performance, functionality, and advertising cookies. Learn More

Yes, delete it Cancel

Report project as inappropriate

You are about to report the project " Homework Machine ", please tell us the reason.

Send message

Your application has been submitted.

Remove Member

Are you sure you want to remove yourself as a member for this project?

Project owner will be notified upon removal.

Bloomberg ML EDU presents:

Foundations of Machine Learning

Understand the Concepts, Techniques and Mathematical Frameworks Used by Experts in Machine Learning

About This Course

Bloomberg presents "Foundations of Machine Learning," a training course that was initially delivered internally to the company's software engineers as part of its "Machine Learning EDU" initiative. This course covers a wide variety of topics in machine learning and statistical modeling. The primary goal of the class is to help participants gain a deep understanding of the concepts, techniques and mathematical frameworks used by experts in machine learning. It is designed to make valuable machine learning skills more accessible to individuals with a strong math background, including software developers, experimental scientists, engineers and financial professionals.

The 30 lectures in the course are embedded below, but may also be viewed in this YouTube playlist . The course includes a complete set of homework assignments, each containing a theoretical element and implementation challenge with support code in Python, which is rapidly becoming the prevailing programming language for data science and machine learning in both academia and industry. This course also serves as a foundation on which more specialized courses and further independent study can build.

Please fill out this short online form to register for access to our course's Piazza discussion board. Applications are processed manually, so please be patient. You should receive an email directly from Piazza when you are registered. Common questions from this and previous editions of the course are posted in our FAQ .

The first lecture, Black Box Machine Learning , gives a quick start introduction to practical machine learning and only requires familiarity with basic programming concepts.

Highlights and Distinctive Features of the Course Lectures, Notes, and Assignments

  • Geometric explanation for what happens with ridge, lasso, and elastic net regression in the case of correlated random variables.
  • Investigation of when the penalty (Tikhonov) and constraint (Ivanov) forms of regularization are equivalent.
  • Concise summary of what we really learn about SVMs from Lagrangian duality.
  • Proof of representer theorem with simple linear algebra, emphasizing it as a way to reparametrize certain objective functions.
  • Guided derivation of the math behind the classic diamond/circle/ellipsoids picture that "explains" why L1 regularization gives sparsity (Homework 2, Problem 5)
  • From scrach (in numpy) implementation of almost all major ML algorithms we discuss: ridge regression with SGD and GD (Homework 1, Problems 2.5, 2.6 page 4), lasso regression with the shooting algorithm (Homework 2, Problem 3, page 4), kernel ridge regression (Homework 4, Problem 3, page 2), kernelized SVM with Kernelized Pegasos (Homework 4, 6.4, page 9), L2-regularized logistic regression (Homework 5, Problem 3.3, page 4),Bayesian Linear Regession (Homework 5, problem 5, page 6), multiclass SVM (Homework 6, Problem 4.2, p. 3), classification and regression trees (without pruning) (Homework 6, Problem 6), gradient boosting with trees for classification and regression (Homework 6, Problem 8), multilayer perceptron for regression (Homework 7, Problem 4, page 3)
  • Repeated use of a simple 1-dimensional regression dataset, so it's easy to visualize the effect of various hypothesis spaces and regularizations that we investigate throughout the course.
  • Investigation of how to derive a conditional probability estimate from a predicted score for various loss functions, and why it's not so straightforward for the hinge loss (i.e. the SVM) (Homework 5, Problem 2, page 1)
  • Discussion of numerical overflow issues and the log-sum-exp trick (Homework 5, Problem 3.2)
  • Self-contained introduction to the expectation maximization (EM) algorithm for latent variable models.
  • Develop a general computation graph framework from scratch, using numpy, and implement your neural networks in it.

Prerequisites

The quickest way to see if the mathematics level of the course is for you is to take a look at this mathematics assessment , which is a preview of some of the math concepts that show up in the first part of the course.

  • Solid mathematical background , equivalent to a 1-semester undergraduate course in each of the following: linear algebra, multivariate differential calculus, probability theory, and statistics. The content of NYU's DS-GA-1002: Statistical and Mathematical Methods would be more than sufficient, for example.
  • Python programming required for most homework assignments.
  • Recommended: At least one advanced, proof-based mathematics course
  • Recommended: Computer science background up to a "data structures and algorithms" course
  • (HTF) refers to Hastie, Tibshirani, and Friedman's book The Elements of Statistical Learning
  • (SSBD) refers to Shalev-Shwartz and Ben-David's book Understanding Machine Learning: From Theory to Algorithms
  • (JWHT) refers to James, Witten, Hastie, and Tibshirani's book An Introduction to Statistical Learning

Assignments

GD, SGD, and Ridge Regression

Lasso Regression

SVM and Sentiment Analysis

Kernel Methods

Probabilistic Modeling

Multiclass, Trees, and Gradient Boosting

Computation Graphs, Backpropagation, and Neural Networks

The cover of Hands-On Machine Learning with Scikit-Learn and TensorFlow

Other tutorials and references

  • Carlos Fernandez-Granda's lecture notes provide a comprehensive review of the prerequisite material in linear algebra, probability, statistics, and optimization.
  • Brian Dalessandro's iPython notebooks from DS-GA-1001: Intro to Data Science
  • The Matrix Cookbook has lots of facts and identities about matrices and certain probability distributions.
  • Stanford CS229: "Review of Probability Theory"
  • Stanford CS229: "Linear Algebra Review and Reference"
  • Math for Machine Learning by Hal Daumé III

A photo of David Rosenberg

David S. Rosenberg

Teaching Assistants

Please ensure that JavaScript is enabled in your browser to view this page.

Homework Machine Hand Writes AI-Generated Assignments

Devadeth's homework machine generates text based on the user's own handwriting to result in more convincing penmanship..

I believe that laziness should be encouraged in many situations. Hardworking people will spend hours laboring on a project, but lazy people will find clever ways to achieve the same result with minimal effort. Laziness gave us tools, machines, computers, and ChatGPT. If you're a lazy student, then ChatGPT is a tempting solution for essay assignments. But most teachers don't share my enlightened principles, so they require that students write out their essays by hand in order to thwart ChatGPT submissions. To give those students a viable workaround, Devadath P R designed a homework machine that hand writes ChatGPT essays convincingly.

This is still a work in progress, but the project seeks to solve one of the biggest problems with other homework machines, such as this one that I covered a few months ago after it blew up on social media. The problem with most homework machines is that they're too perfect. Not only is their content output too well-written for most students, but they also have perfect grammar and punctuation — something even we professional writers fail to consistently achieve. Most importantly, the machine's "handwriting" is too consistent. Humans always include small variations in their writing, no matter how honed their penmanship.

Devadath is on a quest to fix the issue with perfect penmanship by making his machine mimic human handwriting. Even better, it will reflect the handwriting of its specific user so that AI-written submissions match those written by the student themselves.

Like other machines, this starts with asking ChatGPT to write an essay based on the assignment prompt. That generates a chunk of text, which would normally be stylized with a script-style font and then output as g-code for a pen plotter. But instead, Devadeth created custom software that records examples of the user's own handwriting. The software then uses that as a font, with small random variations, to create a document image that looks like it was actually handwritten.

It would be possible to feed that as g-code to a standard pen plotter, but such a machine can leave telltale signs as the pen moves while writing. To avoid that, Devadath designed a very rigid CoreXY CNC pen plotter that can reproduce the generated document perfectly. Moreover, it runs Klipper firmware to eliminate vibrations and other artifacts that might be visible in the writing.

Devadath plans to make this project open source so that students all around the world can express their natural laziness and skip the boring, meaningless essays.

Latest articles

Sponsored articles, related articles.

CS 335: Machine Learning

Lectures: Tues, Thurs 11:30am-12:45pm Fourth Hour: Fri 8:30am-9:20am Room: Clapp Laboratory 206 Office hours: Tues 1-3pm, Thurs 9:15-11:15am, Clapp 200 Piazza : https://www.piazza.com/mtholyoke/spring2020/cs335/home Gradescope : https://www.gradescope.com/courses/76996 Moodle : https://moodle.mtholyoke.edu/course/view.php?id=17913

Learning Goals

  • Understand the general mathematical and statistical principles that allow one to design machine learning algorithms.
  • Identify, understand, and implement specific, widely-used machine learning algorithms.
  • Learn how to apply and evaluate the performance of machine learning algorithms.
  • Derive analytical solutions for mathematical fundamentals of ML (probability, matrix and vector manipulation, partial derivatives, basic optimization, etc.).
  • Derive and implement learning algorithms.
  • Identify and evaluate when an algorithm is overfitting and the relationships between regularization, training size, training accuracy, and test accuracy.
  • Identify real-world problems where machine learning can have impact.
  • Implement machine learning tools on real data and evaluate performance.
  • Produce proficient oral and written communication of technical ideas and procedures.
  • Homeworks (4) — 40%
  • "Celebrations of learning" (2) — 20%
  • Project — 30%
  • Class engagement — 10%
  • Idea proposal — 2%
  • Paper and group selection — 2%
  • Literature review — 5%
  • Weekly reports (4) — 8%
  • Final report — 13%

Course schedule

  • An Introduction to Statistical Learning by James, Witten, Hastie, Tibshirani: an accessible undergraduate machine learning textbook with statistics focus.
  • Course handouts from Stanford CS 229 by Andrew Ng
  • Google's Python class
  • Norm Matloff’s Fast Lane to Python
  • Stanford CS 231 Python Numpy Tutorial
  • Stanford CS 231 IPython tutorial

Academic Honesty

  • Organize study groups.
  • Clarify ambiguities or vague points in class handouts, textbooks, assignments, and labs.
  • Discuss assignments at a high level to understand what is being asked for, and to discuss related concepts and the high-level approach.
  • Refine high-level ideas/concepts for projects (i.e. brainstorming).
  • Outline solutions to assignments with others using diagrams or pseudocode, but not actual code.
  • Walk away from the computer or write-up to discuss conceptual issues if you get stuck.
  • Get or give help on how to operate the computer, terminal, or course software.
  • Get or give limited debugging help. Debugging includes identifying a syntax or logical error but not helping to write or rewrite code.
  • Submit the result of collaborative coding work if and only if group work is explicitly permitted (or required).
  • Look at another student’s solutions.
  • Use solutions to same or similar problems found online or elsewhere.
  • Search for homework solutions online.
  • Turn in any part of someone else's work as your own (with or without their knowledge).
  • Share your code or written solutions with another student.
  • Share your code or snippets of your own code online.
  • Save your work in a public place, such as a public github repository.
  • Allow someone else to turn in your work as their own. (Be sure to disconnect your network drive when you logout and remove any printouts promptly from printers.)
  • Collaborate while writing programs or solutions to written problems. (But see above about specific ways to give or get debugging help.)
  • Write homework assignments together unless it is specified as a group assignment.
  • Collaborate with anyone outside your group for a group assignment.
  • Use resources during a quiz or exam beyond those explicitly allowed in the quiz/exam instructions. (If it is not listed, don’t use it. Ask if you are unsure.)
  • Submit the same or similar work in more than one course. (Always ask the instructor if it is OK to reuse any part of a different project in their course.).

Inclusion and Equity

Accommodations, communication policy, acknowledgments.

Homework sololutions for Machine Learning 2022 Spring

Homework solution for machine learning 2022 spring.

Course page: MACHINE LEARNING 2022 SPRING

Teacher: HUNG-YI LEE (李宏毅)

Find and load all the solutions.

Use autograding

You can automatically provide feedback on code submissions from your students by configuring tests to run in the assignment repository.

Who can use this feature?

Organization owners who are admins for a classroom can set up and use autograding on assignments in a classroom. For more information on classroom admins, see " Manage classrooms ."

In this article

About autograding.

You can use autograding to automatically check a student's work for an assignment on GitHub Classroom. You configure tests for an assignment, and the tests run immediately every time a student pushes to an assignment repository on GitHub.com. The student can view the test results, make changes, and push to see new results.

After a student accepts an assignment, on every push to the assignment repository, GitHub Actions runs the commands for your autograding test in a Linux environment containing the student's newest code. GitHub Classroom creates the necessary workflows for GitHub Actions. You don't need experience with GitHub Actions to use autograding. For more information on workflows and GitHub Actions, see " About continuous integration ."

You can use a testing framework, run a custom command, write input/output tests, or combine different testing methods. The Linux environment for autograding contains many popular software tools. For more information, see the details for the latest version of Ubuntu in " Using GitHub-hosted runners ."

You can see an overview of which students are passing autograding tests by navigating to the assignment in GitHub Classroom. A green checkmark means that all tests are passing for the student, and a red X means that some or all tests are failing for the student. If you award points for one or more tests, then a bubble shows the score for the tests out of the maximum possible score for the assignment.

Grading methods

There are two grading methods: input/output tests and run command tests.

Input/output test

An input/output test optionally runs a setup command, then provides standard input to a test command. GitHub Classroom evaluates the test command's output against an expected result.

Run command test

A run command test runs a setup command, then runs a test command. GitHub Classroom checks the exit status of the test command. An exit code of 0 results in success, and any other exit code results in failure.

GitHub Classroom provides presets for language-specific run command tests for a variety of programming languages. For example, the Run node test prefills the setup command with npm install and the test command with npm test .

Configuring autograding tests for an assignment

You can add autograding tests during the creation of a new assignment. For more information, see " Create an individual assignment " or " Create a group assignment ."

You can add, edit, or delete autograding tests for an existing assignment. All changes made via the Classroom UI will be pushed to the existing student repositories, so use caution when editing your tests.

  • Sign into GitHub Classroom .
  • In the list of classrooms, click the classroom you want to view.

To the right of the assignment you want to edit, click .

In the left sidebar, click Grading and feedback .

Add, edit, or delete an autograding test.

To add a test, under "Add autograding tests", select the Add test dropdown menu, then click the grading method you want to use. Configure the test, then click Save test case .

To edit a test, to the right of the test name, click . Configure the test, then click Save test case .

To delete a test, to the right of the test name, click .

At the bottom of the page, click Update assignment .

Viewing and downloading results from autograding tests

Download autograding results.

You can also download a CSV of your students' autograding scores via the "Download" button. This will generate and download a CSV containing a link to the student's repository, their GitHub handle, roster identifier, submission timestamp, and autograding score.

View individual logs

  • In the list of assignments, click the assignment you want to view.
  • To the right of a submission, click .
  • Review the test output. For more information, see " Using workflow run logs ."

Further reading

  • GitHub Actions documentation

The Homework Machine

Guide cover image

50 pages • 1 hour read

A modern alternative to SparkNotes and CliffsNotes, SuperSummary offers high-quality Study Guides with detailed chapter summaries and analysis of major themes, characters, and more.

Chapter Summaries & Analyses

Introduction-Chapter 2

Chapters 3-4

Chapters 5-6

Chapters 7-8

Chapters 9-10

Character Analysis

Symbols & Motifs

Important Quotes

Essay Topics

Discussion Questions

Summary and Study Guide

The Homework Machine , written by acclaimed American author Dan Gutman was first published in 2007 by Simon & Schuster Books for Young Readers and is the first of a two-book series. The second book, The Return of the Homework Machine , was published in 2011. Gutman is primarily a children’s fiction writer who has been nominated for and won numerous awards, including 18 for The Homework Machine alone. Gutman is best known for his humorous series, My Weird School , in which there are more than 70 books. He lives in New York City with his family.

The paperback edition used for this study guide was published by Simon & Schuster in 2007.

Get access to this full Study Guide and much more!

  • 7,250+ In-Depth Study Guides
  • 5,000+ Quick-Read Plot Summaries
  • Downloadable PDFs

Plot Summary

The Homework Machine is told from the perspectives of multiple characters in the format of tape recordings for a police report.

The SuperSummary difference

  • 8x more resources than SparkNotes and CliffsNotes combined
  • Study Guides you won ' t find anywhere else
  • 100+ new titles every month

The four main characters are fifth-grade students who are grouped at the same classroom table because their last names start with D: Sam Dawkins (Snik), Kelsey Donnelly , Judy Douglas , and Brenton Damagatchi . Other than sharing the same last initial, the students have nothing in common. Snik is the cool class smart aleck; Kelsey is laid back and doesn’t care about school; Judy is conscientious and in the gifted program; and Brenton is a loner and genius who designs software and studies psychology in his spare time. Snik pushes people’s buttons, and one day he pushes Brenton too far—implying that Brenton spends all his free time doing homework. Brenton retorts that he doesn’t spend any time doing homework and lets slip that he has invented a homework machine.

Snik calls Brenton a liar, so Brenton invites Snik, Judy, and Kelsey to his house to see for themselves. The group are stunned when Brenton’s machine prints out perfectly completed homework in Brenton’s handwriting. Brenton agrees to let Snik, Judy, and Kelsey join him after school to “do” their homework and even rewrites the software to accommodate their handwriting. The unlikely foursome spends every afternoon together, but they insist that they are not friends and that the only reason they tolerate each other is to use the homework machine, which they name Belch. Judy feels guilty about cheating but enjoys getting A’s and uses the extra time to take up ballet. Kelsey’s vastly improved grades earn her privileges, such as a belly-button piercing, from her mother. As the weeks pass, the D Squad becomes addicted to using Belch and the boundaries between their various social identities begin to blur. Snik shows an interest in “boring” chess, which Brenton plays, and Judy tries to be complimentary about Kelsey’s piercings (while finding them disgusting). Everything seems to be going well. However, things start to rapidly fall apart halfway through the year. Judy and Kelsey’s other friends resent their new associations and “unfriend” them, and their teacher, Miss Rasmussen , suspects that they are cheating.

In addition, a strange man has been stalking the group ever since Brenton designed software to instigate a hugely successful social media-driven “red socks day” that spread across America. Miss Rasmussen springs a surprise test on the class to see whether the D Squad really knows their schoolwork. Sure enough—Kelsey and Snik fail, and Judy gets a C, confirming Miss Rasmussen’s suspicions. Before Miss Rasmussen can report them, Snik’s father, who is in the military, is killed in the Middle East. This tragic event diverts Miss Rasmussen’s attention from the cheating, which seems trivial in comparison. The bond between the D Squad strengthens as the stress of keeping Belch secret increases.

Together they decide to shut Belch down, only to discover that Belch has taken on a life of its own and will not power off. They throw Belch into the Grand Canyon and feel relief as they watch it disappear. However, when backpackers find computer pieces at the bottom of the canyon, the D Squad is called into the sheriff’s office where they confess to everything. The case is closed, but their unlikely friendships continue to strengthen and grow. The stalker turns out to be someone scouting Brenton to offer him a job as an influencer for his company. The company’s clients want to market their products to kids. Brenton simply offers him an idea he would like to influence kids with: “Do your homework” (146).

blurred text

Don't Miss Out!

Access Study Guide Now

Ready to dive in?

Get unlimited access to SuperSummary for only $ 0.70 /week

Related Titles

By Dan Gutman

Guide cover placeholder

The Kid Who Ran for President

Featured Collections

View Collection

Laugh-out-Loud Books

Popular study guides, science & nature, truth & lies.

homework machine github

Buy new: ₹204.00

homework machine github

Other Sellers on Amazon

Kindle app logo image

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet or computer – no Kindle device required .

Read instantly on your browser with Kindle for Web.

Using your mobile phone camera, scan the code below and download the Kindle app.

QR code to download the Kindle App

Image Unavailable

The Homework Machine [Paperback] Gutman, Dan

  • To view this video download Flash Player

homework machine github

Follow the author

Dan Gutman

The Homework Machine [Paperback] Gutman, Dan Paperback – 26 June 2007

  • Free Delivery

10 days Replacement

  • Amazon Delivered
  • Pay on Delivery
  • Secure transaction

Replacement Instructions

homework machine github

Purchase options and add-ons

  • Book 1 of 2 The Homework Machine
  • Print length 176 pages
  • Language English
  • Publisher Simon & Schuster Books for Young Readers
  • Publication date 26 June 2007
  • Dimensions 13.02 x 1.27 x 19.37 cm
  • ISBN-10 9780689876790
  • ISBN-13 978-0689876790
  • See all details

Frequently bought together

The Homework Machine [Paperback] Gutman, Dan

More items to explore

NEVERMOOR: THE TRIALS OF MORRIGAN CROW BOOK 1

Product description

About the author, product details.

  • ASIN ‏ : ‎ 0689876793
  • Publisher ‏ : ‎ Simon & Schuster Books for Young Readers; Reprint edition (26 June 2007)
  • Language ‏ : ‎ English
  • Paperback ‏ : ‎ 176 pages
  • ISBN-10 ‏ : ‎ 9780689876790
  • ISBN-13 ‏ : ‎ 978-0689876790
  • Item Weight ‏ : ‎ 109 g
  • Dimensions ‏ : ‎ 13.02 x 1.27 x 19.37 cm
  • Country of Origin ‏ : ‎ USA
  • #18,228 in Reference (Books)

About the author

I was born in a log cabin in Illinois and used to write by candlelight with a piece of chalk on a shovel. Oh, wait a minute. That was Abraham Lincoln.

Actually, I’m a children's book author. I’ve written more than 170 books for kids from kindergarten up to middle school.

For the little ones, I write picture books like "Rappy the Raptor," about a rapping raptor named Rappy, who raps.

For beginning readers, I write "My Weird School," about some kids who go to a school in which all the grownups are crazy. Thirty-one million copies have been sold. I also write “Wait! WHAT?” a series of biographies that focus on the unusual aspects of people like Albert Einstein, Amelia Earhart, Muhammad Ali, and Teddy Roosevelt.

For middle-graders, I write the baseball card adventure series, about a boy who has the power to travel through time using a baseball card like a time machine. He goes on adventures with players like Babe Ruth, Jackie Robinson, Willie Mays, and others.

For advanced readers, I write "The Genius Files," "Flashback Four,” “Houdini and Me” and others.

If you’d like to find out more, visit my web site (www.dangutman.com), my Facebook fan page, and follow me on Twitter and Instagram @dangutmanbooks.

Customer reviews

  • Sort reviews by Top reviews Most recent Top reviews

Top reviews from India

Top reviews from other countries.

homework machine github

  • Press Releases
  • Amazon Science
  • Sell on Amazon
  • Sell under Amazon Accelerator
  • Protect and Build Your Brand
  • Amazon Global Selling
  • Become an Affiliate
  • Fulfilment by Amazon
  • Advertise Your Products
  • Amazon Pay on Merchants
  • COVID-19 and Amazon
  • Your Account
  • Returns Centre
  • 100% Purchase Protection
  • Amazon App Download
  • Netherlands
  • United Arab Emirates
  • United Kingdom
  • United States
  • Conditions of Use & Sale
  • Privacy Notice
  • Interest-Based Ads

COMMENTS

  1. homework-machine · GitHub Topics · GitHub

    A project inspired by The Homework Machine by Dan Gutman. python java image-processing homework-machine. Updated on Aug 20, 2020. Java. GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.

  2. Homework Machine

    The aim of this project is to create a machine to write stuff for us- In our own handwriting- so we don't have to! When the project is complete, you should be able to upload a question to an app for generating the answers with ChatGPT and Wolfram alpha. A timeslot can be booked for your homework to be written by the machine using the same app. It will write the content in your own handwriting ...

  3. homework-machine

    {"payload":{"allShortcutsEnabled":false,"fileTree":{"":{"items":[{"name":"README.md","path":"README.md","contentType":"file"},{"name":"index.html","path":"index.html ...

  4. homework · GitHub Topics · GitHub

    GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects. ... data-science machine-learning course deep-learning homework lab data-centric-ai Updated Dec 28, 2023; ... This repository includes all the homework, assignment and contest solutions taught at Scaler ...

  5. GitHub: Let's build from here · GitHub

    {"payload":{"allShortcutsEnabled":false,"fileTree":{"":{"items":[{"name":"LexicalAnalyzer.c","path":"LexicalAnalyzer.c","contentType":"file"},{"name":"Parser-Code ...

  6. Foundations of Machine Learning

    Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 2nd Edition (Aurélien Géron) This is a practical guide to machine learning that corresponds fairly well with the content and level of our course. While most of our homework is about coding ML from scratch with numpy, this book makes heavy use of scikit-learn and TensorFlow.

  7. Meet Devdutt, engg.student from Thrissur, who invented "Homework

    The code is available on github and the parts all are easily available. ... I remember seeing the older iteration of this writing machine design, done using scrap parts from a cannibalised dvd slider. I saw it in 2012. ... The purpose of this subreddit is to help you learn (not complete your last-minute homework), and our rules are designed to ...

  8. GitHub

    Contribute to silegle/homework development by creating an account on GitHub. This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

  9. Homework Machine Hand Writes AI-Generated Assignments

    Devadeth's homework machine generates text based on the user's own handwriting to result in more convincing penmanship. I believe that laziness should be encouraged in many situations. Hardworking people will spend hours laboring on a project, but lazy people will find clever ways to achieve the same result with minimal effort.

  10. CS 335: Machine Learning

    Homework deadlines are strict. For homework that is late, you will be penalized 33% of the assignment's value for each day or fraction thereof that it is late (0-24 hours = 33% penalty; 24-48 hours = 66% penalty; 48+ hours = no credit). An assignment is considered late until all components (written and code) are submitted.

  11. GitHub Actions For Machine Learning Beginners

    Automating Machine Learning Workflow with GitHub Actions . We will work on a simple machine learning project using the Bank Churn dataset from Kaggle to train and evaluate a Random Forest Classifier. Setting Up . We will create the GitHub repository by providing the name, and description, checking the readme file, and license. ...

  12. Ayatans/Machine-Learning-homework

    Matlab coding homework for Machine Learning in Coursera by Andrew Ng. For those seeking the answer of quizzes, I have some links that show most of the answers in Chinese. Here I show great thanks to the authors who writing those solutions: If the owners of the two blogs deem it offensive, please contact me and I will remove the links immediately!

  13. GitHub

    2022年本科机器学习作业. GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.

  14. Homework sololutions for Machine Learning 2022 Spring

    Homework sololutions for Machine Learning 2022 Spring Homework solution for Machine Learning 2022 Spring View on GitHub Homework sololutions for Machine Learning 2022 Spring. Course page: MACHINE LEARNING 2022 SPRING. Teacher: HUNG-YI LEE (李宏毅) TODO. Find and load all the solutions. #HW

  15. artonson/hse-applied-statistics-2018

    Resampling. Monte Carlo simulation. Bootstrap. Confidence intervals. Multiple comparisons correction. Bagging in machine learning. Lecture 3. Parametric estimation. Maximum likelihood method and its properties. Delta method. The case of vector parameter. Lecture 4. Distances between distributions. f-divergence distances. The distance of total ...

  16. How to deal with student putting their (home)work on github

    22. While using github for source code is generally something I love to encourage, if a student puts their (computer science) homework there, it's generally easy for others to find and copy - which creates a temptation to use it as a "baseline" for their own (identical in most cases) homework - while I understand the benefits of using github ...

  17. Use autograding

    To the right of the assignment you want to edit, click . In the left sidebar, click Grading and feedback. Add, edit, or delete an autograding test. To add a test, under "Add autograding tests", select the Add test dropdown menu, then click the grading method you want to use. Configure the test, then click Save test case.

  18. Make Diy Homework Writing Machine At Home

    Get (1) Hex M3-0.5 x 20mm screw and the Metric Thumb Screw and push them together. Use superglue to keep it together. Get (3) M3-0.5 x 16mm screws which you will use the secure the Base Slide to the Y-Front part. You may need to use (3) M3-0.5 nuts in order to hold it in place.

  19. farihamalik098/Unary-operator-homework

    Saved searches Use saved searches to filter your results more quickly

  20. "The Homework Machine " Summary and Study Guide

    The Homework Machine, written by acclaimed American author Dan Gutman was first published in 2007 by Simon & Schuster Books for Young Readers and is the first of a two-book series.The second book, The Return of the Homework Machine, was published in 2011.Gutman is primarily a children's fiction writer who has been nominated for and won numerous awards, including 18 for The Homework Machine ...

  21. The Homework Machine [Paperback] Gutman, Dan

    Doing homework becomes a thing of the past! Meet the D Squad, a foursome of fifth graders at the Grand Canyon School made up of a geek, a class clown, a teacher's pet, and a slacker. They are bound together by one very big secret: the homework machine. Because the machine, code-named Belch, is doing their homework for them, they start spending ...

  22. DaylenHendricks/COP3402_HW1: P-Machine written in C.

    This virtual machine takes in a file of instructions in the form of integers and performs operations as set by the project's ISA. To compile the vm: $ gcc vm.c To run the vm: $ ./a.out input.txt Where input.txt is the name of your input file (and is the name of the file corresponding with our output).

  23. The Homework Machine (The Homework Machine, #1) by Dan Gutman

    March 31, 2017. This book is about 4 kids named Brenton, Sam, Judy, and Kelsey. Brenton builds a homework machine and soon the other 3 kids find out about it. Brenton and Judy are really smart and they do not need the machine. Sam and Kelsey on the other hand really need the machine.